private IEnumerator Send() { if (false == socket.IsConnected()) { yield return(GamebaseUnitySDKSettings.Instance.StartCoroutine(RetryConnect())); yield break; } else { if (0 < requestQueueItem.retryCount) { GamebaseLog.Debug(string.Format("Reconnect succeeded. Index of queue item:{0}", requestQueueItem.index), this, "Send"); } } GamebaseLog.Debug(string.Format("request:{0}", JsonMapper.ToJson(requestQueueItem.requestVO)), this, "Send"); yield return(GamebaseUnitySDKSettings.Instance.StartCoroutine(socket.Send(JsonMapper.ToJson(requestQueueItem.requestVO), (error) => { if (null == error) { return; } error.transactionId = requestQueueItem.requestVO.transactionId; requestQueueItem.callback(string.Empty, error); }))); socket.SetPollingInterval(PollingIntervalType.SHORT_INTERVAL); GamebaseUnitySDKSettings.Instance.StartCoroutine(CheckTimeout()); }
private IEnumerator Send() { if (false == socket.IsConnected()) { yield return(GamebaseCoroutineManager.StartCoroutine(GamebaseGameObjectManager.GameObjectType.WEBSOCKET_TYPE, RetryConnect())); yield break; } else { if (0 < requestQueueItem.retryCount) { GamebaseLog.Debug(string.Format("Reconnect succeeded. Index of queue item:{0}", requestQueueItem.index), this); } } GamebaseLog.Debug(string.Format("request:{0}", GamebaseJsonUtil.ToPrettyJsonString(requestQueueItem.requestVO)), this); yield return(GamebaseCoroutineManager.StartCoroutine(GamebaseGameObjectManager.GameObjectType.WEBSOCKET_TYPE, socket.Send(JsonMapper.ToJson(requestQueueItem.requestVO), (error) => { if (null == error) { return; } error.transactionId = requestQueueItem.requestVO.transactionId; requestQueueItem.callback(string.Empty, error); }))); socket.SetPollingInterval(PollingIntervalType.SHORT_INTERVAL); GamebaseCoroutineManager.StartCoroutine(GamebaseGameObjectManager.GameObjectType.WEBSOCKET_TYPE, CheckTimeout()); }