switch back from radio
This commit is contained in:
parent
e4a5316133
commit
cf3005cdc0
@ -41,6 +41,7 @@ def button_callback_3(channel):
|
|||||||
if time.time() - start_time >= 3: # Check if 3 seconds have passed
|
if time.time() - start_time >= 3: # Check if 3 seconds have passed
|
||||||
print("Button 3 held for 3 seconds! Sending RADIO2.")
|
print("Button 3 held for 3 seconds! Sending RADIO2.")
|
||||||
update_disc(client, ["ytmusic",disc_data['name'],disc_data['type'],"RESET"])
|
update_disc(client, ["ytmusic",disc_data['name'],disc_data['type'],"RESET"])
|
||||||
|
control_player(client, "PLAY")
|
||||||
update_disc(client, ["ytmusic",disc_data['name'],disc_data['type'],disc_data['id']])
|
update_disc(client, ["ytmusic",disc_data['name'],disc_data['type'],disc_data['id']])
|
||||||
return # Exit after sending RADIO2
|
return # Exit after sending RADIO2
|
||||||
|
|
||||||
|
22
lib/mqtt.py
22
lib/mqtt.py
@ -1,6 +1,7 @@
|
|||||||
import os
|
import os
|
||||||
import paho.mqtt.client as mqtt
|
import paho.mqtt.client as mqtt
|
||||||
import json
|
import json
|
||||||
|
import time
|
||||||
from dotenv import load_dotenv
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
# Load the .env file
|
# Load the .env file
|
||||||
@ -228,29 +229,40 @@ def check_current_status(client: mqtt.Client) -> str:
|
|||||||
return userdata['message']
|
return userdata['message']
|
||||||
|
|
||||||
|
|
||||||
def update_disc(client: mqtt.Client, disc_message: dict) -> None:
|
def update_disc(client: mqtt.Client, disc_message: list) -> None:
|
||||||
"""Update current disc.
|
"""Update current disc.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
client (mqtt.Client): MQTT Client
|
client (mqtt.Client): MQTT Client
|
||||||
disc_message (dict): Current disc information
|
disc_message (dict): Current disc information
|
||||||
"""
|
"""
|
||||||
|
# Publish disc name with QoS 1
|
||||||
client.publish(
|
client.publish(
|
||||||
"homeassistant/sensor/floppy_player/current_disc/state",
|
"homeassistant/sensor/floppy_player/current_disc/state",
|
||||||
disc_message[1],
|
disc_message[1],
|
||||||
retain=True,
|
qos=1,
|
||||||
|
retain=True
|
||||||
)
|
)
|
||||||
|
time.sleep(0.1) # Small delay to ensure messages are sent in order
|
||||||
|
|
||||||
|
# Publish disc type with QoS 1
|
||||||
client.publish(
|
client.publish(
|
||||||
"homeassistant/sensor/floppy_player/current_disc_type/state",
|
"homeassistant/sensor/floppy_player/current_disc_type/state",
|
||||||
disc_message[2],
|
disc_message[2],
|
||||||
retain=True,
|
qos=1,
|
||||||
|
retain=True
|
||||||
)
|
)
|
||||||
|
time.sleep(0.1)
|
||||||
|
|
||||||
|
# Publish disc ID with QoS 1
|
||||||
client.publish(
|
client.publish(
|
||||||
"homeassistant/sensor/floppy_player/current_disc_id/state",
|
"homeassistant/sensor/floppy_player/current_disc_id/state",
|
||||||
disc_message[3],
|
disc_message[3],
|
||||||
retain=True,
|
qos=1,
|
||||||
|
retain=True
|
||||||
)
|
)
|
||||||
print(f"Published current disc: {disc_message}")
|
|
||||||
|
print(f"Published current disc with QoS 1: {disc_message}")
|
||||||
|
|
||||||
|
|
||||||
def control_player(client: mqtt.Client, state: str) -> None:
|
def control_player(client: mqtt.Client, state: str) -> None:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user