Python library for programmatically using a Logitech Harmony Link or Ultimate Hub.
Project description
pyharmony
=======
Python library for programmatically using a Logitech Harmony Link or Ultimate Hub.
A fork of [bkanuka/pyharmony](https://github.com/bkanuka/pyharmony) with the intent to:
- Make pip/setup.py installable.
- Unify improvments made in other forks.
- Configurable for Harmony Link/Hub differences.
- Better practices for project layout.
- Better error handling!
- Inclusion into Home Assistant (https://home-assistant.io)
Protocol
--------
As the harmony protocol is being worked out, notes are in PROTOCOL.md.
Status
------
* Authentication to Logitech's web service working.
* Authentication to harmony device working.
* Querying for entire device information
* Querying for activity information only
* Querying for current activity
* Starting Activity
* Sending Command
Usage
-----
Pyharmony - Harmony device control
```
usage: harmony [-h] (--harmony_ip HARMONY_IP | --discover)
[--harmony_port HARMONY_PORT]
[--loglevel {CRITICAL,ERROR,DEBUG,WARNING,INFO}]
{show_config,show_current_activity,start_activity,power_off,sync,send_command}
...
Pyharmony - Harmony device control
positional arguments:
{show_config,show_current_activity,start_activity,power_off,sync,send_command}
show_config Print the Harmony device configuration.
show_current_activity
Print the current activity config.
start_activity Switch to a different activity.
power_off Stop the activity.
sync Sync the harmony.
send_command Send a simple command.
optional arguments:
-h, --help show this help message and exit
--harmony_port HARMONY_PORT
Network port that the Harmony is listening on.
(default: 5222)
--loglevel {CRITICAL,ERROR,DEBUG,WARNING,INFO}
Logging level to print to the console. (default: INFO)
required arguments:
--harmony_ip HARMONY_IP
IP Address of the Harmony device. (default: None)
OR
--discover
Run a network scan to discover hubs
```
TODO
----
* Figure out how to detect when the session token expires so we can get a new
one.
* Figure out a good way of sending commands based on sync state.
* Is it possible to update device configuration?
=======
Python library for programmatically using a Logitech Harmony Link or Ultimate Hub.
A fork of [bkanuka/pyharmony](https://github.com/bkanuka/pyharmony) with the intent to:
- Make pip/setup.py installable.
- Unify improvments made in other forks.
- Configurable for Harmony Link/Hub differences.
- Better practices for project layout.
- Better error handling!
- Inclusion into Home Assistant (https://home-assistant.io)
Protocol
--------
As the harmony protocol is being worked out, notes are in PROTOCOL.md.
Status
------
* Authentication to Logitech's web service working.
* Authentication to harmony device working.
* Querying for entire device information
* Querying for activity information only
* Querying for current activity
* Starting Activity
* Sending Command
Usage
-----
Pyharmony - Harmony device control
```
usage: harmony [-h] (--harmony_ip HARMONY_IP | --discover)
[--harmony_port HARMONY_PORT]
[--loglevel {CRITICAL,ERROR,DEBUG,WARNING,INFO}]
{show_config,show_current_activity,start_activity,power_off,sync,send_command}
...
Pyharmony - Harmony device control
positional arguments:
{show_config,show_current_activity,start_activity,power_off,sync,send_command}
show_config Print the Harmony device configuration.
show_current_activity
Print the current activity config.
start_activity Switch to a different activity.
power_off Stop the activity.
sync Sync the harmony.
send_command Send a simple command.
optional arguments:
-h, --help show this help message and exit
--harmony_port HARMONY_PORT
Network port that the Harmony is listening on.
(default: 5222)
--loglevel {CRITICAL,ERROR,DEBUG,WARNING,INFO}
Logging level to print to the console. (default: INFO)
required arguments:
--harmony_ip HARMONY_IP
IP Address of the Harmony device. (default: None)
OR
--discover
Run a network scan to discover hubs
```
TODO
----
* Figure out how to detect when the session token expires so we can get a new
one.
* Figure out a good way of sending commands based on sync state.
* Is it possible to update device configuration?
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyharmony-1.0.21.tar.gz
(11.0 kB
view details)
File details
Details for the file pyharmony-1.0.21.tar.gz
.
File metadata
- Download URL: pyharmony-1.0.21.tar.gz
- Upload date:
- Size: 11.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 715fb9d379eb06324cf7614c7e7d873b27e9e5eef48bf340d8360fec5dfb26a3 |
|
MD5 | a57d1c26f8d44545727a01ac3e8565af |
|
BLAKE2b-256 | 16b5f9e7f581095b5afaec9e24db5f6b704806c772e028e6ac172797a8c2f14e |