AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Реализация WEB-запроса

Newbies/FAQ Forum 13 сообщений -
#1

Доброго времени! опять ничего не нашёл поиском. прошу помочь с сабжем (хотя бы пнуть в нужную сторону))
сам сабж: какими способами можно реализовать запрос из астериска, например, на отправку сообщения с SMS.ru,или например, получить данные от какого-либо WEB-сервиса (опять-таки, запросом)? В общем, запросы как GET, так и POST, причём интересует, есть ли возможность ложить результат в переменную . Хотелось бы узнать приёмы и используемые инструменты. заранее спасибо
#2

CURL
_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
#3

Предложу php-agi, и делай с ним что хочешь =)
_________________
Мы всегда можем уметь...
#4

agi - быстрее реализовать.
curl - более правильное решение.

выбор только за количеством вызовов.
если это не более 1 вызова в секунду, то я бы выбрал agi.
#5

Спасибо за помощь, выбрал curl
теперь возник маленький вопросик к уважаемым гуру - модуль curl можно добавить только при сборке asterisk, или есть альтернативные способы? Спасибо
#6

нет
#7

Дико извиняюсь, всё вроде разобрался, в библиотеках появился модуль func_curl.so (установка пакета asterisk-curl) и прописывание его в modules.conf. теперь cli выдаёт инфу о модуле, версии и пр, но при проверке работоспособности выводит
Код:
No application 'CURL' for extension

В сети нашёл решение, что приложение нужно взять в фигурные скобки:

Цитата:

Postby cavicchi » Thu Aug 21, 2008 4:17 pm
Problem solved,

the application CURL is deprecated so my old...
Код:

CURL(http:.......)
couldnt work anymore... I had to change it to...
Код:

${CURL(http://...)}

and now works correctly!

но это к сож не помогает. пните плз,куда рыть. Заранее спасибо

Added after 1 minutes:

awsswa @ Чт Окт 24, 2013 18:55 писал(а):
нет
То есть, нынешняя проблема из-за сборки астера без curl? (не сборка,а просто установка FreePBX-дистро)
#8

Код:
> core show function CURL

-= Info about function 'CURL' =-

[Synopsis]
Retrieves the contents of a URL

[Description]
url - URL to retrieve
post-data - Optional data to send as a POST (GET is default action)


[Syntax]
CURL(url[,post-data])

[Arguments]
Not available

[See Also]
Not available

_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
#9

Спс,я это уже юзал
Код:
exten => s,n,CURL(http://sms.ru/sms/send?api_id=d55b6858&to=79536000000&text=hello+world)

Код:
No application 'CURL' for extension


реально не вижу, что делаю не так((( Ткните ктонить плз
#10

Прямым же текстом пишет, что не может найти приложение CURL! И не удивительно! Ведь CURL - это функция! Открывайте книжку и читайте как использовать функции в диалплане. Это самые базовые понятия.
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
#11

огромное вам спасибо! всё получилось)))

Added after 1 hours 45 minutes:

Ну, вернее почти всё.....
собственно,новый сабж - если работать по HTTP, то всё ок, всё работает. а вот если работать по HTTPS, то просит сертификат((((
Сразу скажу, в сертификатах и вопросах безопастности я - полный нуб.
кто что посоветует? Ну или как вариант, отключение проверки ($ch,CURLOPT_SSL_VERIFYPEER,0) при каждом запросе, но ума не дам, как это сделать в контексте
заранее благодарен за любую помощь
#12

core show function CURLOPT
#13

А если получаю на русском с AmoCRM и втыкаю в переменную, но получаю пустоту в присваивании, какие варианты есть?
Приходит текст в UTF-8