Android — très prochainement En savoir plus
← Tous les articles

Home Assistant et IPTV : piloter les chaînes de l’Apple TV (guide 2026)

Installez l’intégration OneTV depuis HACS, ajoutez l’Apple TV en un clic et transformez vos chaînes IPTV en media_player, capteurs EPG et automatisations. Cinq exemples prêts à coller.

Home AssistantOneTV Connect

Dans une maison connectée, la télé reste souvent l’écran qu’on n’arrive pas à intégrer. Les lumières baissent pour le film, les volets descendent, et il faut encore chercher la télécommande. Ce guide relie l’IPTV à Home Assistant grâce à OneTV Connect sur Apple TV : vos chaînes deviennent un vrai media_player, le guide TV devient des capteurs, et un changement de chaîne peut déclencher — ou être déclenché par — n’importe quoi d’autre dans la maison.

Comptez cinq minutes. Tout reste sur votre réseau local et rien n’est payant : l’intégration est open source et ne demande pas d’abonnement OneTV Pro. Elle fonctionne avec la source que vous utilisez déjà dans l’app : Xtream Codes, playlist M3U, portail Stalker, Plex, Jellyfin ou Emby.

Ce qu’il faut

  • Une Apple TV avec OneTV Connect et au moins une source ajoutée. OneTV Connect est un lecteur : il ne fournit aucune chaîne.
  • Home Assistant 2024.1 ou plus récent, avec HACS installé.
  • Les deux sur le même réseau local. La découverte passe par Bonjour (mDNS), qui ne traverse ni les VLAN ni le réseau invité sans relais sur le routeur.
  • Conseillé : l’intégration Apple TV de Home Assistant, pour qu’il puisse réveiller le boîtier et ouvrir l’app à votre place.

Étape 1 · Activer l’intégration dans l’app

Sur l’Apple TV, ouvrez OneTV Connect puis Réglages › Intégrations › Contrôle et domotique.

  1. Ouvrez Home Assistant et activez Activer Home Assistant. L’écran indique le port du serveur, 8766 par défaut.
  2. Laissez aussi Activer la télécommande iOS allumé. Home Assistant trouve l’Apple TV grâce à la même annonce réseau que la télécommande iPhone, et cette annonce transporte la clé d’accès : c’est pour cela que vous n’avez rien à saisir.

Rien ne sort de chez vous. La clé permet seulement aux appareils de votre Wi-Fi de parler à l’app.

Étape 2 · Installer l’intégration depuis HACS

  1. Dans Home Assistant, ouvrez HACS, le menu ⋮ en haut à droite, puis Dépôts personnalisés.
  2. Collez https://github.com/Seidel76/noopy-tv-homeassistant, choisissez le type Intégration et cliquez sur Ajouter.
  3. Cherchez OneTV dans HACS, ouvrez la fiche et cliquez sur Télécharger.
  4. Redémarrez complètement Home Assistant (Paramètres › Système › Redémarrer). Recharger l’intégration ne suffit pas après une installation ou une mise à jour.

Sans HACS, copiez le dossier custom_components/noopy_tv du dépôt dans votre répertoire config/custom_components/, puis redémarrez.

Étape 3 · Ajouter l’Apple TV

Après le redémarrage, ouvrez Paramètres › Appareils et services. L’Apple TV apparaît dans Découvert, sous le nom que vous lui avez donné dans tvOS. Cliquez sur Ajouter, confirmez : l’appareil et ses entités sont créés. Aucun jeton ni mot de passe à copier, la clé arrive avec la découverte.

Si rien n’apparaît, ajoutez-la à la main : Ajouter une intégration › OneTV, puis l’adresse IP de l’Apple TV (tvOS l’affiche dans Réglages › Réseau) et le port indiqué dans OneTV Connect. Réserver une adresse fixe à l’Apple TV dans votre box évite bien des soucis par la suite.

Étape 4 · Laisser Home Assistant lancer l’app

Sur tvOS, le serveur d’une app ne tourne que lorsqu’elle est ouverte, et une app ne peut pas se lancer seule. Quand OneTV Connect est fermée, ses entités sont donc indisponibles. L’intégration contourne cela avec l’intégration Apple TV que vous avez peut-être déjà :

  1. Ouvrez Paramètres › Appareils et services › OneTV › Configurer.
  2. Choisissez votre entité Apple TV dans Apple TV associée. Laissez Nom de l’app sur l’Apple TV sur OneTV Connect.

Désormais, media_player.turn_on réveille une Apple TV en veille et ouvre l’app, et un play_channel envoyé app fermée la lance d’abord. Le même écran règle l’intervalle d’interrogation (de 5 à 300 secondes, 10 par défaut), surtout un filet de sécurité puisque l’app pousse ses changements en temps réel.

Ce qui apparaît dans Home Assistant

EntitéCe qu’elle apporte
media_playerLecture, pause, arrêt, chaîne suivante et précédente, liste des sources (vos chaînes, dans l’ordre de la playlist), volume et sourdine, visuel, titre du programme, position. Le déplacement dans la lecture fonctionne sur les films et épisodes.
Lecture en cours (capteur)La chaîne, le film ou l’épisode à l’écran, et son état : lecture, pause ou chargement.
Progression (capteur)En direct : le programme, son début et sa fin, les minutes restantes et le résumé. Sur un film : position, durée, temps restant.
Sélecteurs de chaînesUn sélecteur avec toutes les chaînes, et un par catégorie si vous gardez l’option.
Piste audio, Sous-titresDes sélecteurs pour les pistes du programme en cours.
Application accessibleUn capteur binaire qui indique si OneTV Connect est ouverte et répond.
Retour au directUn bouton qui apparaît quand vous regardez en différé.

