import network
import time
import random
from umqtt.simple import MQTTClient

# Connecting to WIFI
print("Connecting to WiFi", end="")
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('Wokwi-GUEST', '')
while not sta_if.isconnected():
  print(".", end="")
  time.sleep(0.1)
print("\nConnected to Wifi!")
#======================================================================

# MQTT Adafruit
ADAFRUIT_IO_URL = 'io.adafruit.com'
ADAFRUIT_USERNAME = 'MusaMagwaza23'
ADAFRUIT_IO_KEY = 'aio_pVis074QcVVvkklXzpoXz0xJZkRh'

# Define your feed name
FEED_NAME = 'welcome-feed'

# Connect to Adafruit IO MQTT
client_id = 'ESP32'
mqtt = MQTTClient(client_id, ADAFRUIT_IO_URL, 0, ADAFRUIT_USERNAME, ADAFRUIT_IO_KEY)

# Connect to Adafruit IO MQTT
try:
    mqtt.connect()
    print("Connected to Adafruit IO MQTT")
except Exception as e:
    print(f"Could not connect {type(e)}")

def publish(data):
    topic = f"{ADAFRUIT_USERNAME}/feeds/{FEED_NAME}"
    mqtt.publish(topic, data)
#======================================================================
for i in range(1, 10):
    data = f"{i+10}"
    if i % 2 == 0:
        data = "17"
    publish(data)
    time.sleep(0.5)