Im Smart Home ist der Fernseher oft das eine Gerät, das nie richtig dazugehört. Das Licht dimmt zum Film, die Rollläden fahren herunter – und für den Fernseher braucht man trotzdem die Fernbedienung. Diese Anleitung verbindet IPTV mit Home Assistant über OneTV Connect auf dem Apple TV: Ihre Sender werden zu einem echten media_player, der Programmführer zu Sensoren, und ein Senderwechsel kann alles andere im Haus auslösen – oder von ihm ausgelöst werden.
Das dauert rund fünf Minuten, läuft komplett im lokalen Netz und kostet nichts: Die Integration ist Open Source und setzt kein OneTV-Pro-Abo voraus. Sie funktioniert mit jeder Quelle, die Sie in der App schon nutzen – Xtream Codes, M3U-Playlist, Stalker-Portal, Plex, Jellyfin oder Emby.
Was Sie brauchen
- Ein Apple TV mit OneTV Connect und mindestens einer eingerichteten Quelle. OneTV Connect ist ein Player und liefert selbst keine Sender.
- Home Assistant 2024.1 oder neuer mit installiertem HACS.
- Beide im selben lokalen Netz. Die Erkennung läuft über Bonjour (mDNS), das VLANs und Gastnetze nur überquert, wenn Ihr Router es weiterleitet.
- Empfohlen: die Apple-TV-Integration von Home Assistant, damit Home Assistant die Box aufwecken und die App für Sie öffnen kann.
Schritt 1 · Die Integration in der App aktivieren
Öffnen Sie OneTV Connect auf dem Apple TV und gehen Sie zu Einstellungen › Integrationen › Steuerung und Hausautomation.
- Öffnen Sie Home Assistant und schalten Sie Home Assistant aktivieren ein. Angezeigt wird der Server-Port, standardmäßig 8766.
- Lassen Sie auch die iOS-Fernbedienung eingeschaltet. Home Assistant findet das Apple TV über dieselbe Netzwerkankündigung wie die iPhone-Fernbedienung – und diese Ankündigung enthält den Zugriffsschlüssel. Deshalb müssen Sie nichts eintippen.
Nichts verlässt Ihr Netz. Der Schlüssel erlaubt nur Geräten in Ihrem eigenen WLAN, mit der App zu sprechen.
Schritt 2 · Die Integration über HACS installieren
- Öffnen Sie in Home Assistant HACS, dann das Menü ⋮ oben rechts und Benutzerdefinierte Repositories.
- Fügen Sie
https://github.com/Seidel76/noopy-tv-homeassistantein, wählen Sie den Typ Integration und klicken Sie auf Hinzufügen. - Suchen Sie in HACS nach OneTV, öffnen Sie den Eintrag und klicken Sie auf Herunterladen.
- Starten Sie Home Assistant vollständig neu (Einstellungen › System › Neu starten). Nach einer Installation oder einem Update reicht das Neuladen der Integration nicht.
Ohne HACS kopieren Sie den Ordner custom_components/noopy_tv aus dem Repository in Ihr Verzeichnis config/custom_components/ und starten neu.
Schritt 3 · Das Apple TV hinzufügen
Öffnen Sie nach dem Neustart Einstellungen › Geräte & Dienste. Das Apple TV erscheint unter Entdeckt, mit dem Namen, den Sie ihm in tvOS gegeben haben. Klicken Sie auf Hinzufügen und bestätigen Sie – Gerät und Entitäten werden angelegt. Kein Token, kein Passwort: Der Schlüssel kommt mit der Erkennung.
Erscheint nichts, fügen Sie es manuell hinzu: Integration hinzufügen › OneTV, dann die IP-Adresse des Apple TV (tvOS zeigt sie unter Einstellungen › Netzwerk) und den Port aus OneTV Connect. Eine feste Adresse für das Apple TV im Router erspart später Ärger.
Schritt 4 · Die App von Home Assistant starten lassen
Unter tvOS läuft der Server einer App nur, solange die App geöffnet ist, und keine App kann sich selbst starten. Ist OneTV Connect geschlossen, sind ihre Entitäten daher nicht verfügbar. Die Integration löst das mit der Apple-TV-Integration, die Sie vielleicht schon nutzen:
- Öffnen Sie Einstellungen › Geräte & Dienste › OneTV › Konfigurieren.
- Wählen Sie unter Paired Apple TV Ihre Apple-TV-Entität. Lassen Sie App name on the Apple TV auf OneTV Connect. Dieses Fenster ist derzeit nur auf Englisch und Französisch übersetzt.
Danach weckt media_player.turn_on ein schlafendes Apple TV und öffnet die App, und ein play_channel bei geschlossener App startet sie zuerst. Im selben Fenster stellen Sie das Abfrageintervall ein (5 bis 300 Sekunden, Standard 10) – vor allem ein Sicherheitsnetz, denn die App meldet Änderungen sofort.
Was in Home Assistant erscheint
| Entität | Was sie liefert |
|---|---|
media_player | Wiedergabe, Pause, Stopp, nächster und vorheriger Sender, Quellenliste (Ihre Sender in Playlist-Reihenfolge), Lautstärke und Stummschaltung, Artwork, Sendungstitel, Position. Spulen funktioniert bei Filmen und Episoden. |
| Aktuelle Wiedergabe (Sensor) | Sender, Film oder Episode auf dem Bildschirm und ob gerade abgespielt, pausiert oder gepuffert wird. |
| Fortschritt (Sensor) | Live: Sendung, Beginn und Ende, verbleibende Minuten und Beschreibung. Bei Filmen: Position, Dauer, Restzeit. |
| Senderauswahl | Eine Auswahl mit allen Sendern und, wenn gewünscht, eine pro Kategorie. |
| Tonspur, Untertitel | Auswahlfelder für die Spuren der laufenden Sendung. |
| App erreichbar | Ein binärer Sensor, der anzeigt, ob OneTV Connect geöffnet ist und antwortet. |
| Zurück zu live | Eine Schaltfläche, die erscheint, wenn Sie zeitversetzt schauen. |
Die aktuelle Version legt die Entitäten mit französischen Namen an, die IDs sehen also etwa so aus: sensor.onetv_lecture_en_cours. Prüfen Sie Ihre unter Einstellungen › Entitäten und benennen Sie sie bei Bedarf um – die Automationen unten verwenden media_player.onetv.
Auch der Medienbrowser funktioniert: Medien in der Seitenleiste zeigt Fortsetzen, Favoriten, Sender nach Kategorie, Filme und Serien.
Fünf Automationen zum Kopieren
Sie nutzen die aktuelle Syntax von Home Assistant (triggers / actions). Fügen Sie sie unter Einstellungen › Automationen & Szenen › Automation erstellen › In YAML bearbeiten ein und ersetzen Sie die Entitäts-IDs durch Ihre eigenen.
1. Pause, wenn es an der Tür klingelt
alias: "Pause, wenn es klingelt"
triggers:
- trigger: state
entity_id: binary_sensor.tuerklingel
to: "on"
conditions:
- condition: state
entity_id: media_player.onetv
state: playing
actions:
- action: media_player.media_pause
target:
entity_id: media_player.onetv
2. Licht dimmen, wenn der Fußballsender läuft
media_artist enthält den Sendernamen – so reagieren Sie gezielt auf einen Sender.
alias: "Licht zum Anpfiff"
triggers:
- trigger: state
entity_id: media_player.onetv
attribute: media_artist
to: "Sky Sport Bundesliga"
actions:
- action: light.turn_on
target:
entity_id: light.wohnzimmer
data:
brightness_pct: 25
transition: 3
3. Die Nachrichten um acht einschalten
Die Wartezeit stellt sicher, dass die App antwortet, bevor der Sender angefordert wird. Die ID des binären Sensors hängt von Ihrer Installation ab.
alias: "Tagesschau um acht"
triggers:
- trigger: time
at: "19:58:00"
conditions:
- condition: time
weekday: [mon, tue, wed, thu, fri]
actions:
- action: media_player.turn_on
target:
entity_id: media_player.onetv
- wait_template: "{{ is_state('binary_sensor.onetv_application_accessible', 'on') }}"
timeout: "00:02:00"
- action: noopy_tv.play_channel
data:
channel_id: "Das Erste"
4. Kinderfernsehen zur Schlafenszeit beenden
turn_off stoppt die Wiedergabe. tvOS erlaubt einer App nicht, sich selbst zu schließen; sie bleibt auf ihrem Startbildschirm geöffnet.
alias: "Schluss mit Kinderfernsehen"
triggers:
- trigger: time
at: "20:30:00"
conditions:
- condition: state
entity_id: media_player.onetv
attribute: media_artist
state: "KiKA"
actions:
- action: media_player.turn_off
target:
entity_id: media_player.onetv
5. Sprachsteuerung mit Alexa oder Google
Sprachassistenten können einen Sender nicht per Name als Quelle wählen. Zuverlässig ist ein kurzes Skript pro Sender, das Sie über Home Assistant Cloud oder Ihre eigene Brücke freigeben. play_channel ignoriert Groß-/Kleinschreibung und Akzente und akzeptiert auch die Sender-ID.
script:
onetv_das_erste:
alias: "Das Erste"
sequence:
- action: media_player.turn_on
target:
entity_id: media_player.onetv
- action: noopy_tv.play_channel
data:
channel_id: "Das Erste"
Die übrigen Aktionen funktionieren nach demselben Muster: noopy_tv.play_movie und noopy_tv.play_episode starten Inhalte aus dem Katalog (die IDs sehen Sie im Medienbrowser), noopy_tv.send_command deckt Pause, Spulen, zurück zu live, Spuren und Lautstärke ab.
Eine Dashboard-Karte
Eine Mediensteuerungs-Karte plus die Auswahlfelder für Sender und Spuren ergeben eine komplette Fernbedienung in zwei Karten:
type: vertical-stack
cards:
- type: media-control
entity: media_player.onetv
- type: entities
entities:
- select.onetv_toutes_les_chaines
- select.onetv_piste_audio
- select.onetv_sous_titres
Der Lautstärkeregler steuert die Wiedergabelautstärke von OneTV Connect. Die Lautstärke von Fernseher oder AV-Receiver läuft über HDMI-CEC und die Siri Remote – dorthin kommt keine tvOS-App.
Wenn etwas nicht funktioniert
- Das Apple TV wird nie gefunden. Prüfen Sie, ob beide Geräte im selben Subnetz sind, ob die iOS-Fernbedienung in der App aktiv ist und ob mDNS zwischen VLANs gefiltert wird. Andernfalls fügen Sie es manuell per IP-Adresse hinzu.
- Die Entitäten sind nicht verfügbar. OneTV Connect ist geschlossen oder das Apple TV im Ruhezustand. Verknüpfen Sie die Apple-TV-Entität (Schritt 4), damit Home Assistant die App öffnen kann, und stützen Sie Automationen auf den Sensor „App erreichbar“ statt auf den Zustand des Apple TV.
- Nach einem Update fehlen neue Entitäten. Starten Sie Home Assistant vollständig neu; ein Neuladen behält den alten Code im Speicher.
- Ein Sender wird nicht gefunden. Verwenden Sie den Namen, wie er in der Quellenliste des
media_playersteht, oder die Sender-ID. - Die Einrichtung scheitert beim Start von Home Assistant. Die App muss während der Einrichtung antworten. Öffnen Sie OneTV Connect und laden Sie die Integration neu.
Hängen Sie noch fest? Auf der Integrationsseite gibt es Diagnosedaten herunterladen (der Zugriffsschlüssel wird dabei entfernt). Schicken Sie uns die Datei über die Support-Seite oder eröffnen Sie ein Issue auf GitHub.
Häufige Fragen
Gibt es eine IPTV-Integration für Home Assistant?
Ja. OneTV Connect auf dem Apple TV hat eine Home-Assistant-Integration, die über HACS installiert wird. Sie stellt Ihre IPTV-Sender als media_player mit Artwork, EPG-Sensoren, Senderauswahl und Aktionen wie play_channel bereit.
Brauche ich ein kostenpflichtiges Abo?
Nein. Die Integration ist kostenlos und Open Source und setzt kein OneTV Pro voraus. Sie brauchen OneTV Connect auf einem Apple TV, Ihre eigene IPTV-Quelle und Home Assistant 2024.1 oder neuer.
Welche IPTV-Quellen funktionieren?
Jede Quelle, die in OneTV Connect eingerichtet ist: Xtream Codes, M3U-Playlists, Stalker-Portale sowie Plex, Jellyfin und Emby. Home Assistant sieht dieselben Sender und denselben Programmführer wie die App.
Funktioniert das auch auf iPhone oder Android?
Die Integration richtet sich an OneTV Connect auf dem Apple TV, also das Gerät am Fernseher. Die iPhone-App ist nicht für die Steuerung aus Home Assistant gedacht.
Braucht Home Assistant dafür Internet?
Nein. Alles läuft im lokalen Netz: Erkennung per Bonjour, Befehle und Ereignisstrom per HTTP zwischen Home Assistant und dem Apple TV.