Skip to main content

Python module to talk to Philips Hue.

Project description

# Aiohue
## Asynchronous library to control Philips Hue

Requires Python 3.5 and uses asyncio and aiohttp.

```python
import asyncio
from pprint import pprint

from aiohue.discovery import discover_nupnp


async def main():
async with aiohttp.ClientSession() as session:
await run(session)


async def run(websession):
bridges = await discover_nupnp(websession)

bridge = bridges[0]
await bridge.create_user('aiophue-example')
print('Your username is', bridge.username)

await bridge.initialize()

print('Name', bridge.config.name)
print('Mac', bridge.config.mac)

print()
print('Lights:')
for id in bridge.lights:
light = bridge.lights[id]
print('{}: {}'.format(light.name, 'on' if light.state['on'] else 'off'))

# Change state of a light.
await light.set_state(on=not light.state['on'])

print()
print('Groups:')
for id in bridge.groups:
group = bridge.groups[id]
print('{}: {}'.format(group.name, 'on' if group.action['on'] else 'off'))

# Change state of a group.
await group.set_action(on=not group.state['on'])


asyncio.get_event_loop().run_until_complete(main())
```

## Timeouts

Aiohue does not specify any timeouts for any requests. You will need to specify them in your own code. We recommend the `async_timeout` package:

```python
import async_timeout

with async_timeout.timeout(10):
await bridge.initialize()
```

## Contribution guidelines

Object hierarchy and property/method names should match the Philips Hue API.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiohue-1.1.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aiohue-1.1.0-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file aiohue-1.1.0.tar.gz.

File metadata

  • Download URL: aiohue-1.1.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aiohue-1.1.0.tar.gz
Algorithm Hash digest
SHA256 7b0c576c74d4b36d6089198f2aec4b2be1d156af319e1ebcc609520d95fdd384
MD5 7856a22c3775d1aea457bc7bc5c27e56
BLAKE2b-256 c0c619375bf63563130fd1f7d51a7644695297ed646a163e4052f2a217e1f7ec

See more details on using hashes here.

File details

Details for the file aiohue-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aiohue-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 72f00fda88e886e2cb9c75a51f60201aa43fea6195a1c7f5aee59be473da730e
MD5 849f292be78a42f818863ddba4c5f32d
BLAKE2b-256 a81f8adb56d7a4d072e3e7c52d2e7840fbbd64debe1224ab5dd25753430d4ade

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page