Library to control webOS based LG TV devices
Project description
aiowebostv
Python library to control LG webOS based TV devices.
Based on:
aiopylgtv
library at https://github.com/bendavid/aiopylgtvbscpylgtv
library at https://github.com/chros73/bscpylgtv
Requirements
- Python >= 3.9
Install
pip install aiowebostv
Install from Source
Run the following command inside this folder
pip install --upgrade .
Examples
Basic Example:
import asyncio
from aiowebostv import WebOsClient
HOST = "192.168.1.39"
# For first time pairing set key to None
CLIENT_KEY = "140cce792ae045920e14da4daa414582"
async def main():
"""Basic webOS client example."""
client = WebOsClient(HOST, CLIENT_KEY)
await client.connect()
# Store this key for future use
print(f"Client key: {client.client_key}")
apps = await client.get_apps_all()
for app in apps:
print(app)
await client.disconnect()
if __name__ == "__main__":
asyncio.run(main())
Subscribed State Updates Example:
import asyncio
from aiowebostv import WebOsClient
HOST = "192.168.1.39"
# For first time pairing set key to None
CLIENT_KEY = "140cce792ae045920e14da4daa414582"
async def on_state_change(client):
"""State changed callback."""
print("State changed:")
print(f"System info: {client.system_info}")
print(f"Software info: {client.software_info}")
print(f"Hello info: {client.hello_info}")
print(f"Channel info: {client.channel_info}")
print(f"Apps: {client.apps}")
print(f"Inputs: {client.inputs}")
print(f"Powered on: {client.power_state}")
print(f"App Id: {client.current_app_id}")
print(f"Channels: {client.channels}")
print(f"Current channel: {client.current_channel}")
print(f"Muted: {client.muted}")
print(f"Volume: {client.volume}")
print(f"Sound output: {client.sound_output}")
async def main():
"""Subscribed State Updates Example."""
client = WebOsClient(HOST, CLIENT_KEY)
await client.register_state_update_callback(on_state_change)
await client.connect()
# Store this key for future use
print(f"Client key: {client.client_key}")
# Change something using the remote during sleep period to get updates
await asyncio.sleep(30)
await client.disconnect()
if __name__ == "__main__":
asyncio.run(main())
Examples can be found in the examples
folder
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
aiowebostv-0.2.0.tar.gz
(17.0 kB
view details)
Built Distribution
File details
Details for the file aiowebostv-0.2.0.tar.gz
.
File metadata
- Download URL: aiowebostv-0.2.0.tar.gz
- Upload date:
- Size: 17.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae5a5c58295e3878e3797b7315c8fe875ccf7ba71bb40d0c767a08222af328cf |
|
MD5 | 65bde2a8197e2004ac0e61c19b141cb7 |
|
BLAKE2b-256 | 867aa243f01e0c47a4bede5c2d7498d3cc7426efff4507db63483ad411f95b75 |
File details
Details for the file aiowebostv-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: aiowebostv-0.2.0-py3-none-any.whl
- Upload date:
- Size: 16.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10aca26f674c2b7ee77ea458364f2506bf024df68d1bec0014f64bcfffb5859b |
|
MD5 | c0f6b5eea4123fddfde216e6ca94bb5c |
|
BLAKE2b-256 | f6e5f8b5bfb0f70c6e0a1f5d960594e59366178758f623371009506c6044e89f |