2012-12-19 92 views
2

我想安裝我的服務器,以便我可以有人通過我們的網站上的聊天箱與我聯繫。由於我不會一直在那裏監控聊天記錄,所以我試圖設置一個系統,聊天通過websocket發送到我的服務器(使用PHP-Websockets),然後通過短信發送到我的手機。這一切都正常工作。我在回答客戶端問題時遇到了困難。當我回覆文本時,Twilio將訪問我用sms消息指定的任何頁面作爲後期變量。我怎樣才能把這個帖子消息傳遞給我的websocket(它已經在運行),然後可以將消息發送回客戶端?感謝您的幫助如何通過服務器websocket twilio短信到客戶端

+0

你問的如何在websocket上執行雙向通信? – Charles

+0

@Charles其實,我認爲我必須做的是有兩個套接字連接 - 一個從客戶端到服務器,另一個從服務器到twilio – anonymousfox

回答

4

Twilio在收到您的短信時通過WebHook通話(HTTP請求)與您的應用程序進行通信。

由於PHP-的WebSockets運行作爲一個獨立的過程,而不是現有的網絡堆棧的一部分(例如Apache的),那麼你需要在你的設置幾個組件:

  1. PHP- WebSocket
  2. Web服務器 - 提供您的HTML,CSS等,也可以與Twilio WebHook交互
  3. 1.和2.交互的方式。這通常是通過某種消息隊列的實現

這裏,詳細說明您的設置的各個組件之間的通信的序列圖,因爲我看到它:

希望這澄清來自Twilio,您的Web服務器,WebSocket服務器和客戶端的通信。

如果這看起來過於複雜,那麼您可以通過使用託管服務(例如Pusher)爲我工作的人員刪除WebSocket服務器和消息隊列。如果是這種情況,那麼這個using Pusher & Twilio教程應該是有用的。這裏的一個主要好處是,您可以繼續按照請求和響應來思考,而不必考慮通過消息隊列進行的跨組件通信。