diff options
| -rw-r--r-- | main.py | 22 |
1 files changed, 20 insertions, 2 deletions
@@ -1,17 +1,35 @@ from evdev import InputDevice, list_devices, ecodes -from urllib.request import urlopen +from urllib.request import Request, urlopen from urllib.error import HTTPError, URLError +from dotenv import load_dotenv SCANCODES = {0x11A: "up", 0x148: "down", 0x147: "left", 0x107: "right", 0x106: "ok", 0x141: "play/pause", 0x11c: "power", 0x103: "vol+", 0x142: "vol-", 0x101: "app", 0x154: "1", 0x110: "stop", 0x14b: "skip", 0x155: "epg", 0x119: "web", 0x15f: "setting", 0x15a: "dtv"} device = None last = 0x00 +load_dotenv("/home/arslaan/remote-automation/.env") + +HOMELAB_USERNAME = os.environ["HOMELAB_USERNAME"] +HOMELAB_PASSWORD = os.environ["HOMELAB_PASSWORD"] + def homelab_request(request: str): url = f"http://192.168.1.96/automate/{request}" + credentials = f"{HOMELAB_USERNAME}:{HOMELAB_PASSWORD}" + encoded_credentials = base64.b64encode( + credentials.encode() + ).decode() + + req = Request( + url, + headers={ + "Authorization": f"Basic {encoded_credentials}", + }, + ) + try: - with urlopen(url, timeout=5) as resp: + with urlopen(req, timeout=5) as resp: print(f"homelab request {request} response {resp.status}") print(resp.read().decode()) |
