31 lines
1.1 KiB
Plaintext
31 lines
1.1 KiB
Plaintext
from mqtt_dash.widgets import column_layout, row_layout, slider_widget, \
|
|
label_widget, button_widget, log_widget
|
|
|
|
URL = "https://dashboard.example.com"
|
|
MQTT_BROKER = "ws://example.com/mqtt"
|
|
|
|
PAGE_TITLE = 'MQTT Dashboard'
|
|
|
|
WIDGETS = [
|
|
column_layout("Light", [
|
|
slider_widget(room,
|
|
f"hue/set/lights/{room}",
|
|
f"hue/status/lights/{room}",
|
|
value_path='val')
|
|
for room in ('livingroom', 'bedroom', 'kitchen')
|
|
]),
|
|
row_layout("Temperature", [
|
|
label_widget(f"home/sensors/{room}/temperature", room, "°C")
|
|
for room in ('livingroom', 'bedroom', 'kitchen')
|
|
]),
|
|
row_layout("Device logs", [
|
|
log_widget(f"home/devices/{ip}/log", name)
|
|
for ip, name in [("192.168.1.214",
|
|
"Bedroom lamp"), ("192.168.1.213", "Sensor office"),
|
|
("192.168.1.212", "Sensor livingroom"
|
|
), ("192.168.1.211", "Sensor bedroom")]
|
|
]),
|
|
row_layout("Some buttons", [button_widget("test", "set to 1", 1),
|
|
button_widget("test", "set to foo", 'foo')])
|
|
]
|