🚀 Matter & Gladys Assistant : C’est parti!

Je suis en train de tester ton image mais j’ai un soucis pour dĂ©tecter Matterbridge.
Dans les logs gladys j’ai :

2025-04-18T17:11:24+0200 <info> index.js:26 (Object.start) Matter started

2025-04-18 17:11:24.871 DEBUG  MdnsScanner          Adding operational device 35EC047701FDF413-0128075BC537D05C._matter._tcp.local in cache (interface ovs_eth0, ttl=120) with TXT data: SII: 500 SAI: 300 SAT: 4000 T: 0 ICD: 0

2025-04-18 17:11:24.873 DEBUG  MdnsScanner          Added 1 IPs for operational device 35EC047701FDF413-0128075BC537D05C._matter._tcp.local to cache (interface ovs_eth0): type: udp ip: 192.168.1.xxx port: 58410

@pierre-gilles tu peux m’éclairer ?
Pour info mon Matterbridge est sur une autre IP (yyy) et sur le port 8283.

AprĂšs check des logs, j’ai bien plus d’info (des ports diffĂ©rents, de l’ipv6, etc.), je t’envoie ça en direct si tu es d’accord.

EDIT : j’ai pu rĂ©cupĂ©rer un peu plus d’info Ă  partir du dĂ©marrage du service

2025-04-18T17:59:36+0200 <info> index.js:18 (Object.start) Starting Matter service

2025-04-18T17:59:36+0200 <info> index.js:24 (Object.start) Matter is enabled, starting...

2025-04-18T17:59:36+0200 <info> matter.init.js:17 (MatterHandler.init) Matter.init: storagePath: /var/lib/gladysassistant/matter

2025-04-18 17:59:36.733 DEBUG  NodejsChannel        Socket created and bound remoteAddress: undefined:undefined localAddress: :::34569

2025-04-18 17:59:36.733 DEBUG  NodejsChannel        Socket created and bound remoteAddress: undefined:34569 localAddress: 0.0.0.0:34569

2025-04-18 17:59:36.734 WARN   Commission~ontroller BLE is not supported on this platform

2025-04-18 17:59:36.742 INFO   CertificateAuthority Loaded stored credentials with ID 0

2025-04-18 17:59:36.742 INFO   MatterController     Creating new fabric

2025-04-18 17:59:36.751 DEBUG  Fabric               FabricBuilder setOperationalCert: nodeId=15793203375871523453, fabricId=1, caseAuthenticatedTags=undefined

2025-04-18 17:59:36.760 DEBUG  DeviceAdvertiser     Announcing fabricIndex: 1 fabricId: 1

2025-04-18 17:59:36.775 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: ovs_eth0

2025-04-18 17:59:36.775 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: tun0

2025-04-18 17:59:36.776 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker-e064cf4f

2025-04-18 17:59:36.776 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker-f3495583

2025-04-18 17:59:36.777 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker0

2025-04-18 17:59:36.777 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker-b6cf5548

2025-04-18 17:59:36.778 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker9338364

2025-04-18 17:59:36.778 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker4a5fb01

2025-04-18 17:59:36.779 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: dockerf2bdb97

2025-04-18 17:59:36.779 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker5556e90

2025-04-18 17:59:36.780 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: dockereaeceda

2025-04-18 17:59:36.781 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker0b3851b

2025-04-18 17:59:36.782 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker9e42dee

2025-04-18 17:59:36.782 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker9713203

2025-04-18 17:59:36.783 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker7e9e39f

2025-04-18 17:59:36.784 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker2e58836

2025-04-18 17:59:36.784 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker4be77fa

2025-04-18 17:59:36.785 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker777be96

2025-04-18 17:59:36.786 DEBUG  MdnsBroadcaster      Announcement Generator: Fabric id: 35EC047701FDF413-DB2CBACB5C527A7D qname: 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local port: 34569 interface: docker6059a87

2025-04-18T17:59:36+0200 <info> matter.init.js:36 (MatterHandler.init) Matter controller started

2025-04-18T17:59:36+0200 <info> index.js:26 (Object.start) Matter started

2025-04-18 17:59:36.837 DEBUG  MdnsScanner          Adding operational device 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local in cache (interface ovs_eth0, ttl=120) with TXT data: SII: 500 SAI: 300 SAT: 4000 T: 0 ICD: 0

2025-04-18 17:59:36.838 DEBUG  MdnsScanner          Added 1 IPs for operational device 35EC047701FDF413-DB2CBACB5C527A7D._matter._tcp.local to cache (interface ovs_eth0): type: udp ip: 192.168.1.xxx port: 34569

@mutmut Comment as-tu lancé Gladys? Tu es bien en network=host ?

@mutmut je voulais ĂȘtre sĂ»r que tout marche donc j’ai fais un test sur mon mini-PC de dĂ©veloppement chez moi, et ça marche bien !

J’ai lancĂ© Gladys de cette façon :

sudo docker run -d \
--log-driver json-file \
--log-opt max-size=10m \
--cgroupns=host \
--restart=always \
--privileged \
--network=host \
--name gladys \
-e NODE_ENV=production \
-e SERVER_PORT=80 \
-e TZ=Europe/Paris \
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
-v /dev:/dev \
-v /run/udev:/run/udev:ro \
gladysassistant/gladys:matter-integration

(C’est juste le docker run du site modifiĂ© avec la bonne image)

Ensuite, j’ai lancĂ© matterbridge comme ça :

sudo docker run --name matterbridge \
  -v /root/matterbridge/docker_data/Matterbridge:/root/Matterbridge \
  -v /root/matterbridge/docker_data/.matterbridge:/root/.matterbridge \
  --network host --restart always -d luligu/matterbridge:latest

(Le volume /root/matterbridge/docker_data bien-sĂ»r tu le modifie par le path local sur ton systĂšme), chez moi l’utilisateur est « root Â» donc je crĂ©Ă© juste un dossier matterbridge:

Ensuite dans l’interface de Matterbridge (L’URL est dans les logs de Matterbridge, chez moi c’est http://192.168.0.99:8283/), je retrouve le pairing code:

Je le copie colle dans Gladys :

Et ensuite j’ai bien tous les appareils :

@Terdious J’ai repris le JSON que tu m’avais envoyĂ© pour intĂ©grer tous tes appareils, et j’ai remarquĂ© qu’il y avait un capteur de tempĂ©rature :eyes:

Résultat : intégré en 5 minutes, tests compris (et sans IA :smile:)

:point_right: Voir le commit

Je viens de pousser une nouvelle image Docker avec la prise en charge des capteurs de température.

Pour mettre à jour, comme d’habitude :

sudo docker pull gladysassistant/gladys:matter-integration
sudo docker stop gladys
sudo docker rm gladys

Puis relance le conteneur avec la mĂȘme commande docker run qu’auparavant.

@mutmut Comme ton cas d’usage c’est les volets roulants, je me suis penchĂ© sur les volets roulants dans Matter !

Comme pour tout le reste, c’est assez bien fait et bien documentĂ©.

J’ai poussĂ© une mise Ă  jour de l’image qui gĂšre les volets roulants :slight_smile:

Testé avec Matterbrige mais preneur de testeurs avec du vrai matos :smiley: