Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)

Ce projet correspond aux anomalies ou aux demandes d’évolutions logicielles pour le Freebox Server.

Pour des problèmes de ligne ADSL ou Fibre, vous devez vous adresser directement au 3244.
N’indiquez ici que les bugs ou les demandes d’évolution concernant le Freebox Server.

Pour les remarques concernant le Freebox Player Révolution (V6), vous pouvez le faire sur la page dédiée.
Pour les remarques concernant la Freebox Mini 4K, vous pouvez le faire sur la page dédiée.
Pour les remarques concernant le Freebox Player Devialet (V7), vous pouvez le faire sur la page dédiée.
Pour les remarques concernant le Freebox Player Pop (V8), vous pouvez le sur la page dédiée.

Effectuez la mise à jour de votre Freebox Server vers la dernière version annoncée sur l'historique des mises à jour Freebox Server

Vérifiez que votre problème ou votre demande d’évolution n’a pas déjà été posté auparavant.

Merci d’avance.

ID Ouverte Type Catégorie  asc Système d'exploitation État Résumé
2020203/05/2016AnomalieAPITousNouveauMauvaises unités pour RDD Description de la tâche

Il est indiqué dans la documentation que les champs dsl::rate_up et dsl::rate_down sont renvoyés en octet/s (byte/s), alors qu’ils sont renvoyés en bits/s.

De même il est indiqué que les champs net::rate_up et net::rate_down sont renvoyés en octet/s (byte/s) alors qu’il sont renvoyés en koctets/s.

Il faudrait corriger la documentation ou l’API.

2020303/05/2016AnomalieAPITousNouveauAutorisation et accès RRD Description de la tâche

L’accès aux variables RRD nécessite une autorisation supplémentaire de “Modifications des réglages de la Freebox”, alors qu’ils sont en lecture seule, et que rien ne l’indique dans la documentation.

