Possesseurs de livebox 6 ou 7 et plugin livebox

Bonjour à tous,
Je recherche des possesseurs de livebox 6 ou 7 pour améliorer le fonctionnement du plugin livebox avec ces box récentes.
En plusieurs endroit du code le plugin utilise le type de livebox et ce code n’a pas été mis à jour depuis longtemps. Pour la Livebox Play le type est « Livebox 3 » et pour la livebox 5 il est « Livebox Fibre ». Mais j’ignore ce qu’il en est pour les Livebox 6 ou 7.
Si quelqu’un ayant une Livebox 6 ou 7 pouvait tester cela m’aiderai.
Le type est indiqué sur la page configuration de l’équipement Livebox en haut à droite voir ovale rouge sur la copie d’écran. Bien respecter minuscules majuscules.
Merci beaucoup.

Hello
Désolé
image

Hello @vedrine,
On se retrouve :wink:
image

Si jamais tu ne trouves personnes avec une Livebox 6, je peux au besoin en brancher une.

Mathieu

Bonsoir.

J’ai une Livebox 6, j’installe le plugin et hop :

Fabricant	Sagemcom
Type	Livebox 6

Par contre, je suis sur Alpha 4.4.2 et le plugin pose différents problèmes.

Dans la liste des commandes, en principe depuis les versions récentes de Jeedom, les commandes de types infos, affichent leurs valeurs sans avoir besoin de cliquer sur le bouton tester : ce n’est pas le cas
Ni sur l’équipement Livebox, ni sur les équipements réseau découverts.

Sur le Widget, la durée de fonctionnement donne :
Durée de fonctionnement 13min 35.05972222221999s (815.05972222222h)
La box affiche ; Durée de fonctionnement : 33 j 23 h 05 m 17 s
L’équipement Livebox affiche les secondes (si je les converties en jours c’est ok)

Quand je clique sur le Widget pour aller à l’équipement Livebox 6, j’ai un triangle noir dans l’interface de Jeedom et ces informations :

desktop/common/js/utils.js -1 !WARNING! Deprecated function jeedom.eqLogic.builSelectCmd since Core v4.4: Use new Core v4.1 jeedom.eqLogic.buildSelectCmd() function. plugin: livebox | require: 3.3.28

Une message box de Jeedom arrive de temps en temps avec ce contenu :

Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry ‹ NAS DS213±20 › for key ‹ unique › : INSERT INTO eqLogic SET id = :id, name = :name, logicalId = :logicalId, generic_type = :generic_type, object_id = :object_id, eqType_name = :eqType_name, isVisible = :isVisible, isEnable = :isEnable, configuration = :configuration, timeout = :timeout, category = :category, display = :display, order = :order, comment = :comment, tags = :tags

Que l’on retrouve dans le log : Livebox

0000|[2024-03-28 06:37:05] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'Jeedom-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0001|[2024-03-28 06:38:05] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0002|[2024-03-28 06:39:05] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0003|[2024-03-28 06:40:07] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0004|[2024-03-28 06:41:05] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0005|[2024-03-28 06:42:05] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0006|[2024-03-28 06:43:04] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0007|[2024-03-28 06:44:04] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0008|[2024-03-28 06:45:07] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0009|[2024-03-28 06:46:04] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0010|[2024-03-28 06:47:05] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'NAS DS213+-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags
0011|[2024-03-28 06:48:07] ERROR  : Erreur sur livebox::pull() : [MySQL] Error code : 23000 (1062). Duplicate entry 'Décodeur TV UHD-20' for key 'unique'  : INSERT INTO `eqLogic` SET `id` = :id, `name` = :name, `logicalId` = :logicalId, `generic_type` = :generic_type, `object_id` = :object_id, `eqType_name` = :eqType_name, `isVisible` = :isVisible, `isEnable` = :isEnable, `configuration` = :configuration, `timeout` = :timeout, `category` = :category, `display` = :display, `order` = :order, `comment` = :comment, `tags` = :tags

Là le problème est qu’effectivement, ces équipements existent déjà (plugin networks). Si je renomme les équipements networks, petit à petit les équipements du plugins Livebox arrivent sur le Widget. Pour éviter cela, je pense que le temps de l’intégration les équipements découverts pourraient être préfixés : LB xxxxxxx (ou comme cela est présenté dans la page Santé du plugin Livebox)


Le Widget, n’est pas adapté par défaut à Jeedom 4.4.2, en effet, c’est une partie qu’il faut reprendre. La ou avant, les différentes informations des Widget faisaient d’eux même un retour à la ligne, dans Jeedom v4.4.2, ce n’est plus le cas. Il faut rééditer les Widgets pour créer ce retour à la ligne. Vu le nombre de ligne dans le Widget Livebox, si vous pouvez le faire, cela aurait un gros avantage.


