Beispiel #1
0
    def __init__(self, ipAddress, port, cert_server_name, status_time = 30):

        self._server_address = ipAddress
        self._server_name = cert_server_name
        self._port = port

        self._timer = RepeatTimer(status_time, self._send_status_message)
        self._timer.start()
Beispiel #2
0
    def start(self):
        """ Runs once the agent core is initialized.
        @return: Nothing
        """

        # 43200 seconds == 12 hours
        self._timer = RepeatTimer(43200, self.run_refresh_apps_operation)
        self._timer.start()
Beispiel #3
0
 def start(self):
     if self._timer is None:
         logger.info('Starting to record history every ' +
                     str(self.delta_seconds) + 's for ' +
                     str(self.max_seconds) + 's')
         self._begin_new_csv_file()
         self._timer = RepeatTimer(self.delta_seconds, self.record)
         self._timer.start()
Beispiel #4
0
 def __init__(self,
              identifier: str,
              interval: float,
              text_0: str = 'off',
              text_1: str = 'on',
              **kwargs):
     super().__init__(identifier, **kwargs)
     self.text_0 = text_0
     self.text_1 = text_1
     self._timer = RepeatTimer(interval, self._send_value)
Beispiel #5
0
 def __init__(self, power_meter: PowerMeterApatorEC3, interval: float, min_averaging_secs: float):
     self.min_averaging_secs = min_averaging_secs
     self._power_meter = power_meter
     self._timer = RepeatTimer(interval, self._acquire)
     self.reading = None
     self.reading_ts = None
     self.success = False
     self.high = SingleCounter()
     self.low = SingleCounter()
     self.callbacks = []
Beispiel #6
0
 def apply(self, instance, *args, **kwargs):
     if instance in self._tasks:
         return False
     interval = getattr(instance, 'interval')
     try:
         interval = TimeString(interval).to_second()
     except ValueError as e:
         m_logger.error(e, exc_info=True)
         return False
     timer = RepeatTimer(interval, instance.run, *args, **kwargs)
     self._tasks[instance] = timer
     return True
Beispiel #7
0
 def apply(self, instance, args=None, kwargs=None):
     if instance in self._tasks:
         return False
     logger.info('add [{task}] in Monitor task......'.format(task=getattr(instance, 'metric_name')))
     interval = getattr(instance, 'forecast_interval')
     try:
         interval = transform_time_string(interval, mode='to_second')
     except ValueError as e:
         logger.error(e, exc_info=True)
         return
     timer = RepeatTimer(interval=interval, function=instance.run, args=args, kwargs=kwargs)
     self._tasks[instance] = timer
     return True
Beispiel #8
0
 def __init__(self, pigpio_pi, gpio_bcm, interval, text_0='off', text_1='on', **kwargs):
     super().__init__(**kwargs)
     self.pi = pigpio_pi
     self.gpio_bcm = gpio_bcm
     self.interval = interval
     self.text_0 = text_0
     self.text_1 = text_1
     if self.pi.connected:
         self.pi.set_mode(self.gpio_bcm, pigpio.INPUT)
         self.pi.set_pull_up_down(self.gpio_bcm, pigpio.PUD_OFF)
     else:
         raise PigpioNotConnectedError('pigpio.pi is not connected, input for gpio ' + str(gpio_bcm) + ' will not work')
     self._timer = RepeatTimer(interval, self._read_and_send_value)
Beispiel #9
0
    def start(self):
        """Runs once the agent core is initialized.

        Returns:

            - Nothing

        """

        self._timer = RepeatTimer(
            300,  # 300 seconds == 5 minutes
            self._create_monit_operation)
        self._timer.start()
Beispiel #10
0
    def __init__(self, seconds_to_checkin=60):
        """

        Args:

            - seconds_to_checkin: Time, in seconds, to check into the server
                and it defaults to 1 minute.

        Return:

            - Nothing

        """

        self._server_url = 'https://{0}/'.format(settings.ServerAddress)

        self._timer = RepeatTimer(seconds_to_checkin, self._agent_checkin)
