On iOS 9 call get disconnected after some seconds of conectiveity


#1

Description

In my system I initiate call procedure form web and send a connect information to client using XMPP message. Once client receive message it joins the room that web created and call get stablished, all this work fine with my iphone 7 and iPad Mini iPod 5th gen first gen.

But after few second for connectivity on my iPad Mini (iOS 9.1.3) or iPod (IOS 9.1.1) call automatically disconnects.

Current behavior

Call automatically disconnect after few seconds of activity. Check following log for more details

2019-03-07 12:01:43.695 GoSession[255:124762] GSChatManager: xmppStream:didReceiveMessage: message = <message xmlns="jabber:client" from="5c480cfbcdf3060cb68d67c6@xmpp.my.domain.path/7v37be3o1f" to="5c480d7ecdf3060cb68d67cc@xmpp.my.domain.path" type="chat"><body>[{"messageText":"ROOM_NAME","messageType":"call","senderID":"5c480cfbcdf3060cb68d67c6","receiverID":"5c480d7ecdf3060cb68d67cc"}]</body></message>
2019-03-07 12:01:43.696 GoSession[255:124762] Recieved Call Action Notifiation: NSConcreteNotification 0x17f41740 {name = kNotificationCallUpdates; object = <Message: 0x17dc20c0>}
2019-03-07 12:01:46.586 GoSession[255:124762] -[JitsiCallViewViewController conferenceWillJoin:] 
Data:{
    url = "https://video.my.domain.path/ROOM_NAME?jwt=SECRET_KEY#config.startWithVideoMuted=1&config.startWithAudioMuted=0";
}
2019-03-07 12:02:06.239 GoSession[255:124762] -[JitsiCallViewViewController conferenceJoined:] 
Data:{
    url = "https://video.my.domain.path/ROOM_NAME?jwt=SECRET_KEY#config.startWithVideoMuted=1&config.startWithAudioMuted=0";
    user = "{\"_jid\":\"ROOM_NAME@conference.video.my.domain.path/7c010afb\",\"_id\":\"7c010afb\",\"isSelf\":false,\"myID\":\"6bb2321b\"}";
}
2019-03-07 12:02:06.476 GoSession[255:124762] -[JitsiCallViewViewController conferenceJoined:] 
Data:{
    url = "https://video.my.domain.path/ROOM_NAME?jwt=SECRET_KEY#config.startWithVideoMuted=1&config.startWithAudioMuted=0";
}

2019-03-07 12:02:09.145 GoSession[255:124982] [VideoTrackAdapter] Adapter created for track mixedlabelvideo0
2019-03-07 12:02:09.842 GoSession[255:127535] candidate:2131708102 1 udp 2122260223 192.168.0.100 58595 typ host generation 0 <- candidate
2019-03-07 12:02:09.846 GoSession[255:127535] addICECandidateresult: RTCIceCandidate:

0
candidate:2131708102 1 udp 2122260223 192.168.0.100 58595 typ host generation 0
(null)
2019-03-07 12:02:09.849 GoSession[255:127535] candidate:2131708102 1 udp 2122260223 192.168.0.100 64917 typ host generation 0 <- candidate
2019-03-07 12:02:09.865 GoSession[255:127535] addICECandidateresult: RTCIceCandidate:

0
candidate:2131708102 1 udp 2122260223 192.168.0.100 64917 typ host generation 0
(null)
2019-03-07 12:02:09.866 GoSession[255:127535] candidate:831304758 1 tcp 1518280447 192.168.0.100 9 typ host tcptype active generation 0 <- candidate
2019-03-07 12:02:09.873 GoSession[255:127535] addICECandidateresult: RTCIceCandidate:

0
candidate:831304758 1 tcp 1518280447 192.168.0.100 9 typ host tcptype active generation 0
(null)
2019-03-07 12:02:09.873 GoSession[255:127535] candidate:831304758 1 tcp 1518280447 192.168.0.100 9 typ host tcptype active generation 0 <- candidate
2019-03-07 12:02:09.876 GoSession[255:127535] addICECandidateresult: RTCIceCandidate:

0
candidate:831304758 1 tcp 1518280447 192.168.0.100 9 typ host tcptype active generation 0
(null)
2019-03-07 12:02:09.877 GoSession[255:127535] candidate:4266086002 1 udp 1686052607 103.121.115.140 58595 typ srflx raddr 192.168.0.100 rport 58595 generation 0 <- candidate
2019-03-07 12:02:09.882 GoSession[255:127535] addICECandidateresult: RTCIceCandidate:

0
candidate:4266086002 1 udp 1686052607 103.121.115.140 58595 typ srflx raddr 192.168.0.100 rport 58595 generation 0
(null)
2019-03-07 12:02:09.884 GoSession[255:127535] candidate:4266086002 1 udp 1686052607 103.121.115.140 64917 typ srflx raddr 192.168.0.100 rport 64917 generation 0 <- candidate
2019-03-07 12:02:09.886 GoSession[255:127535] addICECandidateresult: RTCIceCandidate:

