Нет звука и сбоя RTP при воспроизведении файла с Asterisk Server - PullRequest
0 голосов
/ 16 апреля 2019

Я недавно установил свой первый Asterisk на экземпляр AWS EC2 и столкнулся с некоторой незначительной проблемой, в настоящее время телефоны не получают инструкцию повесить трубку, а также нет звука при воспроизведении файла с сервера.

IЯ думаю, что проблема связана с проблемой общего и частного IP-адреса экземпляра сервера, поэтому у меня есть публичный IP-адрес xxxx и частный IP-адрес yyyy, телефоны регистрируются на сервере в xxxx и могут набирать добавочные номера, и теперьс некоторыми изменениями NAT я могу слышать и говорить с телефона на телефон, но они не зависают в конце вызовов, также, если при воспроизведении файла с сервера нет звука и нет зависания в конце вызова.

Я попробовал его с выключенным брандмауэром, и ВСЕ TRAFFIC ВСЕ ПОРТЫ открыты на экземпляре, так что я не думаю, что это проблема с передней стенкой или NAT, как сгладил их, я думаю, что это связано с тем, что внутренние и внешние IP-адреса отличаются иливозможно, протокольный порт RTP на экземпляре не установлен где-то

thТелефоны показывают, что они соединяются, но затем протокол RTP не работает (и он показывает IP-адрес yyyy, как показано ниже, когда я ожидал, что он покажет общедоступный IP-адрес xxxx

16/4/2019 15:30:06 [NOTICE] PHN: TPL: Socket 364 idle/connect timeout
16/4/2019 15:30:10 [ERROR ] PHN: SIP: transaction_timeout udp: 1001331 (32000)
16/4/2019 15:30:10 [ERROR ] PHN: SIP: transport error: 1001331 -> udp:y.y.y.y:5060
16/4/2019 15:30:10 [NOTICE] PHN: SIP: Add dirty host: udp:y.y.y.y:5060 (0 sec)
16/4/2019 15:30:10 [NOTICE] PHN: SIP: final transport error: 1001331 -> udp:y.y.y.y:5060
16/4/2019 15:30:10 [ERROR ] PHN: SIP: transport error 1001331: generating fake 599
16/4/2019 15:30:10 [NOTICE] MEDIA: MediaIpc::rtpClose: RP72
16/4/2019 15:30:10 [NOTICE] MEDIA: MediaIpc::rtpClose: RC72
16/4/2019 15:30:12 [WARN  ] PHN: SIP: process_registrar_packet: 401 needs 128 bit nonce
16/4/2019 15:30:12 [NOTICE] PHN: SIP: process auth:Match challenge for user=WB001, realm=asterisk
16/4/2019 15:30:12 [NOTICE] PHN: RTP: set_destination RP73 adr=y.y.y.y:19684
16/4/2019 15:30:12 [WARN  ] MEDIA: CallStats: 2156890680 not found

Сервер показывает следующий журнал ..

  == Using SIP RTP CoS mark 5
-- Executing [200@LocalSets:1] Answer("SIP/WB001-00000015", "") in new stack
-- Executing [200@LocalSets:2] Playback("SIP/WB001-00000015", "hello-world") in new stack
-- <SIP/WB001-00000015> Playing 'hello-world.gsm' (language 'en')
-- Executing [200@LocalSets:3] Hangup("SIP/WB001-00000015", "") in new stack
  == Spawn extension (LocalSets, 200, 3) exited non-zero on 'SIP/WB001-00000015'
[Apr 16 15:30:45] WARNING[13228]: chan_sip.c:4119 retrans_pkt: 
Retransmission timeout reached on transmission f2e6b55c11ce-zqpp4q4dbedu for seqno 2 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
Packet timed out after 31998ms with no response
  == Using SIP RTP CoS mark 5
 -- Executing [101@LocalSets:1] Dial("SIP/WB001-00000016", "SIP/WB002") in new stack
  == Using SIP RTP CoS mark 5
-- Called SIP/WB002
-- SIP/WB002-00000017 is ringing
-- SIP/WB002-00000017 is ringing
-- SIP/WB002-00000017 answered SIP/WB001-00000016
-- Channel SIP/WB002-00000017 joined 'simple_bridge' basic-bridge <87c7a794-f9e6-4488-8957-9c0db9e0234f>
-- Channel SIP/WB001-00000016 joined 'simple_bridge' basic-bridge <87c7a794-f9e6-4488-8957-9c0db9e0234f>
[Apr 16 15:32:14] WARNING[13228]: chan_sip.c:4119 retrans_pkt: Retransmission timeout reached on transmission 49e7b55c4a45-rd1is68l1q0a for seqno 2 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
Packet timed out after 32000ms with no response
 [Apr 16 15:32:14] WARNING[13228]: chan_sip.c:4143 retrans_pkt: Hanging up call 49e7b55c4a45-rd1is68l1q0a - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
-- Channel SIP/WB001-00000016 left 'native_rtp' basic-bridge <87c7a794-f9e6-4488-8957-9c0db9e0234f>
  == Spawn extension (LocalSets, 101, 1) exited non-zero on 'SIP/WB001-00000016'
-- Channel SIP/WB002-00000017 left 'native_rtp' basic-bridge <87c7a794-f9e6-4488-8957-9c0db9e0234f>
[Apr 16 15:32:14] WARNING[13228][C-00000011]: chan_sip.c:24312 handle_response_invite: Re-invite to non-existing call leg on other UA. SIP dialog '3ca4381a658c7f5f2cee3d8c02acb2a7@172.31.29.187:5060'. Giving up.

1 Ответ

0 голосов
/ 18 апреля 2019

Если кто-то еще сталкивался с этим типом проблемы, это была проблема кодека и брандмауэра, однажды открывшая RTP-порты на сервере (в экземпляре EC2 при входящем соединении убедитесь, что TCP и UDP соответствуют начальной и конечной точкам RTP в RTP.conf)

В CLI asterisk установите степень детализации до 3 или более и запустите отладку SIP (вы можете сделать это в config.conf или в CLI)

Я вернул следующее ввызов

== Using SIP RTP CoS mark 5
-- Executing [200@LocalSets:1] Answer("SIP/WB001-00000000", "") in new stack
-- Executing [200@LocalSets:2] Playback("SIP/WB001-00000000", "hello-world") in new stack
[Apr 18 12:32:02] WARNING[3055][C-00000001]: channel.c:5579 set_format: Unable to find a codec translation path: (gsm) -> (g729)
[Apr 18 12:32:02] WARNING[3055][C-00000001]: file.c:1252 ast_streamfile: Unable to open hello-world (format (g729)): No such file or directory
[Apr 18 12:32:02] WARNING[3055][C-00000001]: app_playback.c:492 playback_exec: Playback failed on SIP/WB001-00000000 for hello-world
-- Executing [200@LocalSets:3] Hangup("SIP/WB001-00000000", "") in new stack
  == Spawn extension (LocalSets, 200, 3) exited non-zero on 'SIP/WB001-00000000'
[Apr 18 12:32:34] WARNING[1334]: chan_sip.c:4119 retrans_pkt: Retransmission timeout reached on transmission 3160b85c0cbe-bx3kp12qqxec for seqno 2 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions

Время ожидания пакета истекло после 32001 мс без ответа

проблема в том, что при новой установке я не получил лицензию G729, поэтому кодек не установлен, я просто отклонил этот кодекв файле sip.conf.

...