2011-09-04 52 views
2

我剛開始使用的龍捲風,並把它設了nginx的代理方式的龍捲風和PHP和一切工作corretly龍捲風認證幫助

什麼我嘗試實現是一種通知系統。

當用戶做了某些事情,如發送電子郵件或更新數據庫中的字段,如果其他用戶正在瀏覽網頁,他會收到通知。

因此,使用jquery ajax我會發送消息和用戶名稱爲龍捲風。 我得到了那部分工作。例如:

$.ajax({url: "/send/notification", data: "data//Serialise from form , dataType: "text", type: "POST", 

      success: function(response) { 

       alert("Message From Tornado : "+response); 

    }, error: function(response) { 

     console.log("ERROR:", response) 

     alert("Failed"); 

    }}); 

然後在龍捲風得到收件人

recipient = self.get_argument("recipient", None) 

的名字現在使用jQuery的AJAX功能,長輪詢龍捲風響應。 但我完全失去了如何做龍捲風檢查,如果這是通知他,如果是這樣給他發送數據。

if self.current_user == recipient: 
    self.write(some data); 

任何幫助,將不勝感激

回答

0

這不是那麼簡單。您需要保留等待消息的列表,以及他們的用戶名單。示例chat application可能是最好的開始,但它只是向每個人傳遞每條消息。

但是,修改應該不會太難。例如,您可以將dict映射用戶添加到等待消息中,並且在發生新消息輪詢時檢查是否有該用戶的任何消息。或者,您可以在每次投票中通過所有消息進行快速骯髒的迭代。