Example #1
0
        /// <summary>
        /// Create a new client
        /// </summary>
        /// <param name="remoteEndPoint">IP address of the remote end point</param>
        /// <returns>
        /// Created client
        /// </returns>
        public IServerService CreateClient(EndPoint remoteEndPoint)
        {
            var client = new ClientChatConnection(this);
            client.Disconnected += OnClientDisconnect;

            lock (_connectedClients)
                _connectedClients.Add(client);

            return client;
        }
Example #2
0
        /// <summary>
        /// Send message to all connected clients but me
        /// </summary>
        /// <param name="me"></param>
        /// <param name="message"></param>
        public void SendToAllButMe(ClientChatConnection me, ChatMessage message)
        {
            lock (_connectedClients)
            {
                foreach (var client in _connectedClients)
                {
                    if (client == me)
                        continue;

                    client.Send(message);
                }
            }
        }