diff options
author | Evgeny Zinoviev <me@ch1p.io> | 2023-01-04 03:44:07 +0300 |
---|---|---|
committer | Evgeny Zinoviev <me@ch1p.io> | 2023-01-04 03:44:07 +0300 |
commit | d549f428cbbd54c49a90f92928e670d373c4a0d9 (patch) | |
tree | b895a216a37483c082af6f20b2d6aef8560db7b3 | |
parent | 00de2339b4a61921c4b8789883e5c77b4528a60b (diff) |
config: use get_addr() instead of parse_addr(config[...])
-rwxr-xr-x | src/camera_node.py | 8 | ||||
-rwxr-xr-x | src/gpiorelayd.py | 5 | ||||
-rw-r--r-- | src/home/config/config.py | 4 | ||||
-rwxr-xr-x | src/ipcam_server.py | 3 | ||||
-rwxr-xr-x | src/relay_mqtt_http_proxy.py | 4 | ||||
-rwxr-xr-x | src/sound_node.py | 3 | ||||
-rwxr-xr-x | src/sound_sensor_server.py | 2 | ||||
-rwxr-xr-x | src/temphumd.py | 3 | ||||
-rwxr-xr-x | src/web_api.py | 3 |
9 files changed, 16 insertions, 19 deletions
diff --git a/src/camera_node.py b/src/camera_node.py index 2df8df7..9ff0e77 100755 --- a/src/camera_node.py +++ b/src/camera_node.py @@ -5,7 +5,7 @@ import time from home.config import config from home.media import MediaNodeServer, ESP32CameraRecordStorage, CameraRecorder from home.camera import CameraType, esp32 -from home.util import parse_addr, Addr +from home.util import Addr from home import http @@ -69,7 +69,7 @@ if __name__ == '__main__': recorder_kwargs = {} camera_type = CameraType(config['camera']['type']) if camera_type == CameraType.ESP32: - recorder_kwargs['stream_addr'] = parse_addr(config['camera']['web_addr']) # this is not a mistake, we don't use stream_addr for esp32-cam anymore + recorder_kwargs['stream_addr'] = config.get_addr('camera.web_addr') # this is not a mistake, we don't use stream_addr for esp32-cam anymore storage = ESP32CameraRecordStorage(config['node']['storage']) else: raise RuntimeError(f'unsupported camera type {camera_type}') @@ -82,6 +82,6 @@ if __name__ == '__main__': server = ESP32CameraNodeServer( recorder=recorder, storage=storage, - web_addr=parse_addr(config['camera']['web_addr']), - addr=parse_addr(config['node']['listen'])) + web_addr=config.get_addr('camera.web_addr'), + addr=config.get_addr('node.listen')) server.run() diff --git a/src/gpiorelayd.py b/src/gpiorelayd.py index cd2941f..85015a7 100755 --- a/src/gpiorelayd.py +++ b/src/gpiorelayd.py @@ -4,7 +4,6 @@ import os import sys from home.config import config -from home.util import parse_addr from home.relay.sunxi_h3_server import RelayServer logger = logging.getLogger(__name__) @@ -17,8 +16,8 @@ if __name__ == '__main__': config.load() try: - s = RelayServer(pinname=config['relayd']['pin'], - addr=parse_addr(config['relayd']['listen'])) + s = RelayServer(pinname=config.get('relayd.pin'), + addr=config.get_addr('relayd.listen')) s.run() except KeyboardInterrupt: logger.info('Exiting...') diff --git a/src/home/config/config.py b/src/home/config/config.py index 0c0e944..4681685 100644 --- a/src/home/config/config.py +++ b/src/home/config/config.py @@ -6,6 +6,7 @@ import os from os.path import join, isdir, isfile from typing import Optional, Any, MutableMapping from argparse import ArgumentParser +from ..util import parse_addr def _get_config_path(name: str) -> str: @@ -118,6 +119,9 @@ class ConfigStore: cur = self.data[k] raise KeyError(f'option {key} not found') + def get_addr(self, key: str): + return parse_addr(self.get(key)) + def items(self): return self.data.items() diff --git a/src/ipcam_server.py b/src/ipcam_server.py index 07b216b..3fdf888 100755 --- a/src/ipcam_server.py +++ b/src/ipcam_server.py @@ -10,7 +10,6 @@ import home.telegram.aio as telegram from apscheduler.schedulers.asyncio import AsyncIOScheduler from home.config import config -from home.util import parse_addr from home import http from home.database.sqlite import SQLiteBase from home.camera import util as camutil @@ -507,5 +506,5 @@ if __name__ == '__main__': except KeyError: pass - server = IPCamWebServer(parse_addr(config['server']['listen'])) + server = IPCamWebServer(config.get_addr('server.listen')) server.run() diff --git a/src/relay_mqtt_http_proxy.py b/src/relay_mqtt_http_proxy.py index ab8a138..51a4e21 100755 --- a/src/relay_mqtt_http_proxy.py +++ b/src/relay_mqtt_http_proxy.py @@ -5,7 +5,6 @@ from home.mqtt import MQTTRelay, MQTTRelayDevice, MQTTRelayState from home.mqtt.payload import MQTTPayload from home.mqtt.payload.relay import InitialStatPayload, StatPayload from typing import Optional -from home.util import parse_addr mqtt_relay: Optional[MQTTRelay] = None relay_states: dict[str, MQTTRelayState] = {} @@ -60,9 +59,8 @@ if __name__ == '__main__': mqtt_relay.set_message_callback(on_mqtt_message) mqtt_relay.connect_and_loop(loop_forever=False) - proxy = RelayMqttHttpProxy(parse_addr(config.get('server.listen'))) + proxy = RelayMqttHttpProxy(config.get_addr('server.listen')) try: proxy.run() except KeyboardInterrupt: mqtt_relay.disconnect() - diff --git a/src/sound_node.py b/src/sound_node.py index 7d8ba1a..9d53362 100755 --- a/src/sound_node.py +++ b/src/sound_node.py @@ -3,7 +3,6 @@ import os from typing import Optional -from home.util import parse_addr from home.config import config from home.audio import amixer from home.media import MediaNodeServer, SoundRecordStorage, SoundRecorder @@ -87,5 +86,5 @@ if __name__ == '__main__': server = SoundNodeServer(recorder=recorder, storage=storage, - addr=parse_addr(config['node']['listen'])) + addr=config.get_addr('node.listen')) server.run() diff --git a/src/sound_sensor_server.py b/src/sound_sensor_server.py index c63d14a..aa62608 100755 --- a/src/sound_sensor_server.py +++ b/src/sound_sensor_server.py @@ -190,7 +190,7 @@ if __name__ == '__main__': finished_handler=partial(record_finished, MediaNodeType.CAMERA)) try: - server = SoundSensorServer(parse_addr(config['server']['listen']), HitHandler) + server = SoundSensorServer(config.get_addr('server.listen'), HitHandler) server.run() except KeyboardInterrupt: interrupted = True diff --git a/src/temphumd.py b/src/temphumd.py index 563d192..f4d1fca 100755 --- a/src/temphumd.py +++ b/src/temphumd.py @@ -6,7 +6,6 @@ import logging from typing import Optional from home.config import config -from home.util import parse_addr from home.temphum import SensorType, create_sensor, TempHumSensor logger = logging.getLogger(__name__) @@ -72,7 +71,7 @@ if __name__ == '__main__': int(config['sensor']['bus'])) try: - host, port = parse_addr(config['server']['listen']) + host, port = config.get_addr('server.listen') asyncio.run(run_server(host, port)) except KeyboardInterrupt: logging.info('Exiting...') diff --git a/src/web_api.py b/src/web_api.py index 672bfb8..c00c372 100755 --- a/src/web_api.py +++ b/src/web_api.py @@ -7,7 +7,6 @@ from datetime import datetime, timedelta from aiohttp import web from home import http -from home.util import parse_addr from home.config import config, is_development_mode from home.database import BotsDatabase, SensorsDatabase, InverterDatabase from home.database.inverter_time_formats import * @@ -234,5 +233,5 @@ if __name__ == '__main__': loop = asyncio.get_event_loop() - server = WebAPIServer(parse_addr(config['server']['listen'])) + server = WebAPIServer(config.get_addr('server.listen')) server.run() |