Twilio에서 제공 한 보안 SIP 트렁크를 사용하여 IVR을 구현하고 있습니다. Twilio의 Asterisk 구성 안내서를 구현하고/usr/local/lib에 SRTP를 설치하고 https://wiki.asterisk.org/wiki/display/AST/Secure+Calling+Tutorial의 구성을 구현했습니다.별표 : SIP 호출에서 120 초 후 "TLS 완전 종료 경보 읽기 데이터"
2 분보다 긴 모든 호출에 문제가있는 것은 완전히 종료 할 수 없으며 Asterisk를 다시 시작합니다. (pjsip하지 chan_sip 사용)
sip.conf :
[general]
; other configuration lines removed
tlsenable=yes
tlsbindaddr=0.0.0.0
tlscertfile=/etc/pki/tls/private/pbx.pem
tlscafile=/etc/pki/tls/private/gd_bundle-g2-g1.crt
tlscipher=ALL
tlsclientmethod=tlsv1
tlsdontverifyserver=yes
[twilio-trunk](!)
type=peer
context=from-twilio ;Which dialplan to use for incoming calls
dtmfmode=rfc4733
canreinvite=no
insecure=port,invite
transport=tls
qualify=yes
encryption=yes
media_encryption=sdes
내가하고 잘 전화를 받고, 나는 전화가 Twilio 자신의 지원 대기열에서 와이어 샤크 및 확인을 통해 모두 암호화 확인 할 수 있습니다. 모든 호출에 정확히 1백20초에서
이 디버그 팝업 :
[Dec 6 13:14:39] DEBUG[30015]: iostream.c:157 iostream_read: TLS clean shutdown alert reading data
[Dec 6 13:14:39] DEBUG[30015]: chan_sip.c:2905 sip_tcptls_read: SIP TCP/TLS server has shut down
통화가 호출자는 결코 그들이 컨텍스트에서 끊기를 명중 할 때까지 문제, 즉이 알고 양방향으로 흐를 계속 h, 1, 전화 끊기(). 그런 다음 Asterisk가 재시작 (새 PID)되고 호출자가 통화 시간이 빠르기 전에 또 다른 5 분 동안 limbo에 멈추게됩니다. Twilio는 BYE를 확인하고 전화 끊기 시점에서 ACK를 반환합니다.
13.11에 있었고 15.1.3으로 업데이트되었습니다. 120 초 이상 호출하면 디버그 및 별표가 다시 시작될 때 TLS 메시지가 표시됩니다.
Google 검색 결과가 없습니다. Twilio는 진짜 도움이되지 못했습니다. 누군가 일어나고있는 일과 내가 다음에 볼 필요가있는 곳을 밝힐 수 있습니까?
더 많은 로그 :
[Dec 8 10:18:48] DEBUG[4993][C-00000001]: channel.c:5551 set_format: Channel SIP/twilio0-00000000 setting write format path: gsm -> ulaw
[Dec 8 10:18:48] DEBUG[4993][C-00000001]: res_rtp_asterisk.c:4017 rtp_raw_write: Difference is 2472, ms is 329
[Dec 8 10:18:48] DEBUG[4993][C-00000001]: channel.c:3192 ast_settimeout_full: Scheduling timer at (50 requested/50 actual) timer ticks per second
– <SIP/twilio0-00000000> Playing ‘IVR/omnicare_9d_account.gsm’ (language ‘en’)
[Dec 8 10:18:48] DEBUG[4993][C-00000001]: res_rtp_asterisk.c:4928 ast_rtcp_interpret: Got RTCP report of 64 bytes from 34.203.250.7:10475
[Dec 8 10:18:53] DEBUG[4993][C-00000001]: res_rtp_asterisk.c:4928 ast_rtcp_interpret: Got RTCP report of 64 bytes from 34.203.250.7:10475
[Dec 8 10:18:55] DEBUG[4992]: iostream.c:157 iostream_read: TLS clean shutdown alert reading data
[Dec 8 10:18:55] DEBUG[4992]: chan_sip.c:2905 sip_tcptls_read: SIP TCP/TLS server has shut down
[Dec 8 10:18:58] DEBUG[4993][C-00000001]: channel.c:3192 ast_settimeout_full: Scheduling timer at (0 requested/0 actual) timer ticks per second
[Dec 8 10:18:58] DEBUG[4993][C-00000001]: channel.c:3192 ast_settimeout_full: Scheduling timer at (0 requested/0 actual) timer ticks per second
[Dec 8 10:18:58] DEBUG[4993][C-00000001]: channel.c:3192 ast_settimeout_full: Scheduling timer at (0 requested/0 actual) timer ticks per second
[Dec 8 10:18:58] DEBUG[4993][C-00000001]: channel.c:5551 set_format: Channel SIP/twilio0-00000000 setting write format path: ulaw -> ulaw
[Dec 8 10:18:58] DEBUG[4993][C-00000001]: res_rtp_asterisk.c:4928 ast_rtcp_interpret: Got RTCP report of 64 bytes from 34.203.250.7:10475
[Dec 8 10:19:01] DEBUG[4914]: cdr.c:4305 ast_cdr_engine_term: CDR Engine termination request received; waiting on messages…
Asterisk uncleanly ending (0).
Executing last minute cleanups
== Destroying musiconhold processes
[Dec 8 10:19:01] DEBUG[4914]: res_musiconhold.c:1627 moh_class_destructor: Destroying MOH class ‘default’
[Dec 8 10:19:01] DEBUG[4914]: cdr.c:1289 cdr_object_finalize: Finalized CDR for SIP/twilio0-00000000 - start 1512749813.880448 answer 1512749813.881198 end 1512749941.201797 dispo ANSWERED
== Manager unregistered action DBGet
== Manager unregistered action DBPut
== Manager unregistered action DBDel
== Manager unregistered action DBDelTree
[Dec 8 10:19:01] DEBUG[4914]: asterisk.c:2157 really_quit: Asterisk ending (0).
시도해 볼 수있는 또 다른 테스트는 두 번째 PBX가 가능한 한 동일한 구성에 가깝게 로컬로 통화하도록 구성하여 방정식에서 방화벽을 제거하는 것입니다. 이것은 pbx의 문제를 배제하고 방화벽에서 네트워크 간섭을 제안합니다. – QuickDanger