Using the chatroom written by twisted, use the Telenet that comes with Windows as the client.
From Twisted.internet.protocol import factoryfrom twisted.internet import reactorfrom twisted.protocols.basic Import Linereceiverfrom twisted.internet.endpoints Import serverfromstring "window:use telnet localhost 8888to enter chat The Othersctrl +] to disconnect to server "class Chatroomprotocol (linereceiver):d ef __init__ (self): self._ Name = Nonedef Connectionmade (self): self.sendline (' what\ ' your name? ') def linereceived (self, line): If isn't self._name:if not Line.strip () or line in list (ITER (self.factory._users)): Self.sendline (' Your name is corrupt or invalid, please reinput Your new name! ') Returnself._name = Lineself.factory._users[line] = self Self.sendline ("Welcome%s to our chat guest"% self._name) returnmsg = '%s says:%s '% (Self._name, line) Self.factory.boardMessage (msg) def connectionlost (self, reason): Msg = '%s Says:bye by E! '% self._nameself.factory.boardmessage (msg) del Self.factory._users[self._name]class chatroomfactory (Factory): protocol = Chatroomprotocoldef __init__ (self): Self._users = {}def boardmessage (self, msg): For I in Self._users:self._users[i].sendline (msg) if __ name__ = = ' __main__ ': serverfromstring (reactor, ' tcp:8888 '). Listen (Chatroomfactory ()) Reactor.run ()
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
Twisted-02 chatroom