from umqtt.simple import MQTTClient
import machine
import utime

MQTT_SERVER = "mqtt.eclipse.org"
MQTT_TOPICS = b"ESP32/LED00"
MQTT_CLIENT_ID = b"esp32_02"

led_flag = None

def callback(topic, msg):  # bZ[WMɌĂяo֐
    global led_flag
    if msg == b"ON": # bZ[W̓eɊÂLEDtOύX
        led_flag = True
    elif msg == b"OFF":
        led_flag = False
    else:
        led_flag = None

client = MQTTClient(MQTT_CLIENT_ID, MQTT_SERVER)
client.set_callback(callback)  # bZ[WM̃R[obN֐ݒ
client.connect()  # bZ[WEu[Jɐڑ
client.subscribe(MQTT_TOPICS)  # gsbN(ESP32/LED00)w

led = machine.Pin(25,machine.Pin.OUT)

try:
    while True:
        client.wait_msg()
        print("get message")
        if led_flag is None:
            print("UnKnown")
            continue
        if led_flag:  # LEDtOTruȅꍇLED_
            print("LED on")
            led.on()
        else:
            print("LED off")  # LEDtOȊȌꍇLED
            led.off()
finally:        
    client.disconnect()