2015-09-12 60 views
0

我正在構建基於Node,Cylon的特定設備並將事件發佈到MQTT代理。我想知道如何在某個MQTT消息到達設備後執行某個操作。任何人都可以指引我正確的方向嗎?我有點此事丟失;)節點和MQTT,在消息上做些什麼

我使用它來發布數據:

mqtt.publish(thingTopic, JSON.stringify(data)); 

我想是這樣創造的東西:

if certain message arrives at broker -> do a post or get request to internal url. 

的問題是我必須承認...

回答

1

您可能需要構建自己的自定義MQTT代理,以實現您正在尋找的內容,這不是pub/sub message paradigm的要點。無需定製MQTT代理,而是創建您自己的訂閱應用程序,該應用程序將對從MQTT代理收到的消息做出反應。

希望下面的順序圖有助於理解。

Sequence Diagram

+0

謝謝皮埃爾 - 呂克, 這正是我想做些什麼:)我期待到書面解釋具體MQTT值到一定的命令/節點行動計劃。但是,我仍在研究如何做到這一點。 – bartpeperkamp

+0

我可以想出不同的方法來實現這一點。例如,您可以擁有不同訂閱的多個訂閱者應用程序(例如action1,action2,...)。每個應用程序可以在收到消息時做不同的事情。您還可以在消息的有效負載中添加信息,並讓您的客戶端應用程序對不同的有效負載做出不同的反應。設計一個可靠的主題層次結構是關鍵以及有用的消息有效載荷。 –

+0

謝謝,那種讓我朝着正確的方向:)如果我找到工作,我會在這裏發佈。 – bartpeperkamp