Dans le cadre du développement d’un plugin pour Rainmeter (https://github.com/Kitof/RainFbx), je dois demander aux utilisateurs d’activer cette autorisation ce qui est de manière à les inquiéter sans raison particulière.

2040402/07/2016AnomalieAPITousNouveauProbléme API v3 SDK "Get Token" Description de la tâche

Bonjour,
En me basant sur le sdk (http://dev.freebox.fr/sdk/os/login/#make-an-authenticated-call-to-the-api) je n’arrive pas à m’authentifier .
J’interroge la freebox en PHP avec php-curl.

POST /api/v3/login/authorize/ me retourne HTTP/1.1 200 OK - {”msg”:”Requête invalide (404)”,”success”:false,”error_code”:”invalid_request”}bool(true)

L’erreur vient de la documentation.

Merci

2060926/08/2016AnomalieAPITousNouveauGET /api/v3/login/authorize/{tid} retourne du code JS d... Description de la tâche

GET /api/v3/login/authorize/{tid} Quelque soit le tid la requête me retourne :

{"success":true,"result":{"status":"granted","challenge":["var _pmtrqgv = { _dotl: '_mviD' }; _pmtrqgv._dotl.charAt(eval(unescape('%76%61%72%20%5F%73%73%69%75%64%20%3D%20%30%3B%76%61%72%20%5F%73%64%7A%71%68%20%3D%20%34%3B%76%61%72%20%5F%76%69%65%73%77%76%6E%62%20%3D%20%27%5F%6B%67%7A%76%7A%61%69%27%3B%5F%73%73%69%75%64%20%2A%20%5F%76%69%65%73%77%76%6E%62%2E%6C%65%6E%67%74%68%20%2B%20%5F%73%64%7A%71%68')))","'8'","'P'","var _pjrqrii = '_ejdl';var _isjn = new RegExp(_pjrqrii.charAt(eval(unescape('%28%28%31%20%2A%20%38%20%2D%20%34%29%20%2F%20%34%29'))), 'g');String.fromCharCode(_pjrqrii.replace(_isjn, 's').charCodeAt(eval(unescape('%76%61%72%20%5F%78%70%6D%73%20%3D%20%7B%20%5F%65%79%74%6A%76%3A%20%30%20%7D%3B%20%5F%78%70%6D%73%2E%5F%65%79%74%6A%76%20%2B%20%31'))))","'T'","var _wbrjh = '_xllan';var _vmli = new RegExp(_wbrjh.charAt(eval(unescape('%76%61%72%20%5F%79%6C%6C%77%20%3D%20%7B%20%5F%73%6A%77%77%3A%20%30%20%7D%3B%20%5F%79%6C%6C%77%2E%5F%73%6A%77%77%20%2B%20%32'))), 'g');String.fromCharCode(_wbrjh.replace(_vmli, 'U').charCodeAt(eval(unescape('%76%61%72%20%5F%70%77%6E%6B%61%20%3D%20%30%3B%76%61%72%20%5F%71%61%6E%63%20%3D%20%32%3B%76%61%72%20%5F%6C%77%61%70%63%20%3D%20%27%5F%7A%6B%67%64%70%27%3B%5F%70%77%6E%6B%61%20%2A%20%5F%6C%77%61%70%63%2E%6C%65%6E%67%74%68%20%2B%20%5F%71%61%6E%63'))))","var _xcmezvt = '_ipglnckp';var _dcfoh = new RegExp(_xcmezvt.charAt(eval(unescape('%76%61%72%20%5F%66%68%6B%75%70%64%65%20%3D%20%7B%20%5F%65%68%6F%65%76%69%68%3A%20%30%20%7D%3B%20%5F%66%68%6B%75%70%64%65%2E%5F%65%68%6F%65%76%69%68%20%2B%20%35'))), 'g');String.fromCharCode(_xcmezvt.replace(_dcfoh, 'O').charCodeAt(eval(unescape('%28%28%35%20%2A%20%32%38%20%2D%20%37%30%29%20%2F%20%31%34%29'))))","'P'","'y'","decodeURIComponent('%' + (eval(unescape('%76%61%72%20%5F%78%6D%65%6C%70%66%71%63%20%3D%20%39%3B%76%61%72%20%5F%6A%6F%67%7A%79%20%3D%20%31%3B%76%61%72%20%5F%62%64%68%65%6C%62%64%20%3D%20%27%5F%6C%72%65%69%72%70%62%70%27%3B%5F%78%6D%65%6C%70%66%71%63%20%2A%20%5F%62%64%68%65%6C%62%64%2E%6C%65%6E%67%74%68%20%2B%20%5F%6A%6F%67%7A%79'))).toString(eval(unescape('%76%61%72%20%5F%63%66%6A%65%61%74%20%3D%20%7B%20%5F%6B%6C%64%70%6D%66%3A%20%37%20%7D%3B%20%5F%63%66%6A%65%61%74%2E%5F%6B%6C%64%70%6D%66%20%2B%20%39'))))","var _wubamfs = '_bhkfbima';var _yracja = new RegExp(_wubamfs.charAt(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%34%2E%35%33%29%20%2B%20%33%20%2D%20%31'))), 'g');String.fromCharCode(_wubamfs.replace(_yracja, 'Q').charCodeAt(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%36%2E%39%38%29%20%2B%20%31%20%2D%20%31'))))","var _sqcuor = { _oquhhfk: '_wkxselia' }; _sqcuor._oquhhfk.charAt(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%31%2E%39%33%29%20%2B%20%31%20%2D%20%31')))","'+'","decodeURIComponent('%' + (eval(unescape('%76%61%72%20%5F%62%69%66%65%74%20%3D%20%7B%20%5F%64%79%73%79%6D%76%69%3A%20%31%37%20%7D%3B%20%5F%62%69%66%65%74%2E%5F%64%79%73%79%6D%76%69%20%2B%20%35%36'))).toString(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%33%2E%37%30%29%20%2B%20%31%33%20%2D%20%31'))))","var _chaxsme = '_ecdjguqf';var _rwek = new RegExp(_chaxsme.charAt(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%34%2E%39%34%29%20%2B%20%32%20%2D%20%31'))), 'g');String.fromCharCode(_chaxsme.replace(_rwek, 'H').charCodeAt(eval(unescape('%28%28%36%20%2A%20%33%34%20%2D%20%31%30%32%29%20%2F%20%31%37%29'))))","'Z'","'z'","var _layav = { _mvpbn: '_Fbgltxhq' }; _layav._mvpbn.charAt(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%31%2E%38%36%29%20%2B%20%30%20%2D%20%31')))","decodeURIComponent('%' + (eval(unescape('%28%28%37%30%20%2A%20%31%36%20%2D%20%35%36%30%29%20%2F%20%38%29'))).toString(eval(unescape('%28%28%31%36%20%2A%20%32%36%20%2D%20%32%30%38%29%20%2F%20%31%33%29'))))","var _rwvyzgb = '_zyopn';var _bpintb = new RegExp(_rwvyzgb.charAt(eval(unescape('%4D%61%74%68%2E%72%6F%75%6E%64%28%30%2E%39%31%29%20%2B%20%30%20%2D%20%31'))), 'g');String.fromCharCode(_rwvyzgb.replace(_bpintb, '5').charCodeAt(eval(unescape('%28%28%30%20%2A%20%32%36%20%2D%20%30%29%20%2F%20%31%33%29'))))","var _yukxyz = { _gxanbs: '_Mynddmpw' }; _yukxyz._gxanbs.charAt(eval(unescape('%31')))","'x'","var _hhnd = { _ienyekft: 'txihjy' }; _hhnd._ienyekft.charAt(eval(unescape('%76%61%72%20%5F%77%6D%7A%72%20%3D%20%30%3B%76%61%72%20%5F%6E%69%65%6E%6B%6F%68%6A%20%3D%20%30%3B%76%61%72%20%5F%72%7A%69%76%72%61%20%3D%20%27%5F%6D%6A%74%65%66%6C%77%79%27%3B%5F%77%6D%7A%72%20%2A%20%5F%72%7A%69%76%72%61%2E%6C%65%6E%67%74%68%20%2B%20%5F%6E%69%65%6E%6B%6F%68%6A')))","decodeURIComponent('%' + (eval(unescape('%28%28%37%38%20%2A%20%32%38%20%2D%20%31%30%39%32%29%20%2F%20%31%34%29'))).toString(eval(unescape('%31%36'))))","var _stnjdc = { _pzikvu: '_jauwtq' }; _stnjdc._pzikvu.charAt(eval(unescape('%35')))","var _uipq = { _byax: '_uuc9tnhs' }; _uipq._byax.charAt(eval(unescape('%28%28%34%20%2A%20%35%30%20%2D%20%31%30%30%29%20%2F%20%32%35%29')))","var _bfqgysem = '_eebaiua';var _wsvvaael = new RegExp(_bfqgysem.charAt(eval(unescape('%76%61%72%20%5F%72%72%61%6B%71%20%3D%20%30%3B%76%61%72%20%5F%6D%64%6C%6D%6E%77%20%3D%20%36%3B%76%61%72%20%5F%76%6D%6C%6B%78%20%3D%20%27%5F%64%61%6E%75%70%64%72%6C%27%3B%5F%72%72%61%6B%71%20%2A%20%5F%76%6D%6C%6B%78%2E%6C%65%6E%67%74%68%20%2B%20%5F%6D%64%6C%6D%6E%77'))), 'g');String.fromCharCode(_bfqgysem.replace(_wsvvaael, '0').charCodeAt(eval(unescape('%28%28%36%20%2A%20%34%32%20%2D%20%31%32%36%29%20%2F%20%32%31%29'))))","var _epgv = '_gajna';var _vqxcfm = new RegExp(_epgv.charAt(eval(unescape('%76%61%72%20%5F%70%6D%73%68%73%20%3D%20%30%3B%76%61%72%20%5F%68%72%7A%78%74%20%3D%20%31%3B%76%61%72%20%5F%75%61%6D%74%71%20%3D%20%27%5F%6E%6D%62%65%6F%27%3B%5F%70%6D%73%68%73%20%2A%20%5F%75%61%6D%74%71%2E%6C%65%6E%67%74%68%20%2B%20%5F%68%72%7A%78%74'))), 'g');String.fromCharCode(_epgv.replace(_vqxcfm, '0').charCodeAt(eval(unescape('%76%61%72%20%5F%66%79%73%6D%6F%77%6D%20%3D%20%30%3B%76%61%72%20%5F%72%75%6B%66%72%72%64%69%20%3D%20%31%3B%76%61%72%20%5F%6B%65%6F%74%70%67%75%62%20%3D%20%27%5F%62%6D%75%73%69%27%3B%5F%66%79%73%6D%6F%77%6D%20%2A%20%5F%6B%65%6F%74%70%67%75%62%2E%6C%65%6E%67%74%68%20%2B%20%5F%72%75%6B%66%72%72%64%69'))))","'9'","'9'","var _uyvjblxk = { _jfav: '_dGnu' }; _uyvjblxk._jfav.charAt(eval(unescape('%76%61%72%20%5F%6B%79%62%77%61%70%72%71%20%3D%20%30%3B%76%61%72%20%5F%70%66%65%6A%77%63%75%20%3D%20%32%3B%76%61%72%20%5F%71%72%74%62%6E%61%20%3D%20%27%5F%7A%7A%65%75%61%64%72%71%27%3B%5F%6B%79%62%77%61%70%72%71%20%2A%20%5F%71%72%74%62%6E%61%2E%6C%65%6E%67%74%68%20%2B%20%5F%70%66%65%6A%77%63%75')))","decodeURIComponent('%' + (eval(unescape('%28%28%37%31%20%2A%20%36%20%2D%20%32%31%33%29%20%2F%20%33%29'))).toString(eval(unescape('%28%28%31%36%20%2A%20%32%38%20%2D%20%32%32%34%29%20%2F%20%31%34%29'))))"],"password_salt":"XaU04Zrv8txl1NRJ6lJpBHcnGIFIaiiz"}}

Plus lisible sur pastebin.
OS v3.3.2

2121406/03/2017AnomalieAPITousÀ investiguerPas d'accès possible /api/v3/number/{id} si {id}>256 Description de la tâche

Quand il y a plus de 256 numéros de téléphone, à la création du numéro de téléphone, l’id retourné est modulo 256. Il n’est plus possible ensuite d’accéder à ce numéro par l’API. La supression du numéro par l’interface web Freebox Os est également impossible.

Exemple :

is_own: 'False'
number: '1234567890'
contact_id: '150'
is_default: 'False'
type: 'fixed'
id: '684'

DELETE /number/684 ->
 {'status': 200, 'cookies': <RequestsCookieJar[]>, 'content_type': 'application/json; charset=utf-8', 'is_json': True, 'timeout': False, 'data': {u'msg': u'Impossible supprimer cet objet', u'error_code': u'internal_error', u'success': False}}
2121506/03/2017ÉvolutionAPITousÀ investiguerAjout de addtogroup pour ajouter un contact dans un gro... Description de la tâche

Example request:

PUT /api/v3/contact/addtogroup/ HTTP/1.1
Host: mafreebox.freebox.fr
{
  "group_id": 2,
  "contact_id": 6
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
    "success": true
}
2146604/05/2017ÉvolutionAPITousÀ investiguerRendre la documentation plus claire concernant les head... Description de la tâche

Suite au bug : External Linkhttps://dev.freebox.fr/bugs/task/21461

Il apparaît que depuis la version 4 des API, certains appels nécessitent vraiment le header

Content-type: application/json

pour fonctionner correctement.

En effet, ce header est bien mentionné (71 fois) pour les réponses, mais jamais clairement pour les requêtes (juste 1 fois pour expliquer qu’il ne faut PAS l’envoyer dans un cas précis).

Cela n’est indiqué nulle part en clair dans la documentation.

Je suggère donc (améliorations) que la documentation mentionne cette “bonne pratique” (puisque en réalité 99% des API fonctionnent néanmoins, mais ce n’est effectivement pas 100% fiable).

Cela pourrait figurer dans la section d’introduction, en donnant des modèles de ‘curl’ par exemple.

Une documentation plus précise est en effet à même d’aider les futurs développeurs en leur évitant de tomber dans des bugs bizarres comme celui signalé plus haut.

2283009/09/2018AnomalieAPITousÀ investiguerPVR, programmer un enregistrement : Documentation incom... Description de la tâche

Bonjour,
je n’arrive pas à programmer un enregistrement depuis l’API freebox. La documentation étant incomplète, impossible de deviner quels sont les informations nécessaires, et pourquoi j’ai une erreur internal quand j’essaye d’ajouter un enregistrement :( Serait-il possible de compléter la doc, avec notamment un exemple d’utilisation ?
Merci d’avance

2293529/11/2018ÉvolutionAPITousÀ investiguershutdown Description de la tâche

Bonjour ,
de récurrents soucis de coupure de courant avec le réseau public de distribution de l’électricité m’ont incité à acquérir un ups pour protéger ma petite installation , et j’ai l’impression que ce type de problème est amené à se multiplié dans le futur .
Donc voila la question à peut être déjà été posée et je n’ai peut être pas cherché assez et par ailleurs je comprendrai que des contraintes techniques l’imposent ou rendent la chose impossible , mais après avoir cherché un minimum je n’ai pas trouvé de possibilité de faire un shutdown du freeboxserver , j’utilise apscupsd sur mes machines et je demande pas l’implémentation d’un client mais j’ai observé que l’api permettait le reboot (via POST /api/v4/system/reboot/) et me demande si le shutdown ne serait pas possible , en effet en cas de coupure si je souhaite continuer à alimenter la box pour maintenir le téléphone en cas d’urgence , j’aimerai aussi pourvoir l’éteindre et privilégier une autre machine à partir d’un certain temps / pourcentage de batterie .
Cette demande n’est ni urgente ni critique , mais je souhaitait avoir votre réponse avant d’envisager l’achat d’un autre ups uniquement pour la freebox ;)

Merci d’avance,
Cordialement

2378431/12/2018ÉvolutionAPITousÀ investiguerAPI pour intégrer la domotique Description de la tâche

Bonjour,

avec les nouvelles fonctionalités de la Freebox Delta, il serait préférable de pouvoir integrer la domotique (Somfy, ...) avec des applications tierces en fournissant un API

Merci

2472221/01/2019AutreAPITousEn cours de résolutionApi Freebox Delta Description de la tâche

Bonjour

Ou puis je avoir accès à l’api de là box pour pouvoir contrôler la centrale d’alarme et les détecteur et capteur et télécommande sur ma box lifedomus de delta dore. Il nous manque des infos pour pouvoir l’integrer.

En attente de votre réponse

2869621/10/2019ÉvolutionAPITousÀ investiguerPermettre de récupérer plus de 100 éléments via l'API Description de la tâche

Je souhaiterai récupérer la totalité des appels émis ou reçus sur ma Freebox. J’utilise donc l’API via cette URL :

/api/v4/call/log/

Seulement 100 éléments me sont affichés mais la numérotation de ceux-ci va bien au-delà (+ de 3000 dans mon cas). Si tous les appels sont gardés en mémoire, est-ce possible de mettre un paramètre optionnel pour récupérer l’ensemble des éléments ?

2898512/11/2019ÉvolutionAPITousNouveauAPI de récupération des sessions Description de la tâche

Bonjour,

J’utilise les APIs du serveur de la freebox et j’ai identifié qu’il existait une API de récupération des sessions (c-a-d une liste des sessions des applications tierces connectées aux API). Cette API correspond à “Gestion des accès > Sessions” dans l’interface web accessible depuis mafreebox.freebox.fr.

L’API semble être accessible depuis l’url http://mafreebox.freebox.fr/api/v6/sessions mais lorsque je l’appelle avec ma propre application (qui possède son propre app_token préalablement granted), j’ai un code retour 403 (Unauthorized).

Que dois-je faire pour pouvoir accéder à cette API ?

Merci bcp pour votre aide

Bien cordialement,

Jean-Baptiste

3041020/04/2020AnomalieAPITousNouveauImpossible de se connecter via freebox compagnon Description de la tâche

Bonjour,

Je viens de changer de freebox server et je n’arrive pas à me connecter à ma box en utilisant l’application smartphone freebox compagnon.
J’ai un message d’erreur : “Erreur
Failed to connect to ...” (adresse IP)

Je ne peux pas choisir ma box.
Je suis bien connecté en WiFi.
Je peux me connecter à ma box freebox OS via internet mais ça ne fonctionne pas via l’application freebox compagnon.
J’ai essayé de désinstaller / réinstaller plusieurs fois.

L’adresse IP indiquée dans le message d’erreur freebox compagnon est différente de l’adresse IP indiqué dans les paramètres de freebox OS.

3206225/08/2020AutreAPITousNouveauAjouter CGU pour Apple Store Description de la tâche

Bonjour,

Apple demande des CGU ou tout autre texte qui authorise un dev indépendant d’utiliser l’api REST de la freebox. Rien n’est mentionné sur le site.

Quelques lignes disant que l’on peut faire des application IOS + Android avec l’api serait vraiment bien.
Et aussi que l’on peut mentionner le nom “Free” ou “Freebox” tant que ça reste nominatif genre “pour Freebox ...” ce serait vraiment pratique aussi.

J’ai plusieurs applications sur la store et j’ai sans arrêt des soucis vu qu’on ne trouve aucun texte ou CGU.
Désolé si ce n’est pas le bon endroit mais je ne sais pas du tout où poster ça à part sur un truc de dev.

Merci

3317220/11/2020AnomalieAPITousNouveauDisparition des entêtes HTTP Description de la tâche

Bonjour,

Les entêtes HTTP des fichiers proposés par l’API, comme les logos des chaînes, ne sont plus disponibles.
Sauf erreur de ma part, la requête suivante fonctionnait il y a peu :

curl -I http://mafreebox.freebox.fr/api/v8/tv/img/channels/logos68x60/uuid-webtv-201.png

Désormais, elle retourne :

HTTP/1.1 404 Not Found
Server: nginx
Date: Fri, 20 Nov 2020 17:24:52 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive

Ce comportement est aberrant puisque la ressource existe bel et bien.
Ainsi, la requête GET correspondante fonctionne :

curl -I -X GET http://mafreebox.freebox.fr/api/v8/tv/img/channels/logos68x60/uuid-webtv-201.png
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 20 Nov 2020 17:28:02 GMT
Content-Type: image/png; charset=utf-8
Content-Length: 1777
Connection: keep-alive
Last-Modified: Wed, 18 Nov 2020 11:31:39 GMT
ETag: "5fb5061b-6f1"
Expires: Wed, 25 Nov 2020 11:55:21 GMT
Cache-Control: max-age=604800
Accept-Ranges: bytes

Cette régression a vraisemblablement été introduite dans Freebox OS peu avant le 26 août.

Merci :)

3571906/10/2021AutreAPITousNouveauDocumentation publique de l'API Freebox (complète et à ... Description de la tâche

n peut trouver la documentation de l'API Freebox ici : https://dev.freebox.fr/sdk/os/ et elle est publique
Cependant, cette documentation ne semble pas à jour et/ou pas complète : c'est dommage :-(

Certe on peut la trouver sur l'aide sur Freebox OS (qui s'appelle maintenant "Développer" dans le menu Free en bas à gauche)
Ou en allant sur l'URL :
http://mafreebox.freebox.fr/doc/index.html#developer-api-documentation

