Project
Project: MQTT Publish
Eclipse Paho MQTT Python client library, which implements versions 3.1 and 3.1.1 of the MQTT protocol. Paho Mqtt
Publish sensor data through MQTT Protocol using test.mosquitto.org server under "IoT101/DataSensor" topic
Go to your git "TheIoTLearningInitiative" repository, under "InternetOfThings101" directory
root@board:~# cd TheIoTLearningInitiative/InternetOfThings101
root@board:~/TheIoTLearningInitiative/InternetOfThings101# root@edison:~/TheIoTLearningInitiative/InternetOfThings101# vi main.py#!/usr/bin/python
import paho.mqtt.client as paho
import psutil
import signal
import sys
import time
from threading import Thread
def functionDataActuator():
print "Data Actuator"
def functionDataSensor():
netdata = psutil.net_io_counters()
data = netdata.packets_sent + netdata.packets_recv
return data
def functionDataSensorMqttOnPublish(mosq, obj, msg):
print "Data Sensor Mqtt Published!"
def functionDataSensorMqttPublish():
mqttclient = paho.Client()
mqttclient.on_publish = functionDataSensorMqttOnPublish
mqttclient.connect("test.mosquitto.org", 1883, 60)
while True:
data = functionDataSensor()
topic = "IoT101/DataSensor"
mqttclient.publish(topic, data)
time.sleep(1)
def functionSignalHandler(signal, frame):
sys.exit(0)
if __name__ == '__main__':
signal.signal(signal.SIGINT, functionSignalHandler)
threadmqttpublish = Thread(target=functionDataSensorMqttPublish)
threadmqttpublish.start()
while True:
print "Hello Internet of Things 101"
print "Data Sensor: %s " % functionDataSensor()
time.sleep(5)
# End of FileExecute main.py watching its output and listen for sensor data with mosquitto_sub app or any mqtt cellphone application using a test.mosquitto.org server susbcribing to "IoT101/DataSensor"
Project: MQTT Subscribe
Subscribe to "IoT101/DataActuator" topic through MQTT Protocol using test.mosquitto.org server to change the status of Data Actuator
Go to your git "TheIoTLearningInitiative" repository, under "InternetOfThings101" directory
Execute main.py watching its output and publish actuator data with mosquitto_pub app or any mqtt cellphone application using a test.mosquitto.org server publishing to "IoT101/DataActuator"
Last updated