Asterisk v13 на Kali Linux: Не был найден RTP-движок. У вас есть один загруженный?

Вопрос или проблема

Я установил Asterisk и попытался сделать звонок с помощью Zoiper, но получил ошибку [call failure 401 forbidden] и Asterisk вернул следующее сообщение:

Подключен к Asterisk UNKNOWN__and_probably_unsupported, в настоящее время работающему на kali (pid = 14877)
[22 янв 17:57:00] ERROR[14937][C-00000007]: rtp_engine.c:401 ast_rtp_instance_new: RTP-движок не найден. У вас есть загруженный?
[22 янв 17:57:00] NOTICE[14937][C-00000007]: chan_sip.c:25550 handle_request_invite: Не удалось аутентифицировать устройство <sip:[email protected];transport=UDP>;tag=9a473a54

Я открыл menuselect и выбрал res_rtp_asterisk.

Когда я пытаюсь переустановить (перекомпилировать!) Asterisk, я выполняю ./configure

Здесь сказано, что все в порядке! Но когда я ввожу make или make install, я получаю эту ошибку:

CC="cc" CXX="g++" LD="" AR="" RANLIB="" CFLAGS="" LDFLAGS="" make -C menuselect CONFIGURE_SILENT="--silent" makeopts
make[1]: Входим в директорию `/etc/asterisk/asterisk/menuselect'
make[1]: `makeopts' актуален.
make[1]: Выходим из директории `/etc/asterisk/asterisk/menuselect'
   [CC] res_rtp_asterisk.c -> res_rtp_asterisk.o
res_rtp_asterisk.c: В функции ‘ice_create’:
res_rtp_asterisk.c:2421:4: ошибка: слишком много аргументов для функции ‘pj_ice_sess_create’
В файле, включенном из /usr/include/pjnath.h:23:0,
                 из res_rtp_asterisk.c:53:
/usr/include/pjnath/ice_session.h:736:22: примечание: объявлено здесь
make[1]: *** [res_rtp_asterisk.o] Ошибка 1
make: *** [res] Ошибка 

Вам следует выполнить

make menuconfig

прежде чем компилировать.

Найдите res_rtp_asterisk и проверьте, нужны ли ему какие-то зависимости, которых у вас нет, или он просто отключен. Если он отключен, включите его и перекомпилируйте.

Ответ или решение

Проблема, с которой вы столкнулись при установке Asterisk v13 на Kali Linux, связана с ошибкой "No RTP engine was found. Do you have one loaded?" Эта ошибка возникает, когда Asterisk не может обнаружить RTP-движок, необходимый для обработки мультимедиа (аудио и видео) во время звонков. Давайте рассмотрим ключевые шаги и возможные решения вашей проблемы.

1. Проверка установки необходимых компонентов RTP

Для начала убедитесь, что вы корректно выбрали res_rtp_asterisk в меню настроек Asterisk. С помощью команды:

make menuconfig

проверьте, активен ли модуль res_rtp_asterisk. Если он выключен, активируйте его, чтобы Asterisk мог использовать этот RTP-движок.

2. Установка зависимостей

Ошибка, которую вы получили при компиляции (более подробно — ошибка при создании ice_create), может указывать на отсутствие необходимых библиотек или несовместимость с установленными версиями. Убедитесь, что у вас установлены все зависимости, необходимые для Asterisk, включая библиотеки плагина PJPROJECT, используемого для обработки RTP.

Чтобы установить недостающие пакеты, выполните:

sudo apt-get update
sudo apt-get install build-essential libssl-dev libjansson-dev libxml2-dev
sudo apt-get install libncurses5-dev libnewt-dev libxslt1-dev
# Установка pjnath
sudo apt-get install libpjnath-dev

3. Перекомпиляция Asterisk

После установки необходимых зависимостей запускайте процессы ./configure, затем make, после этого make install. Это обеспечит правильную сборку необходимых модулей.

4. Проверка конфигурации SIP

Ваше сообщение об ошибке также включает строку о неудачной попытке аутентификации устройства. Это может быть вызвано неправильной конфигурацией SIP. Убедитесь, что:

  • Правильно настроен sip.conf, включая корректные учетные данные пользователей.
  • Вы настроили подходящие правила для аутентификации и проверки пользователей.

Проверьте, чтобы ваше устройство Zoiper использовало именно те учетные данные, что указаны в конфигурации Asterisk.

5. Тестирование

После выполнения вышеперечисленных шагов можно протестировать систему с помощью команды:

asterisk -rvvv

Эта команда выведет логи Asterisk в реальном времени, что даст возможность увидеть, загружены ли модули и идут ли вызовы корректно.

Заключение

Смещение внимания на установку необходимых библиотек и корректную настройку модуля RTP, а также детальную проверку конфигурации SIP, должно помочь вам в решении проблемы с "No RTP engine was found." Если проблемы сохраняются, стоит рассмотреть возможность поиска информации на официальных форумах Asterisk или в документации, доступной на их сайте.

Оцените материал
Добавить комментарий

Капча загружается...