A.
Bagian Publish
pub_paho_mqtt.py
#!/usr/bin/env python
import [Link] as mqttClient
import time
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("Connected to broker")
global Connected #Use global variabl
Connected = True
else:
print("Connection failed")
Connected = False #global variable for the state of the
connection
broker_address= ""
port = <port>
user = ""
password = ""
client = [Link]("Python") #create new
instance
client.username_pw_set(user, password=password) #set username
and password
client.on_connect= on_connect #attach
function to callback
[Link](broker_address, port=port) #connect to
broker
client.loop_start() #start the loop
while Connected != True: #Wait for connection
[Link](0.1)
try:
while True:
value = input('Enter the message:')
[Link]("/iot/temp/",value)
except KeyboardInterrupt:
[Link]()
client.loop_stop()
PRAMANDA 1
B. Bagian Subcribe
sub_paho_mqtt.py
#!/usr/bin/env python
# mqtt_sub.py - Python MQTT subscribe example
import [Link] as mqtt
def on_connect(client, userdata, flags, rc):
print("Connected to broker")
def on_message(client, userdata, message):
print ("Message received: " + [Link]('utf-
8'))
broker_address= ""
port = <port>
user = ""
password = ""
client = [Link]()
client.username_pw_set(user,password=password)
[Link](broker_address, port)
client.on_connect = on_connect #attach function to callback
client.on_message = on_message #attach function to callback
[Link]("/iot/temp/")
client.loop_forever() #start the loop
C. Cara menjalankan
1. Buka command prompt, kemudian masuk ke folder untuk menyimpan dua file tersebut.
2. Untuk melakukan publish:
> python pub_paho_mqtt.py
3. Untuk melakukan subcribe (dijalankan dari terminal berbeda atau komputer berbeda dengan yang
menjalankan publish):
> python sub_paho_mqtt.py
D. Latihan
1. Nyalakan NodeMcu yang telah dirangkai seperti pada Latihan sebelumnya. Pastikan program
pada NodeMcu telah menggunakan account Broker MQTT yang sama. Selanjutnya jalankan
program subcribe yang telah dibuat dengan menggunakan bahasa pemrograman python
tersebut.
a. Amati keluaran yang terjadi pada program subscribe.
b. Catat hasil pengamatan dan berikan penjelasannya.
2. Nyalakan NodeMcu yang telah dirangkai seperti pada Latihan sebelumnya. Pastikan program
pada NodeMcu telah menggunakan account Broker MQTT yang sama. Selanjutnya jalankan
program publish yang telah dibuat dengan menggunakan bahasa pemrograman python
tersebut.
a. Amati keluaran yang terjadi pada NodeMcu.
PRAMANDA 2
b. Catat hasil pengamatan dan berikan penjelasannya.
PRAMANDA 3