Beispiel #1
0
 private static Task ServerBroadCastAsync(string serverUsername, CancellationToken ct)
 {
     return(Task.Factory.StartNew(async() => {
         string firstChar;
         while (true)
         {
             if (ManageInput(serverUsername, out firstChar, server: true))
             {
                 var inputUser = firstChar + C.Read().Trim();
                 if (inputUser.ToLower().Contains("file"))
                 {
                     try{
                         await SocketFileHandler.Start(null);
                     }catch (Exception) {}
                 }
                 var message = serverUsername + inputUser;
                 C.Cursor(message.Length, Console.CursorTop - 1); //don't show Enter pressed
                 await SocketMessageHandler.ServerSide(new TcpClient(), message, true);
                 if (Users.Where(u => u.Client.Connected).Count() > 0)
                 {
                     Display.Receipt();
                 }
             }
         }
     }, ct));
 }
Beispiel #2
0
            private async static Task ClientReceiveSendAsync(TcpClient sender)
            {
                while (true)
                {
                    byte[] bytes = new byte[!StealthMode ? sender.SendBufferSize : 3500];
                    await sender.GetStream().ReadAsync(bytes, 0, bytes.Length);

                    var message = Encoding.UTF8.GetString(bytes);
                    if (!StealthMode)
                    {
                        await SocketMessageHandler.ServerSide(sender, message.Trim('\0'));
                    }
                    else
                    {
                        await SocketMessageHandler.ServerSide(sender, message);
                    }
                }
            }