2014-07-05 39 views
0

我希望我的應用程序每分鐘向服務器發送一個請求,以查看是否發生了任何事件,以便它發送HTTP請求來獲取新數據。如何使用MQTT在android中獲取事件更新android

我有一臺運行WAMP和PHP的Windows服務器。

我已經閱讀Dale's post,並隨處搜索和閱讀,但我仍不明白它是如何工作的!

我希望PHP檢查數據庫中的事件,如果有新事件,它會向代理髮送一條消息,指出「foo發生了故障」,然後客戶端發送一個ping來查看是否有新事件,然後基於來自代理的消息,客戶端知道應該從服務器獲取哪些數據。

我想要的東西就像Telegram's push updates

你能告訴我如何使用mqtt非常簡單嗎? 我見過的所有教程都很難理解,也很複雜。

以及如何使用Mosquitto。 (我已經開始在服務器上使用Mosquitto服務,但不知道從哪裏開始如何使用它)

謝謝。

回答

3

MQTT是一個發佈/訂閱者協議,您有一個代理(Mosquitto)和通過代理髮布和訂閱消息的客戶端。消息具有主題和有效負載(內容)。

在Mosquitto,從經紀人app​​art你有2個客戶端mosquitto_pub和mosquitto_sub。

所以一個典型的測試就像是訂閱主題:

mosquitto_sub -d -h localhost -p 1883 -t "myfirst/test"

然後其他客戶端發佈不同內容主題:

mosquitto_pub -d -h localhost -p 1883 -t "myfirst/test" -m "Sample content 1" mosquitto_pub -d -h localhost -p 1883 -t "myfirst/test" -m "Sample content 2" mosquitto_pub -d -h localhost -p 1883 -t "myfirst/test" -m "Sample content 3"

然後你會看到,訂戶獲取內容。

對於Python,C,C++,JavaScript的& Java中,你可以使用泛美衛生組織庫:http://www.eclipse.org/paho/

而對於PHP可以使用phpMQTT https://github.com/bluerhinos/phpMQTT或爲Mosquitto庫PHP包裝:Mosquitto-PHP https://github.com/mgdm/Mosquitto-PHP

但你可以在這裏看到不同的圖書館: http://mqtt.org/wiki/doku.php/libraries

相關問題