apiFreeBox - Chaine de mon FreePlayer

@saniho , on va continuer ici si tu le préfères :wink:
Désolé si j’ai loupé un truc, mais je pensais que l’autorisation se faisait au 1er démarrage => dans mon cas pas de demande de code sur la box.

J’ai également tenté d’exécuter le script example.py mais en échec avec l’erreur

  File "/var/docker/homeassistant/custom_components/apiFreebox/freepybox.py", line 11, in <module>
    from . import exceptions
ImportError: attempted relative import with no known parent package

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "example.py", line 8, in <module>
    from freepybox import Freepybox
  File "/var/docker/homeassistant/custom_components/apiFreebox/freepybox.py", line 37, in <module>
    import fsnav
  File "/var/docker/homeassistant/custom_components/apiFreebox/fsnav.py", line 1, in <module>
    from . import fs
ImportError: attempted relative import with no known parent package```

Pas contre un petit coup de main, la je suis un peu perdu.
J’aimais bien pouvoir monitorer également ma conso TV, je regretterai presque mon ancienne box (commence par Live…)
Merci.

@SebCaps , je t’ai livré une version « speciale », la 1.0.1.0a, tu devrais arriver à la lancer en manuelle pour voir le soucis.
Si tu peux partager le retour pour qu’on voit le soucis…

@saniho mille merci pour la version « speciale » en voici les résultats :

  • plus le message d’erreur sur import fs,
  • aprés correction de le majuscule from freepybox import freeboxpy en lieu et place de from freepybox import Freeboxpy ligne 8 de example.py et correction identique ligne 13

==> affichage demande d’autorisation cote server, et erreur récup de la température.
bref on avance :wink:

Trace compléte

http://mafreebox.freebox.fr:80/api/v6/login/authorize/
<Response [200]>
Please confirm the authentification on the freebox
//**************Autorisation donnée sur la box ***********///
Traceback (most recent call last):
  File "example.py", line 24, in <module>
    print('Freebox temperature : {0}'.format(fbx_config['temp_sw']))
KeyError: 'temp_sw'

Je dirai même plus => en commentant la ligne 24 j’arrive au bout :slight_smile:
Les info obtenues par la commandes system.get_config() sont les suivantes :

{'mac': 'XX:XX:XX:XX:XX:XX', 'model_info': {'net_operator': 'free_fra', 'supported_languages': ['fra', 'eng', 'ita'], 'has_dsl': True, 'customer_hdd_slots': 0, 'wifi_type': '2d4_5g', 'pretty_name': 'Freebox v8 (r1)', 'name': 'fbxgw8-r1', 'has_separate_internal_storage': True, 'internal_hdd_size': 0, 'default_language': 'fra'}, 'fans': [{'id': 'fan0_speed', 'name': 'Ventilateur 1', 'value': 1162}], 'sensors': [{'id': 'temp_t2', 'name': 'Température 2', 'value': 45}, {'id': 'temp_t1', 'name': 'Température 1', 'value': 55}, {'id': 'temp_cpub', 'name': 'Température CPU B', 'value': 61}], 'board_name': 'fbxgw8r', 'disk_status': 'active', 'uptime': '5 jours 4 heures 12 minutes 48 secondes', 'uptime_val': 447168, 'user_main_storage': '', 'box_authenticated': True, 'serial': 'XXXXXXXXXXXXXXXX', 'firmware_version': '4.5.4'}

pas de temp_sw donc sur ma box (freebox pop)

au vu de ton retour, cela devrait fonctionner sans aucun problem…avec cette version speciale
as-tu fait le test via ha
à savoir au demarrage de HA à un moment ta box doit de demander une confirmation pour accepter la connection
ensuite il faut modifier les autorisations dans mafreebox … et rebooter de nouveau, tout devrait alors etre ok
tiens moi au courant si ce n’est pas le cas.

@saniho merci pour le coup de main.
J’ai trouvé la source de l’erreur ‹ initiale › et elle se trouvait dans l’interface chaise-clavier : avec la bonne valeur de host ( host: mafreebox.freebox.fr au lieu de host: mafreebox.free.fr on met déjà plus de chance de son coté :shushing_face:
Par contre je reste bloqué et je pense pour un bon moment car equipé d’une freebox pop => la liste des player renvoi
[{'mac': '20:XX:XX:XX:XX:cc', 'stb_type': 'stb_v8', 'last_time_reachable': 1642785633, 'api_available': False, 'device_name': 'Freebox Player POP', 'device_model': 'fbx8am', 'reachable': True, 'lan_gids': ['ether-20:66:cf:d0:c3:cc']}]
=> pas d’ID comme attendu par ton integration, et l’attribut api_available :False n’augure rien de bon pour la suite.
Je vais pousser les recherches pour voir si mon intuition est la bonne ou pas, mais je le crain.
Merci en tous cas pour le boulot et coup de main.

si tu veux, je peux te passer une version plus debug pour qu’on voit si on peut faire l’intégration …

ce que tu peux tester, te connecter sur mafreebox.free.fr … puis sur un nouvel onglet ouvrir cela : http://mafreebox.freebox.fr/api/v6/player/1/api/v8/status/
et voir le résultat

Cela me donne ceci

plus précisément code 502 lorsqu’executé avec ton code. (en bidouillant un peu :wink: )

peux-tu essayer cette url( toujours après avoir fait l’authentification sur mafreebox )
http://mafreebox.freebox.fr/api/v6/player/
et voir le chiffre dans la clef id

si le chiffre est différent de 1, peux-tu essayer cela :
http://mafreebox.freebox.fr/api/v6/player/id/api/v8/
ou id est l’id que tu as eut…

Le résultat de cette requête est en #21, c’est à dire
[{'mac': '20:XX:XX:XX:XX:cc', 'stb_type': 'stb_v8', 'last_time_reachable': 1642785633, 'api_available': False, 'device_name': 'Freebox Player POP', 'device_model': 'fbx8am', 'reachable': True, 'lan_gids': ['ether-20:66:cf:d0:c3:cc']}]
==> pas d’id et « api_available: False »; à part changer de box ou attendre, je pense que c’est cuit, non?:frowning:

il semble que l’api ne soit active qu’a partir de la version logicielle 4.2.4, as-tu bien à jour ta box ?

Version 4.5.4 au niveau de la box
image
A priori, il faudra être patient, voir très patient, KO coté Jeedom également pour le player Pop, depuis Aout 2020, et il ne semble pas y avoir eu d’évolution

Bonsoir,

A toute hasard, est-ce que apiFreebox fonctionne bien chez vous aujourd’hui ?
Je ne sais pas si c’est dû à la MAJ de HA d’hier ou à un changement côté Freebox (v6/Révolution) mais je n’ai plus d’infos autre que éteint/running :

J’ai testé le reboot du player et le server mais sans succès.

de mon coté tout fonctionne bien

Arfff, je vais tenter la réinitialisation de l’auth (même si elle parait OK) et/ou la réinstalle de l’intégration.

merci pour l’info.

Bonsoir,

désinstallation + réinstallation, rien n’y fait il ne me demande même plus la validation sur la freebox.
On a moyen de lancer le process à la main ?

Hello @saniho
Tu continue ton dev sur la freebox ou pas ?

Bonjour,

Est-ce que l’intégration fonctionne désormais avec le player Pop ?

Merci d’avance pour votre réponse.

Hello @Jezza ,je continue si besoin … mais pas d’evolution dernierement …des besoins identifiés ?