예제 #1
0
    def set_devices(cls, current_devices):
        add_device_set = current_devices - cls._devices
        lost_device_set = cls._devices - current_devices

        # remove device
        for each_device in lost_device_set:
            logger.info('LOST DEVICE', device=each_device)
            TaskManager.exec_task(each_device, 'disconnect')

        # add device
        for each_device in add_device_set:
            logger.info('ADD DEVICE', device=each_device)
            TaskManager.exec_task(each_device, 'connect')

        cls._devices = current_devices
예제 #2
0
파일: api.py 프로젝트: kaiser34/whenconnect
def get_current_task(task_type=None):
    current_task_dict = TaskManager.get_task_dict()
    if task_type and task_type in current_task_dict:
        return current_task_dict[task_type]
    return current_task_dict
예제 #3
0
파일: api.py 프로젝트: kaiser34/whenconnect
def when_disconnect(device, do):
    return TaskManager.register_task(_get_task_type(device),
                                     event_type='disconnect',
                                     device_list=device,
                                     todo=do)