Beispiel #11
0
 def start(self):
     if not self.__started:
         if self.broker_host == '':
             logger.info(
                 "NOT starting MQTT client because of config with empty broker"
             )
         else:
             logger.info("Starting MQTT client for broker " +
                         self.broker_host)
             if self.broker_user != '':
                 self.client.username_pw_set(self.broker_user,
                                             self.broker_password)
             if self.use_ssl:
                 self.client.tls_set(ca_certs=self.broker_ca_certs)
             self.client.connect_async(self.broker_host, self.broker_port)
             self.client.loop_start()
             self.__timer = RepeatTimer(self.delta_seconds, self.publish)
             self.__timer.start()
             self.__started = True
Beispiel #12
0
    def test_run(self):
        controller = Controller.instance()

        # 主机开机
        controller.dispatch(service='ADMINISTRATOR', operation='power on')
        # 参数初始化
        controller.dispatch(service='ADMINISTRATOR',
                            operation='set param',
                            mode=master_machine_mode.COOL,
                            temp_low_limit=16,
                            temp_high_limit=30,
                            default_target_temp=24,
                            default_speed=fan_speed.NORMAL,
                            fee_rate=(0.5, 0.75, 1.5))
        controller.dispatch(service='ADMINISTRATOR', operation='start')
        timer = RepeatTimer(1, self.get_status)
        timer.start()

        # 入住
        controller.dispatch(service='ADMINISTRATOR',
                            operation='check in',
                            room_id='309c')
        # 房间开机
        controller.dispatch(service='POWER',
                            operation='power on',
                            room_id='309c',
                            current_temp=29)
        time.sleep(5)

        # 入住
        controller.dispatch(service='ADMINISTRATOR',
                            operation='check in',
                            room_id='310c')
        # 房间开机
        controller.dispatch(service='POWER',
                            operation='power on',
                            room_id='310c',
                            current_temp=27)
        time.sleep(3)

        # 入住
        controller.dispatch(service='ADMINISTRATOR',
                            operation='check in',
                            room_id='311c')
        # 房间开机
        controller.dispatch(service='POWER',
                            operation='power on',
                            room_id='311c',
                            current_temp=30)
        time.sleep(4)

        # 入住
        controller.dispatch(service='ADMINISTRATOR',
                            operation='check in',
                            room_id='312c')
        # 房间开机
        controller.dispatch(service='POWER',
                            operation='power on',
                            room_id='312c',
                            current_temp=25)
        controller.dispatch(service='SLAVE',
                            operation='change speed',
                            room_id='312c',
                            target_speed=2)
        time.sleep(70)

        for room_id in ('309c', '310c', '311c', '312c'):
            controller.dispatch(service='POWER',
                                operation='power off',
                                room_id=room_id)
            controller.dispatch(service='ADMINISTRATOR',
                                operation='check out',
                                room_id=room_id)
            controller.dispatch(service='DETAIL',
                                operation='print detail',
                                room_id=room_id)
Beispiel #13
0
 def reset(self):
     self.timer.cancel()
     self.timer = RepeatTimer(UPDATE_FREQUENCY, self._task)
Beispiel #14
0
 def __init__(self, value, interval, **kwargs):
     super().__init__(**kwargs)
     self.value = value
     self.interval = interval
     self._timer = RepeatTimer(interval, self._send_value)
Beispiel #15
0
 def __init__(self, identifier: str, sensor_id: str, interval: float,
              **kwargs):
     super().__init__(identifier, **kwargs)
     self.sensor_id = sensor_id
     self._timer = RepeatTimer(interval, self._read_and_send_value)
Beispiel #16
0
 def __init__(self, interval, text_0='off', text_1='on', **kwargs):
     super().__init__(**kwargs)
     self.text_0 = text_0
     self.text_1 = text_1
     self._timer = RepeatTimer(interval, self._send_value)
Beispiel #17
0
 def __init__(self, identifier: str, value: float, interval: float,
              **kwargs):
     super().__init__(identifier, **kwargs)
     self.value = value
     self.interval = interval
     self._timer = RepeatTimer(interval, self._send_random_value)
Beispiel #18
0
 def __init__(self, sensor_id, interval, **kwargs):
     super().__init__(**kwargs)
     self.sensor_id = sensor_id
     self._timer = RepeatTimer(interval, self._read_and_send_value)
Beispiel #19
0
 def __init__(self):
     self.__service_queue = AirConditionerServiceQueue.instance()
     self.__wait_queue = WaitQueue.instance()
     self.__master_machine = MasterMachine.instance()
     self.timer = RepeatTimer(UPDATE_FREQUENCY, self._task)
     logger.info('初始化UpdateService')