Yonsm/ZhiBot

增加light亮度调整

neckyaan opened this issue · 0 comments

async def controlDevice(hass, header, payload):
entity_id = payload['deviceId']
service = getControlService(header['name'])
domain = entity_id[:entity_id.find('.')]
data = {"entity_id": entity_id}
if domain == 'cover':
if entity_id.endswith('mu_bu') or entity_id.endswith('liang_yi_jia'): # MAGIC code, should be better?
service = 'close_cover' if service != 'turn_off' else 'open_cover'
else:
service = 'close_cover' if service == 'turn_off' else 'open_cover'
elif domain == 'vacuum':
service = 'return_to_base' if service == 'turn_off' else 'start'

elif domain == 'light':  #我加的灯光调整控制便于按钮调暗床头灯
    if service == 'adjust_down_brightness':
        service ='turn_on'
        data = {"entity_id": entity_id, "brightness_step":-25}
    if service == 'set_brightness':
        service ='turn_on'
        data = {"entity_id": entity_id, "brightness":80}    

_LOGGER.info("Control %s for %s data is %s ", service, entity_id, data)
result = await hass.services.async_call(domain, service, data, True)
return {} if result is not None else errorPayload('IOT_DEVICE_OFFLINE')