Status notify updates#466
Conversation
Add notification after calculation completion.
|
Ik heb hier nog totaal niet over nagedacht, maar waarom gebruiken we niet gewoon json om informatie terug te sturen naar HA? in een automation kun je dan iets doen als: |
|
Dat lijkt me ook beter. Dan sturen we {"DAO Calc gestart", 101} of iets dergelijks. Dan kunnen we ook de optie om een notificatie wel of niet te sturen bij berekenen weghalen. Alleen een check of de entity is ingesteld. |
|
Dan zou het zoiets worden: def notify(self, message, status, notification_berekening = True):
# send notification if entity is set in config
if self.notification_entity is not None:
# build notification message
notify_dict = {
"message": message + " " + dt.datetime.now().strftime("%d-%m-%Y %H:%M:%S"),
"status": status,
}
# serialize to json
json_output = json.dumps(notify_dict, indent=4)
# send the notification
self.set_value(
self.notification_entity,
notify_dict,
)Waarbij we ook de timestamp weg kunnen laten want die noteert HA ook al. Dubbelop dus. Dit is wel een breaking change overigens. |
|
Ik zou de timestamp ook in een lose json key stoppen trouwens, niet in de message. Aangezien het breaking is, kunnen we dit achter een feature flag hangen. 'use_json_notification' oid? |
|
Sorry, dat ik zo laat "instap". Ik ben het met Jeroen eens: laten we het gelijk goed doen. Overigens: de notity-function hoort m.i. in da_base.py. |
|
Klinkt alsof we op dezelfde lijn zitten! Ik ga hier aan werken.
Voor die laatste: wil je dat in docs.md of in de wiki, met een link er naar in docs? |
|
Voordat je aan de gang gaat graag aandacht voor het volgende:
Verder heb ik nog een paar stijl-wensen, die ik zelf aanhou bij nieuwe functies:
Als voorbeeld jouw notify functie: Ik zou het fijn vinden als je ook die stijl-wensen aanhoudt. |
|
Cees, excuses voor het gedoe met de foute code. Ik zal beter testen, stijl in acht nemen en de bestaande functionaliteit niet proberen aan te passen. Hopelijk heb ik dit weekend wat tijd. Ik had mijn code wel getest en gefixt maar niet gepusht |
|
Ik heb de functie verhuisd naar da_base, en getracht de style te volgen. Ik heb een lijst met status codes toegevoegd. |
|
Ik heb bovenstaande nog niet meegenomen in versie 2025.12.0.rc1. |
There was a problem hiding this comment.
De datum/tijd velden moeten denk ik naar UTC gezet worden voordat het naar HA gestuurd wordt. Ik weet het niet zeker.
.astimezone(timezone.utc).strftime (https://docs.python.org/3.6/library/datetime.html#datetime.datetime.astimezone)
dat, of voeg .%z om de timezone in de tekst op te nemen
|
Ik heb ernaar gekeken. |
Addition of status codes.
Todo: