Страница 1 из 3
Многоадресный пейджинг
Добавлено: 01 дек 2023, 22:09
mvt
Не получается настроить многоадресный пейджинг, вроде всё в порядке, но "достучаться" до клиента не получается.
Mixmonitor работает, себя слышу таблицу cel посмотрел, может чего и не увидел, но вроде "криминала" нет.
По логам есть то, что выделено, если в этом проблема, то не соображу как это победить и где этот файл искать, если его надо искать.
В файле extensions.conf определена глобальная переменная:
(в точности по книге Asterisk - Definitive guide 5)
MULCAST_GXP1100=MulticastRTP/basic/239.0.0.1:1237
В БД Postgresql в таблице family_ext_c8_28 под id 15 следующая запись:
15 | a_family_c8_28 | 730 | 1 | Page | ${MULCAST_GXP1100},dir,120
Прошу помощи. Заранее спасибо!
Необходимые модули на месте:
module show like rtp
Module Description Use Count Status Support Level
bridge_native_rtp.so Native RTP bridging module 0 Running core
chan_rtp.so RTP Media Channel 0 Running core
res_pjsip_sdp_rtp.so PJSIP SDP RTP/AVP stream handler 0 Running core
res_rtp_asterisk.so Asterisk RTP Stack 0 Running core
res_rtp_multicast.so Multicast RTP Engine 1 Running core
res_srtp.so Secure RTP (SRTP) 0 Running core
6 modules loaded
module show like confbridge
Module Description Use Count Status Support Level
app_confbridge.so Conference Bridge Application 1 Running core
1 modules loaded
Executing [730@a_family_c8_28:1] Page("PJSIP/c074adb81338-0000000a", "MulticastRTP/basic/239.0.0.1:1237,dir,120")
-- Called basic/239.0.0.1:1237
[2023-12-01 23:31:12] WARNING[1425963][C-0000000b]: app_page.c:402 page_exec: Missing required sound file: 'beep'
> 0x7f333c0325a0 -- Strict RTP learning after remote address set to: 10.10.0.2:5118
-- MulticastRTP/0x7f33300215b0 answered
-- Channel CBAnn/514604176-0000000a;2 joined 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
== Begin MixMonitor Recording CBRec/514604176-0000000a
-- Channel CBRec/514604176-0000000a joined 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
-- Channel MulticastRTP/0x7f33300215b0 joined 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
> 0x7f333c0325a0 -- Strict RTP qualifying stream type: audio
> 0x7f333c0325a0 -- Strict RTP switching source address to 10.8.1.3:5118
-- Channel PJSIP/c074adb81338-0000000a joined 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
> 0x7f333c0325a0 -- Strict RTP learning complete - Locking on source address 10.8.1.3:5118
-- Channel PJSIP/c074adb81338-0000000a left 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
-- Channel MulticastRTP/0x7f33300215b0 left 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
-- Channel CBRec/514604176-0000000a left 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
== MixMonitor close filestream (mixed)
== End MixMonitor Recording CBRec/514604176-0000000a
-- Channel CBAnn/514604176-0000000a;2 left 'softmix' base-bridge <9005549f-fc64-426e-818c-9aaf83c0a2eb>
== Spawn extension (a_family_c8_28, 730, 1) exited non-zero on 'PJSIP/c074adb81338-0000000a'
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 15:16
ded
MulticastRTP/basic/239.0.0.1:1237
SIP устройства в локальной сети (предположительно SIP-громкоговорители для оповещения) должны а) поддерживать мультикаст, и б) быть настроены;
mvt писал(а):где этот файл искать, если его надо искать.
Это WARNING, а не ERROR, без пиканья тоже бы заработало.
В зависимости от ОС и версии Астериска
/usr/share/asterisk/sounds
или
/var/lib/asterisk/sounds
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 16:50
mvt
Ну, да в /var/lib/asterisk/sounds/ru есть файлы beep.wav .sln и так далее несколько штук, что-то я я их вчера там не увидел... в любом случае спасибо.
Однако, если они там есть, а WARNING[1494409][C-00000003]: app_page.c:402 page_exec: Missing required sound file: 'beep' сообщает что он найти его не может, то логично предположить, что он его хочет найти в каком-то другом месте о котором я не знаю, так в каком месте он их хочет увидеть? Нет ли у Вас предположений на сей счёт?
А, по поводу устройств и поддержки ими многоадресного пейджинга так вроде они его поддерживают это три телефона Grandstream GXP 2170 и один Grandstream GXP 1100.
При настройке этого пейджинга внутренним софтом телефонов Grandstream GXP 2170 между ними всё это работает, а вот через внешнее управление (asterisk) нет.
Запускается окно пейджинга только на том телефоне с которого набираешь номер 730 (Page).
Если вот эта строка неправильная MulticastRTP/basic/239.0.0.1:1236, ну так во-первых она по книжке, тут конечно, не факт, что книжка права, а во-вторых в инструкциях к этим телефонам в web-интерфейсе больше нечего указывать как только ip-адрес:port
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 17:01
ded
У меня нет предположений, так как вместо предположений есть знание.
Базовый язык голосовых промтов - английский, если не указано иное в глобальной секции
language=ru
например.
Поэтому звук /var/lib/asterisk/sounds/ru/beep.wav есть, но Астериск его там не ищет.
Стёрли все дефолтные звуки в /var/lib/asterisk/sounds/en ?
По телефонам: вы идёте своим, каким-то сложным путём, вас трудно будет переубедить в чём-либо, отсюда - нет мотиваций помогать. Явным образом у вас не хватает знаний по IP multicast, и нет практических навыков
Можно было бы задампить правильно работающую софтину Grandstream, по части ИП адресов и портов, и сравнить это с книжкой. Вы же не думаете, что ИП адреса и порты в примерах по книге надо 1:1 переносить на вашу структуру?
Желание ковыряться по выходным - похвальное, конечно, но идёт вразрез с моими представлениями о времени работы и отдыха.
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 18:06
mvt
Извините, знания, это важно.
Тем не менее, ранее мне никто лёгкого пути не предлагал, впрочем я никого и не просил, а потом никто не обозначал что есть лёгкий путь, а что сложный.
В чём моя вина, в том, что я ни с кем не посоветовался и выбрал не тот, лёгкий, путь, чтобы мне было легче помочь?
Вы же сами неоднократно тут приводили смысл этого форума (найди решение сам, поделись с остальными - формулировка не та, но смысл сохранён).
Я пытаюсь думать, что не так, в чём дело и где поискать проблему, потому и создал тему.
Ну, да, не хватает у меня знаний, я тоже не в радости от этого, так может лучше попытаться решить проблему, чем указывать на то, что я пошёл не тем путём?
По-моему наоборот это не плохо если я не пошёл по самому лёгкому пути, и, вообще, любой путь будет трудным, если он ни разу не пройден, в том числе и лёгкий.
Realtime в любых его проявлениях, в данном случае, ни в какой степени не относится к настройке многоадресного пейджинга, никак к нему не привязан, а потому рассуждение на тему кто какой путь выбрал лёгкий или тяжёлый не имеет смысла.
А, по поводу того, что я удалил звуковые файлы в папке en, так я их не удалял, asterisk установлен с русскими звуками они и есть и в папке ru, также есть предустановленные звуки en_GB там не полный набор тех папок и тех звуков что есть в папке ru.
Копирование файлов beep в папку звуков en_GB проблему WARNING[1496948][C-00000006]: app_page.c:402 page_exec: Missing required sound file: 'beep' не решило.
Однако, создание папки en с назначением ей владельца и группы asterisk и копированием в неё файла beep со всем спектром его расширений из папки ru проблему с обозначенным WARNING решило.
Executing [730@a_family_c8_28:1] Page("PJSIP/c074adb81338-00000002", "MulticastRTP/basic/239.0.0.1:1236,dir,120")
-- Called basic/239.0.0.1:1236
-- <PJSIP/c074adb81338-00000002> Playing 'beep.g722' (language 'ru')
-- MulticastRTP/0x7f961000cf20 answered
-- Channel CBAnn/1180994546-00000002;2 joined 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
== Begin MixMonitor Recording CBRec/1180994546-00000002
-- Channel CBRec/1180994546-00000002 joined 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
-- Channel MulticastRTP/0x7f961000cf20 joined 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
> 0x7f95b00c2690 -- Strict RTP learning after remote address set to: 10.10.0.2:5016
> 0x7f95b00c2690 -- Strict RTP qualifying stream type: audio
> 0x7f95b00c2690 -- Strict RTP switching source address to 10.8.1.3:5016
-- Channel PJSIP/c074adb81338-00000002 joined 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
> 0x7f95b00c2690 -- Strict RTP learning complete - Locking on source address 10.8.1.3:5016
-- Channel PJSIP/c074adb81338-00000002 left 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
-- Channel MulticastRTP/0x7f961000cf20 left 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
-- Channel CBRec/1180994546-00000002 left 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
== MixMonitor close filestream (mixed)
== End MixMonitor Recording CBRec/1180994546-00000002
-- Channel CBAnn/1180994546-00000002;2 left 'softmix' base-bridge <0942b43f-0118-4bce-85ec-3d64d63e75a2>
== Spawn extension (a_family_c8_28, 730, 1) exited non-zero on 'PJSIP/c074adb81338-00000002'
Но, достучаться до второго телефона я не смог, возможно проблема в строке MulticastRTP/basic/239.0.0.1:1236
Если есть конструктивные предложения у всех кто заинтересован в решении этой задачи за пределами выходных или в их пределах я с радостью их приму и проверю вдоль и поперёк.
P.S. А, был бы вариант "задампить" рабочие настройки с таких телефонов, так возможно и проблем бы таких не было с ip пейджингом.
Возможно, нужно "сходить" к производителю.
И, да, я не думаю, что всё надо копировать из книжки 1 к 1
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 18:16
mvt
ded писал(а):У меня нет предположений, так как вместо предположений есть знание.
Базовый язык голосовых промтов - английский, если не указано иное в глобальной секции
language=ru
например.
Поэтому звук /var/lib/asterisk/sounds/ru/beep.wav есть, но Астериск его там не ищет.
Стёрли все дефолтные звуки в /var/lib/asterisk/sounds/en ?
Установка языка ru в глобальной секции файла /etc/asterisk/asterisk.conf не сработала, может потому я и поймал
WARNING[1496948][C-00000006]: app_page.c:402 page_exec: Missing required sound file: 'beep'
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 19:11
ded
mvt писал(а):Установка языка ru в глобальной секции файла /etc/asterisk/asterisk.conf
??
Где же вы прочитали такое? Нужно устанавливать в канале. Типа iax.conf, sip.conf
[global]
language=ru
http://asterisk.ru/knowledgebase/Asterisk+sip+language
или управлять параметром через установку переменной в диалплане
Set(CHANNEL(language)=ru)
Начните читать всю книгу "Астериск будущее телефонии". Или искать ответы в интернете. Предполагаем, что все проблемы уже кем-то созданы, вопросы заданы, ответы получены, и надо только найти эти ответы.
https://yandex.com/search/?text=Asteris ... top_common
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 19:26
mvt
Пройдите по первой ссылке используемого Вами яндекса и обнаружите следующее:
http://linux.mixed-spb.ru/asterisk/sounds_russian.php (на этом сайте то, что указано ниже)
Еще один вариант: в файле asterisk.conf в секции options указать параметр defaultlanguage = ru:
asterisk.conf:
...
[options]
...
defaultlanguage = ru
...
И, да asterisk заговорил у меня по-русски везде, где это требовалось, в том числе voicemail через odbc...
Re: Многоадресный пейджинг
Добавлено: 02 дек 2023, 22:19
mvt
Данные из wireshark:
(Ниже показаны данные как происходит процесс инициализации многоадресной рассылки силами софта телефона Grandstream GXP 2170 при соответствующей настройке одной из виртуальных клавиш и назначении ей следующей строки: 239.0.0.1:1236)
Адрес 239.0.0.1:1236 назначен второму телефону находящемуся в той же сети OpenVPN-сервера, разумеется, в качестве адреса для прослушивания.
Телефон которым инициализируется процесс многоадресной рассылки имеет ip-адрес 10.8.1.3, телефон который должен принять рассылку имеет ip-адрес 10.8.1.5:
No. Time Source Destination Protocol Length Info
13 6.701912083 10.8.1.3 239.0.0.1 UDP 200 5018 → 1236 Len=172
14 6.721719033 10.8.1.3 239.0.0.1 UDP 200 5018 → 1236 Len=172
15 6.741332960 10.8.1.3 239.0.0.1 UDP 200 5018 → 1236 Len=172
16 6.760433655 10.8.1.3 239.0.0.1 UDP 200 5018 → 1236 Len=172
Звук есть, процесс идёт, всё работает.
Что касается asterisk и инициализации им многоадресной рассылки, то тут, для меня все сложнее, что происходит опишу позднее.
Re: Многоадресный пейджинг
Добавлено: 03 дек 2023, 10:24
ded
mvt писал(а):Адрес 239.0.0.1:1236 назначен второму телефону находящемуся в той же сети.
Телефон которым инициализируется процесс многоадресной рассылки имеет ip-адрес 10.8.1.3, телефон который должен принять рассылку имеет ip-адрес 10.8.1.5
Это не совсем так. Адреса 10.8.1.3 и 10.8.1.5 не мультикастовые. Если это VPN, то они скорее всего могут не видеть друг-друга на уровне ARP, они не в одной подсети 10.8.1/24 с широковещательным адресом 10.8.1.255.
клиент и сервер не обязательно должны иметь адреса из одной подсети и пинговать друг друга — достаточно, чтобы они были в одном широковещательном домене.
На Астериске (источнике) нужно настроить вещание в группу, например, 224.2.2.4 — это означает, что сервер отправляет трафик на IP-адрес 224.2.2.4. Или 239.0.0.1, как у вас в примере.
На клиенте (телефоне) настроен принимать поток группы 224.2.2.4 (или 239.0.0.1).
Отправитель посылает только одну копию трафика, независимо от количества получателей.
Трафик получают только те, кто действительно заинтересован в нём.
. . . . . .
https://habr.com/ru/articles/217585/