0
candidate:4266086002 1 udp 1686052607 103.121.115.140 64917 typ srflx raddr 192.168.0.100 rport 64917 generation 0
(null)
2019-03-07 12:02:12.146 GoSession[255:124762] [VideoTrackAdapter] Mute event for 8 7560A823-DAD3-4760-9369-F7726AB351DC mixedlabelvideo0
2019-03-07 12:02:12.474 [error][tid:com.facebook.react.JavaScript] '[JitsiConference.js]', '<n>: ', 'Failed to accept incoming Jingle session', { code: '',
  reason: 'item-not-found',
  msg: 'No participant found for: ROOM_NAME@conference.video.my.domain.path/6bb2321b',
  session: 'JingleSessionPC[p2p=false,initiator=false,sid=du2th86f1h07d]' }
2019-03-07 12:02:13.472 GoSession[255:124982] [VideoTrackAdapter] Adapter created for track ae4ac347-45f9-4ceb-a89e-9ac66f1bd10b-1
2019-03-07 12:02:16.508 GoSession[255:124762] [VideoTrackAdapter] Mute event for 9 210366F3-B228-4739-B813-A05096F0F92A ae4ac347-45f9-4ceb-a89e-9ac66f1bd10b-1
2019-03-07 12:02:50:685 GoSession[255:124762] GSChatManager: xmppStream:didReceiveIQ: iq = <iq xmlns="jabber:client" type="get" id="723-4451" from="xmpp.my.domain.path" to="5c480d7ecdf3060cb68d67cc@xmpp.my.domain.path/ag9bbenlq0"><ping xmlns="urn:xmpp:ping"></ping></iq>
2019-03-07 12:02:50:688 GoSession[255:124762] GSChatManager: xmppStream:didSendIQ:, IQ = <iq type="error" to="xmpp.my.domain.path" id="723-4451"><ping xmlns="urn:xmpp:ping"></ping><error type="cancel" code="501"><feature-not-implemented xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"></feature-not-implemented></error></iq>





REJECTION LOG
2019-03-07 12:03:25.492 GoSession[255:124762] -[JitsiCallViewViewController conferenceFailed:] 
Data:{
    error = "conference.setup_failed";
    url = "https://video.my.domain.path/ROOM_NAME?jwt=SECRET_KEY#config.startWithVideoMuted=1&config.startWithAudioMuted=0";
    user = self;
}
2019-03-07 12:03:25.665 GoSession[255:127887] [VideoTrackAdapter] Adapter removed for track mixedlabelvideo0
2019-03-07 12:03:25.743 GoSession[255:127887] [VideoTrackAdapter] Adapter removed for track ae4ac347-45f9-4ceb-a89e-9ac66f1bd10b-1
2019-03-07 12:03:26.003 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: PARTICIPANT_JOINED_SOUND'
2019-03-07 12:03:26.030 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: PARTICIPANT_LEFT_SOUND'
2019-03-07 12:03:26.054 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: RECORDING_OFF_SOUND'
2019-03-07 12:03:26.086 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: RECORDING_ON_SOUND'
2019-03-07 12:03:26.117 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: OUTGOING_CALL_EXPIRED_SOUND_ID'
2019-03-07 12:03:26.142 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: OUTGOING_CALL_REJECTED_SOUND_ID'
2019-03-07 12:03:26.189 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: OUTGOING_CALL_RINGING_SOUND_ID'
2019-03-07 12:03:26.215 [error][tid:com.facebook.react.JavaScript] '[__filename]', '<l>: ', '_REMOVE_AUDIO_ELEMENT: no sound for id: OUTGOING_CALL_START_SOUND_ID'
2019-03-07 12:03:27.314 GoSession[255:124981] 12:03:27.314 ERROR:    [worker_thread 0x0x17ed8b80] AVAudioSession.mm:692: -[AVAudioSession setActive:withOptions:error:]: Deactivating an audio session that has running I/O. All I/O should be stopped or paused prior to deactivating the audio session.
2019-03-07 12:03:32.243 GoSession[255:124762] GSChatManager: xmppStream:didReceiveMessage: message = <message xmlns="jabber:client" from="5c480cfbcdf3060cb68d67c6@xmpp.my.domain.path/7v37be3o1f" to="5c480d7ecdf3060cb68d67cc@xmpp.my.domain.path" type="chat"><body>[{"messageText":"ROOM_NAME","messageType":"cut","senderID":"5c480cfbcdf3060cb68d67c6","receiverID":"5c480d7ecdf3060cb68d67cc"}]</body></message>
2019-03-07 12:03:32.244 GoSession[255:124762] Recieved Call Action Notifiation: NSConcreteNotification 0x17ff76d0 {name = kNotificationCallUpdates; object = <Message: 0x17d20860>}

Expected Behavior

Call should remain active unless either of calling party disconnect those.

Possible Solution

I think this have something to do with device capabilities, so better resource management will be helpful.

Steps to reproduce

  1. Launch application on an iPad mini first gen, or ipod 5th gen
  2. Connect a call
  3. Leave it open for about 60-12 sec

This will automatically disconnect the call.

Environment details

Device: iPOD 5th Gen, iPad Mini
iOS: 9.1.1, 9.1.3
Internet : 40 Mbps Wifi Connection
One calling end is Web.


#2

Have you checked jicofo logs?


#3

Thank for reply @damencho I am not sure about jicofo logs where can check those I have been mainly focused at Xcode logs which are listed above.


#4

Those you can find on your deployment under /var/log/jitsi.