incorporated other logic
This commit is contained in:
@@ -12,6 +12,9 @@ class AqaraCube(Mqtt):
|
||||
self.listen_event(self.handle_event, "MQTT_MESSAGE", topic=topic)
|
||||
self.log(f'Listening for cube events on: {topic}')
|
||||
|
||||
self.app = self.get_app(self.args['app'])
|
||||
self.log(f'Connected to other app: {self.app.name}')
|
||||
|
||||
def handle_event(self, event_name, data, kwargs):
|
||||
topic = data['topic']
|
||||
payload = json.loads(data['payload'])
|
||||
@@ -29,20 +32,34 @@ class AqaraCube(Mqtt):
|
||||
def action_handler(self, action: str , description: str):
|
||||
self.log(f'{self.args["cube"]}: {action}: {description}')
|
||||
|
||||
def handle_rotate_right(self, payload):
|
||||
self.log(f'{self.args["cube"]}: Rotate right')
|
||||
|
||||
def handle_rotate_left(self, payload):
|
||||
self.log(f'{self.args["cube"]}: Rotate left')
|
||||
|
||||
def handle_slide(self, payload):
|
||||
self.log(f'{self.args["cube"]}: Slide')
|
||||
if description == 'activate':
|
||||
self.app.activate(cause=f'{self.args["cube"]}: {action}')
|
||||
|
||||
def handle_flip180(self, payload):
|
||||
self.log(f'{self.args["cube"]}: Flipped 180')
|
||||
elif description.startswith('scene.'):
|
||||
self.call_service('scene/turn_on', entity_id=description, namespace='default')
|
||||
self.log(f'Turned on {description}')
|
||||
|
||||
elif description == 'toggle':
|
||||
cause = f'{action} from {self.args["cube"]}'
|
||||
if self.app.entity_state:
|
||||
self.app.deactivate(cause=cause)
|
||||
else:
|
||||
self.app.activate(cause=cause)
|
||||
|
||||
# def handle_rotate_right(self, payload):
|
||||
# self.log(f'{self.args["cube"]}: Rotate right')
|
||||
|
||||
def handle_flip90(self, payload):
|
||||
self.log(f'{self.args["cube"]}: Flipped 90')
|
||||
# def handle_rotate_left(self, payload):
|
||||
# self.log(f'{self.args["cube"]}: Rotate left')
|
||||
|
||||
def handle_shake(self, payload):
|
||||
self.log(f'{self.args["cube"]}: Shake')
|
||||
# def handle_slide(self, payload):
|
||||
# self.log(f'{self.args["cube"]}: Slide')
|
||||
|
||||
# def handle_flip180(self, payload):
|
||||
# self.log(f'{self.args["cube"]}: Flipped 180')
|
||||
|
||||
# def handle_flip90(self, payload):
|
||||
# self.log(f'{self.args["cube"]}: Flipped 90')
|
||||
|
||||
# def handle_shake(self, payload):
|
||||
# self.log(f'{self.args["cube"]}: Shake')
|
||||
|
||||
Reference in New Issue
Block a user