Intégration domotique Roku, gratuite et open source

Pilotez vos lecteurs Roku et Roku TV en local : marche, applications, lecture, touches, entrées.
Pilotez vos lecteurs Roku (Express, Streaming Stick, Ultra…) et vos Roku TV (TCL, Hisense, onn., Sharp, Philips, Westinghouse, téléviseurs Roku…) depuis Gladys : marche/arrêt, application à l'écran, lecture, touches de télécommande, volume et entrées, sur le tableau de bord et dans vos scènes.
Tout reste sur votre réseau local : Gladys parle au Roku avec le protocole de contrôle externe (ECP) que Roku documente pour ses appareils. Pas de compte Roku, pas de cloud, pas de clé d'API.
Développée sans le matériel : retours bienvenus. Cette intégration a été écrite à partir de la documentation de Roku et de vraies réponses d'appareils Roku enregistrées par d'autres projets libres, pas devant un Roku. Si quelque chose ne marche pas comme décrit ici, ouvrez un ticket (voir Signaler un problème) : il sera vite corrigé.
Avant de commencer : autoriser le contrôle depuis le réseau
Les versions récentes de Roku OS bloquent par défaut le contrôle depuis d'autres appareils. Sur chaque Roku :
- Appuyez sur Accueil de la télécommande Roku, ouvrez Paramètres > Système > Paramètres système avancés > Contrôle par applications mobiles (en anglais : Settings > System > Advanced system settings > Control by mobile apps).
- Ouvrez Accès réseau (Network access) et choisissez Activé
(Enabled).
- Limité (Limited, le réglage par défaut des versions récentes) ne permet que d'ouvrir des applications et de saisir du texte : les touches de télécommande sont refusées et, selon la version de Roku OS, ce que Gladys lit aussi.
- Désactivé (Disabled) refuse tout.
- Permissif (Permissive) fonctionne aussi, mais ouvre le Roku à n'importe quel appareil, même hors de votre réseau : Activé suffit à Gladys.
Sur une Roku TV, activez aussi Paramètres > Système > Alimentation > Démarrage rapide de la TV (Settings > System > Power > Fast TV start). Sans lui, une TV en veille devient sourde au réseau : Gladys ne peut ni l'allumer, ni savoir qu'elle est éteinte plutôt que débranchée.
Donnez à chaque Roku une adresse fixe dans votre box (« réservation DHCP ») : Gladys retrouve un Roku qui a changé d'adresse, mais il lui faut une recherche.
Installation
- Installez l'intégration Roku depuis le magasin d'intégrations de Gladys.
- Ouvrez son onglet Découverte et lancez une recherche : chaque Roku du même réseau que Gladys répond en quelques secondes.
- Cliquez sur Ajouter à Gladys pour chaque Roku voulu. C'est tout.
Un Roku que la recherche ne trouve pas (autre sous-réseau ou VLAN, réseau maillé qui filtre la découverte…) ? Dans l'onglet Configuration, saisissez son adresse IP dans Adresses des Roku (plusieurs adresses séparées par des virgules), enregistrez et relancez la recherche. L'action Tester la connexion à un Roku accepte aussi une adresse : elle dit tout de suite si le Roku répond et accepte le contrôle, et l'ajoute à l'onglet Découverte si oui.
L'adresse d'un Roku s'affiche sur le Roku dans Paramètres > Réseau > À propos.
Ce que vous obtenez
Chaque Roku devient un appareil Gladys :
| Fonctionnalité | Lecteurs Roku | Roku TV |
|---|---|---|
| Alimentation | état (allumé / en veille) | marche / arrêt, et son état |
| Application | l'application à l'écran, et une liste pour en ouvrir une autre (ou l'accueil) | idem |
| Entrée | – | HDMI 1 à 4, antenne (TV en direct), AV, ou le streaming Roku, avec les noms donnés sur la TV |
| Lecture | en lecture ou non | en lecture ou non |
| Touches | Accueil, Retour, flèches, OK, Options (*), Lecture/Pause, Retour rapide, Avance rapide, Relecture instantanée | idem, plus Volume +, Volume −, Sourdine, Chaîne suivante/précédente (avec tuner) |
Les états sont relus toutes les 10 secondes. La liste des applications est relue toutes les 15 minutes, et dès qu'une application absente de la liste arrive à l'écran.
Ce qu'un Roku ne sait pas faire (et Gladys non plus)
- Pas de niveau de volume. Le protocole de Roku n'a que les touches Volume +, Volume − et Sourdine : pas de « mettre le volume à 20 », aucun moyen de lire le niveau actuel ni de savoir si le son est coupé. Gladys propose les touches et n'affiche rien qu'elle ne peut pas savoir.
- Un lecteur Roku ne s'éteint pas. Un Roku Express, Stick ou Ultra n'a pas de vrai état d'alimentation : Gladys montre s'il est actif ou en veille, mais seule une Roku TV s'allume et s'éteint.
- Allumer une TV en veille profonde exige le Démarrage rapide de la TV (voir plus haut). Quand la TV ne répond pas, Gladys lui envoie d'abord un paquet Wake-on-LAN : le réveil dépend du modèle, et marche plus souvent en Ethernet qu'en Wi-Fi.
- Les touches volume et marche d'un lecteur (celles de la télécommande vocale qui pilotent votre TV en HDMI-CEC ou infrarouge) ne passent pas par le réseau.
- La saisie de texte passe seulement par une scène (voir Taper un texte) : aucun champ du tableau de bord ne sait encore envoyer du texte à une intégration.
Tableau de bord
Quatre widgets sont fournis (Gladys 5.1 ou plus récent). Chacun montre le Roku choisi dans ses réglages, ou le premier.
- Télécommande Roku — alimentation et application à l'écran, puis Allumer/Éteindre (Roku TV) ou Lecture/Pause (lecteur), Accueil, Retour et OK.
- Navigation Roku — les quatre flèches : Haut, Bas, Gauche, Droite.
- Lecture Roku — l'icône et le nom de l'application à l'écran, en lecture ou en pause, la position dans la vidéo quand une vidéo est ouverte, et Lecture/Pause, Retour rapide, Avance rapide.
Gladys limite un widget à quatre boutons : placez Télécommande Roku et Navigation Roku l'un sous l'autre pour avoir une télécommande complète. Les autres touches (volume, sourdine, Relecture instantanée…) sont sur la page de l'appareil et dans l'action de scène « Appuyer sur une touche de télécommande Roku ».
Dans les menus des applications (un profil, un film, un réglage), c'est OK qui valide. Lecture/Pause n'agit que pendant une vidéo, et selon l'application : dans Arte par exemple, Lecture ne lance pas le film choisi, OK oui.
- Applications Roku — quatre raccourcis au plus par widget, avec
leurs icônes (une limite du tableau de bord de Gladys). Réglages vides : les
quatre premières applications installées ; saisissez les noms voulus
dans les réglages du widget (ex.
Disney+,KiKA,YouTube: majuscules et accents indifférents). Pour en avoir plus, ajoutez un second widget Applications Roku avec quatre autres noms. L'application à l'écran est marquée.
Toutes les applications installées, sans limite, sont dans la fonctionnalité Application de l'appareil : ajoutez l'appareil à une boîte Appareils classique pour choisir n'importe quelle application dans une liste, ou utilisez-la dans une scène avec « Contrôler un appareil » (les entrées de la TV sont dans la fonctionnalité Entrée d'une Roku TV).
Les fonctionnalités de l'appareil peuvent aussi être ajoutées à n'importe quelle boîte classique du tableau de bord.
Scènes
L'intégration ajoute ses propres cartes à l'éditeur de scènes, dans la catégorie Intégrations :
-
Application Roku changée (déclencheur) — lance la scène quand une application arrive à l'écran, en 10 secondes environ. Choisissez si besoin le Roku et saisissez le nom de l'application exactement comme le Roku l'affiche (ex.
Netflix, ouHomepour l'écran d'accueil). Les actions suivantes peuvent utiliser le nom de l'application et son identifiant Roku. Exemple : quand Netflix démarre sur la TV du salon, baisser la lumière. -
Ouvrir une application sur un Roku (action) — ouvre une application installée par son nom. Exemple : soirée film : allumer la TV, ouvrir Netflix.
-
Appuyer sur une touche de télécommande Roku (action) — n'importe quelle touche, autant de fois que nécessaire, y compris Allumer et Éteindre pour une Roku TV. Exemple : quand on sonne, appuyer sur Lecture/Pause.
-
Taper un texte sur un Roku (action) — tape un texte dans le champ affiché sur le Roku, voir ci-dessous.
Les états d'alimentation et de lecture sont des fonctionnalités classiques : une scène peut démarrer quand la TV s'éteint, ou vérifier qu'une lecture est en cours.
Taper un texte (recherche, identifiant)
Le tableau de bord de Gladys n'a pas encore de champ de texte qu'une intégration puisse recevoir. L'astuce :
- Sur le Roku, ouvrez le champ (une recherche, l'e-mail d'un identifiant…).
- Dans Gladys, créez une scène avec l'action Taper un texte sur un Roku et le texte à taper (100 caractères au plus).
- Ajoutez une boîte Scène au tableau de bord avec cette scène : un appui tape le texte.
Ne mettez pas de mot de passe sensible dans une scène : tous les utilisateurs de Gladys peuvent lire les scènes. L'intégration n'écrit jamais le texte tapé dans ses journaux.
Dépannage
« … refuse le contrôle à distance » (dans l'onglet Configuration, un widget ou une action) : le Roku est réglé sur Limité ou Désactivé. Réglez Contrôle par applications mobiles > Accès réseau sur Activé (voir Avant de commencer), puis lancez Tester la connexion à un Roku.
La recherche ne trouve rien. Gladys et le Roku doivent être sur le même réseau (même sous-réseau, pas de Wi-Fi invité, pas d'isolation des clients). Saisissez l'adresse du Roku dans Adresses des Roku, enregistrez et relancez la recherche.
Le Roku apparaît éteint alors qu'il est allumé. Il ne répond plus : vérifiez son adresse (elle a pu changer), puis lancez Tester la connexion à un Roku.
Une Roku TV ne s'allume pas. Activez le Démarrage rapide de la TV. En Wi-Fi, le Wake-on-LAN peut ne pas l'atteindre pendant sa veille.
Une application manque dans la liste. La liste est relue toutes les 15 minutes : patientez, ou ouvrez une fois l'application sur le Roku.
Signaler un problème
- Dans l'onglet Configuration, activez Journaux de débogage et enregistrez.
- Reproduisez le problème, puis copiez les journaux de l'intégration (page de l'intégration > Journaux).
- Ouvrez un ticket sur github.com/guim31/gladys-roku avec les journaux, le modèle de votre Roku et sa version de Roku OS (Paramètres > Système > À propos). Les journaux ne contiennent aucun mot de passe ; ils montrent le modèle du Roku, son adresse sur votre réseau et son numéro de série.
Désactivez ensuite les journaux de débogage : ils sont bavards.
Sans lien avec Roku, Inc. Roku est une marque de Roku, Inc.
Paramètres de configuration
Voici les paramètres demandés par Roku dans son écran de configuration dans Gladys.
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| Avant de commencer | section | Non | Sur chaque Roku, ouvrez Paramètres > Système > Paramètres système avancés > Contrôle par applications mobiles > Accès réseau (Settings > System > Advanced system settings > Control by mobile apps > Network access) et choisissez « Activé » (Enabled) : les versions récentes de Roku OS le règlent sur « Limité » (Limited), ce qui bloque Gladys. Lancez ensuite une recherche d'appareils (onglet Découverte) : les Roku du même réseau sont trouvés automatiquement. Ne saisissez une adresse ci-dessous que pour un Roku que la recherche ne trouve pas. |
| Adresses des Roku (facultatif) | string | Non | Adresses IP des Roku que la recherche d'appareils ne trouve pas, séparées par des virgules. Donnez-leur une adresse fixe dans votre box (réservation DHCP). |
| Journaux de débogage | boolean | Non | Écrire chaque requête envoyée aux Roku et un résumé de leurs réponses dans les journaux de l'intégration. À activer avant de signaler un problème. |
Comment installer Roku dans Gladys
- Dans Gladys, ouvrez Intégrations : Roku apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
- Cliquez sur Installer. Gladys télécharge l'image Docker (
ghcr.io/guim31/gladys-roku:1.1.0), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration). - Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
- Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/guim31/gladys-roku.
Roku nécessite Gladys >=5.1.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.
Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.
À propos des intégrations externes
Roku est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par guim31, et non par l'équipe cœur de Gladys.
- Parcourir toutes les intégrations externes
- Découvrir les intégrations natives intégrées à Gladys
- Créer et publier votre propre intégration externe
- Code source sur GitHub — source de cette documentation