switch.py 937 B

12345678910111213141516171819202122232425262728
  1. # -*- coding: utf-8 -*-
  2. from loguru import logger
  3. from app.controllers.equipment.switch import Switch, fetch_data, send_switch_command
  4. from app.schemas.equipment import PAU
  5. class PAUSwitch(Switch):
  6. def __init__(self, equipment: PAU):
  7. super(PAUSwitch, self).__init__(equipment)
  8. @logger.catch()
  9. async def pau_switch_control(project_id: str, equipment_id: str) -> None:
  10. equip_params, day_type = await fetch_data(project_id, equipment_id)
  11. action = await PAUSwitch(PAU(**equip_params)).build_next_action(day_type.get('day_type'))
  12. logger.debug(f'PAU-{equipment_id}: {action}')
  13. await send_switch_command(project_id, equipment_id, action)
  14. @logger.catch()
  15. async def get_switch_action(project_id: str, device_id: str) -> str:
  16. device_params, day_type = await fetch_data(project_id, device_id)
  17. action = await PAUSwitch(PAU(**device_params)).build_next_action(day_type.get('day_type'))
  18. return action