ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Asterisk 18 Функции CURL и SHELL

Проблемы и их решения Asterisk как такового

Модераторы: april22, Zavr2008

Asterisk 18 Функции CURL и SHELL

Сообщение AlexeyFatnev » 26 окт 2022, 16:43

Здравствуйте, все.

Не могу запустить функции CURL и SHELL.

Запускаю из диалплана:
same => n,Set(CALLERID(name)=${curl(http://192.169.0.23/telbook/${CALLERID(name)})})
same => n,Set(CALLERID(name)=${shell(curl 'http://192.169.0.23/telbook/${CALLERID(name)}')})

Пробовал и заглавными и строчными.

Ошибка на обеих:
[Oct 26 15:35:15] ERROR[97377][C-00000001]: pbx_functions.c:608 ast_func_read: Function shell not registered
[Oct 26 15:35:15] ERROR[97377][C-00000001]: pbx_functions.c:608 ast_func_read: Function SHELL not registered

В menuselect обе установлены, модуль res_curl.so загружен вручную, без ошибок.

ubuntu02*CLI> module load res_curl.so
Loaded res_curl.so
Loaded res_curl.so => (cURL Resource Module)
ubuntu02*CLI>


В списке функций ни одна не показывается.


live_dangerously=yes

Пробовал, но он не должен влиять.
AlexeyFatnev
 
Сообщений: 18
Зарегистрирован: 26 май 2022, 19:04


Re: Asterisk 18 Функции CURL и SHELL

Сообщение AlexeyFatnev » 27 окт 2022, 12:18

Здравствуйте, Ded.

В системе функции отсутствуют:

ubuntu02*CLI> core show functions like curl
Matching Custom Functions:
--------------------------------------------------------------------------------
0 matching custom functions installed.
ubuntu02*CLI> core show functions like shell
Matching Custom Functions:
--------------------------------------------------------------------------------
0 matching custom functions installed.

По присланным Вами ссылкам нет информации о моей проблеме.
AlexeyFatnev
 
Сообщений: 18
Зарегистрирован: 26 май 2022, 19:04

Re: Asterisk 18 Функции CURL и SHELL

Сообщение Wapo » 27 окт 2022, 13:28

Должно быть так:

Код: выделить все
webserver*CLI> module show like curl
Module                         Description                              Use Count
func_curl.so                   Load external URL                        0
res_config_curl.so             Realtime Curl configuration              0
res_curl.so                    cURL Resource Module                     0
3 modules loaded

webserver*CLI> module show like shell
Module                         Description                              Use Count
func_shell.so                  Collects the output generated by a comma 0
1 modules loaded

Аватар пользователя
Wapo
 
Сообщений: 795
Зарегистрирован: 02 мар 2011, 18:53

Re: Asterisk 18 Функции CURL и SHELL

Сообщение ded » 27 окт 2022, 14:40

AlexeyFatnev, вы не поверите, но регистр букв функций имеет громадное значение!

Код: выделить все
*CLI> core show functions like CURL
Matching Custom Functions:
--------------------------------------------------------------------------------
CURL                  CURL(url[,post-data])                Retrieves the contents of a URL
CURLOPT               CURLOPT(<option>)                    Set options for use with the CURL() function
2 matching custom functions installed.
*CLI>
*CLI>                                                                                               
*CLI> core show functions like curl
Matching Custom Functions:
--------------------------------------------------------------------------------                       
0 matching custom functions installed. 

По присланным мною ссылкам полная информация по первоначальной проблеме. Только проблема теперь чуть по другому формулируется:
"Не вижу разницы между curl и CURL."

Можно было выполнить команду
*CLI> core show function CURL
и увидеть синтаксис.
ded
 
Сообщений: 15793
Зарегистрирован: 26 авг 2010, 19:00

Re: Asterisk 18 Функции CURL и SHELL

Сообщение AlexeyFatnev » 28 окт 2022, 14:34

Здравствуйте, Ded, Wapo.

Разницу в заглавных и строчных буквах понимаю, пробовал по разному.

Проблема решилась. У меня был загружен (вручную) только модуль res_curl.so, а модуль func_curl.so не был загружен.

Мой коллега выяснил это вчера (я не знаю как он нашел ссылку, где этот модуль упоминается). Сегодня увидел этот модуль в листинге в сообщении Wapo.

https://wiki.asterisk.org/wiki/display/AST/cURL

В ранних версиях Астериск эти модули загружались автоматически.
AlexeyFatnev
 
Сообщений: 18
Зарегистрирован: 26 май 2022, 19:04

Re: Asterisk 18 Функции CURL и SHELL

Сообщение ded » 31 окт 2022, 13:44

Во всех версиях модули загружаются автоматически, параметр
autoload=yes
до тех пор, пока кто-нибудь из ваших коллег не начнёт это менеджировать,
autoload=no
и указывая ему понятную последовательность загрузки модулей.
ded
 
Сообщений: 15793
Зарегистрирован: 26 авг 2010, 19:00

Re: Asterisk 18 Функции CURL и SHELL

Сообщение AlexeyFatnev » 10 ноя 2022, 12:49

Здравствутйе, Ded.

Во всех версиях модули загружаются автоматически, параметр
autoload=yes


Это ценное замечание, у меня (из коробки) стояло "autoload=no".
Благодарю, учту на будущее.
AlexeyFatnev
 
Сообщений: 18
Зарегистрирован: 26 май 2022, 19:04


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: Google [Bot], Majestic-12 [Bot] и гости: 13

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH