Kakao i Connect Live 커뮤니티

통화가 연결된 후에 바로 종료됩니다

증상은 연결 성공 후 바로 통화가 끊깁니다. RemonCall 옵션은 다음과 같이 줬습니다.
mRemonCall = RemonCall.remonBuilder() .context(this) .serviceId(getString(R.string.remon_service_id)) .key(getString(R.string.remon_key)) .isVideoCall(false) .build();

그리고 끊겼을 때 로그는 다음과 같습니다. 빠뜨린 부분이 있다면 알려주시면 감사하겠습니다.

I/audio_device_impl.cc: (line 820): output: 0
I/channel.cc: (line 867): Changing voice state, recv=1 send=1
I/WebRtcAudioRecord: AudioRecordThread@[name=AudioRecordJavaThread, id=25833]
I/port.cc: (line 1756): Conn[c73bb600:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:zsC/qmro:1:0:local:udp:192.168.0.x:39034->gw+UvzLq:1:2122260223:local:udp:10.0.2.x:43315|C–I|-|0|0|9115038255631187454|-]: Sent STUN ping, id=4d41417948734d4667313167, use_candidate=0, nomination=0
I/port.cc: (line 528): Received STUN ping id=6e6843436c764e4c5150334a from unknown address 211.244.71.x:62970
I/turn_port.cc: (line 1586): Port[b8c21500:audio:1:0:relay:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: TURN create permission request sent, id=2b364779674457424f553238
I/port.cc: (line 1126): Conn[b89cd800:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:pq3AHMvM:1:0:relay:udp:52.79.76.x:44159->Es7g5YoX:1:1853824767:prflx:udp:211.244.71.x:62970|C–W|-|0|0|179896594391252478|-]: Connection created
I/p2p_transport_channel.cc: (line 988): Adding connection from peer reflexive candidate: Cand[:3372217884:1:udp:1853824767:211.244.71.74:62970:prflx::0:t8B+:o83EBvSeay8cjtA3L9vEa3Vr:5:10:0]
I/port.cc: (line 853): Port[b8c21500:audio:1:0:relay:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: Sent STUN ping response, to=211.244.71.x:62970, id=6e6843436c764e4c5150334a
I/port.cc: (line 1404): Conn[b89cd800:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:pq3AHMvM:1:0:relay:udp:52.79.76.x:44159->Es7g5YoX:1:1853824767:prflx:udp:211.244.71.x:62970|CR-W|-|0|0|179896594391252478|-]: Connection pruned
I/turn_port.cc: (line 1593): Port[b8c21500:audio:1:0:relay:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: TURN permission requested successfully, id=2b364779674457424f553238, code=0, rtt=4
I/turn_port.cc: (line 1771): Port[b8c21500:audio:1:0:relay:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: Create permission for 211.244.71.x:62970 succeeded
I/turn_port.cc: (line 1783): Port[b8c21500:audio:1:0:relay:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: Scheduled create-permission-request in 240000ms.
I/port.cc: (line 1756): Conn[c73bb600:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:zsC/qmro:1:0:local:udp:192.168.0.x:39034->gw+UvzLq:1:2122260223:local:udp:10.0.2.x:43315|C–I|-|0|0|9115038255631187454|-]: Sent STUN ping, id=71366f434469442b74324a6c, use_candidate=0, nomination=0
I/port.cc: (line 528): Received STUN ping id=494f4f616676554c6c474857 from unknown address 192.168.0.x:61314
I/port.cc: (line 1126): Conn[b89ce200:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:zsC/qmro:1:0:local:udp:192.168.0.x:39034->4FBauv3t:1:1853693695:prflx:udp:192.168.0.x:61314|C–W|-|0|0|7961553801070919167|-]: Connection created
I/p2p_transport_channel.cc: (line 988): Adding connection from peer reflexive candidate: Cand[:170042222:1:udp:1853693695:192.168.0.6:61314:prflx::0:t8B+:o83EBvSeay8cjtA3L9vEa3Vr:3:900:0]
I/port.cc: (line 853): Port[b8c1f400:audio:1:0:local:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: Sent STUN ping response, to=192.168.0.x:61314, id=494f4f616676554c6c474857
I/port.cc: (line 1404): Conn[b89ce200:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:zsC/qmro:1:0:local:udp:192.168.0.x:39034->4FBauv3t:1:1853693695:prflx:udp:192.168.0.x:61314|CR-W|-|0|0|7961553801070919167|-]: Connection pruned
I/audio_device_buffer.cc: (line 236): Size of recording buffer: 480
I/rtp_sender_audio.cc: (line 264): First audio RTP packet sent to pacer
I/port.cc: (line 1756): Conn[c73bb600:audio:Net[wlan0:192.168.0.x/24:Wifi:id=3]:zsC/qmro:1:0:local:udp:192.168.0.x:39034->gw+UvzLq:1:2122260223:local:udp:10.0.2.x:43315|C–I|-|0|0|9115038255631187454|-]: Sent STUN ping, id=4e4c4b786b51367162714962, use_candidate=0, nomination=0
I/probe_controller.cc: (line 335): kWaitingForProbingResult: timeout
I/reconnect Test: disconnectChannelListener.onDisconnectChannel()
I/RestServiceHandler: send Reconnect msg
I/WebSocketClient: doConnect() - connectStatus=RECONNECT
I/WebSocketClientHandler: handshakeFuture start
I/openssl_stream_adapter.cc: (line 905): Cleanup
I/dtls_transport.cc: (line 651): DtlsTransport[audio|1|_W]: DTLS transport closed
I/jsep_transport_controller.cc: (line 1249): Transport audio writability changed to 0.
I/channel.cc: (line 600): Channel not writable (audio)
I/srtp_transport.cc: (line 363): The params in SRTP transport are reset.
I/peer_connection.cc: (line 3954): Changing IceConnectionState 2 => 5
I/channel.cc: (line 867): Changing voice state, recv=1 send=1
I/WebSocketClientHandler: WebSocket Client connected!
I/WebSocketClientHandler: channelInactive() - WebSocket Client disconnected!
I/reconnect Test: disconnectChannelListener.onDisconnectChannel()
I/RestServiceHandler: send Reconnect msg
I/WebSocketClient: doConnect() - connectStatus=RECONNECT
I/peer_connection.cc: (line 4018): Session: 8518931667388194587 Old state: kStable New state: kClosed
I/audio_device_impl.cc: (line 827): StopRecording
I/audio_device_template.h: (line 209): StopRecording
I/audio_record_jni.cc: (line 178): StopRecording
I/WebRtcAudioRecord: stopRecording
I/WebRtcAudioRecord: stopThread
I/WebSocketClientHandler: channelInactive() - WebSocket Client disconnected!
I/WebRtcAudioEffects: release
I/WebRtcAudioRecord: releaseAudioResources
I/audio_device_buffer.cc: (line 151): StopRecording
I/audio_device_buffer.cc: (line 174): total recording time: 1399
I/audio_device_impl.cc: (line 831): output: 0
I/message_queue.cc: (line 518): Message took 209ms to dispatch. Posted from: ClearSend@…/…/…/…/usr/local/google/home/sakal/code/webrtc-aar-release/src/pc/rtp_sender.cc:532
I/webrtc_voice_engine.cc: (line 1972): SetOutputVolume() to 0 for recv stream with ssrc 3853270849
I/channel.cc: (line 567): Channel disabled
I/audio_device_impl.cc: (line 796): StopPlayout
I/audio_device_template.h: (line 194): Playing
I/audio_device_template.h: (line 188): StopPlayout
I/audio_track_jni.cc: (line 145): StopPlayout
I/WebRtcAudioTrack: stopPlayout
I/WebRtcAudioTrack: underrun count: 0
I/WebRtcAudioTrack: stopThread
I/WebRtcAudioTrack: Stopping the AudioTrackThread…
I/WebRtcAudioTrack: Calling AudioTrack.stop…
D/AudioTrack: stop(2152): called with 65760 frames delivered
I/WebRtcAudioTrack: AudioTrack.stop is done.
I/WebRtcAudioTrack: AudioTrackThread has now been stopped.
I/WebRtcAudioTrack: releaseAudioResources
I/audio_device_buffer.cc: (line 137): StopPlayout
I/audio_device_buffer.cc: (line 143): total playout time: 1549
I/audio_device_impl.cc: (line 800): output: 0
I/channel.cc: (line 867): Changing voice state, recv=0 send=0
I/webrtc_voice_engine.cc: (line 1833): RemoveSendStream: 2126543501
I/call.cc: (line 1104): UpdateAggregateNetworkState: aggregate_state=up
I/rtp_transport_controller_send.cc: (line 263): SignalNetworkState Up
I/audio_send_stream.cc: (line 172): ~AudioSendStream: 2126543501
I/webrtc_voice_engine.cc: (line 1910): RemoveRecvStream: 3853270849
I/call.cc: (line 1104): UpdateAggregateNetworkState: aggregate_state=down
I/rtp_transport_controller_send.cc: (line 263): SignalNetworkState Down
I/audio_receive_stream.cc: (line 135): ~AudioReceiveStream: 3853270849
I/paced_sender.cc: (line 115): PacedSender paused.
I/control_handler.cc: (line 97): Bitrate estimate state changed, BWE: 300 kbps.
I/channel.cc: (line 167): Destroyed channel: audio
I/openssl_stream_adapter.cc: (line 905): Cleanup
I/NetworkMonitor: Stop monitoring with native observer 505854362304
I/NetworkMonitorAutoDetect: Unregister network callback
I/NetworkMonitorAutoDetect: Unregister network callback
I/turn_port.cc: (line 1498): Port[b8c21500:audio:1:0:relay:Net[wlan0:192.168.0.x/24:Wifi:id=3]]: TURN refresh request sent, id=54792f79417177494e4e4b45
I/paced_sender.cc: (line 427): ProcessThreadAttached 0x0
I/paced_sender.cc: (line 427): ProcessThreadAttached 0x0
I/rtc_event_log_impl.cc: (line 210): Stopping WebRTC event log.
I/rtc_event_log_impl.cc: (line 227): WebRTC event log successfully stopped.
I/message_queue.cc: (line 518): Message took 255ms to dispatch. Posted from: Close@…/…/…/…/usr/local/google/home/sakal/code/webrtc-aar-release/src/api/peer_connection_proxy.h:139

안녕하세요.

로그상으로는 소켓 연결이 끊어져 종료되는 것으로 보이는데요.
onClose의 경우 Unknown 타입으로 연결이 종료되는지와
onError 콜백에 전달되는 에러가 있는지 확인해 주셨으면 합니다.

  1. onClose의 경우 type은 MINE으로 떨어집니다.
  2. onError 콜백에 전달되는 에러는 없습니다. 다만 warning 로그에 다음과 같은 로그가 찍혀있었습니다.
    W/System.err: java.lang.IllegalStateException: executor not accepting a task
    W/System.err: at io.netty.resolver.AddressResolverGroup.getResolver(AddressResolverGroup.java:60)
    W/System.err: at io.netty.bootstrap.Bootstrap.doResolveAndConnect0(Bootstrap.java:196)
    W/System.err: at io.netty.bootstrap.Bootstrap.access$000(Bootstrap.java:50)
    W/System.err: at io.netty.bootstrap.Bootstrap$1.operationComplete(Bootstrap.java:184)
    W/System.err: at io.netty.bootstrap.Bootstrap$1.operationComplete(Bootstrap.java:170)
    I/WebSocketClient: doconnect : send Reconnect msg again
    W/System.err: at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:500)
    I/WebSocketClient: doConnect() - connectStatus=RECONNECT
    W/System.err: at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:474)
    W/System.err: at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:413)
    W/System.err: at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:538)
    W/System.err: at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:527)
    W/System.err: at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:98)
    W/System.err: at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
    W/System.err: at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetSuccess(AbstractChannel.java:982)
    W/System.err: at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:505)
    W/System.err: at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:416)
    W/System.err: at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:475)
    W/System.err: at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    W/System.err: at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:416)
    W/System.err: at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:515)
    W/System.err: at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
    W/System.err: at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    W/System.err: at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    W/System.err: at java.lang.Thread.run(Thread.java:919)

그리고 궁금한 점이 있는데 음성통화로만 할 때도 remoteView와 localView가 필요한지 궁금합니다.

추가적으로 이 로그들도 같이 찍혀있는데 이 부분이 문제가 있는 걸까요?
예제 프로젝트에선 잘 돌아갔는데 그 때는 다음의 Warning 로그가 안 뜨고 Info 로그가 떴습니다.
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:1935296041:2:udp:41885438:52.79.76.148:55503:relay:211.244.71.74:60542:uiUg::1:10:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:1938535714:2:tcp:1518280446:192.168.0.33:59843:local::0:uiUg::1:10:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:633982584:2:tcp:1518214910:10.64.41.46:59844:local::0:uiUg::12:900:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:766020351:2:tcp:1518149374:10.21.165.128:59845:local::0:uiUg::13:900:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:32674036:2:tcp:1518088958:[fd74:6572:6d6e:7573:c:b80a:ec37:e4c9]:59846:local::0:uiUg::2:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:1271667647:2:tcp:1518023422:[fd74:6572:6d6e:7573:d:b80a:ec37:e4c9]:59847:local::0:uiUg::3:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:1271667647:2:tcp:1517957886:[fd74:6572:6d6e:7573:d:b80a:ec37:e4c9]:59848:local::0:uiUg::7:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:1271667647:2:tcp:1517892350:[fd74:6572:6d6e:7573:d:b80a:ec37:e4c9]:59849:local::0:uiUg::9:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:766020351:2:tcp:1517821694:10.21.165.128:59850:local::0:uiUg::4:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:766020351:2:tcp:1517756158:10.21.165.128:59851:local::0:uiUg::5:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:3669266405:2:tcp:1517690622:10.254.254.254:59852:local::0:uiUg::6:50:0] for mid audio
W/peer_connection.cc: (line 6056): Candidate has an unknown component: Cand[:3669266405:2:tcp:1517625086:10.254.254.254:59853:local::0:uiUg::8:50:0] for mid audio

원인 해결되었습니다 감사드려요

음성통화의 경우 remoteView, localView는 설정하실 필요는 없습니다.