Impossible to establish ip2ip SIP call (at least android->desktop and desktop->android)
Describe your environment
- Device model: Samsung Galaxy Tab S5e SM-T720
- Android version: 11
Steps to reproduce
- Can you reproduce the bug: at will
- Steps:
- Create and connect SIP account on Android (ip2ip UDP)
- Create and connect SIP account on Desktop (ip2ip UDP)
- Connect your devices on same network
- Try to make a ip2ip voice call from android, accept from desktop
- Actual result: Call connecting activity disappear without establishing call. Missed outgoing call appears on conversation. It continues ringing. Have to restart the app.
Additional information
Looking through logs above make think it come from failing media negotiation.
Call logs from desktop to android :
[1682347249.158|40881|channeled_transport.cpp :186 ] [SIPS] process disconnect event
[1682347249.158|40880|ice_transport.cpp :1694] [ice:0x7fb0b8cd5570] ice send failed: Not found (PJ_ENOTFOUND)
[1682347249.158|40881|siptransport.cpp :209 ] pjsip transport@0x7fb184219c90 TLS to 142.170.109.216 -> DISCONNECTED
[1682347249.158|56389|siptransport.cpp :100 ] ~SipTransport@0x7faf08032e90 tr=0x7faf0809bfb0 rc=1
[1682347249.158|40880|tls_session.cpp :893 ] [TLS] transport failure on tx: errno = 5
[1682347249.159|56389|gitserver.cpp :477 ] GitServer destroyed
[1682347249.159|56389|siptransport.cpp :100 ] ~SipTransport@0x7fb184216bc0 tr=0x7fb184219c90 rc=1
[1682347249.159|56815|ice_transport.cpp :336 ] [ice:0x7fb0b8cd5570] destroying 0x7fb0b8dee168
[1682347249.659|56815|ice_transport.cpp :350 ] [ice:0x7fb0b8cd5570] Destroying ice_strans 0x7fb0b8dee168
[1682347250.159|56815|ice_transport.cpp :669 ] [ice:0x7fb0b8cd5570] Timer heap flushed after 500ms
[1682347250.159|56815|ice_transport.cpp :382 ] [ice:0x7fb0b8cd5570] done destroying
[1682347250.985|56392|sipvoiplink.cpp :892 ] [call:6027552833534573] INVITE@0x7fb0b9fe44c8 state changed to 4 (CONNECTING): cause=0, tsx@0x7fb14482de48 status 200 (OK)
[1682347250.985|56392|sipvoiplink.cpp :1121] [call:6027552833534573] INVITE@0x7fb0b9fe44c8 media update: status 220048
[1682347250.985|56392|sipvoiplink.cpp :1129] [call:6027552833534573] SDP offer failed, reason 415
[1682347250.985|56392|sipcall.cpp :756 ] [call:6027552833534573] Terminate SIP session
Call logs from desktop to android :
[1682347307.380|56356|manager.cpp :1047] Answer call 2214803505268786
[1682347307.380|56356|audiostream.cpp :162 ] Destroying stream with device alsa_output.pci-0000_0a_00.3.iec958-stereo
[1682347307.380|56356|sipcall.cpp :889 ] [call:2214803505268786] Answering incoming call with following media:
[1682347307.380|56356|sipcall.cpp :892 ] [call:2214803505268786] Media @0 - type [AUDIO] enabled [YES] muted [NO] label [audio_0] source [camera://046d_0821_0C411BC0] secure [NO]
[1682347307.380|56356|sipcall.cpp :2333] [call:2214803505268786] [audio_0] already un-muted
[1682347307.380|56356|sdp.cpp :604 ] Processing received offer for [Call ID 2214803505268786] with 1 media
[1682347307.380|56356|sdp.cpp :503 ] [SDP OFFER] Remote session:
v=0
o=localhost 3891336105 0 IN IP4 192.168.0.217
s=Call ID 7629516086156536
c=IN IP4 192.168.0.217
t=0 0
a=ice-ufrag:4825cdac
a=ice-pwd:3c5a176c6406842d7f98f7c5
m=audio 18770 RTP/SAVP 104 9 2 112 111 110 8 0 101
a=rtpmap:104 opus/48000/2
a=rtpmap:9 G722/8000
a=rtpmap:2 G726-32/8000
a=rtpmap:112 speex/32000
a=rtpmap:111 speex/16000
a=rtpmap:110 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp:18771 IN IP4 192.168.0.217
a=sendrecv
a=candidate:Hc0a800d9 1 UDP 2130706431 192.168.0.217 48819 typ host
a=candidate:Ha556a7c0 1 UDP 2130706431 fe80::2c47:5fff:fe35:d569 51892 typ host
a=candidate:Hc0a800d9 2 UDP 2130706430 192.168.0.217 41158 typ host
a=candidate:Ha556a7c0 2 UDP 2130706430 fe80::2c47:5fff:fe35:d569 36779 typ host
[1682347307.380|56356|sdp.cpp :263 ] Add media description [type [AUDIO] enabled [YES] muted [NO] label [audio_0] source [camera://046d_0821_0C411BC0] secure [NO]]
[1682347307.381|56356|sdp.cpp :503 ] [SDP ANSWER] Local session:
v=0
o=atlas 3891336107 0 IN IP4 192.168.49.92
s=Call ID 2214803505268786
c=IN IP4 192.168.49.92
t=0 0
m=audio 26904 RTP/AVP 104 9 2 112 111 110 8 0 101
a=rtpmap:104 opus/48000/2
a=rtpmap:9 G722/8000
a=rtpmap:2 G726-32/8000
a=rtpmap:112 speex/32000
a=rtpmap:111 speex/16000
a=rtpmap:110 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp:26905 IN IP4 192.168.49.92
a=sendrecv
[1682347307.381|56356|sipcall.cpp :3498] [call:2214803505268786] Setup ICE response
[1682347307.382|56356|ice_transport.cpp :331 ] [ice:0x25216e0] Creating IceTransport session for "2214803505268786"
[1682347307.382|56356|sipcall.cpp :3312] [call:2214803505268786] Successfully created media ICE transport [ice:0x5fe8c10]
[1682347307.382|56356|sipcall.cpp :3474] [call:2214803505268786] Setting ICE session [0x5fe8c10]
[1682347307.382|56356|sipcall.cpp :3334] [call:2214803505268786] Init media ICE transport
[1682347307.382|56356|ice_transport.cpp :406 ] [ice:0x25216e0] Initializing the session - comp count 2 - as a slave
[1682347307.382|56356|ice_transport.cpp :447 ] [ice:0x25216e0] Add host candidates
[1682347307.382|56356|ice_transport.cpp :906 ] [ice:0x25216e0] added host stun config for UDP transport
[1682347307.382|56356|ice_transport.cpp :906 ] [ice:0x25216e0] added host stun config for UDP transport
[1682347307.382|56356|ice_transport.cpp :906 ] [ice:0x25216e0] added host stun config for UDP transport
[1682347307.382|56356|ice_transport.cpp :989 ] [ice:0x25216e0] Add srflx reflexive candidates [192.168.49.92:21799 : 192.168.49.92:21799] for comp 1
[1682347307.382|56356|ice_transport.cpp :989 ] [ice:0x25216e0] Add srflx reflexive candidates [192.168.49.92:22898 : 192.168.49.92:22898] for comp 2
[1682347307.382|56356|ice_transport.cpp :469 ] [ice:0x25216e0] Added generic srflx candidates:
[1682347307.387|56356|ice_transport.cpp :707 ] [ice:0x25216e0] UDP initialization success
[1682347307.387|56356|ice_transport.cpp :787 ] [ice:0x25216e0] as slave
[1682347307.388|56356|ice_transport.cpp :881 ] [ice:0x25216e0] (local) ufrag=5d1495c7, pwd=29e8d5446da38dae04605688
[1682347307.388|56356|sipcall.cpp :1872] [call:2214803505268786] Add local attributes for ICE instance [0x5fe8c10]
[1682347307.388|56356|sipcall.cpp :1912] [call:2214803505268786] add ICE local candidates for media [type [AUDIO] enabled [YES] muted [NO] label [audio_0]] @ 0
[1682347307.388|56356|sipvoiplink.cpp :1121] [call:2214803505268786] INVITE@0x7fb0b8b329e8 media update: status 0
[1682347307.388|56356|sdp.cpp :139 ] Set active local session to [0x52c4148]. Was [(nil)]
[1682347307.388|56356|sdp.cpp :503 ] [SDP ANSWER] Local active session:
v=0
o=atlas 3891336107 1 IN IP4 192.168.49.92
s=Call ID 2214803505268786
c=IN IP4 192.168.49.92
t=0 0
a=ice-ufrag:5d1495c7
a=ice-pwd:29e8d5446da38dae04605688
m=audio 0 RTP/SAVP 104 9 2 112 111 110 8 0 101
[1682347307.388|56356|sdp.cpp :147 ] Set active remote session to [0x245f5a8]. Was [(nil)]
[1682347307.388|56356|sdp.cpp :503 ] [SDP ANSWER] Remote active session:
v=0
o=localhost 3891336105 0 IN IP4 192.168.0.217
s=Call ID 7629516086156536
c=IN IP4 192.168.0.217
t=0 0
a=ice-ufrag:4825cdac
a=ice-pwd:3c5a176c6406842d7f98f7c5
m=audio 18770 RTP/SAVP 104 9 2 112 111 110 8 0 101
a=rtpmap:104 opus/48000/2
a=rtpmap:9 G722/8000
a=rtpmap:2 G726-32/8000
a=rtpmap:112 speex/32000
a=rtpmap:111 speex/16000
a=rtpmap:110 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp:18771 IN IP4 192.168.0.217
a=sendrecv
a=candidate:Hc0a800d9 1 UDP 2130706431 192.168.0.217 48819 typ host
a=candidate:Ha556a7c0 1 UDP 2130706431 fe80::2c47:5fff:fe35:d569 51892 typ host
a=candidate:Hc0a800d9 2 UDP 2130706430 192.168.0.217 41158 typ host
a=candidate:Ha556a7c0 2 UDP 2130706430 fe80::2c47:5fff:fe35:d569 36779 typ host
[1682347307.388|56356|sipcall.cpp :968 ] [call:2214803505268786] Answering with contact header: <sip:192.168.49.92:5062>
[1682347307.388|56356|sipvoiplink.cpp :892 ] [call:2214803505268786] INVITE@0x7fb0b8b329e8 state changed to 4 (CONNECTING): cause=0, tsx@0x7fb0b404aa98 status 200 (OK)
[1682347307.388|56356|call.cpp :241 ] [call:2214803505268786] state change 0/1, cnx 3/4, code 0
[1682347307.388|56356|call.cpp :275 ] [call:2214803505268786] emit client call state change CURRENT, code 0
[1682347307.389|56356|manager.cpp :603 ] ----- Switch current call id to '2214803505268786' -----
[1682347307.389|56389|sipcall.cpp :2605] [call:2214803505268786] Media negotiation complete
[1682347307.389|56356|manager.cpp :1614] Add audio to call 2214803505268786
[1682347307.389|56389|sipcall.cpp :2671] [call:2214803505268786] Starting ICE
[1682347307.389|56356|manager.cpp :1625] [call:2214803505268786] Attach audio
[1682347307.389|56356|ringbufferpool.cpp :174 ] Bind call 2214803505268786 to call audiolayer_id
[1682347307.389|56389|sdp.cpp :941 ] Media#0 is disabled. Media ports: local 0, remote 18770
[1682347307.389|56356|ringbufferpool.cpp :155 ] Bind rbuf '2214803505268786' to callid 'audiolayer_id'
[1682347307.389|56389|ice_transport.cpp :1231] [ice:0x25216e0] start failed: no remote candidates[1682347307.389|56356|ringbufferpool.cpp :155 ] Bind rbuf 'audiolayer_id' to callid '2214803505268786'
[1682347307.389|56389|sipcall.cpp :2702] [call:2214803505268786] ICE media failed to start
[1682347307.389|56356|audiostream.cpp :50 ] Playback: Creating stream with device (48000Hz, 2 chan
Edited by Sébastien Blin