from machine import Pin
from rede import Rede
from umqtt.robust import MQTTClient
from time import ticks_ms, ticks_diff
led = Pin (3, Pin.OUT, value=0)
r = Rede('Wokwi-GUEST', '', conecta=False, txPower=5)
r.conectar(tentativas=30, intervalo=500)
#ssid, senha, conecta=True, txPower=None, powermode=None, reconexoes=-1, cb=None):
top = b'ifrsrgauto/msg'
topcomando = b'ifrsrgauto/lampada'
def fofoqueiro(t, p):
if t == topcomando:
if p.decode() == 'liga':
led.on()
else:
led.off()
try:
if r.conectado:
adamastor = MQTTClient ('tardis112233',
'broker.hivemq.com')
adamastor.set_callback(fofoqueiro)
adamastor.connect()
adamastor.subscribe(topcomando)
except:
print('deu ruim!')
msg = 'Oiê'
try:
if r.conectado:
adamastor.publish(top, msg.encode())
except:
print('deu ruim 2')
ultTicks = ticks_ms()
while True:
try:
if r.conectado:
adamastor.check_msg()
except:
print('deu ruim 3')
if ticks_diff(ticks_ms(),ultTicks) > 60000:
try:
if r.conectado:
adamastor.publish(top, msg.encode())
except:
print ('deu ruim4')
ultTicks = ticks_ms()