public ChatSender(ChatClientCallback chatCallback) { this.chatCallback = chatCallback; this.chatCallback.RequestStatusReceivedD += OnRequestStatusReceive; networkingThread = new Thread(DoSend); networkingThread.Start(); }
// chat managing public void Start() { if (!isStopping) { return; } // чтение паролей на комнаты foreach (var room in ChatSettings.Instance.Rooms) { roomPasswords.UpdateValues(room, ChatSettings.Instance.Passwords[ChatSettings.Instance.Rooms.IndexOf(room)]); } // подготовка к сетевому взаимодействию receiver = new ChatClientCallback(); receiver.AllUsersReceivedD += AllUsersReceivedInternal; receiver.UserEntered += UserEnteredInternal; receiver.UserExited += UserExitedInternal; receiver.UserEnteredRoom += UserEnteredRoomInternal; receiver.UserLeftRoom += UserLeftRoomInternal; receiver.RoomsReceivedD += RoomsReceivedInternal; receiver.MessageReceivedD += MessageReceivedInternal; receiver.PendingMessagesReceivedD += PendingMessagesReceivedInternal; sender = new ChatSenderStable(receiver); sender.Entered += EnteredInternal; sender.Exited += ExitedInternal; sender.RequestQueueFilled += RequestQueueFilledInternal; sender.RequestQueueCleared += RequestQueueClearedInternal; sender.RequestErrorOccurred += RequestErrorOccurredInternal; sender.Logged += LoggedInternal; sender.UserInfoExReceived += UserInfoExReceivedInternal; liveRoomCheckTime.SetTime(DateTime.Now + aliveTimeSpan); liveRoomThread = new Thread(CheckRoomEntered); liveRoomThread.Start(); isStopping = false; }
public ChatSenderStable(ChatClientCallback chatCallback) { chatCallback.UserEntered += UserEntered; chatCallback.UserExited += UserExited; chatSender = new ChatSender(chatCallback); chatSender.Connected += Connected; chatSender.Disconnected += Disconnected; chatSender.RequestQueued += RequestQueuedOnClient; chatSender.RequestQueuedOnServer += RequestQueuedOnServer; chatSender.RequestProcessed += RequestProcessed; chatSender.UserInfoExReceived += UserInfoExReceivedInternal; liveServerThread = new Thread(CheckServerAlive); liveServerThread.Start(); }
public ChatClientStable(ChatClientCallback callbackObject, string endPoint) { this.callbackObject = callbackObject; this.endPoint = endPoint; RenewConnection(); }