Tuto Etat / Status Freebox player [ne fonctionne plus]

Hello,

Ne fonctionne plus

Comme demandé sur le Discord, je poste ici mon astuce pour savoir si le Freebox Player est allumé.
Utile si:

  • L’HDMI CEC ne gère pas l’allumage auto du Freebox Player,
  • ou si on a une usage qui requiers de connaître l’état du Freebox Player.

On va donc publier un sensor qui remontera l’état du Freebox Player
De type command line car on va régulièrement (grâce au scan_interval) interroger le Freebox Player pour connaître son état.
La commande ne peut pas etre un ping car le Freebox Player y répond en permanance.
Ce sera donc un commande netcat qui permet dans notre cas de tester si un port répond. Le port 7000 du Freebox Player écoute qd le Freebox Player est allumé et n’écoute pas quand il est éteint. BINGO.

nc -zv 192.168.1.101 7000 2>&1 | grep -E 'open|succeeded' | wc -l

Le grep permet de filtrer si l’état du port en écoute ou non et le wc -l permet d’avoir le nombre de ligne retournée par la commande, 0 si le port n’écoute pas et 1 si le porte écoute car on aura compté 1 ligne.

Ce qui nous donne le sensor suivant.

sensor:
  - platform: command_line
    name: Freebox Player status
    command: "nc -zv 192.168.1.101 7000 2>&1 | grep -E 'open|succeeded' | wc -l"
    scan_interval: 30

Ajuster la valeur 30 du scan_interval au nombre de secondes que vous pensez pertinent pour rafraîchir l’état du sensor.

A utiliser dans une automatisme ou un script à convenance.

K.

PS: Si besoin de faire une modification ou de plus d’information dans le tuto merci de m’en faire part.

3 « J'aime »

Merci beaucoup @kbumbaz, ça marche impeccable :+1::wink:

J’aurais une question annexe :blush: je vois que tu parles de hdmi-cec : as tu par hasard réussi à utilisé l’intégration hdmi-cec sur un écran connecté en hdmi-cec ? Je n’ai pas réussi à m’en servir :thinking:

Hello Christian,

Ravis que ça serve déjà (pour mon 2nd post :slight_smile: )

Intégrer HDMI CEC … avec quoi, le le Freebox Player et un écran ?

  • Si c’est ça: j’ai galéré. Je crois que ça a commencé a marché entre les deux qu’après un scan des deux cotés et un reboot des deux équipements, attention aussi aux câbles compatibles CEC et à la TV qui à la fonction CEC a activer (AnyNet+ chez Samsung) mais oui j’ai galéré.
  • Si ce n’est pas ça merci d’expliquer un peu plus ce a quoi tu fais référence.

K.

En fait j’aurais aimé utiliser un raspberry pi branché à un écran compatible hdmi-cec pour caster du son et de l’image via HA

Hey,

Ecoute j’ai un RPI avec un Batocera pour le retro-gaming, j’ai pas réussi a lui faire switcher le port HDMI tout seul. Du coup, un coup de Broadlink RM Pro sur le HDMI qu’il faut et ca fait le job… dans mon cas.
Tu arriverais pas a intercaller un ordre sur un Broadlink RM Pro ou Mini a pas cher ?

K.

As-tu essayer en utilisant l’API status du freebox player?
/api/v8/player/{id_player}/api/v6/status/

Hello,

Merci de l’info. C’est peut être un peu plus propre comme ça en effet ! :+1:

Mais de l’autre coté ca demande a être authentifié sur l’API…

Pour mon besoin je préfère un simple netcat.

Par contre ce que tu dis pourrait etre remonté dans l’intégration Freebox existante, ça aurait du sens, non ?

K.

Oui bien sûr, le but du plugin est de remonter le maximum d’info disponible

Tu devrais préciser dans quel fichier créer le sensor, pour les grands débutants HA :wink:

Pensez vous qu’il serait possible de remonter la chaîne qui est en cours pour un affichage dans Lovelace ou autre ?

A ma connaissance, cette information n’est pas disponible au travers des APIs

j’avais fait il y a quelque temps ce sensor freeplayer, qui permet de remonter l’information :
https://forum.hacf.fr/t/apifreebox-chaine-de-mon-freeplayer/911/6
image

ps : il est compatible multiplayer

3 « J'aime »

Je l’avais oublié, merci pour le rappel

Bonjour,

Est ce que cette astuce pour connaitre l’état de la box fonctionne toujours?
Car je n’arrive pas à l’utiliser! je suis pas un expert des fonction pousser aussi :wink:

J’ai créé le sensor dans configuration.yaml.
Pourriez vous m’indiquer la configuration complète pour que cela fonctionne.
Merci d’avance.

Oui, cela fonctionne toujours

Bonjour, Suite au précédent message, je reviens sur ce sujet. Je n’arrive toujours pas à faire fonctionner cette astuce.
J’ai regardé du côté des ports du player devialet, et le port 7000 est fermé, même quand j’allume ou quand j’éteins le player…
J’ai utilisé l’outil nmap pour voir l’état des ports…

Faut il activer quelque chose au niveau du player?
Merci pour votre aide.

Bonjour,

Je suis dans la même situation. Cela fonctionnait par le passé mais plus maintenant, le sensor reste en status « inconnu »

Pourtant ce qui est étrange, c’est que si je teste la commande en ssh dans putty, celle ci fonctionne bien

Merci pour votre aide

EDIT : il fallait que je le mette en tant que sensor et non binary_sensor et ensuite ça a fonctionné

Bonsoir,

non il n’y a rien a activer coté player et pas de port a ouvrir si les 2 equipements sont sur le même réseau (le player et HA)

Bonjour,

Merci pour ton retour.
voilà ce que j’ai comme code dans configuration.yaml

# État du Freebox Player
command_line:
  - sensor:
      command: 'nc -zv 192.168.0.5 7000 2>&1 | grep -E "open|succeeded" | wc -l'
      name: "Freebox Player status"
      scan_interval: 30

De mon côté j’ai ceci qui est fonctionnel depuis une paire d’heures

command_line:
  - sensor:
      name: Freebox Player Devialet status
      command: "nc -zv 192.168.8.249 7000 2>&1 | grep -E 'open|succeeded' | wc -l"
      scan_interval: 3

manifestement , on a la même chose a l’exception du formatage avec les guillemets, « détail » qui peut etre important pour HA