Askozia <-> Router (NAT & Port Forwarding) <-> VOIP Provider (Эр-телеком) <-> ТфОП <-> Факс
Провайдер декларирует передачу факсов по T.38
При попытке принять факс на виртуальный факс выдает: - при активированной T.38
Код
Dec 25 06:32:09 asterisk[1645]: WARNING[1731]: chan_sip.c:9347 in process_sdp: Rejecting offer with image stream due to UDPTL initialization failureDec 25 06:32:09 asterisk[1645]: WARNING[8640]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too shortDec 25 06:32:09 asterisk[1645]: WARNING[8640]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too shortDec 25 06:32:09 asterisk[1645]: WARNING[8640]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too short<обрыв соединения>
-при выключеной T.38
Код
Dec 25 06:34:35 asterisk[1645]: WARNING[1731]: chan_sip.c:9347 in process_sdp: Rejecting offer with image stream due to UDPTL initialization failureDec 25 06:34:43 asterisk[1645]: WARNING[8923]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too shortDec 25 06:34:43 asterisk[1645]: WARNING[8923]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too shortDec 25 06:34:43 asterisk[1645]: WARNING[8923]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too shortDec 25 06:34:43 asterisk[1645]: WARNING[8923]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too shortDec 25 06:34:43 asterisk[1645]: WARNING[8923]: res_rtp_asterisk.c:2160 in ast_rtp_read: RTP Read too short<...><обрыв соединения>
В какую сторону копать? Отказаться от факсов возможности нет!
Выложите полный лог, желательно с вечернего времени, когда звонков мало. В сети довольно много обсуждений, касательно предупреждения RTP Read too short Dehttp://asteriskforum.ru/viewtopic.php?t=10366
RTP пакет приходит или пустым или слишком маленьким.
Выложить просто системный лог askozia или еще какую-нибудь детализацию включить в CLI?
И еще, можно ли как-то посмотреть поддержку провайдером T.38? Через AMI для провайдерских peer'ов показывает "SIP-T.38Support: N", но что это: реальные данные или информация из конфигов, я не знаю.
Попробовал принять на 2 виртуальных факса: с активированным t.38 (номер 155) и нет (номер 199). Схема следующая: - созванивался с номера 102 с факсом на PSTN - после короткого разговора переводил на виртуальный факс (стартовал sip debug) - при начале сигналов факса противоположная сторона запускала прием - после обрыва останавливал debug/
Думаю, что по дампам sip-пакетов лучше видно чем по логу. Насколько позволяет понять мой уровень развития - провайдер предлагает t38 (с типом media - image), но askozia его отклоняет. Вот кусок из лога в этот момент попытки INVITE от провайдера:
Код
asterisk[1647]: WARNING[1709]: chan_sip.c:9347 in process_sdp: Rejecting offer with image stream due to UDPTL initialization failure
Проблема решена. Прописал в настройках провайдера в разделе "Дополнительные параметры" строку: t38pt_udptl=yes,redundancy,maxdatagram=200
Все поехало, даже за NAT. После переключения на виртуальный факс (с активированным T38) детектируется T38, asterisk делает re-invite и все замечательно принимается.
Может кому пригодится.
ps. осталось придумать что-то с отправкой, вдруг понадобится...
Отправка факсов реализована в нашей сборке askozia в связке с наши продуктом "Панель телефонии Asterisk для 1С". Можно отправить факс в активный канал.