Suite au déploiement de la version 2 de firmware Freebox v6 (désormais appelé Freebox OS), l'ancienne (laborieuse) méthode d'interrogation de la Freebox en HTTP ne fonctionne plus, mais la nouvelle API peut être utilisée pour accéder aux statistiques (presque brutes) de connexion/ADSL.
D'avantages de données sont en outre disponibles ; et qui dit nouvelles stats, dit nouveaux graphes ! ;-)

Graphes disponibles :
Freebox API - ADSL bandwidth
Freebox API - ADSL attenuation
Freebox API - ADSL noise margin
Freebox API - ADSL errors
Freebox API - ADSL errored seconds
Freebox API - ADSL traffic
Freebox API - ADSL uptime
Freebox API - ADSL ATM max rate (je ne suis pas encore tout à fait clair sur ce que cela représente exactement)

La nouvelle version du script bash est quelque peu "quick and dirty" ou tout au moins peu élégante, mais elle a le mérite de fonctionner simplement (et je ne suis pas développeur).
A noter qu'il appelle le script freeboxos-bash-api.sh.

Il faut avant tout autoriser l'application (ici le script) à accéder à la Freebox. Pour cela lancer un script d'autorisation depuis le serveur Cacti : fbx-api-authorize.sh ou freebox-api-authorize.sh et valider physiquement l'autorisation sur la Freebox.
Récupérer ensuite l'app_token (variable MY_APP_TOKEN) et le modifier dans le script principal freebox-api.sh.
Penser également à modifier dans ce même script le chemin de Cacti (variable CACTI_PATH) si nécessaire.

Une fois encore, un seul datasource/fichier RRA contenant toutes les stats, afin de ne pas le dupliquer et réaliser plusieurs pollings des mêmes données à chaque cycle, la bonne méthode de création des graphes est de créer le datasource manuellement (en se basant bien entendu sur le template) puis de créer de même les graphes manuellement à partir de leurs templates respectifs et en y associant les bons datasource items.

Scripts, Cacti templates et Data Input Method : cacti_freebox_os_v2.zip

Place à présent aux images avec les graphes des stats actuelles de ma pauvre ligne récemment resynchronisée en ReADSL2 (rendez-moi mon ADSL2+ !!!) :










Remerciements :
Un grande merci à JrCs pour sa freeboxos-bash-api qui m'a permis de faire finalement très simplement fonctionner l'authentification à l'API Freebox après avoir galéré pendant des heures à ne pas comprendre pourquoi mon script n'arrivait pas à s'authentifier...
Merci aussi à Gilbert Marin pour son développement antérieur au mien. Celui-ci m'a bien inspiré (et motivé !) mais nous avons ensuite choisi des méthodes sensiblement différentes...

Références :
Freebox OS developer API documentation
Freebox OS bash API
Exemple de script d'autorisation et d'authentification d'une appli à l'API Freebox