void client_onStatus(HStatus status) { Debug.WriteLine(">>>client_onStatus: " + status.ToString()); Debug.WriteLine("--> fulljid : " + client.FullJid); Debug.WriteLine("--> resource : " + client.Resource); Update_TextBlock_UI(statusScreen, status.ToString()); }
private void notifyStatus(ConnectionStatus status, ConnectionErrors error, string errorMsg) { connectionStatus = status; if (this.onStatus != null) { HStatus hstatus = new HStatus(); hstatus.SetStatus(status); hstatus.SetErrorCode(error); hstatus.SetErrorMsg(errorMsg); IAsyncAction threadPoolWorkItem = ThreadPool.RunAsync( (source) => { this.onStatus(hstatus); } ); } }
void socketIO_Message(object sender, MessageEventArgs e) { if ("hStatus".Equals(e.Message.Event, StringComparison.OrdinalIgnoreCase)) { if (e.Message.Json.Args != null) { JObject data = (JObject)e.Message.Json.Args[0]; try { HStatus status = new HStatus(data); if (connTimeoutTimer != null) { connTimeoutTimer.Cancel(); connTimeoutTimer = null; } if (status.GetStatus().Value == ConnectionStatus.CONNECTED) { if (isFullJidSet) { updateStatus((ConnectionStatus)status.GetStatus(), (ConnectionErrors)status.GetErrorCode(), status.GetErrorMsg()); } } else { updateStatus((ConnectionStatus)status.GetStatus(), (ConnectionErrors)status.GetErrorCode(), status.GetErrorMsg()); } } catch (Exception ex) { Debug.WriteLine("{0} : {0} exception caught.", ex); if (connTimeoutTimer != null) { connTimeoutTimer.Cancel(); connTimeoutTimer = null; } socketIO.Close(); updateStatus(ConnectionStatus.DISCONNECTED, ConnectionErrors.TECH_ERROR, ex.Message); } } } else if ("hMessage".Equals(e.Message.Event, StringComparison.OrdinalIgnoreCase)) { if (e.Message.Json.Args != null) { JObject data = (JObject)e.Message.Json.Args[0]; try { if (connTimeoutTimer != null) { connTimeoutTimer.Cancel(); connTimeoutTimer = null; } onData(e.Message.Json.Name, data); } catch (Exception ex) { Debug.WriteLine("{0} : {0} exception caught.", ex); if (connTimeoutTimer != null) { connTimeoutTimer.Cancel(); connTimeoutTimer = null; } } } } else if ("attrs".Equals(e.Message.Event, StringComparison.OrdinalIgnoreCase)) { if (e.Message.Json.Args != null) { JObject data = (JObject)e.Message.Json.Args[0]; try { options.FullUrn = data["publisher"].ToString(); isFullJidSet = true; if (connStatus != ConnectionStatus.CONNECTED) { updateStatus(ConnectionStatus.CONNECTED, ConnectionErrors.NO_ERROR, null); } } catch (Exception ex) { Debug.WriteLine("{0} : {0} exception caught.", ex); } } } }