2012-10-01 47 views
3

我正在尋找一種方法來修改Tornado Websockets聊天演示,以便通過聊天與服務器上的串行端口進行通信。下面顯示的是發送消息時調用的方法(?)。我可以寫信給serial.write()發送消息正文。但問題是我只能得到一次串行反饋。然而,在我目前的應用程序中,串行可能會發送更多的數據,而不僅僅是說出來。服務器端串口通過python龍捲風聊天

... 
    import serial 
    serial = serial.Serial("COM3", 57600) 
    ... 
    def on_message(self, message): 
     test = "" 
     logging.info("got message %r", message) 
     parsed = tornado.escape.json_decode(message) 

     serial.write(parsed["body"] + "\n") 
     logging.info("SENT " + parsed["body"] + "\n") 
     test = serial.readline() 

     chat = { 
      "id": str(uuid.uuid4()), 
      "body": test, 
      } 

     chat["html"] = self.render_string("message.html", message=chat) 

     ChatSocketHandler.update_cache(chat) 
     ChatSocketHandler.send_updates(chat) 

有沒有辦法不斷查詢串行和同時處理websockets IO?此外,如果有一個更容易的替代Tornado實時多頁更新我不會反對。雖然我喜歡龍捲風。

回答

1

既然你是開放的其他方法,你可能有興趣在這個complete working example,展示實時圖表瀏覽器情況下,通過串行和WebSocket的從一個Arduino傳感器板驅動。這使用高速公路和扭曲。

信息披露:我是Autobahn的原創作者,爲Tavendo工作。

+0

夠搞笑了幾個小時後,我貼這個,我發現高速公路和有多少運氣。我也會推薦它。謝謝。 –