Intel® Collaboration Suite for WebRTC
Community support and discussions on the Intel® Collaboration Suite for WebRTC (Intel® CS for WebRTC).

Is it a bug about publish limit

leo_a_
Beginner
515 Views

Hi, 

     I found a problem about publishLimit by using Android SDK communicating with MCU conference server, not sure it's a bug or not. The situation like this:

1,  set publishLimit = 1 in Test room which was just created.

2, user A join Test room, publish his local stream successfully.

3, user B join Test room, publish local stream. Then was notified publish success. after few minutes, onIceConnectionChange()  change status to FAILED, but callback is null in this ActionCallback publishCallback = (ActionCallback)this.pendingCallbacks.get(stream.getMediaStream().label()) ,onStreamActionFailed() of conferenceClient.class.

so the

if(publishCallback != null) {
    publishCallback.onFailure(e);
} 

never get in. The caller never now published failed actually. I check the log file on MCU conference server, the woogen-portal.stdout show this:  INFO:SocketIOServer - emitted connection_failed, reason: controller.publish failed, reason: Too many publishers.

4, user B logcat of Android Studio :

 

 

6-20 14:56:44.213 26810-26852/com.lmdgame.lmdaudiodemo D/WooGeen-ConferenceClient: Publish stream 

06-20 14:56:44.238 26810-15607/com.lmdgame.lmdaudiodemo D/WooGeen-ConferencePeerConnectionChannel: sendOffer

06-20 14:56:44.239 26810-26853/com.lmdgame.lmdaudiodemo D/WooGeen-PCFactory: Create PeerConnection.

06-20 14:56:44.244 26810-15608/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: Add Stream

06-20 14:56:44.245 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onRenegotiationNeeded

06-20 14:56:44.246 26810-15608/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: Create Offer

06-20 14:56:44.252 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: SDPObserver ---- onCreateSuccess

06-20 14:56:44.255 26810-15136/com.lmdgame.lmdaudiodemo W/WooGeen-PeerConnectionChannel: No m=video  line, so can't prefer vp8

06-20 14:56:44.257 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: Found opus rtpmap 111, prefer at m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 105 13 126

06-20 14:56:44.257 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: Change media description: m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 105 13 126

06-20 14:56:44.280 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: PC Observer ---- onSignalingChange: HAVE_LOCAL_OFFER

                                                                                         

                                                                                         --------- beginning of system

06-20 14:56:44.282 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: SDPObserver ---- onSetSuccess

06-20 14:56:44.285 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: PC Observer ---- onSignalingChange: STABLE

06-20 14:56:44.295 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceConnectionChange:CHECKING

06-20 14:56:44.298 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: PC Observer ---- onAddStream

06-20 14:56:44.298 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-ConferencePeerConnectionChannel: audio1  video0

06-20 14:56:44.298 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-ConferencePeerConnectionChannel: Weird-looking stream: com.intel.webrtc.base.LocalCameraStream@150e1b9

06-20 14:56:44.298 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceGatheringChange:GATHERING

06-20 14:56:44.299 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceCandidate

06-20 14:56:44.299 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceCandidate

06-20 14:56:44.299 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: SDPObserver ---- onSetSuccess

06-20 14:56:44.300 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceGatheringChange:COMPLETE

06-20 14:56:44.333 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceConnectionChange:CONNECTED

06-20 14:56:44.333 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-ConferencePeerConnectionChannel: Change State=CONNECTED

06-20 14:56:44.334 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceConnectionChange:COMPLETED

06-20 14:56:50.119 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceConnectionChange:DISCONNECTED

06-20 14:56:59.409 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceConnectionChange:FAILED

06-20 14:56:59.412 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-ConferencePeerConnectionChannel: StreamId=894402060054767100 dispose

06-20 14:56:59.417 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: onIceConnectionChange:CLOSED

06-20 14:56:59.417 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-PeerConnectionChannel: PC Observer ---- onSignalingChange: CLOSED

06-20 14:56:59.432 26810-15136/com.lmdgame.lmdaudiodemo D/WooGeen-ConferencePeerConnectionChannel: Change State=READY

0 Kudos
3 Replies
leo_a_
Beginner
515 Views

Version 3.3.1 and 3.4 are the same behavior.

0 Kudos
leo_a_
Beginner
515 Views

I found the solution on Version 3.4, by using the 

onStreamError()

 

Please close this topic.

0 Kudos
He_Z_Intel
Employee
515 Views

leo a. wrote:

I found the solution on Version 3.4, by using the 

onStreamError()

 

Please close this topic.

 

Thanks Leo,

prior to v3.4, Android SDK won't have any notification when the peerconnection fails after callback for publish/subscribe has already been triggered once.

in v3.4, onStreamError will be triggered as a notification for application, upon the MCU server detects any failure on the peerconnection after publish/subscribe. More info please refer to doc.

0 Kudos
Reply