Скажем, вы хотите запустить сервер, принимающий клиентские подключения, через порт 9000:
from twisted.internet import reactor, protocol
PORT = 9000
class MyServer(protocol.Protocol):
pass
class MyServerFactory(protocol.Factory):
protocol = MyServer
factory = MyServerFactory()
reactor.listenTCP(PORT, factory)
reactor.run()
И если вы хотите проверить подключение к этому серверу, вот код для клиента (чтобы запустить на другомтерминал):
from twisted.internet import reactor, protocol
HOST = 'localhost'
PORT = 9000
class MyClient(protocol.Protocol):
def connectionMade(self):
print "connected!"
class MyClientFactory(protocol.ClientFactory):
protocol = MyClient
factory = MyClientFactory()
reactor.connectTCP(HOST, PORT, factory)
reactor.run()
Вы заметите, что код очень похож, только мы используем Factory для сервера и ClientFactory для клиента, и серверы должны прослушивать (listenTCP), пока клиент нуждаетсяподключиться (connectTCP).Удачи!