Les identifiants reprennent les noms français, par exemple sensor.onetv_lecture_en_cours. Vérifiez les vôtres dans Paramètres › Entités : les automatisations ci-dessous utilisent media_player.onetv, à adapter si besoin.

Le navigateur multimédia fonctionne aussi : Médias, dans la barre latérale, propose Reprendre, Favoris, les chaînes par catégorie, les films et les séries.

Cinq automatisations à copier

Elles utilisent la syntaxe actuelle de Home Assistant (triggers / actions). Collez-les dans Paramètres › Automatisations › Créer › Modifier en YAML et remplacez les identifiants par les vôtres.

1. Mettre en pause quand on sonne

alias: "Pause quand on sonne"
triggers:
  - trigger: state
    entity_id: binary_sensor.sonnette
    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. Tamiser les lumières quand la chaîne du match démarre

media_artist contient le nom de la chaîne : on peut donc réagir à une chaîne précise.

alias: "Ambiance match"
triggers:
  - trigger: state
    entity_id: media_player.onetv
    attribute: media_artist
    to: "Canal+ Sport"
actions:
  - action: light.turn_on
    target:
      entity_id: light.salon
    data:
      brightness_pct: 25
      transition: 3

3. Lancer le journal de 20 heures

L’attente garantit que l’app répond avant de demander la chaîne. L’identifiant du capteur binaire dépend de votre installation.

alias: "Le 20 heures"
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: "France 2"

4. Arrêter les dessins animés à l’heure du coucher

turn_off arrête la lecture. tvOS ne laisse pas une app se fermer elle-même : elle reste ouverte sur son accueil.

alias: "Fin des dessins animés"
triggers:
  - trigger: time
    at: "20:30:00"
conditions:
  - condition: state
    entity_id: media_player.onetv
    attribute: media_artist
    state: "Gulli"
actions:
  - action: media_player.turn_off
    target:
      entity_id: media_player.onetv

5. Commander à la voix avec Alexa ou Google

Les assistants vocaux ne savent pas choisir une chaîne par son nom comme source. La méthode fiable : un petit script par chaîne, exposé à l’assistant via Home Assistant Cloud ou votre propre passerelle. play_channel ignore majuscules et accents, et accepte aussi l’identifiant de la chaîne.

script:
  onetv_france_2:
    alias: "France 2"
    sequence:
      - action: media_player.turn_on
        target:
          entity_id: media_player.onetv
      - action: noopy_tv.play_channel
        data:
          channel_id: "France 2"

Les autres actions suivent le même modèle : noopy_tv.play_movie et noopy_tv.play_episode lancent un contenu du catalogue (les identifiants sont visibles dans le navigateur multimédia), et noopy_tv.send_command couvre pause, déplacement, retour au direct, pistes et volume.

Une carte de tableau de bord

Une carte de contrôle multimédia et les sélecteurs de chaînes et de pistes forment une télécommande complète en deux cartes :

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

Le curseur de volume règle le volume du lecteur OneTV Connect. Celui de la télé ou de l’ampli passe par le HDMI-CEC et la Siri Remote, hors de portée d’une app tvOS.

Quand ça ne marche pas

  • L’Apple TV n’est jamais découverte. Vérifiez que les deux appareils sont sur le même sous-réseau, que Activer la télécommande iOS est allumé et que le mDNS n’est pas filtré entre VLAN. Sinon, ajoutez-la à la main avec son adresse IP.
  • Les entités sont indisponibles. OneTV Connect est fermée ou l’Apple TV est en veille. Associez l’entité Apple TV (étape 4) pour que Home Assistant puisse l’ouvrir, et appuyez vos automatisations sur le capteur « Application accessible » plutôt que sur l’état de l’Apple TV.
  • De nouvelles entités manquent après une mise à jour. Redémarrez complètement Home Assistant : un simple rechargement garde l’ancien code en mémoire.
  • Une chaîne est introuvable. Utilisez le nom tel qu’il apparaît dans la liste des sources du media_player, ou l’identifiant de la chaîne.
  • La configuration échoue au démarrage de Home Assistant. L’app doit répondre pendant la configuration. Ouvrez OneTV Connect, puis rechargez l’intégration.

Toujours bloqué ? La page de l’intégration propose Télécharger les diagnostics (la clé d’accès en est retirée). Envoyez-le-nous depuis la page d’aide, ou ouvrez un ticket sur GitHub.

Les questions qu’on nous pose

Existe-t-il une intégration IPTV pour Home Assistant ?

Oui. OneTV Connect sur Apple TV dispose d’une intégration Home Assistant, installée via HACS. Elle expose vos chaînes IPTV sous forme de media_player avec visuels, capteurs de guide TV, sélecteurs de chaînes et actions comme play_channel.

Faut-il un abonnement payant ?

Non. L’intégration est gratuite et open source, et ne demande pas OneTV Pro. Il faut OneTV Connect sur une Apple TV, votre propre source IPTV et Home Assistant 2024.1 ou plus récent.

Quelles sources IPTV fonctionnent ?

Toute source ajoutée dans OneTV Connect : Xtream Codes, playlists M3U, portails Stalker, ainsi que Plex, Jellyfin et Emby. Home Assistant voit les mêmes chaînes et le même guide que l’app.

Fonctionne-t-elle sur iPhone ou Android ?

L’intégration vise OneTV Connect sur Apple TV, l’appareil branché à la télévision. L’app iPhone n’est pas prévue pour être pilotée depuis Home Assistant.

Home Assistant a-t-il besoin d’Internet pour cela ?

Non. Tout se passe sur le réseau local : découverte par Bonjour, commandes et flux d’événements en HTTP entre Home Assistant et l’Apple TV.