Le Widget affiche un temps la liste des équipements découverts et hop, il ne les affichent plus d’un coup. Si j’édite le Widget ils revient et repartent d’eux même.

Voila. A ton service si tu veux des informations.

Merci et bonne journée à tous.

Un grand merci @Fabrice pour ces infos et rapports de bug.
Pour être honnête j’ai un peu négligé ce plugin car en fait je n’utilise plus la Livebox que comme modem fibre, pour tout le reste (DHCP, switch, points d’accès Wifi, …) j’ai migré sur du matériel Ubiquiti (UDM PRO, switchs et points d’accès) mais je n’ai pas abandonné le plugin et une fois un problème signalé ce ne devrait pas être trop difficile de le corriger.
Je vais donc m’occuper de tout ce que tu as signalé.
Et puis bonne nouvelle @ceyal14 a commencé à faire des PR sur le Github (pour le moment en beta) et a accepté de contribuer à ce plugin. Un grand merci à lui.
Donc après une période de sommeil je pense que ce plugin va recommencer à évoluer.
Nouveautés dans la version beta (bientôt en stable) :

  • Ajout de la configuration de la fréquence d’actualisation (cron) sur l’équipement livebox
  • Ajout d’un bouton pour forcer le rafraichissement des informations
  • Ajout d’un bouton permettant l’affichage/ masquage du mot de password de la livebox
  • Ajout d’un panneau sur le bureau (à configurer dans le plugin)
  • Modifications pour compatibilité PHP8

Plus à venir …
Je m’occupe dans un premier temps d’améliorer la compatibilité Livebox 6/7 et ensuite des problèmes signalés par Fabrice.

1 « J'aime »

Hello,

Merci @vedrine de ton post !

Petite précision, la Livebox Play est reconnue en Livebox 3. (tu dois pouvoir éditer ton message). Livebox 4 est bien reconnue en Livebox 4 etc…

Merci @Fabrice de ton super feedback !

Concernant 2 équipements avec le même nom c’est possible dans 2 pièces différents mais interdits sinon, c’est le comportement normal de Jeedom. Je ne recommande pas de préfixe. Par contre n’hésitez pas à utiliser cette configuration pour que les nouveaux équipements soient parquées en attendant le nom définitif et personnalisé (option disponible dans la configuration du plugin Livebox) :

image

