jnimmo / pyIntesisHome

Python interface for IntesisHome devices
MIT License
35 stars 20 forks source link
hacktoberfest python

pyIntesisHome

This project is a python3 library for interfacing with Intesis air conditioning controllers, including cloud control of IntesisHome (Airconwithme + anywAiR) and local control of IntesisBox devices. It is fully asynchronous using the aiohttp library, and utilises the private API used by the IntesisHome mobile apps.

Home Assistant

To use with Home Assistant, add the following to your configuration.yaml

IntesisHome configuration example

climate:
  - platform: intesishome
    username: YOUR_USERNAME
    password: YOUR_PASSWORD

IntesisBox configuration example

climate:
  - platform: intesishome
    device: IntesisBox
    host: 192.168.1.50

Library usage

Library basic example

import asyncio
from pyintesishome import IntesisHome

async def main(loop):
    controller = IntesisHome('username', 'password', loop=loop, device_type='airconwithme')
    await controller.connect()
    print(repr(controller.get_devices()))
    # Imagine you have a device with id 12015601252591
    if await controller.get_power_state('12015601252591') == 'off':
        await controller.set_power_on('12015601252591')

    await controller.set_mode_heat('12015601252591')
    await controller.set_temperature('12015601252591', 22)
    await controller.set_fan_speed('12015601252591','quiet')

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    result = loop.run_until_complete(main(loop))

Control methods