crossle / janus-gateway-android

Implements Janus gateway video room on Android
MIT License
63 stars 30 forks source link

ICE Connection Failed on Android when subscriber drops the call #29

Open sajidjutt7 opened 1 year ago

sajidjutt7 commented 1 year ago

Call is working fine.

Only problem is ICE Connection failure when any opponent peer or subscriber leaves the call.

ICE Connection gets disconnected for that peer. Which is fine. But then in 10 seconds of that. ICE Connection state failed received in PeerConnection onIceConnectionChange() callback.

No Clue why it triggered this failure.

Same code of Crossle is working fine in iOS Swift code. ICE disconnected when other peer leaves VideoRoom but ICE Connection doesnot fails as in case of android.

Following logs flow can help in understanding.

These are from the state when opponnent peer drops call

janus: event - plugin -> unpublished
IceConnectionState newState is: DISCONNECTED
onIceDisconnected()
janus: hangup
janus: event - plugin -> leaving
subscriberOnLeaving()
janus: success
janus: detached
IceConnectionState newState is: FAILED