En effet, il y a quelques erreurs en 4.4.2, pas encore eu le temps de m’y pencher.
Par contre attention, tout le monde ne va pas passer en 4.4.2 (et je préconise de ne pas forcer tout le monde à basculer en 4.4 pour avoir les MAJ du plugin - et le plugin est historiquement ainsi avec des checks dans le code version_compare(jeedom::version(). Si on doit faire un fix on essaie de le maintenir retro-compatible :slight_smile:

Avant de faire un fix 4.4, je propose de merger la branche beta en stable ?

Jerome

1 « J'aime »

J’ai du mal à suivre (mais c’est normal je n’ai pas de 4.4 installée !) : le plugin livebox n’a pas de widget d’eqLogic mais 2 widgets de commande : cmd.info.string.deroulant qui crée un tableau avec un ascenseur (visible sur ta copie d’écran pour la commande liste des appels mais il aurait dû aussi être utilisé pour la liste des équipements, il faut que je regarde le code il doit y avoir un bug puisque sur ta copie d’écran ce n’est pas le cas) et cmd.info.duree qui exprime un nombre de secondes en jours heures minutes secondes (j’ai toujours trouvé que çà manquait cruellement dans le core mais je n’ai pas vérifié si c’était bien toujours le cas) il semble que ce dernier ne marche plus en V4.4 peut être se télescope t-il avec un formattage du core ?
Et je ne comprends pas pourquoi il manque autant de retours à la ligne alors que ce ne sont que des widgets du core qui sont utilisés pour toutes les autres commandes.

C’est juste une histoire de retour à la ligne. Je suis en train de préparer un PR.
J’ai sacrifié les jeedom core < 4.1.28 j’espère que cela ne fera pas trop de décus

Pour la plupart de mes plugins je demande au minimum 4.2. Et éliminer tous les < 4 permettra de simplifier les templates.

C’est ce que je pensais, j’ai jeté un oeil au Github Jeedom et dans la branche alpha il y a

protected static $_unite_conversion = array(
		's' => array(60, 's', 'min', 'h'),
		'W' => array(1000, 'W', 'kW', 'MW'),
		'Wh' => array(1000, 'Wh', 'kWh', 'MWh'),
		'io' => array(1024, 'io', 'Kio', 'Mio', 'Gio', 'Tio'),
		'o' => array(1000, 'o', 'Ko', 'Mo', 'Go', 'To'),
		'o/s' => array(1000, 'o/s', 'Ko/s', 'Mo/s', 'Go/s', 'To/s'),
		'Bps' => array(1000, 'Bps', 'Kbps', 'Mbps', 'Gbps', 'Tbps'),
		'Hz' => array(1000, 'Hz', 'kHz', 'MHz', 'GHz'),
		'l' => array(1000, 'l', 'm<sup>3</sup>')
	);

Avant la 4.4 il n’y avait pas la ligne 's'. Donc la fonction autoValueArray clashe avec mon widget duree qui suppose que la valeur est en secondes.

Hello

@Fabrice, le point est corrigé dans la beta du jour.

@vedrine, par contre je n’ai pas corrigé ce point si tu peux/veux le faire.

Et avec ces corrections du jour, nous devrions être bien pour la sortie de la nouvelle version du core jeedom v4.4 jeudi prochain.

1 « J'aime »

Bonjour,
Il suffit de supprimer l’unité ou de mettre un espace avant ou après l’unité dans la commande puisqu’il y a le widget pour l’affichage .

Avec l’unité s (espace s)
image

Dans la beta de github, on n’a pas accès à ce changement d’unité. (Chgt fait dans la bdd)

L’interface est un peu cassée ou l’interligne des labels est énorme image
v4.4


v4.3:
image

Je pense que dans la version beta on a corrigé la plupart des problèmes de compatibilité avec Jeedom 4.4 et avec les Livebox 6 et 7.
Mais il reste du travail :

  • Il faudrait que les possesseurs de Livebox 6 et 7 testent et nous signalent ce qui ne marche pas : les commandes pour activer/désactiver et info du Wifi 2.4 et 5 et invité sont elles bien réapparues et les commandes action fonctionnent-elles ? Pour le wifi 6/6E j’ignore comment çà marche et s’il y a des commandes à ajouter. Il faudrait tester aussi tout le reste pour voir si tout est OK. Pour nous aider à corriger si vous trouvez des problèmes il faudrait mettre les logs du plugin en Debug et nous les envoyer en message privé (pas sur le forum, il y a des tas d’infos perso dedans). Si ma ligne passait en XGS-PON je passerai peut-être en abonnement Orange Max avec une livebox 7 malgré l’augmentation de prix pour profiter d’une vitesse vraiment plus grande mais actuellement pour moi qui n’utilise ni les fonctions Routeur, DHCP, … ni le Wifi de la Livebox çà ne vaut pas le coup pour du 2Gb.
  • pour les commandes info en secondes j’ai pris le parti de n’appliquer le widget perso que pour les versions de Jeedom < 4.4. Je connaissais le truc avec un espace mais je trouve que c’est de la bidouille, donc puisque le core a pris le parti de ne pas rendre optionnel le formattage automatique par la fonction autoValueArray (choix que je respecte mais que je désaprouve) je laisse chacun décider s’il préfère changer l’unité en ajoutant un espace et appliquer le widget duree ou pas.
  • Merci de vérifier que le widget deroulant (liste des appels et des équipements) fonctionne correctement en Jeedom V4.4

Bonjour,

Voici ce que donne la bêta installée à l’instant 2024-03-29 12:00:33 :

La liste d’appel fonctionne (mais je n’utilise pas le téléphone, il n’y a que de la merde en France sur nos fixes).

Pas de liste pour les équipements (il faut peut être supprimer et repartir de zéro ?)

J’ai fait un PR sur la beta pour avoir l’aide des paramètres optionnels du widget deroulant.
image

Le paramètre largeur, ne fonctionne pas en 4.4 ni en 4.3.
Dans la capture de Fabrice, la liste des appels devrait occuper toute la largeur de la tuile.
Je regarde.

Edit: Je supprime le paramètre largeur qui ne fonctionne pas. La liste des appels adapte sa largeur à son contenu.
Ca devient:
image

Bonjour et merci pour les MAJ du plugin,
Personnellement je suis en LB6 et j’ai l’état des WIFI qui ne remonte pas correctement.
Je suis en version beta et je viens de faire la dernière MAJ.
Screenshot_6
Screenshot_7

Elle est là mais le widget deroulant ne lui est pas affecté.
image

Le widget deroulant affecté aux commandes avec des hauteurMax différentes:
image
La largeur s’adapte au contenu.

Je ne comprends pas pourquoi, je vais vérifier le code.
Merci pour le patch.

1 « J'aime »

Le souci est que l’on n’a pas accès à la modification de l’unité:


Elle est forcée par le plugin.

Très juste :smiley: mais c’est facile à corriger je vais faire un commit pour çà.

1 « J'aime »