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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hassfeld-0.3.13a2.tar.gz.
File metadata
- Download URL: hassfeld-0.3.13a2.tar.gz
- Upload date:
- Size: 27.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32072d293b585db567430e8fa3523ea49945a91e844158b1033fe91e34cea3ac
|
|
| MD5 |
6e6ecae1969993e3cd32da22a7a119de
|
|
| BLAKE2b-256 |
11cacfe3be2938680be4e91d908064e35e5bd7e438569d861ca4eddd3c14c9e5
|
File details
Details for the file hassfeld-0.3.13a2-py3-none-any.whl.
File metadata
- Download URL: hassfeld-0.3.13a2-py3-none-any.whl
- Upload date:
- Size: 31.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4aa3adca095d6aa45fd3f23f260530e408f5e64b7f1eb2daebef494aeba2c4f9
|
|
| MD5 |
3676a2f7b98c7a2a2745a316f4e5deea
|
|
| BLAKE2b-256 |
ffb44b21fda7145430b7478279a8f5bdf10559b3152f4419b6317d2c5d3ea2d9
|