使用Python發布訊息
在編程發布訊息到創客雲前,使用者必先學習如何令Python連接創客雲MQTT,連接方法可參考上面的教學。
使用Python連接創客雲
發布訊息
MakerCloudMQTT.publish_message()
向創客雲發布一個文字訊息到主題
MakerCloudMQTT.publish_message(topic, message)
topic
在「創客雲」上創建的主題名稱
message
需要發佈的文字訊息
MakerCloudMQTT.publish_key_message()
向創客雲發布一個鍵文字對訊息到主題
MakerCloudMQTT.publish_key_message(topic, key, message)
topic
在「創客雲」上創建的主題名稱
key
需要發佈的鍵
message
需要發佈的文字訊息
MakerCloudMQTT.publish_key_value()
向創客雲發布一個鍵值對訊息到主題,創客雲上會自動建立對應的直線圖表
MakerCloudMQTT.publish_key_value(topic, key, value)
topic
在「創客雲」上創建的主題名稱
key
需要發佈的鍵
value
需要發佈的數值
MakerCloudMQTT.publish_coordination()
向創客雲發布一個鍵值對訊息到主題,創客雲上會自動建立對應的直線圖表
MakerCloudMQTT.publish_coordination(topic, latitude, longitude)
topic
在「創客雲」上創建的主題名稱
latitude
需要發佈的緯度
longitude
需要發佈的經度
使用者可以根據數據類型使用相對應的發布函數。
發布文字訊息
學習重點
- 學習如何利用Python發布文字訊息到創客雲主題中
練習
讀取輸入文字,然後發布到創客雲主題中。
在Python編程前,我們需要在創客雲上:
- 創建項目
- 創建主題
- 在創客雲複製主題名稱
然後便可到Python編程:
import MakerCloudMQTT
MakerCloudMQTT.username = 'Max'
# 貼上主題名稱
topic = 'QQP4LRB0'
while 1:
# 讀取輸入交字
message = input('Message: ')
# 發佈文字訊息到創客雲主題
MakerCloudMQTT.publish_message(topic, message)
運行編程後,輸入需要發佈的文字訊息
Message: hello
Message: from
Message: Python
回到創客雲的項目主頁,在即時數據紀錄視窗中便可看到從Python發布的文字訊息。
發布鍵值對訊息
學習重點
- 學習如何透過Python發布鍵值對到創客雲主題中
- 學習在創客雲上創建直線圖表達鍵值對訊息
練習 - 發布隨機數字
目標
- 發布鍵值對訊息(隨機數字)到創客雲
- 在創客雲上創建直線圖以顯示鍵值對
在Python編程前,我們需要在創客雲上:
- 創建項目
- 創建主題
- 在創客雲複製主題名稱
然後便可到Python編程:
import MakerCloudMQTT
import random
import time
MakerCloudMQTT.username = 'Max'
# 貼上主題名稱
topic = 'QQP4LRB0'
while 1:
# 產生隨機數字(1-10)
randomInt = random.randint(1, 10)
# 發佈鍵值對(隨機數字)到創客雲主題
MakerCloudMQTT.publish_key_value(topic, 'num', randomInt)
print('Published: num =',randomInt)
# 暫停1秒
time.sleep(1)
完成後,回到創客雲的項目主頁。
在即時數據紀錄便可以看到來自Python的鍵值對訊息。
然後重新整理項目主頁,並轉到圖表主頁。
創客雲會為鍵值對自動紀錄鍵的名字和創建圖表。