12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import os
- import sys
- import json
- from dotenv import load_dotenv
- from lib.mqtt import create_client, update_disc, control_player, create_config, check_current_disc
- load_dotenv()
- broker = os.environ.get("broker")
- port = int(os.environ.get("port"))
- username = os.environ.get("username")
- password = os.environ.get("password")
- print(f"Broker: {broker}, Port: {port}, Username: {username}")
- client = create_client(broker, port, username, password)
- create_config(client)
- if len(sys.argv) > 1:
-
- input_str = sys.argv[1]
-
- disc_data = input_str.split(":")
- if disc_data[0] == "ytmusic":
- disc_object = {
- "name":disc_data[1],
- "type":disc_data[2],
- "id":disc_data[3]
- }
-
- if (disc_object == json.loads(check_current_disc(client))):
-
- control_player(client, "PLAY")
- else:
-
- control_player(client, "PLAY")
- update_disc(client, disc_data)
- else:
- if input_str == "EJECT":
-
- control_player(client, "PAUSE")
- elif input_str == "PLAY":
-
- control_player(client, "PLAY")
- elif input_str == "PAUSE":
-
- control_player(client, "PAUSE")
- else:
- print(f"Can't process {input_str}")
|