webRTC appRTC,间隔约2分钟后,呼叫之间的连接自动终止(ISBX演示)

时间:2016-07-18 13:33:42

标签: websocket webrtc apprtc

我正在使用来自ISBX的git库,并在我的swift应用程序中集成了视频通话功能,所有工作都正常它只是一个主要的阻止程序,在2分钟的时间后,连接会自动终止并出现以下错误: -

  

WebSocket关闭代码:1001原因:流端遇到wasClean:0

详细错误

2016-07-18 12:44:20.687 testOttaApp-QA [527:74428] WebSocket因代码关闭:1001原因:遇到流结束了清洁:0

2016-07-18 12:44:20.687 testOttaApp-QA [527:74428] C-> RS:BYE

2016-07-18 12:44:20.687 testOttaApp-QA [527:74428] url = https://apprtc.appspot.com/leave/ootaTest82/54508636

2016-07-18 07:14:21.503 testOttaApp-QA [527:16e893000] INFO MMINTEGRATION CMediaPlatformWrapper.cpp:937

CMediaPlatformWrapper :: DevicePropertyChanged名为

2016-07-18 07:14:21.504 testOttaApp-QA [527:16e893000] INFO MMINTEGRATION CMediaPlatformWrapper.cpp:969使用类型4调用的CMediaCallWrapper :: fireMediaPlatformEvent() 断开!

2016-07-18 07:14:21.514 testOttaApp-QA [527:1a05f7000] INFO APPLICATION CUcmpConversationsManager.cpp:2348 CUcmpConversationsManager :: onEvent()。 EventType:4

2016-07-18 12:44:22.989 testOttaApp-QA [527:74428]从客房服务器取消注册。

1 个答案:

答案 0 :(得分:1)

最后,我的一位开发人员解决了这个问题。

在ARDWebSocketChannel.m课程中,他不断对服务器执行ping操作,以避免连接中断。

#pragma mark - SRWebSocketDelegate

- (void)webSocketDidOpen:(SRWebSocket *)webSocket {
    NSLog(@"WebSocket connection opened.");
    self.state = kARDWebSocketChannelStateOpen;
    if (_roomId.length && _clientId.length) {
        [self registerWithCollider];
        // Sending autoping to server
        [self startConnectionCheckTimer];
    }
}

// Checking for WSconnection by Sending Scheduled Ping
- (void)startConnectionCheckTimer {
    if (!_timer) {
        _timer = [NSTimer scheduledTimerWithTimeInterval:30.0f
                                                  target:self
                                                selector:@selector(sendPing:)
                                                userInfo:nil
                                                 repeats:YES];
    }
}

- (void)stopConnectionCheckTimer {
    if ([_timer isValid]) {
        [_timer invalidate];
    }
    _timer = nil;
}

- (void)sendPing:(id)sender
{
    if(_socket != nil)
    {

            [_socket sendPing:nil];

    }
}