add entity for temperature
parent
411a0b8570
commit
f6586cb0d5
|
@ -17,6 +17,13 @@ coloredlogs.install()
|
|||
logger = logging.getLogger("HA kiosk agent")
|
||||
logger.setLevel(logging.INFO)
|
||||
|
||||
def get_temperature() -> float:
|
||||
temp = psutil.sensors_temperatures()
|
||||
if not temp or not temp['acpitz']:
|
||||
return -1
|
||||
|
||||
return ("{:.2f}".format(temp['acpitz'][0].current))
|
||||
|
||||
def get_battery_level() -> float:
|
||||
blevel = psutil.sensors_battery()
|
||||
if not blevel:
|
||||
|
@ -113,6 +120,18 @@ display_brightness_info = NumberInfo(
|
|||
display_brightness_settings = Settings(mqtt=mqtt_settings, entity=display_brightness_info)
|
||||
display_brightness = Number(display_brightness_settings, display_brightness_callback)
|
||||
|
||||
# Temperature
|
||||
temperature_info = SensorInfo(
|
||||
name="Temperature",
|
||||
device=device_info,
|
||||
unique_id=f'{args.device_id}_temperature',
|
||||
device_class='temperature',
|
||||
unit_of_measurement='°C')
|
||||
temperature_settings = Settings(mqtt=mqtt_settings, entity=temperature_info)
|
||||
temperature = Sensor(temperature_settings)
|
||||
|
||||
|
||||
|
||||
logger.info('finished setup')
|
||||
|
||||
lastBattery = get_battery_level()
|
||||
|
@ -127,6 +146,10 @@ lastBrightness = get_display_brightness()
|
|||
logger.info(f'current brightness: { lastBrightness }')
|
||||
display_brightness.set_value(lastBrightness)
|
||||
|
||||
lastTemperature = get_temperature()
|
||||
logger.info(f'current temperature: { temperature }')
|
||||
temperature.set_state(lastTemperature)
|
||||
|
||||
while True:
|
||||
newBrightness = get_display_brightness()
|
||||
if newBrightness != lastBrightness:
|
||||
|
@ -147,4 +170,10 @@ while True:
|
|||
battery_charging.off()
|
||||
lastBattery = newBattery
|
||||
|
||||
newTemperature = get_temperature()
|
||||
if newTemperature != lastTemperature:
|
||||
logger.info(f'updating value for temperature to { newTemperature }')
|
||||
temperature.set_state(newTemperature)
|
||||
lastTemperature = newTemperature
|
||||
|
||||
time.sleep(5)
|
||||
|
|
Loading…
Reference in New Issue