File tree Expand file tree Collapse file tree 1 file changed +18
-1
lines changed
Expand file tree Collapse file tree 1 file changed +18
-1
lines changed Original file line number Diff line number Diff line change @@ -871,8 +871,25 @@ async def set_gateway_mode(self, mode: str) -> None:
871871 if mode not in self ._gw_allowed_modes :
872872 raise PlugwiseError ("Plugwise: invalid gateway mode." )
873873
874+ time_1 = dt .datetime .utcnow ()
875+ away_time = time_1 .isoformat (timespec = "milliseconds" ) + "Z"
876+ time_2 = str (dt .date .today () - dt .timedelta (1 ))
877+ vacation_time = time_2 + "T23:00:00.000Z"
878+ end_time = "2037-04-21T08:00:53.000Z"
879+ if mode == "away" :
880+ valid = (
881+ f"<valid_from>{ away_time } </valid_from><valid_to>{ end_time } </valid_to>"
882+ )
883+ if mode == "full" :
884+ valid = ""
885+ if mode == "vacation" :
886+ valid = (
887+ "<valid_from>{vacation_time}</valid_from><valid_to>end_time</valid_to>"
888+ )
889+
874890 uri = f"{ APPLIANCES } ;type=gateway/gateway_mode_control"
875- data = f"<gateway_mode_control_functionality><mode>{ mode } </mode></gateway_mode_control_functionality>"
891+ data = f"<gateway_mode_control_functionality><mode>{ mode } </mode>{ valid } </gateway_mode_control_functionality>"
892+ LOGGER .debug ("HOI data: %s" , data )
876893
877894 await self ._request (uri , method = "put" , data = data )
878895
You can’t perform that action at this time.
0 commit comments