mirror of
https://github.com/andvikt/mega_hacs.git
synced 2025-12-11 00:54:28 +05:00
add sync_time
This commit is contained in:
@@ -11,7 +11,7 @@ from homeassistant.const import CONF_HOST, CONF_ID, CONF_PASSWORD, CONF_SCAN_INT
|
||||
from homeassistant.core import callback, HomeAssistant
|
||||
from .const import DOMAIN, CONF_PORT_TO_SCAN, CONF_RELOAD, PLATFORMS, CONF_MQTT_INPUTS, \
|
||||
CONF_NPORTS, CONF_UPDATE_ALL, CONF_POLL_OUTS, CONF_FAKE_RESPONSE, CONF_FORCE_D, \
|
||||
CONF_ALLOW_HOSTS, CONF_PROTECTED, CONF_RESTORE_ON_RESTART # pylint:disable=unused-import
|
||||
CONF_ALLOW_HOSTS, CONF_PROTECTED, CONF_RESTORE_ON_RESTART, CONF_UPDATE_TIME # pylint:disable=unused-import
|
||||
from .hub import MegaD
|
||||
from . import exceptions
|
||||
|
||||
@@ -33,6 +33,7 @@ STEP_USER_DATA_SCHEMA = vol.Schema(
|
||||
vol.Optional(CONF_RESTORE_ON_RESTART, default=True): bool,
|
||||
vol.Optional(CONF_PROTECTED, default=True): bool,
|
||||
vol.Optional(CONF_ALLOW_HOSTS, default='::1;127.0.0.1'): str,
|
||||
vol.Optional(CONF_UPDATE_TIME, default=True): bool,
|
||||
},
|
||||
)
|
||||
|
||||
@@ -152,6 +153,7 @@ class OptionsFlowHandler(config_entries.OptionsFlow):
|
||||
vol.Optional(CONF_RESTORE_ON_RESTART, default=e.get(CONF_RESTORE_ON_RESTART, False)): bool,
|
||||
vol.Optional(CONF_PROTECTED, default=e.get(CONF_PROTECTED, True)): bool,
|
||||
vol.Optional(CONF_ALLOW_HOSTS, default='::1;127.0.0.1'): str,
|
||||
vol.Optional(CONF_UPDATE_TIME, default=e.get(CONF_UPDATE_TIME, False)): bool,
|
||||
# vol.Optional(CONF_INVERT, default=''): str,
|
||||
}),
|
||||
)
|
||||
|
||||
@@ -35,6 +35,7 @@ CONF_RESTORE_ON_RESTART = 'restore_on_restart'
|
||||
CONF_CLICK_TIME = 'click_time'
|
||||
CONF_LONG_TIME = 'long_time'
|
||||
CONF_FORCE_I2C_SCAN = 'force_i2c_scan'
|
||||
CONF_UPDATE_TIME = 'update_time'
|
||||
PLATFORMS = [
|
||||
"light",
|
||||
"switch",
|
||||
|
||||
@@ -86,6 +86,7 @@ class MegaD:
|
||||
ext_acts=None,
|
||||
i2c_sensors=None,
|
||||
new_naming=False,
|
||||
update_time=False,
|
||||
**kwargs,
|
||||
):
|
||||
"""Initialize."""
|
||||
@@ -105,6 +106,7 @@ class MegaD:
|
||||
self.ext_in = ext_in or {}
|
||||
self.ext_act = ext_acts or {}
|
||||
self.i2c_sensors = i2c_sensors or []
|
||||
self._update_time = update_time
|
||||
self.poll_outs = poll_outs
|
||||
self.update_all = update_all if update_all is not None else True
|
||||
self.nports = nports
|
||||
@@ -250,6 +252,8 @@ class MegaD:
|
||||
Polling ports
|
||||
"""
|
||||
self.lg.debug('poll')
|
||||
if self._update_time:
|
||||
await self.update_time()
|
||||
for x in self.i2c_sensors:
|
||||
if not isinstance(x, dict):
|
||||
continue
|
||||
@@ -649,4 +653,8 @@ class MegaD:
|
||||
else:
|
||||
await x.async_turn_off()
|
||||
|
||||
|
||||
async def update_time(self):
|
||||
await self.request(
|
||||
cf=7,
|
||||
stime=datetime.now().strftime('%H:%M:%S')
|
||||
)
|
||||
@@ -20,7 +20,9 @@
|
||||
"protected": "[%key:common::config_flow::data::protected%]",
|
||||
"allow_hosts": "[%key:common::config_flow::data::allow_hosts%]",
|
||||
"restore_on_restart": "[%key:common::config_flow::data::restore_on_restart%]",
|
||||
"poll_outs": "[%key:common::config_flow::data::poll_outs%]"
|
||||
"poll_outs": "[%key:common::config_flow::data::poll_outs%]",
|
||||
"update_time": "[%key:common::config_flow::data::update_time%]"
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -28,7 +28,8 @@
|
||||
"protected": "Protected",
|
||||
"allow_hosts": "Allowed hosts",
|
||||
"restore_on_restart": "Restore outs on restart",
|
||||
"poll_outs": "Poll outs"
|
||||
"poll_outs": "Poll outs",
|
||||
"update_time": "Sync time"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -47,7 +48,8 @@
|
||||
"protected": "Protected",
|
||||
"allow_hosts": "Allowed hosts",
|
||||
"restore_on_restart": "Restore outs on restart",
|
||||
"poll_outs": "Poll outs"
|
||||
"poll_outs": "Poll outs",
|
||||
"update_time": "Sync time"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,7 +27,8 @@
|
||||
"protected": "Блокировать неразрешенные соединения",
|
||||
"restore_on_restart": "Восстанавливать выходы при перезагрузке",
|
||||
"allow_hosts": "Разрешенные ip (через ;)",
|
||||
"poll_outs": "Обновлять выходы (регулярно)"
|
||||
"poll_outs": "Обновлять выходы (регулярно)",
|
||||
"update_time": "Синхронизировать время"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -48,7 +49,8 @@
|
||||
"protected": "Блокировать неразрешенные соединения",
|
||||
"allow_hosts": "Разрешенные ip (через ;)",
|
||||
"restore_on_restart": "Восстанавливать выходы при перезагрузке",
|
||||
"poll_outs": "Обновлять выходы (регулярно)"
|
||||
"poll_outs": "Обновлять выходы (регулярно)",
|
||||
"update_time": "Синхронизировать время"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,7 +27,8 @@
|
||||
"protected": "Блокувати недозволені з'єднання",
|
||||
"allow_hosts": "Дозволені ip (через ;)",
|
||||
"restore_on_restart": "Відновлювати виходи при перезавантаженні",
|
||||
"poll_outs": "Оновити виходи"
|
||||
"poll_outs": "Оновити виходи",
|
||||
"update_time": "Осинхронізувати час"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user