Un petit plus à l’intégration serait d’avoir le jour de la semaine devant la date.
Merci à tous pour vos retours positifs sur l’intégration Ecowatt, ça fait plaisir à lire
C’est une bonne idée oui ! J’ai vu la demande de fonctionnalité:
Pour info, en parallèle moi je travaille déjà depuis un bout de temps sur une intégration avec Enedis pour voir sa consommation électrique dans Gladys (en kWh et en euro).
J’ai un peu de retard car Enedis a sorti une nouvelle version majeure de son API et a déprécié l’API que je venais d’intégrer ( ), et il y a quelques bugs sur le bac à sable de cette API pour l’instant, ce qui retarde mes développements.
Mais ça avance, je suis en discussion avec l’équipe technique Enedis de manière régulière
Pour suivre le sujet Enedis:
Après, cette intégration c’est juste le « résultat » de ta consommation a posteriori, je suis d’accord avec toi, avoir les jours « rouge/blanc/bleu » ça serait super
Mince ! Effectivement c’est dû à la mise à jour Node.js 18 LTS.
Ok, la lib doit avoir un souci à s’installer sur la dernière version de l’image Docker Node 18 Alpine sur certaines archis.
C’est étrange parce que normalement lors du build Docker si une dépendance ne s’installe pas, c’est censé crasher le build… C’est passé entre les mailles du filet, il faut qu’on comprenne pourquoi. ( Cf: Gladys/server/cli/install_service_dependencies.js at master · GladysAssistant/Gladys · GitHub )
Merci pour les logs
Pour info cette librairie (Noble) nous a toujours posé beaucoup de problèmes, originellement on utilisait cette lib pour le bluetooth:
Sauf qu’elle n’est plus maintenue depuis 4 ans, donc quelqu’un a fait un fork qu’on a suivi dans Gladys :
Sauf que ce fork a maintenant 114 issues Github, donc a aussi son lot de problèmes. Il est toujours maintenu, mais pas non plus activement. La codebase doit être vieille et pas agréable à travailler avec ^^
@VonOx Une idée de pourquoi la lib s’installe plus ?
Intéressant oui ! Il faut voir si sur l’image Raspberry Pi OS que l’ont distribue, Gladys a les droits de stopper le système global, je ne pense pas car on a pas accès à « shutdown » du système depuis le container (à tester).
Après pour l’instant peu de votes sur ta demande ^^
Pas bête, j’ai créé une issue, je regarde ça demain (lundi):
Pour l’instant aucune idée
Dans mon image de prod une seule dépendance est installée
EN interactif ça s’install pas non plus ( pas d’erreur ), j’ai du update le package en dernière version ( 1.9.2-15 )
En 1.9.2-15 ça s’installe + c’est fonctionnel ?
Bizarre que ça ne s’installe pas mais qu’il n’y ait pas d’erreur non plus ! C’est une dépendance direct bluetooth-hci-socket ou c’est une peer dependencies ?
Salut VonOx,
Même erreur chez moi.
Mes logs :
2022-12-10T15:44:18+0100 <info> index.js:15 (Object.start) Starting Bluetooth service
2022-12-10T15:44:18+0100 <warn> service.start.js:44 (Service.start) Unable to start service bluetooth Error: Cannot find module '@abandonware/bluetooth-hci-socket'
Require stack:
- /src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/hci.js
- /src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/bindings.js
- /src/server/services/bluetooth/node_modules/@abandonware/noble/lib/resolve-bindings.js
- /src/server/services/bluetooth/node_modules/@abandonware/noble/index.js
- /src/server/services/bluetooth/lib/commands/bluetooth.start.js
- /src/server/services/bluetooth/lib/index.js
- /src/server/services/bluetooth/index.js
- /src/server/services/index.js
- /src/server/lib/index.js
- /src/server/index.js
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:995:15)
at Function.Module._load (node:internal/modules/cjs/loader:841:27)
at Module.require (node:internal/modules/cjs/loader:1061:19)
at require (node:internal/modules/cjs/helpers:103:18)
at Object.<anonymous> (/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/hci.js:6:28)
at Module._compile (node:internal/modules/cjs/loader:1159:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
at Module.load (node:internal/modules/cjs/loader:1037:32)
at Function.Module._load (node:internal/modules/cjs/loader:878:12)
at Module.require (node:internal/modules/cjs/loader:1061:19)
at require (node:internal/modules/cjs/helpers:103:18)
at Object.<anonymous> (/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/bindings.js:7:13)
at Module._compile (node:internal/modules/cjs/loader:1159:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
at Module.load (node:internal/modules/cjs/loader:1037:32)
at Function.Module._load (node:internal/modules/cjs/loader:878:12)
at Module.require (node:internal/modules/cjs/loader:1061:19)
at require (node:internal/modules/cjs/helpers:103:18)
at module.exports (/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/resolve-bindings.js:13:12)
at Object.<anonymous> (/src/server/services/bluetooth/node_modules/@abandonware/noble/index.js:2:49)
at Module._compile (node:internal/modules/cjs/loader:1159:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
at Module.load (node:internal/modules/cjs/loader:1037:32)
at Function.Module._load (node:internal/modules/cjs/loader:878:12)
at Module.require (node:internal/modules/cjs/loader:1061:19)
at require (node:internal/modules/cjs/helpers:103:18)
at BluetoothManager.start (/src/server/services/bluetooth/lib/commands/bluetooth.start.js:16:20)
at Object.start (/src/server/services/bluetooth/index.js:16:28)
at Service.start (/src/server/lib/service/service.start.js:33:21) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/hci.js',
'/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/hci-socket/bindings.js',
'/src/server/services/bluetooth/node_modules/@abandonware/noble/lib/resolve-bindings.js',
'/src/server/services/bluetooth/node_modules/@abandonware/noble/index.js',
'/src/server/services/bluetooth/lib/commands/bluetooth.start.js',
'/src/server/services/bluetooth/lib/index.js',
'/src/server/services/bluetooth/index.js',
'/src/server/services/index.js',
'/src/server/lib/index.js',
'/src/server/index.js'
]
}
C’est une dépendance de noble.
Fonctionnel j’en sais rien j’ai pas de ble pour tester.
Tu peux lancer un build sur ta branche et mettre le tag docker ici ?
Si quelqu’un qui a du matériel peut faire un test ensuite pour voir si ça résout le souci ! Si c’est bon, je mergerais ta PR et je lancerais un build
Merci @VonOx
Est ce que quelqu’un peut faire faire un test réel avec cette image et voir si le Bluetooth est bon ? Si oui, dites le et je déploie ça au plus vite !!
Pouvoir arrêter le raspberry depuis Gladys serait un plus.
Mais dans le cas de coupure de courant, je crois plus que je vais me tourner vers un onduleur, car j’ai toujours des éléments à contrôler (détecteur d’incendie, température frigo, température chaudière), le seul souci étant que sans électricité les relais Zigbee2mqtt vont tomber donc pas certain que les informations vont remonter.
8 messages ont été scindés en un nouveau sujet : Image Node 18 : Tests intégration Bluetooth
En effet car pour paris on est resté au vert
Ca me semble aussi le plus judicieux
Pour information, le bug de l’intégration Bluetooth a été isolé et corrigé par @VonOx !
Merci à @VonOx pour le fix, @Psoy, @gaetanb76 et @spenceur pour les tests
J’ai lancé un build (Gladys Assistant v4.13.2) qui devrait être prêt dans environ 1 heure.
Je confirme que Gladys Assistant v4.13.2 est disponible et corrige le bug Bluetooth !
Comme d’habitude, vos instances vont se mettre à jour automatiquement
hello,
nouvel version 4.13.2 arrivee sur mon serveur.
tout semble ok!
ecowatt, mqtt…
et surtout bluetooth : service demarré et il detecte mes appareils BL
top.
a suivre
idem pour
merci
Hello ?
J’ai bien le version v4.13.2 de Gladys mais pas de trace de Ecowatt !
bonjour @Doudy
tu as été dans ton dashboard pour créer une nouvelle box? quand tu sélectionnes la box un menu déroulant s’ouvre et ecowatt est tout en bas de liste.
Comme la dit @Psoy il faut ajouter une box dans un tableau de bord