Freebox Player : l'API HTTP pour les télécommandes virtuelles disparaît

Freebox Player : l’API HTTP pour les télécommandes virtuelles disparaît

« Obsolète depuis plus de deux ans  »

Avatar de l'auteur
Sébastien Gavois

Publié dans

Internet

07/08/2014 3 minutes
7

Freebox Player : l'API HTTP pour les télécommandes virtuelles disparaît

Récemment mis en ligne, le firmware 1.2.16 de la Freebox Player empêche certaines applications de télécommande virtuelle de fonctionner. Bug ou volonté de Free de supprimer ce genre de service ? Aucun des deux, simplement un changement d'API annoncé de longue date, mais pas pris en compte par certains développeurs.

Il y a deux jours, Free déployait un nouveau firmware pour le boîtier Player de la Freebox Révolution. Estampillé, 1.2.16, il n'était alors question que de trois corrections de bugs, sans aucun autre changement d'après les notes de versions. Néanmoins, ce n'est pas le cas puisque nous avons pu apprendre que l'API permettant de gérer la télécommande virtuelle en HTTP avait été supprimée. Un point confirmé par Arnaud Vrac, développeur Freebox, qui ajoute même que « cette API est obsolète depuis plus de deux ans ».

La cause : une nouvelle API, et un changement annoncé il y a longtemps

En effet, si l'on remonte dans les billets du blog dev.freebox.fr, on trouve au 12 octobre 2011 l'annonce d'un nouveau SDK de télécommande réseau. Il est précisé qu'une « nouvelle interface de commande permet de piloter le Freebox Player par le réseau. Cette API vient en plus de l’API HTTP actuelle, qu’elle remplacera progressivement ». Autre conséquence, le code qui était auparavant indiqué dans les paramètres du Freebox Player n'est plus de la partie étant donné qu'il n'est plus utilisé par la nouvelle API.

 

Il est également précisé qu'elle est « disponible depuis la version 1.1.0 du Freebox Player, cette nouvelle API se base sur la norme régissant les périphériques d’entrée utilisateur, ou Human Interface Devices (HID). À l’origine, cette norme a été conçue pour l’USB, mais a été reprise Verbatim pour le Bluetooth. Dans le contexte de la Freebox, la norme HID a été portée sur un transport UDP, donc réseau ».

 

Le changement avait donc été annoncé de longue date, mais étant donné le nombre d'applications qui ne fonctionnent plus, quelques rappels n'auraient certainement pas été de trop, surtout à l'approche de la date fatidique. Certaines applications exploitent néanmoins la nouvelle API et continuent donc de fonctionner normalement avec le firmware 1.2.16. C'est le cas de FreeTelec, MyFreebox et Freebox Touch pour ne citer que ces trois-là. N'hésitez d'ailleurs pas à nous indiquer celle que vous utilisez dans les commentaires.

Un retour en arrière possible ? 

Toujours sur le bugtracker de Free, Eric Blanquer (alias iop), développeur d'une extension pour Chrome, Firefox et Windows, vient faire part de son mécontentement : « c'est bien beau de dire qu'il faut utiliser la nouvelle API mais comment utiliser de l'UDP en javascript ??? Chrome le propose mais en aucun cas Firefox et encore moins les gadgets Windows... »

 

Arnaud Vrac, indique alors : « je crois que c'est possible de faire de l'UDP avec l'API de Chrome, mais ça rend effectivement l'implémentation très compliquée vu qu'on ne peut pas utiliser la bibliothèque C foils_hid. Je vais voir si on peut remettre l'API http... Je ne garantis rien ».

Écrit par Sébastien Gavois

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

La cause : une nouvelle API, et un changement annoncé il y a longtemps

Un retour en arrière possible ? 

Commentaires (7)


Dommage, c’était bien pratique depuis Firefox :

http://www.ssofast.com/iop/gadget-windows-remote-freebox-v5/


en effet “Télécommande Virtuelle Freebox Révolution/HD 2.3.1” sur chrome ne semble plus fonctionner … Bon je m’en sers pas en ce moment, mais ce serait bien d’avoir un truc unifié et pas trop compliqué à implémenter, en effet



ah oui, c’est celle de iop, cité dans la news : cf

http://www.ssofast.com/iop/gadget-windows-remote-freebox-v5/


Problème classique : il est précisé depuis des mois que le HTTP serait à délaisser pour passer à l’UDP, sauf qu’au niveau des navigateurs c’est plutôt Chrome qui le gère déjà (à vérifier aussi pour Chromium, Opera, Safari).



Pas Firefox (ni Internet Explorer), mais à vérifier pour SeaMonkey.


Dommage pour moi aussi car j’utilise le serveur Sarah pour piloter ma Freebox par la voix entre autre.



http://encausse.wordpress.com/s-a-r-a-h/



très déçu de cette MAJ <img data-src=" />


En effet, en tant que développeur de MyFreebox je confirme que la nouvelle API est en place depuis plusieurs années. L’ancienne est normalement réservée à la Freebox V5 ou à la freebox crystal. A noter que cette ‘nouvelle’ API n’a pas beaucoup évolué depuis sa sortie (uniquement l’ajout de la gestion des gamepad).



La nouvelle API est toutefois beaucoup plus complexe à mettre en place dans les applications : il faut utiliser un SDK de bas niveau codé entièrement en C.

Si quelqu’un souhaite la mettre en place en utilisant les technologies web le mieux serait probablement d’analyser le protocole de communication entre le sdk C et la box puis de laisser entièrement le SDK de côté pour réaliser le plug-in de navigateur.



Le principal intérêt de cette API à mon goût est la disparition du code de télécommande qui existait sur la version HTTP ainsi que la gestion de la souris pour le navigateur web. Il manque de nombreuses fonctionnalités pour que celle-ci soit vraiment intéressante comme l’obtention d’informations sur l’état actuel du player (allumé/éteint, chaines tv en cours, volume actuel, etc.)



  • Dans le cas d’IE, il y a toujours la possibilité de passer par un truc genre ActiveX pour faire de l’UDP (et réutiliser la lib existante)






Si il n’y avait que cela qui ne fonctionnait plus avec la nouvelle version du Firm 1.2.16

Moi perso j’ai perdu 80% de compatibilité avec tout mes fichiers Multimédia connecté aux 2 Freebox en USB et Ethernet depuis cette mise à jours.

Et je ne sais pas du tout quoi faire pour y remédier sachant qu’avant cette mise à jours tout fonctionnait à la perfection.

Alors si quelqu’un aurait une idée pour que cela refonctionne.

Merci par avance