예제 #1
0
 public Client(ChatServerForm csf, Socket socket)
 {
     this.socket = socket;
     this.buffer = new byte[Client.BufferSize];
     this.csf = csf;
     this.protocol = new ChatProtocol(this);
 }
예제 #2
0
        public static void multicast(ChatProtocol chatProtocol)
        {
            string output = JsonConvert.SerializeObject(chatProtocol);
            Byte[] multicastBytes = null;

            foreach (string targetName in chatProtocol.targetUserList)
            {
                Socket multicastSocket;
                multicastSocket = (Socket)clientToSocket[targetName];
                multicastSocket.Send(multicastBytes, SocketFlags.None);
            }
        }
예제 #3
0
        public static void broadcast(ChatProtocol chatProtocol)
        {
            string output = JsonConvert.SerializeObject(chatProtocol);
            Byte[] broadcastBytes = null;
            broadcastBytes = Encoding.UTF8.GetBytes(output);

            foreach (DictionaryEntry Item in clientToSocket)
            {
                Socket broadcastSocket;
                broadcastSocket = (Socket)Item.Value;
                broadcastSocket.Send(broadcastBytes, SocketFlags.None);
            }
        }