On voit d'ailleurs la grosse différence entre les 2 documentation (publique et maFreebox) sur la partie Api List
Les paragraphes suivants :
- home
- notification
- Players Devices
- Virtual Machines
n'existent pas sur la documentation publique (premier lien)

Est-ce volontaire ?
Pourquoi publier en public qu'une partie de la documentation ?

3600924/11/2021ÉvolutionAPITousNouveauAPI pour sauvegarder / restorer le fichier de sauvegard... Description de la tâche

Bonjour

Suite au passage en 4.5.3 "officiel", la section changes de l'API ne fait pas mention de l'ajout d'une API pour faire une sauvegarde de la box / restorer une sauvegarde.

Pourriez vous SVP ajouter une API permettant d'automatiser les sauvegardes ?
Pourriez vous également ajouter une API permettant de restorer une sauvegarde ?

Pouvoir créer une sauvegarde avec l'API vers un drive de la box ou un serveur réseau serait un plus.
Idem pour la restoration d'une sauvegarde depuis l'API.

En vous remerciant d'avance,
Cordialement
nbanba

3698127/08/2022AnomalieAPITousNouveau[résolu] 2022, API mafreebox.freebox.fr, session token,... Description de la tâche

Bonjour à tous,

pour info,
après plusieurs essais infructeux dans tous les sens
j'ai enfin réussi à obtenir un session token


