Intégration domotique VIZIO SmartCast, gratuite et open source

Téléviseurs et barres de son VIZIO SmartCast en local : marche, volume, entrées, applis, touches.
Pilotez vos téléviseurs et barres de son VIZIO SmartCast depuis Gladys, sur votre réseau local : marche, volume, sourdine, entrées, applications, modes d'image et de son, touches de télécommande. Ni cloud ni compte VIZIO : Gladys parle directement à l'API SmartCast de chaque appareil (celle qu'utilise l'application mobile VIZIO).
Développée sans le matériel : vos retours sont les bienvenus. Cette intégration a été écrite à partir du protocole documenté et de vraies réponses de téléviseurs VIZIO publiées par des projets libres, sans essai sur un vrai téléviseur à ce jour. Dites-nous ce qui marche et ce qui ne marche pas : github.com/guim31/gladys-vizio/issues.
Cette intégration n'est pas affiliée à VIZIO, Inc. VIZIO et SmartCast sont des marques de leurs propriétaires.
Prérequis
- Un téléviseur VIZIO SmartCast (2016 et après) ou une barre de son, sur le même réseau local que Gladys.
- Gladys Assistant 5.1.0 ou plus récent.
- Sur le téléviseur, réglez le mode d'alimentation sur Démarrage rapide (« Quick Start » ; Menu, Système, Mode d'alimentation). En mode Éco, un téléviseur en veille coupe son réseau : Gladys ne le voit plus et ne peut pas l'allumer, tant qu'il n'est pas allumé avec sa télécommande. L'intégration n'utilise pas le Wake-on-LAN : VIZIO ne le documente pas, et aucun retour ne montre qu'il réveille un téléviseur en mode Éco.
- Donnez une adresse IP fixe à chaque appareil dans votre box ou routeur (recommandé).
Installation et configuration
- Dans Gladys, ouvrez Intégrations, puis Installer depuis GitHub, et installez
guim31/gladys-vizio. - Allumez vos téléviseurs et barres de son. L'intégration les cherche sur le réseau (mDNS, via Gladys) à son démarrage et à chaque Recherche dans l'onglet Découverte.
- Un appareil introuvable (autre réseau, mDNS bloqué) : saisissez son adresse IP dans Adresses
(facultatif), plusieurs séparées par des virgules (
192.168.1.30, 192.168.1.31). - Les barres de son n'ont pas besoin d'appairage : elles apparaissent tout de suite dans l'onglet Découverte. Les téléviseurs doivent d'abord être appairés (ci-dessous).
- Dans l'onglet Découverte, ajoutez les appareils à Gladys.
Options :
- Applications favorites : les applications proposées dans la liste Application de chaque
téléviseur et, par défaut, dans le widget de raccourcis, par leur nom SmartCast (
Netflix, YouTube, Prime Video, Disney+, Hulu, Apple TV+par défaut, 12 au plus). Les noms sont ceux du catalogue SmartCast de pyvizio (150 applications : Netflix, Prime Video, Disney+, Hulu, YouTube, YouTube TV, Max sous le nom « HBO Max », Peacock, Paramount+, Plex, Pluto TV, Tubi, Apple TV+…) ; un nom absent du catalogue est signalé dans l'état de l'intégration. - Intervalle de rafraîchissement : 10, 15 ou 30 secondes.
- Pas du volume : variation de chaque appui sur Volume + et Volume −.
- Langue des noms de fonctionnalités : les noms donnés aux fonctionnalités à l'ajout d'un appareil (ils restent tels quels ensuite), et les textes des listes et des événements de scène. Français par défaut.
Appairer un téléviseur
Un téléviseur n'obéit qu'à un client qu'il connaît : il affiche un code PIN, et donne un jeton une
fois le code saisi. L'intégration garde le jeton dans son stockage privé (/data), jamais dans les
logs.
- Allumez le téléviseur.
- Dans la configuration de l'intégration, lancez Démarrer l'appairage. Le téléviseur affiche un code PIN à 4 chiffres. S'il y a plusieurs téléviseurs à appairer, saisissez l'adresse de celui à appairer dans le champ de l'action.
- Saisissez le code dans le champ de Saisir le code PIN et lancez l'action, dans les 5 minutes.
- Le téléviseur apparaît dans l'onglet Découverte : ajoutez-le.
Le téléviseur compte alors Gladys parmi ses appareils appairés (sous le nom « Gladys »). Un code erroné peut être saisi à nouveau tant que le téléviseur l'affiche. Appairer à nouveau remplace le jeton. Après une réinitialisation du téléviseur, appairez-le à nouveau.
Tester la connexion cherche les appareils, lit chacun d'eux et indique pour chacun ce qu'il trouve : modèle, allumé ou en veille, mode Éco, appairage nécessaire, adresse qui ne répond pas.
Appareils et fonctionnalités
Un appareil par téléviseur ou barre de son, identifié par son numéro de série : un changement d'adresse IP (DHCP) est suivi, l'appareil reste le même.
Téléviseur
| Fonctionnalité | Ce qu'elle fait |
|---|---|
| Marche / arrêt | Allumé ou en veille ; allume ou éteint le téléviseur (Démarrage rapide nécessaire pour l'allumer). |
| Volume | 0 à 100, comme sur le téléviseur. |
| Diminuer / Augmenter le volume | Boutons, du pas de volume de la configuration. |
| Muet | Bouton : coupe ou rétablit le son (l'état est montré par le widget et En cours). |
| Entrée | Liste des entrées du téléviseur, avec les noms réglés sur le téléviseur (SmartCast, HDMI-1, PS5…). |
| Application | Accueil SmartCast, les applications favorites, et « Autre » (une entrée, ou une appli hors liste). |
| En cours | Texte : l'application (Netflix…), l'entrée, ou Éteint. |
| Mode d'image | Liste des modes d'image du téléviseur (Vivid, Calibrated, Game…), quand il en a. |
| Chaîne précédente / Chaîne suivante | Boutons, sur les téléviseurs avec tuner. |
Barre de son
Marche / arrêt, Volume (0 à 31 sur la plupart des barres de son, lu sur l'appareil), Diminuer le volume, Augmenter le volume, Muet, Entrée (HDMI, Bluetooth, optique…), En cours (l'entrée), et Mode sonore (l'égaliseur de la barre de son : Music, Movie…) quand elle en a un.
Les noms des fonctionnalités suivent l'option Langue des noms de fonctionnalités : Marche / arrêt, Volume, Diminuer le volume, Augmenter le volume, Muet, Entrée, Application, En cours, Mode d'image, Mode sonore, Chaîne précédente, Chaîne suivante.
Widgets du tableau de bord
- Télécommande VIZIO : état de l'appareil, ce qui est en cours, volume, et les boutons marche, Volume −, Volume + et Muet.
- Raccourcis VIZIO : quatre applications ou entrées favorites, ouvertes d'un appui ; le
téléviseur s'allume d'abord si besoin. Saisissez leurs noms dans les réglages du widget
(
Netflix,HDMI-1,PS5) ; tous vides : les applications favorites de la configuration (les entrées sur une barre de son). Celle au premier plan porte une coche. - Touches VIZIO : quatre touches de télécommande au choix (flèches par défaut ; ajoutez un second widget pour OK, Retour, Accueil, Menu…). Une barre de son n'en a que quelques-unes.
Chaque widget suit un appareil, choisi dans ses réglages (le premier s'il est vide).
Déclencheur de scène
TV : application ou entrée changée se déclenche quand quelque chose de nouveau passe au premier
plan, allumage compris : une application (Netflix, YouTube…) ou une entrée (une console en HDMI).
Filtres : l'appareil, le type (application ou entrée) et le nom, exactement comme l'affiche la
fonctionnalité En cours (Netflix, HDMI-1, PS5). Il est vu dans l'intervalle de
rafraîchissement. Variables : le nom de l'appareil, le type (app ou input) et le nom.
L'allumage et l'extinction n'ont pas besoin de déclencheur : utilisez l'état de la fonctionnalité Marche / arrêt.
Actions de scène
- Ouvrir une application sur le téléviseur : par son nom SmartCast (
Netflix,Prime Video, « disney plus » marche aussi). Allume d'abord le téléviseur si besoin. Renvoie le nom de l'application ouverte. - Choisir une entrée : par son nom ou le nom réglé sur le téléviseur (
HDMI-1,PS5). Allume d'abord l'appareil si besoin. - Envoyer une touche de télécommande : flèches, OK, Retour, Accueil, Menu, Info, Lecture, Pause, Retour rapide, Avance rapide, Volume, Muet, Chaîne, Chaîne précédente, Entrée suivante ; répétée jusqu'à 10 fois.
Exemples de scènes
- Soirée film : déclencheur TV : application ou entrée changée, type Application, nom
Netflix→ baisser les lumières du salon à 20 % et fermer les volets. - Partie de console : déclencheur TV : application ou entrée changée, type Entrée, nom
PS5→ passer le mode d'image sur Game (fonctionnalité Mode d'image) et allumer la lumière d'ambiance. - Bonne nuit : à 23 h 30, si Marche / arrêt du téléviseur est allumé → envoyer une notification, puis éteindre le téléviseur 15 minutes plus tard.
- Infos du matin : à 7 h en semaine → Ouvrir une application sur le téléviseur
YouTube TV, puis régler le volume à 15.
Rafraîchissement et réseau
L'intégration lit chaque appareil avec son propre minuteur, à l'intervalle choisi : une requête pour l'état d'un téléviseur en veille ; allumé, deux à quatre requêtes (marche, entrée et application, réglages du son, mode d'image). Un appareil qui ne répond pas (mode Éco) coûte une tentative de connexion par intervalle, et n'est pas signalé en erreur. Les états ne sont envoyés à Gladys que s'ils changent, et à nouveau toutes les 6 heures. Les entrées sont relues toutes les 30 minutes, les bornes et listes des réglages une fois par jour.
L'API SmartCast est locale, sans quota ; son serveur est petit, aussi l'intégration n'envoie qu'une requête à la fois à chaque appareil. Tout reste sur votre réseau : HTTPS sur le port 7345 ou 9000, avec le certificat auto-signé de l'appareil.
Dépannage
- Aucun appareil trouvé : l'appareil doit être allumé (ou en veille Démarrage rapide) et sur le même réseau que Gladys. Sinon, saisissez son adresse dans Adresses (facultatif), puis lancez Tester la connexion.
- « Appairage nécessaire » dans l'état de l'intégration : lancez Démarrer l'appairage, téléviseur allumé.
- « Le téléviseur n'accepte plus Gladys » : le téléviseur a oublié le jeton (réinitialisation, mise à jour) : appairez-le à nouveau.
- Le téléviseur ne s'allume pas depuis Gladys : il est en mode Éco ; choisissez Démarrage rapide sur le téléviseur.
- Code PIN erroné : saisissez à nouveau le code affiché, ou relancez Démarrer l'appairage pour en obtenir un nouveau. Après trop d'essais, le téléviseur refuse l'appairage un moment.
- Une application ne s'ouvre pas, ou s'affiche « Application inconnue » : elle n'est pas dans le catalogue SmartCast, ou son identifiant a changé. Donnez-nous son nom dans une issue.
- Logs détaillés : démarrez le conteneur avec
LOG_LEVEL=debug.
Limites
- Développée sans le matériel : les requêtes suivent pyvizio et vizaio, et les captures d'un vrai téléviseur qu'ils ont publiées, mais cette intégration n'a pas encore tourné face à un vrai appareil VIZIO.
- Un téléviseur en mode Éco ne peut être ni vu ni allumé pendant sa veille.
- La liste des applications est le catalogue SmartCast de pyvizio : un téléviseur n'a pas de requête qui liste ses applications installées.
- L'état de la sourdine est montré, mais Muet est un bouton bascule (les téléviseurs SmartCast traitent toute touche de sourdine comme une bascule).
- Le mode d'image et le mode sonore dépendent du micrologiciel : ils n'apparaissent que si l'appareil les propose.
- VIZIO ne vend ses appareils SmartCast qu'en Amérique du Nord.
Paramètres de configuration
Voici les paramètres demandés par VIZIO SmartCast dans son écran de configuration dans Gladys.
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| Vos appareils VIZIO | section | Non | Les téléviseurs et barres de son SmartCast sont trouvés sur votre réseau. Appairez chaque téléviseur une fois avec les deux actions ci-dessous. Réglez le mode d'alimentation du téléviseur sur Démarrage rapide : en mode Éco, Gladys ne peut pas l'allumer. |
| Adresses (facultatif) | string | Non | Seulement pour un appareil que la recherche ne trouve pas : son adresse IP, séparées par des virgules. Fixez-la dans votre box ou routeur. |
| Applications favorites | string | Non | Les applications de la liste Application de chaque téléviseur et du widget de raccourcis, par leur nom SmartCast, séparées par des virgules (12 au plus). |
| Options | section | Non | |
| Intervalle de rafraîchissement | select | Non | Fréquence de lecture des appareils. Un appareil en mode Éco n'est pas lu. |
| Pas du volume | select | Non | Variation de chaque appui sur Volume + et Volume −. |
| Langue des noms de fonctionnalités | select | Non | Noms donnés aux fonctionnalités à l'ajout d'un appareil, et textes des listes et des événements de scène. |
Comment installer VIZIO SmartCast dans Gladys
- Dans Gladys, ouvrez Intégrations : VIZIO SmartCast 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-vizio:1.0.1), 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-vizio.
VIZIO SmartCast 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
VIZIO SmartCast 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, natives et communautaires
- Créer et publier votre propre intégration externe
- Code source sur GitHub — source de cette documentation