2012-10-30 44 views
0

我使用autobhan的WebSockets库用下面的代码:获取对象实例从一个扭曲的工厂(Python)的

from twisted.internet import reactor 
    from autobahn.websocket import WebSocketServerFactory, \ 
            WebSocketServerProtocol, \ 
            listenWS 


    class EchoServerProtocol(WebSocketServerProtocol): 

     def onMessage(self, msg, binary): 
      self.sendMessage(msg, binary) 

     def sendRandomMessage(message): 
      self.sendMessage(message,true) 


    if __name__ == '__main__': 

     factory = WebSocketServerFactory("ws://192.168.1.135:9999", debug = False) 
     factory.protocol = EchoServerProtocol 
     listenWS(factory) 
     reactor.run() 

     #insert random code here. Things happen independent of the connection state. 
     #somehow access EchoServerProtocolINSTANCE.sendMessage("MESSAGE_HERE") 

的代码可以很好地用于接收消息,但我怎么能访问EchoServerProtocol的实例为了随时发送任意消息?

+0

不,它不是。我问了两个问题。该示例中的监听器不要求您使用工厂。在这个例子中,我不能让一个WebSocketServerProtocol的实例存储在一个变量中。这就是我困惑的原因。我认为oberstet的回答下面应该足够了 – user974896

+0

它真的是一样的。工厂是一个附带的细节。底层解决方案在每种情况下都是相同的。 –

回答