Initial commit
This commit is contained in:
86
remotecontrol/_Remotecontrol.py
Normal file
86
remotecontrol/_Remotecontrol.py
Normal file
@@ -0,0 +1,86 @@
|
||||
|
||||
import logging
|
||||
|
||||
from xmlrpc.server import SimpleXMLRPCServer
|
||||
import config
|
||||
import control
|
||||
|
||||
class Remotecontrol():
|
||||
def __init__(self, configfile):
|
||||
self.__log = logging.getLogger()
|
||||
self.__config = config.Config(configfile)
|
||||
|
||||
host = (self.__config.hostinfo())
|
||||
self.__server = SimpleXMLRPCServer(host, allow_none=True)
|
||||
self.__control = control.Control(configfile)
|
||||
|
||||
self.__server.register_function(self.set_water_autostate, 'set_water_autostate')
|
||||
self.__server.register_function(self.clear_water_autostate, 'clear_water_autostate')
|
||||
self.__server.register_function(self.set_water_times, 'set_water_times')
|
||||
|
||||
self.__server.register_function(self.set_heat_autostate, 'set_heat_autostate')
|
||||
self.__server.register_function(self.clear_heat_autostate, 'clear_heat_autostate')
|
||||
self.__server.register_function(self.increase_on_temperature, 'increase_on_temperature')
|
||||
self.__server.register_function(self.decrease_on_temperature, 'decrease_on_temperature')
|
||||
self.__server.register_function(self.increase_off_temperature, 'increase_off_temperature')
|
||||
self.__server.register_function(self.decrease_off_temperature, 'decrease_off_temperature')
|
||||
|
||||
self.__server.register_function(self.__config.get_heat_autostate, 'get_heat_autostate')
|
||||
self.__server.register_function(self.__config.get_on_temperature, 'get_on_temperature')
|
||||
self.__server.register_function(self.__config.get_off_temperature, 'get_off_temperature')
|
||||
self.__server.register_function(self.__config.get_water_autostate, 'get_water_autostate')
|
||||
self.__server.register_function(self.__config.get_water_times, 'get_water_times')
|
||||
|
||||
self.__server.register_function(self.__control.get_current_temperature, 'get_current_temperature')
|
||||
self.__server.register_function(self.__control.get_current_heat_state, 'get_current_heat_state')
|
||||
self.__server.register_function(self.__control.get_current_water_state, 'get_current_water_state')
|
||||
|
||||
self.__server.register_function(self.__control.set_heat_state, 'set_heat_state')
|
||||
self.__server.register_function(self.__control.clear_heat_state, 'clear_heat_state')
|
||||
self.__server.register_function(self.__control.set_water_state, 'set_water_state')
|
||||
self.__server.register_function(self.__control.clear_water_state, 'clear_water_state')
|
||||
|
||||
def set_water_times(self, ident: str, times):
|
||||
self.__config.set_water_times(ident, times)
|
||||
self.__control.reload_config()
|
||||
|
||||
def set_water_autostate(self, ident: str):
|
||||
self.__config.set_water_autostate(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def clear_water_autostate(self, ident: str):
|
||||
self.__config.clear_water_autostate(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def set_heat_autostate(self, ident: str):
|
||||
self.__config.set_heat_autostate(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def clear_heat_autostate(self, ident: str):
|
||||
self.__config.clear_heat_autostate(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def increase_on_temperature(self, ident: str):
|
||||
self.__config.increase_on_temperature(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def decrease_on_temperature(self, ident: str):
|
||||
self.__config.decrease_on_temperature(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def increase_off_temperature(self, ident: str):
|
||||
self.__config.increase_off_temperature(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def decrease_off_temperature(self, ident: str):
|
||||
self.__config.decrease_off_temperature(ident)
|
||||
self.__control.reload_config()
|
||||
|
||||
def start(self):
|
||||
self.__log.info('Control-c to quit')
|
||||
self.__control.start()
|
||||
self.__server.serve_forever()
|
||||
|
||||
self.__log.info("Shutting down...")
|
||||
self.__control.stop()
|
||||
self.__log.info("...done. Exiting...")
|
1
remotecontrol/__init__.py
Normal file
1
remotecontrol/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from ._Remotecontrol import Remotecontrol
|
Reference in New Issue
Block a user