Skip to main content

aiowebostv

Python library to control LG webOS based TV devices.

Based on:

Requirements

  • Python >= 3.11

Install

pip install aiowebostv

Install from Source

Run the following command inside this folder

pip install --upgrade .

Examples

Basic Example:

import asyncio
from pprint import pprint

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}")

    pprint(client.tv_info)
    pprint(client.tv_state)

    await client.disconnect()


if __name__ == "__main__":
    asyncio.run(main())

Subscribed State Updates Example:

import asyncio
import dataclasses
import signal
from datetime import UTC, datetime
from pprint import pprint

from aiowebostv import WebOsClient
from aiowebostv.models import WebOsTvState

HOST = "192.168.1.39"
# For first time pairing set key to None
CLIENT_KEY = "140cce792ae045920e14da4daa414582"


async def on_state_change(tv_state: WebOsTvState) -> None:
    """State changed callback."""
    now = datetime.now(UTC).astimezone().strftime("%H:%M:%S.%f")[:-3]
    print(f"[{now}] State change:")
    # for the example, remove apps and inputs to make the output more readable
    state = dataclasses.replace(tv_state, apps={}, inputs={})
    pprint(state)


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 to get updates or ctrl-c to exit
    sig_event = asyncio.Event()
    signal.signal(signal.SIGINT, lambda _exit_code, _frame: sig_event.set())
    await sig_event.wait()

    await client.disconnect()


if __name__ == "__main__":
    asyncio.run(main())

Examples can be found in the examples folder

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.9.1.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

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

aiowebostv-0.9.1-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

Details for the file aiowebostv-0.9.1.tar.gz.

File metadata

  • Download URL: aiowebostv-0.9.1.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for aiowebostv-0.9.1.tar.gz
Algorithm Hash digest
SHA256 3968478fd56f32cea151ca2a3729b70be9269314f398a2ec00e0a09081ad8675
MD5 000324858c29a9b9af3c7ce2cc323e81
BLAKE2b-256 74ff2146f9c8b959c0ee32ba414b149872e0d13ece941e2560b88a47477dba4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiowebostv-0.9.1.tar.gz:

Publisher: publish-to-pypi.yml on home-assistant-libs/aiowebostv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aiowebostv-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: aiowebostv-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 19.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for aiowebostv-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ad6c179c2343ee352793dda73c3580877bcfb5b3c456415dfcec4e24afa1fefc
MD5 bd6a94a750521579517607be3ccf72bd
BLAKE2b-256 7683cb056a46536adc06e29ec9de05abc2759b3be8476ca2d878be3822b63eee

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiowebostv-0.9.1-py3-none-any.whl:

Publisher: publish-to-pypi.yml on home-assistant-libs/aiowebostv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.9.2

2 files

This release

0.9.1 This release

2 files

0.9.0

2 files

0.8.0

2 files

0.7.5

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.2

2 files

0.6.1

2 files

0.6.0

2 files

0.5.0

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

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