public void onUserLeftRoom(UserLeftRoom userLeftRoom) { }
public void AddCallBacks(UserLeftRoom uCallback,UserPaused RPaused,UserResumed RResumed) { OpponentLeftRoom = uCallback; RemoteUserPaused = RPaused; RemoteUserResumed = RResumed; }
public void RemoveCallBacks() { OpponentLeftRoom = null; RemoteUserPaused = null; RemoteUserResumed = null; }
public void AddCallBacks(UserLeftRoom uCallback, UserPaused RPaused, UserResumed RResumed) { OpponentLeftRoom = uCallback; RemoteUserPaused = RPaused; RemoteUserResumed = RResumed; }
/// <summary> /// Data retrieved from server /// </summary> /// <param name="serverConnection">TCP connection with server</param> private static void ListenServer(TcpClient serverConnection) { serverConnection.ReceiveBufferSize = BUFFER_SIZE; serverConnection.SendBufferSize = BUFFER_SIZE; NetworkStream networkStream = serverConnection.GetStream(); while (serverConnection.Connected) { ServerObject data; try { data = (ServerObject)formatter.Deserialize(networkStream); } #region POSSIBLE EXCEPTIONS catch (IOException) { ExceptionHandler(networkStream); continue; } catch (SerializationException) { ExceptionHandler(networkStream); continue; } catch (DecoderFallbackException) { ExceptionHandler(networkStream); continue; } catch (OverflowException) { ExceptionHandler(networkStream); continue; } catch (OutOfMemoryException) { ExceptionHandler(networkStream); continue; } catch (NullReferenceException) { ExceptionHandler(networkStream); continue; } catch (IndexOutOfRangeException) { ExceptionHandler(networkStream); continue; } catch (FormatException) { ExceptionHandler(networkStream); continue; } catch (InvalidCastException) { ExceptionHandler(networkStream); continue; } catch (ArgumentOutOfRangeException) { ExceptionHandler(networkStream); continue; } catch (Exception e) { ExceptionHandler(networkStream); MessageBox.Show(e.Message, e.GetType().Name, MessageBoxButton.OK, MessageBoxImage.Error); continue; } #endregion POSSIBLE EXCEPTIONS switch (data.ServerFlag) { case ServerFlag.ConnectionState: Task.Run(() => SetConnectionState((KeyValuePair <ConnectionState, int>)data.Data)); break; case ServerFlag.Call: IncomingCall?.Invoke((int)data.Data); break; case ServerFlag.SendMessage: Task.Run(() => SendMessage((SenderObjectRelation)data.Data)); break; case ServerFlag.SendingData: Task.Run(() => SendingData((SenderObject)data.Data)); break; case ServerFlag.NewUserInCall: NewUserCall?.Invoke((int)data.Data); break; case ServerFlag.CallingToGroup: CallingToGroup?.Invoke((int)data.Data); break; case ServerFlag.DeclineCall: CallDeclined?.Invoke((int)data.Data); break; case ServerFlag.UserLeftRoom: UserLeftRoom?.Invoke((int)data.Data); break; case ServerFlag.RoomClosed: case ServerFlag.EndCall: EndCall?.Invoke(); break; case ServerFlag.ConnectionChecking: Task.Run(() => SendToServer(new ServerObject(ServerFlag.ConnectionChecking, Id))); break; case ServerFlag.ApiConnection: Task.Run(() => CheckApiConnectionFlag((ApiObject)data.Data)); break; default: break; } } MessageBox.Show("Disconnected from server"); }