# Intégration Android TV

**URL:** <https://community.gladysassistant.com/t/integration-android-tv/8229>\
**Category:** Développement\
**Created:** [Juin 25, 2023, 8:49 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229 "2023-06-25T20:49:42Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juin 25, 2023, 8:49 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/1 "2023-06-25T20:49:42Z")

</div>

Bonjour tout le monde,

Je suis entrain de développer une intégration pour connecter Gladys aux Android TV d’une maison et les contrôler. Ça marchera avec la majorité des télévisions, box, chromecast sous Android TV/Google TV.

Pour l’instant l’intégration reçoit/contrôle uniquement les valeurs du volume et allumer/éteindre.

@AlexTrovato j’ai vu que tu avais beaucoup travaillé sur cette partie (features télévision dans Gladys + TV via broadlink) j’ai pas réussi à suivre tout ce qui a été fait, il y a pas mal de sujet et PR qui parlent de télévisions (et qu’une première version d’une télécommande avait été en test). Tu peux me dire où on en est côté Gladys pour contrôler toutes les features télévisions ? Vu que je ne vois rien dans le dashboard (autre que power, volume, chaines) j’imagine que ça n’a pas encore été terminé. As tu besoin d’aide pour quelque chose ?

---

<div class="post-metadata">

**Author:** ![AlexTrovato](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/alextrovato/32/10705_2.png) [@AlexTrovato](https://community.gladysassistant.com/u/AlexTrovato)\
**Post date:** [Juin 26, 2023, 4:44 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/2 "2023-06-26T04:44:14Z")

</div>

Salut @bertrandda, la télécommande sur le dashboard a été abandonnée de mon côté, je ne pense pas avoir conservé le code.  
Aujourd’hui, tu peux avoir une ligne par feature/bouton sur le dashboard.  
J’étais en train d’ajouter la compatibilité avec GoogleHome pour avoir le contrôle vocal.

---

<div class="post-metadata">

**Author:** ![guim31](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/guim31/32/4840_2.png) [@guim31](https://community.gladysassistant.com/u/guim31)\
**Post date:** [Juin 26, 2023, 6:52 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/3 "2023-06-26T06:52:59Z")

</div>

Super pour ma Shield TV ça ! 😉

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juin 26, 2023, 11:29 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/4 "2023-06-26T11:29:54Z")

</div>

> [@AlexTrovato](#):
>
> Salut @bertrandda, la télécommande sur le dashboard a été abandonnée de mon côté, je ne pense pas avoir conservé le code.  
> Aujourd’hui, tu peux avoir une ligne par feature/bouton sur le dashboard.

Ok merci, pour commencer je vais faire comme toi, et faire fonctionner une ligne par feature dans la première version. Tu arrives à afficher toutes les features sur ton dashboard ? Je me suis pas mal inspiré de ton intégration Broadlink, j’ai bien déclaré tous les boutons mais sur le dashboard je ne peux ajouter que On/off, le slider volume et les chaines

> [@guim31](#):
>
> Super pour ma Shield TV ça ! 😉

Tu connais la version d’Android TV qui tourne dessus ? De ce que j’ai vu, l’API local de la télécommande a été ajouté dans la version 11 d’Android TV, j’espère que tu as au minimum cette version et que ce sera bon pour toi.

---

<div class="post-metadata">

**Author:** ![guim31](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/guim31/32/4840_2.png) [@guim31](https://community.gladysassistant.com/u/guim31)\
**Post date:** [Juin 26, 2023, 3:08 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/5 "2023-06-26T15:08:24Z")

</div>

> [@bertrandda](#):
>
> Tu connais la version d’Android TV qui tourne dessus ? De ce que j’ai vu, l’API local de la télécommande a été ajouté dans la version 11 d’Android TV, j’espère que tu as au minimum cette version et que ce sera bon pour toi.

Je vais regarder ça ce soir 😉

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juin 28, 2023, 7:34 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/6 "2023-06-28T07:34:43Z")

</div>

J’ai étudié un peu plus en profondeur l’intégration braodlink, en fait je pense que j’ai mal compris le fonctionnement TV. Comment tu te sers des features TV @AlexTrovato ? Est ce que tu peux agir sur toutes les features dans le dashboard Gladys ou Gladys est simple un intermédiaire entre la télécommande physique et la TV ? Parce que j’essaie de tester par exemple mon implémentation du bouton Play, est-il possible de l’actionner depuis Gladys ?

---

<div class="post-metadata">

**Author:** ![AlexTrovato](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/alextrovato/32/10705_2.png) [@AlexTrovato](https://community.gladysassistant.com/u/AlexTrovato)\
**Post date:** [Juin 28, 2023, 7:05 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/7 "2023-06-28T19:05:38Z")

</div>

Pour Broadlink, il y a un bouton «&nbsp;test&nbsp;» sur la page de l’intégration.  
Mais en effet, la télécommande sur le dashboard n’a pas été aboutie suite a des contraintes UI/UX, et je ne suis même pas certain d’avoir gardé le code sur une branche quelque part 😕

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juillet 1, 2023, 9:04 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/8 "2023-07-01T21:04:17Z")

</div>

Ok merci, j’ai réussi à vérifier le fonctionnement des features via les scènes, tout fonctionne correctement. Pour la télécommande peut être que j’essayerai de reprendre le développement si j’ai un peu de temps mais le front n’est pas mon plus gros point fort

---

<div class="post-metadata">

**Author:** ![AlexTrovato](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/alextrovato/32/10705_2.png) [@AlexTrovato](https://community.gladysassistant.com/u/AlexTrovato)\
**Post date:** [Juillet 3, 2023, 6:43 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/9 "2023-07-03T18:43:30Z")

</div>

@bertrandda j’ai retrouvé une branche avec la télécommande sur le dashboard, elle est très vielle, je viens de la mettre à jour avec le la dernière version du code, mais je pense qu’elle ne fonctionne pas en l’état.  
Je n’aurais pas le temps de me remettre à travailler sur le sujet, mais si ça peut t’inspirer.

> <https://github.com/atrovato/Gladys/pull/103>
>
> \### Pull Request check-list
> 
> To ensure your Pull Request can be accepted as fa…st as possible, make sure to review and check all of these items:
> 
> \- \[\] If your changes affects code, did your write the tests?
> \- \[\] Are tests passing? (\`npm test\` on both front/server)
> \- \[\] Is the linter passing? (\`npm run eslint\` on both front/server)
> \- \[\] Did you run prettier? (\`npm run prettier\` on both front/server)
> \- \[\] If you are adding a new features/services, did you run integration comparator? (\`npm run compare-translations\` on front)
> \- \[\] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to \[the community\](https://community.gladysassistant.com/) for testing before merging.
> \- \[\] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
> \- \[\] If you are adding a new features/services which needs explanation, did you modify the user documentation? See \[the GitHub repo\](https://github.com/GladysAssistant/v4-website) and the \[website\](https://gladysassistant.com).
> \- \[\] Did you add fake requests data for the demo mode (\`front/src/config/demo.js\`) so that the demo website is working without a backend? (if needed) See \[https://demo.gladysassistant.com\](https://demo.gladysassistant.com).
> 
> NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
> 
> \### Description of change
> 
> Please provide a description of the change here. It's always best with screenshots, so don't hesitate to add some!

(tout n’est pas à garder)

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juillet 3, 2023, 7:32 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/10 "2023-07-03T19:32:39Z")

</div>

> [@AlexTrovato](#):
>
> @bertrandda j’ai retrouvé une branche avec la télécommande sur le dashboard, elle est très vielle, je viens de la mettre à jour avec le la dernière version du code, mais je pense qu’elle ne fonctionne pas en l’état.  
> Je n’aurais pas le temps de me remettre à travailler sur le sujet, mais si ça peut t’inspirer.

Trop fort merci Alex, je vais regarder ce que je peux en faire. Ce sera sûrement dans une PR à part d’android TV mais je pense que ça en intéressera.

En attendant, pour ceux qui veulent tester le service Android TV, une première version est dispo

> <https://github.com/GladysAssistant/Gladys/pull/1829>
>
> \### Pull Request check-list
> 
> To ensure your Pull Request can be accepted as fa…st as possible, make sure to review and check all of these items:
> 
> \- \[\] If your changes affects code, did your write the tests?
> \- \[\] Are tests passing? (\`npm test\` on both front/server)
> \- \[\] Is the linter passing? (\`npm run eslint\` on both front/server)
> \- \[\] Did you run prettier? (\`npm run prettier\` on both front/server)
> \- \[\] If you are adding a new features/services, did you run integration comparator? (\`npm run compare-translations\` on front)
> \- \[\] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to \[the community\](https://community.gladysassistant.com/) for testing before merging.
> \- \[\] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
> \- \[\] If you are adding a new features/services which needs explanation, did you modify the user documentation? See \[the GitHub repo\](https://github.com/GladysAssistant/v4-website) and the \[website\](https://gladysassistant.com).
> \- \[\] Did you add fake requests data for the demo mode (\`front/src/config/demo.js\`) so that the demo website is working without a backend? (if needed) See \[https://demo.gladysassistant.com\](https://demo.gladysassistant.com).
> 
> NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
> 
> \### Description of change
> 
> Please provide a description of the change here. It's always best with screenshots, so don't hesitate to add some!
> 
> Add Android TV service to control smart TV

Et sur docker `bertrandda/gladys:android-tv`

Ça marche pour les Google TV/Android TV à partir de la version 11

---

<div class="post-metadata">

**Author:** ![GBoulvin](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/gboulvin/32/10006_2.png) [@GBoulvin](https://community.gladysassistant.com/u/GBoulvin)\
**Post date:** [Juillet 3, 2023, 10:00 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/11 "2023-07-03T22:00:17Z")

</div>

Voilà, je viens de faire un test.  
Après de très nombreux essais infructueux, j’ai fini par réussir à associer mon Google TV.

- Je n’ai pas su changer le volume la première fois puis ok
- J’ai réussi à éteindre sans difficulté
- Je n’a jamais su rallumer
- Quand l’appareil est allumé manuellement, le statut est bien changé dans Gladys.

Un bon début donc! Bravo !

---

<div class="post-metadata">

**Author:** ![elfedagger](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/elfedagger/32/13658_2.png) [@elfedagger](https://community.gladysassistant.com/u/elfedagger)\
**Post date:** [Juillet 5, 2023, 10:50 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/12 "2023-07-05T10:50:11Z")

</div>

Gladys connectée à nos Android tv super !!  
Serait il envisageable que Gladys envoi des notifications sur nos tv?

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juillet 6, 2023, 11:12 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/13 "2023-07-06T11:12:51Z")

</div>

> [@GBoulvin](#):
>
> Voilà, je viens de faire un test.

Merci pour ce premier test !

> [@GBoulvin](#):
>
> Après de très nombreux essais infructueux, j’ai fini par réussir à associer mon Google TV.

Tu aurais plus d’infos à me donner sur les problèmes que tu as eu à la connexion ? le code s’affiche mais ne fonctionne pas, le code ne s’affiche pas…

> [@GBoulvin](#):
>
> Je n’ai pas su changer le volume la première fois puis ok

Oui ce n’est pas très clair. tu as 2 possibilités soit tu utilises un widget (pour allumer/éteindre la TV et volume uniquement) soit tu peux activer les fonctionnalité équivalent aux boutons de la télécommande via une scène (tu exécutes une scène avec un son que tu envois via une enceinte, tu peux par exemple utiliser la fonction MUTE lancer ton enceinte et quand c’est terminé «&nbsp;renvoyer&nbsp;» le MUTE pour réactiver le son de ta tv)

> [@GBoulvin](#):
>
> Je n’a jamais su rallumer

Tu as quoi comme modèle de TV ? C’est Android TV ou Google TV ?

De mon côté je fais tout via l’émulateur dispo sur Android Studio donc il y a peut être des différence entre une vrai TV/box TV et le système émulé.

Tu verras également que dans les features il y en a une au format texte qui informe sur l’application en cours d’utilisation. Par défaut c’est le nom du package de l’app donc j’ai fait un mapping entre le nom du package et le nom de l’app [Android TV remote service by bertrandda · Pull Request #1829 · GladysAssistant/Gladys · GitHub](https://github.com/GladysAssistant/Gladys/pull/1829/files#diff-7f0a0292f2e0ff5fdf34fbc5c242b5844fee1f4f18e6d57f9bbd05a49e1784ecR97-R102)  
Si tu as d’autres app installé peux tu m’indiquer les packages qui sont affichés sur cette features ?

> [@elfedagger](#):
>
> Serait il envisageable que Gladys envoi des notifications sur nos tv?

Pour l’instant, ce service permet juste de contrôler la TV. Mais en effet chez HomeAssistant, ils ont un service pour les notifications [Notifications for Android TV / Fire TV - Home Assistant](https://www.home-assistant.io/integrations/nfandroidtv/) donc ça doit être possible de reproduire l’équivalent dans Gladys

---

<div class="post-metadata">

**Author:** ![GBoulvin](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/gboulvin/32/10006_2.png) [@GBoulvin](https://community.gladysassistant.com/u/GBoulvin)\
**Post date:** [Juillet 6, 2023, 9:39 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/14 "2023-07-06T21:39:46Z")

</div>

> [@bertrandda](#):
>
> Tu aurais plus d’infos à me donner sur les problèmes que tu as eu à la connexion ? le code s’affiche mais ne fonctionne pas

C’est en effet ce cas de figure. Il s’est avéré que plusieurs codes avaient été créés car une fois l’opération annulée sur le TV, les codes suivants sont apparus.  
Hasard ou pas, le code qui a fonctionné ne contenait pas de lettres, contrairement aux précédents.  
Je retesterai dès que possible.

Pour le volume, je/tu ne peux pas utiliser un contrôleur tel que le thermostat?

Il y a effectivement un champ de texte : ‹&nbsp;[com.tcl.tv](http://com.tcl.tv)&nbsp;›

> [@bertrandda](#):
>
> Si tu as d’autres app installé peux tu m’indiquer les packages qui sont affichés sur cette features ?

Désolé mais je ne suis pas bien sûr d’avoir compris.  
C’est bien un Google TV.  
Je sais l’éteindre mais pas l’allumer!

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Juillet 9, 2023, 5:19 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/15 "2023-07-09T17:19:20Z")

</div>

> [@GBoulvin](#):
>
> C’est en effet ce cas de figure. Il s’est avéré que plusieurs codes avaient été créés car une fois l’opération annulée sur le TV, les codes suivants sont apparus.

Normalement le code n’est créé et affiché qu’une fois à l’ajout de l’Android TV (avant l’entrée du code dans le formulaire Gladys) puis manuellement quand on clic sur le bouton «&nbsp;Reconnecter&nbsp;». Tu as appuyé dessus ? Je vais voir si c’est possible de connaitre le status de la TV avant de générer un nouveau code et le bloquer si nécessaire.

> [@GBoulvin](#):
>
> Pour le volume, je/tu ne peux pas utiliser un contrôleur tel que le thermostat?

Le widget associé à la feature VOLUME est le widget % comme pour la luminosité. Par contre peut être qu’on peux associer à la feature VOLUME\_UP/VOLUME\_DOWN le widget dont tu parles, je ne sais pas si c’est possible, je peux essayer

> [@GBoulvin](#):
>
> Désolé mais je ne suis pas bien sûr d’avoir compris.

Si tu as des applications comme netflix, disney+, des jeux… sur ta TV, peux tu les lancer et me dire ce qu’il s’affiche dans le champs texte ? ça me permettra de compléter le mapping dont je parle plus haut. Comme ça quand tu lanceras ces apps, sur Gladys sera affiché «&nbsp;Netflix&nbsp;» à la place de «&nbsp;com.blabla.netflix.androidtv&nbsp;» (et voir même tu pourras les utiliser plus facilement dans les scènes)

> [@GBoulvin](#):
>
> C’est bien un Google TV.  
> Je sais l’éteindre mais pas l’allumer!

Ok je vais essayer de trouver ce qu’il peut bloquer

---

<div class="post-metadata">

**Author:** ![GBoulvin](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/gboulvin/32/10006_2.png) [@GBoulvin](https://community.gladysassistant.com/u/GBoulvin)\
**Post date:** [Juillet 10, 2023, 3:53 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/16 "2023-07-10T15:53:14Z")

</div>

J’y regarde dès que je rentre (une dizaine de jours)!

---

<div class="post-metadata">

**Author:** ![GBoulvin](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/gboulvin/32/10006_2.png) [@GBoulvin](https://community.gladysassistant.com/u/GBoulvin)\
**Post date:** [Août 19, 2023, 7:55 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/17 "2023-08-19T07:55:41Z")

</div>

Salutations !  
Je viens de faire le tour des applications installées (principalement par défaut) sur mon téléviseur Google TV TCL (sous Android 11)  
J’ai créé un fichier partagé avec les textes retournés par l’intégration selon l’application lancée. Il serait sans doute intéressant que cette base de données soit étoffée, j’ai donc laissé libre accès en modification à ce document. Peut-être que @pierre-gilles préfèrera utiliser un autre système que Google Sheets…

> **[AndroidTV Apps DB](https://docs.google.com/spreadsheets/d/1zwpeD2Ovx4Dd7ze10O0-kJfUH97-QIdiWZTPiPgYZwQ/edit?usp=sharing)**
>
> Feuille 1
> 
> Nom retourné par le téléviseur,Nom d'application,Description
> com.google.android.apps.tv.launcherx,Home,Launcher
> com.netflix.ninja,Netflix
> com.amazon.amazonvideo.livingroom,Amazon Prime
> com.tcl.guard,Safety Guard...

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Août 21, 2023, 8:08 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/18 "2023-08-21T08:08:55Z")

</div>

Non c’est parfait google sheet! Top 🙂

---

<div class="post-metadata">

**Author:** ![bertrandda](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/bertrandda/32/5929_2.png) [@bertrandda](https://community.gladysassistant.com/u/bertrandda)\
**Post date:** [Octobre 11, 2023, 5:53 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/19 "2023-10-11T17:53:28Z")

</div>

Merci @GBoulvin ! je vais ajouter tout ce que tu as trouvé dans la PR existante.

---

<div class="post-metadata">

**Author:** ![GBoulvin](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/gboulvin/32/10006_2.png) [@GBoulvin](https://community.gladysassistant.com/u/GBoulvin)\
**Post date:** [Octobre 11, 2023, 6:12 UTC](https://community.gladysassistant.com/t/integration-android-tv/8229/20 "2023-10-11T18:12:01Z")

</div>

J’ai deux remarques supplémentaires!

- La télécommande existante via Google Home ne me permet pas non plus de modifier le volume. Je passe par un Home cinéma contrôlé en HDMI CEC. Peut-être la raison ?
- Je n’avais pas compris au départ qu’il fallait cliquer sur l’icône à droite du code d’association pour valider… 😇 Mais dès lors, ça marche du premier coup !  
Depuis, j’ai acquis un Chromecast HD donc, des tests supplémentaires sont possibles 😉

[Page suivante](https://community.gladysassistant.com/t/integration-android-tv/8229.md?page=2)