la doc API intégrée à la freebox (https://mafreebox.freebox.fr/doc/index.html#)
est erronée concernant le calcul du "password".

ce password est necessaire dans la requête du session token

—> dans la doc est écrit
—> dans le paragraphe "Obtaining a session_token"/"password string"
—> password = hmac-sha1(app_token, challenge) (←– CECI NE FONCTIONNE PAS)

avec le password ainsi calculé,
j'obtenais en réponse à la requête de session token (POST http)

Status Code: 403 Forbidden
msg: Erreur d'authentification de l'application
error_code: invalid_token

Pour que ça fonctionne,
il faut inverser app_token et challenge dans la formule

(CECI CI-DESSOUS FONCTIONNE)
(variables challenge et app_token préalablement attribuées bien sûr)

#en php
$password = hash_hmac("sha1", $challenge, $app_token); 

#ou en bash
password=$(echo -n $challenge | openssl sha1 -hmac $app_token | cut -d '=' -f2 | sed 's/ //g')

—> et avec le bon password, ça passe mieux
—> session_token (enfin) reçu :-)


en remarques complémentaires (de ce que j'en ai compris),

- l'app_token une fois sollicité/autorisé/validé est pérenne 
- le challenge par contre, à une durée de validité courte (30 secondes), 
  validité courte qui est donc conférée au password. 
  Et donc pour réussir l'obtention du session_token, 
  la requête/obtention du challenge, le calcul du password et la requête du session_token 
  doivent être fait pendant cette période de validité de 30 secondes.
- je suppose que le session_token est relativement pérenne  
  (pas pu tester longtemps) mais on sait maintenant comment en solliciter un autre...

HTH,
cordialement,
hého

3767706/02/2023AutreAPITousNouveauAuthentification application Description de la tâche

Bonjour,

je souhaite développer une application en python pour me connecter à ma freebox POP.

J’ai bien compris que la première étape est d’inscrire son application et de l’autoriser sur la box. Voici mon code:

 headers = {}
  payload=json.dumps ({
 "app_id": "fr.freebox.test",
 "app_name": "test",
 "app_version": "1.0.0",
 "device_name": "NO"
  })
  try:        
      response = requests.request('POST', 'https://mafreebox.freebox.fr/api/v10/login/authorize', headers=headers, data=payload,verify=False)
  except Exception as e:
      print ('Execution Box Authorize commmand failed : ' + str(e))     
  else :
      if (response.status_code == 200) :
          authorize = response.json()
          print (authorize)

Tout fonctionne bien je récupère bien un app_token :

{’success’: True, ‘result’: {’app_token’: ‘xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx’, ‘track_id’: 74}}

Et sur la box s’affiche l’authorisation. Mais j’ai beau essayé de valider en sélectionnant Oui sur l’édcran LCD (Fleche droite puis l’écran affiche de nouveau l’heure), La console des accès reste la même :

—–> ‘Authentification en cours’

Avez-vous une idée de là où ça coince ?

Cordialement

3908126/02/2024ÉvolutionAPITousNouveauIndication du temps d'attente lors d'un "Too Many Reque... Description de la tâche

Bonjour,

Je rencontre un problème lors de l’utilisation de l’API. Actuellement, lorsque j’effectue un nombre excessif de requêtes, je reçois en retour le message “Too Many Requests”.

Vu que le blacklistage des machines qui effectuent trop de requêtes est exponentiel (plus on insiste, plus la limitation est longue ; https://https://dev.freebox.fr/bugs/task/19160#comment79018), serait-il possible d’ajouter une indication du temps d’attente nécessaire avant de pouvoir effectuer de nouvelles requêtes ?

Actuellement, nous sommes contraints de réessayer à plusieurs reprises sans savoir exactement dans combien de temps nous pourrons effectuer de nouvelles requêtes. Cela a pour conséquence d’augmenter le temps d’attente si nous essayons de nouveau avant la fin de la période de blocage, ce qui a pour conséquence d’aggraver la situation.

Dans la demande “ FS#19160 “, il était indiqué que “Pour réinitialiser cette limitation il suffit de redémarrer le Server”. Cependant, après avoir essayé cette solution, le problème persiste toujours. Donc l’ajout de cette évolution aiderait grandement.

Je vous remercie par avance pour votre considération de cette demande d’amélioration.

Cordialement

3278915/10/2020AnomalieApplicationsFreebox Player V6 (Revolution)NouveauPing ne répond pas Description de la tâche

Bonjour

J’ai paramétré deux caméras chez un de mes clients, elles sont en adresse IP fixe en dehors de la plage du DHCP, avec deux redirections de ports pour avoir accès à mes caméras depuis l’extérieur. Tout fonctionné très bien depuis plus d’un an et demi et tout d’un coup depuis quelques semaines, je n’ai plus accès aux caméras depuis l’extérieur.
La seule chose que je vois d’anormale est le fait que je ne peux pas pinger la box depuis l’extérieur. J’ai bien sur prix soin d’activer le ping sur le portail de la box en question.
Et la commande msdos tracert xx.xxx.xx.xx n’abouti pas, le delai d’attente est dépassé ce qui me semble vraiment anormal.

Je n’ai malheureusement pas trouver de réponse à mon problème et mes clients envisage très sérieusement de quitter Free alors qu ej’ai d’autres clients avec le smêmes caméèas configurés de la même manière et tout fonctionne très bien.

J’espère avoir exposé clairement mon problème et j’espère que quelqu’un pourra rapidement m’aider à le résoudre.

Bien cordialement

3342512/12/2020ÉvolutionAssociationAndroidNouveauAjout d'un historique des sessions Freebox OS Description de la tâche

Bonjour, mon fils réussi à s’associer à la freebox pop sans saisir le mdp administrateur dans Freebox Connect. Le mdp est pourtant assez compliqué, je l’ai changé plusieurs fois et il est enregistré nulle part.

– Titre édité suite aux échanges

789916/09/2011ÉvolutionAudio (AirMedia, ...)Freebox Server V6 (Révolution)NouveauLatence audio Airmedia Description de la tâche

A cause d’une latence de plusieurs dizaines de millisecondes dans le traitement du signal audio via la fonction airmedia de la freebox revolution, il est impossible d’utiliser correctement cette fonction de la freebox au sein d’un systeme avec d’autres haut-parleurs fonctionnant également en airplay. En effet le décalage sonore entre les autres appareils et la freebox est trop important.

814411/10/2011ÉvolutionAudio (AirMedia, ...)Freebox Server V6 (Révolution)NouveauHeure + AirMedia Description de la tâche

Ayant un iphone 4, un mac et ma freebox serveur juste à coté de mon ampli audio, j’utilise exclusivement la fonction airplay pour écouter de la musique.

Depuis la dernière mise à jour de la freebox serveur 1.1.3, il est possible de piloter airmédia depuis l’écran ldc.
Ce dernier affiche d’ailleurs les infos sur le morceaux joué lorsque ces dernières sont disponibles ainsi que le niveau sonore.
Mais cette nouveauté ce fait au détriment de l’affichage de l’heure ...

L’ajout de cette fonction gadget (selon moi) pénalise tous ceux qui n’en ont pas l’utilité dans la mesure où il n’existe pas une possibilité de préférer afficher l’heure.

Alors certes je pourrais préférer utiliser le boitier freebox player pour garder l’heure visible, mais cela me contraindrait à laisser mon plasma allumé (la freebox player n’ayant qu’une entrée audio OPTIQUE je ne peux connecter cette dernière à mon ampli qu’au travers de ma TV)

3473201/05/2021AnomalieAudio (AirMedia, ...)Freebox Server V6 (Révolution)NouveauSortie audio mini jack freebox server (Révolution) hors...
3542518/08/2021AnomalieAudio (AirMedia, ...)Freebox Server V6 (Révolution)NouveauBelle image mais Pas de son en recopie d’écran avec le ...
3791603/04/2023AnomalieAudio (AirMedia, ...)Freebox Server V6 (Révolution)Nouveauajout webradio
2308618/12/2018ÉvolutionAudio (AirMedia, ...)Freebox Server V7 (Delta)NouveauMusique en mp3 dans le nas accessibles via commande voc...
2592619/02/2019ÉvolutionAudio (AirMedia, ...)Freebox Server V7 (Delta)NouveauDolby Prologic II
2720606/05/2019ÉvolutionAudio (AirMedia, ...)Freebox Server V7 (Delta)NouveauApplication Musiques
3670905/06/2022AnomalieAudio (AirMedia, ...)Freebox Server V7 (Delta)NouveauGros problème sonore AirPlay
3890530/01/2024ÉvolutionAudio (AirMedia, ...)Freebox Server V7 (Delta)En attente de réponseSupport AirPlay 2
1314002/09/2013ÉvolutionAudio (AirMedia, ...)TousNouveauPas d'accès AirMedia 'audio' sur le Freebox Server
1507824/05/2014ÉvolutionAudio (AirMedia, ...)TousNouveauAjouter un Renderer DLNA au Freebox Server
1521825/06/2014ÉvolutionAudio (AirMedia, ...)TousNouveauPouvoir lire les radios favoris sur Freebox Server
1627530/01/2015ÉvolutionAudio (AirMedia, ...)TousNouveauLe port audio IN devrait permettre une entrée son
1634101/03/2015AnomalieAudio (AirMedia, ...)TousNouveauProbleme de son sous Airplay (Freebox Server Air Media)
1752231/05/2015AnomalieAudio (AirMedia, ...)TousÀ investiguerLe freebox server est absent de la liste des terminaux ...
1912710/11/2015ÉvolutionAudio (AirMedia, ...)TousNouveauCompte Deezer non disponible
1918320/11/2015ÉvolutionAudio (AirMedia, ...)TousNouveauServeur DLNA DMS
1948916/01/2016ÉvolutionAudio (AirMedia, ...)TousNouveauUtilisation enceinte freebox server depuis freebox play...
1956702/02/2016ÉvolutionAudio (AirMedia, ...)TousNouveauVisibilité des fichiers .dsf (DSD) via DLNA
2134005/04/2017ÉvolutionAudio (AirMedia, ...)TousNouveauAirplay c'est pour quand ?
2157904/06/2017ÉvolutionAudio (AirMedia, ...)TousNouveauFonction Airmedia non supporté
2183607/10/2017ÉvolutionAudio (AirMedia, ...)TousNouveauSimple Radio
2224814/01/2018ÉvolutionAudio (AirMedia, ...)TousNouveauNouveau flux RJM DANCE
2235505/02/2018AnomalieAudio (AirMedia, ...)TousNouveauProblème distorsion de son via airplay
2241620/02/2018ÉvolutionAudio (AirMedia, ...)TousNouveaupossibilité d'avoir des favoris dans les radios
2281728/08/2018ÉvolutionAudio (AirMedia, ...)TousNouveauPrise en charge AirPlay 2
Tâches 101 - 150 sur 2707 Page 3 sur 55

Activer les raccourcis clavier

Liste des tâches

Détails de la tâche

Édition de la tâche