I forgot the client only checks for the last recieved data and that input is blocking. Maybe I should use curses