pre-merge (kinda fucked up before)
This commit is contained in:
@@ -1,7 +1,29 @@
|
||||
from datetime import datetime
|
||||
|
||||
from appdaemon.plugins.hass.hassapi import Hass
|
||||
|
||||
|
||||
class HelloWorld(Hass):
|
||||
def initialize(self):
|
||||
# self.set_state(entity_id='input_boolean.enable', state='on')
|
||||
self.log('Hello World')
|
||||
|
||||
now: datetime = self.get_now()
|
||||
eid = self.args['eid']
|
||||
self.log(eid)
|
||||
self.listen_state(self.my_callback, eid)
|
||||
self.set_state(eid, state=now.isoformat(), attributes=dict(name='Test Fade Start'))
|
||||
self.log(f'Set state to {now.time()}')
|
||||
|
||||
def my_callback(self, entity, attribute, old, new, kwargs):
|
||||
new = self.convert_time(new)
|
||||
old = self.convert_time(old)
|
||||
self.log(f'{attribute} {old} -> {new}')
|
||||
|
||||
def convert_time(self, time_str: str) -> datetime:
|
||||
dt = datetime.fromisoformat(time_str)
|
||||
try:
|
||||
dt = self.AD.tz.localize(dt)
|
||||
except ValueError:
|
||||
dt = dt.astimezone(self.AD.tz)
|
||||
finally:
|
||||
return dt
|
||||
Reference in New Issue
Block a user