import serial import requests import os from dotenv import load_dotenv load_dotenv() ntfy_token = os.environ['NTFY_Token'] shutdown_timer = 10 with serial.Serial('COM10', 115200, timeout=1) as ser: inverter_offline_counter = 0 while True: if ser.readline().decode().strip() == "0": print("Inverter Online") inverter_offline_counter = 0 elif inverter_offline_counter >= shutdown_timer: break else: inverter_offline_counter += 1 print(f"Running on UPS reserve, offline for {inverter_offline_counter}s") print(f"Inverter offline for {shutdown_timer} seconds") requests.post("https://ntfy.fieryeagle.org/Internet-Alerts", data="Inverter offline, shutting down".encode(encoding='utf-8'), headers={ "Title": "Hydrogen running on reserve power", "Authorization": f"Bearer {ntfy_token}" } )