Integration of Raumfeld into Home Assistant
Project description
hassfeld is a module primarily aimed to integrated Teufel Smart Speaker (aka Raumfeld Multiroom) into https://www.home-assistant.io/. However, the design is not tailored to Home Assistant and can be used as a module to any Pyhton program to control the Teufel Smart Speaker. The module also provides corresponding asyncio methods.
Look how it is to use with asyncrhonous I/O:
import asyncio import aiohttp import hassfeld async def main(): host = "teufel-host.example.com" port = 47365 session = aiohttp.ClientSession() raumfeld = hassfeld.RaumfeldHost(host, port, session=session) asyncio.create_task(raumfeld.async_update_all(session)) await raumfeld.async_wait_initial_update() zone = ["Master Bedroom"] media_info = await raumfeld.async_get_media_info(zone) print(f"Media info: {media_info}") await session.close() asyncio.run(main())
The use with blocking I/O was supported too but is currently broken:
import hassfeld raumfeld_host = "teufel-host.example.com" zone = [ "Living room", "Kitchen" ] raumfeld = hassfeld.RaumfeldHost(raumfeld_host) raumfeld.start_update_thread() raumfeld.search_and_zone_play(zone, 'raumfeld:any contains "Like a Rolling Stone"')
Features
Management and snapshot of zones.
Search and play songs.
Install hassfeld by running:
python3 -m pip install hassfeld
Contribute
Issue Tracker: https://github.com/B5r1oJ0A9G/hassfeld/issues
Source Code: https://github.com/B5r1oJ0A9G/hassfeld
License
The project is licensed under the GNU General Public License v3 (GPLv3).
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
Built Distribution
Hashes for hassfeld-0.3.13a2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4aa3adca095d6aa45fd3f23f260530e408f5e64b7f1eb2daebef494aeba2c4f9 |
|
MD5 | 3676a2f7b98c7a2a2745a316f4e5deea |
|
BLAKE2b-256 | ffb44b21fda7145430b7478279a8f5bdf10559b3152f4419b6317d2c5d3ea2d9 |