Vos devices HA dans Google Home, Alexa ou Apple Home en moins de 5 minutes!

Salut
Je dirai que c’est logique pour les automatisations. Elles ne font pas partie des domaines exposés.

2 « J'aime »

Et une automatisation a besoin d’un trigger, contrairement à un script.
Même directement sur HA on ne lance pas une automatisation sans trigger

2 « J'aime »

oui c’est peut être parceque j’ai pris l’habitude d’utiliser une button-card et mettre en tap_action un automation.trigger qui déclenche une automation. En fait je sais ce soucis est plus du de mon fait à une utilisation peut être mauvaise d’HA, je devrais faire autrement ^^

oui tout a fait, DuckDNS, et Nginx Proxy Manager pour ne pas avoir à ouvrir trop de ports sur mon routeur.
Pourtant tout fonctionne bien, la config est bonne, et parfois ça marche, mais régulièrement je me prend un STOP par Google Home qui me dit qu’elle n’a pas accès a HA. Je dois lui répéter la commande plusieurs fois jusqu’a ce que ça marche (parceque je n’abandonne pas et je gagne toujours face à elle :wink: :laughing: :laughing:)
Je sais que duckDNS a quelques soucis de son coté aussi mais bon, si passer par matter règle mon soucis ça sera parfait :slight_smile:

Salut,
j’avais le même souci avec duckdns et je suis passé sur un NDD chez OVH, plus de soucis depuis.
Ce n’est pas gratuit, mais ça fonctionne très bien. ( 5€/an )

Chez moi aussi, MatterHub remplace désormais mon inter-connexion HA <> Google Home, qui 2x sur 3 répondait « Home Assistant n’est pas disponible pour le moment » (et oui, j’utilise aussi DuckDNS et Nginx :wink: )

J’y expose mes volets, et ça fonctionne à merveille.

Je voudrais également y exposer ma porte de garage et mon portail.
Le hic c’est que ces 2 devices sont également de type « cover ».
Du coup quand je dis « OK Google ouvre les volets », il m’ouvre aussi le portail et le garage ! Pas glop … :open_mouth:

Une idée comment dissocier le tout ?

Tu peux passer par une routine GH
Quand tu dis ouvre les volets
Alors ouvrir volet 1, volet 2…

C’est ce que j’avais avant, avec l’interconnexion HA<>GH, une (plusieurs) routines propres à GH, avec plusieurs phrases de déclenchement, avec différents mots clés… Assez fastidieux à mettre en place.
Idéalement, je ne voudrais plus rien paramétrer « en dur » dans GH, et que les choses se fassent « intelligemment ».

Tu fais un template avec tes commandes et le bon type que tu expose sur GH à la place.

Bien vu !
J’ai créé un template de type lock, qui « copie » l’état de mon autre template de type cover pour le garage.
Il remonte bien dans GoogleHome, et est actionnable depuis l’application mobile :+1:
Par contre, à la voix, il bloque : « Je ne peux pas déverrouiller [garage] à distance »
Il n’y aurait pas une histoire de code de sécurité ou quelque chose du genre ? (et qui ne serait-pas encore implémenté dans MatterHub ?)

(Sinon, en attendant j’ai fait un template de type switch. Là, ça fonctionne sans soucis à la voix. C’est juste le retour vocal qui n’est pas approprié « OK, j’allume [garage] »)

1 « J'aime »

Mes cover je peux aussi les allumer :rofl:
Lorsque je dis allume la cuisine il ou mvre aussi les volets

2 « J'aime »

Ca a été corrigé hier, tu peux remettre ton entité cover porte garage, plus besoin de passer par une entité lock.

Par contre depuis cet update, les positions et status des covers ne s’affichent plus dans google home. Cela dit ca marche qd meme avec l’assistant.

Salut à tous,

Je suis nouveau dans le monde HA, et l’intégration vocale est pour moi nécessaire (enfin… c’est indispensable pour le WAF).

J’ai donc lu ce post et, arrêtez moi si je me trompe mais ca permet ceci :
Devices <—> HA <—> matterbridge <—> Google Home (ou autre assistant)

Donc on peut actionner des choses ou remonter des infos présentes dans HA depuis son enceinte favorite. Pour ça, l’addon se fait passer pour un pont matter.
C’est génial car simple/économique par rapport aux autres solutions.

J’ai donc installé l’addon sur HAOS, configuré un pont, scanné le QRcode, validé tout… et j’ai une page de conf qui m’indique que tout a l’air bien.

Ensuite j’ai ajouté des « étiquettes » nommées « matterbridge » à certains devices (z2m): un capteur de température, un volet, un capteur de porte, un switch.
EDIT: Il faut appliquer les labels a des entitées si j’ai bien compris ? Mais ca n’a rien changé pour moi, toujours KO.

Donc ils devraient remonter dans la liste des équipements ? Or elle reste désespérément vide. J’ai oublié une étape ?

Il faut redémarrer l’addon dans HA.
Et les devices vont apparaître dans la liste de l’addon, puis dans Google Home quelques instants après.

2 « J'aime »

Merci pour ta réponse, malheureusement j’avais déjà fait un full reboot (dans le doute) et pas mieux. J’ai tenté ce matin de redémarrer l’addon mais pareil.

Je vais me plonger dans les logs. J’ai peut être une piste: j’accède a mon HA depuis son adresse externe (https://blabla.truc.fr) et quand j’ouvre l’interface web de l’addon je suis obligé de changer pour qu’il utilise l’ip locale de la machine. C’est peut être un premier point à traiter.

Il faut mettre le label sur l’entité. Pas sur l’appareil.

Capture d'écran 2024-11-22 200544

En effet, le label doit être mis sur une entité. Mais le soucis majeur que j’avais, c’est le nom du label.

Pour une raison que je ne sais pas encore expliquer, le label est « matterbridge », alors que c’est affiché « GoogleAssistant » dans mes labels… Mais j’ai du louper une partie du cours sur HA lors de mon avancée enthousiaste !

Mais ça y est, ca remonte ! le soucis était donc bien l’interface chaise / clavier, comme souvent en informatique !

3 « J'aime »

Bonsoir à tous,

Question très technique, est-ce quelqu’un arrive à faire fonctionner cet Addon dans une configuration avec de multiple vlan bien séparés? (Dont le wifi est sur de l’unifi et le routeur est un pfsense)

Si je pige bien le truc il faut:
IPv6 activé sur HA;
IPv6 sur les réseau wifi d’alexa/Google home;
La réflexion mdns d’activé entre ces deux vlan.

On est bien d’accord que ça s’arrête là ?
Pas besoins que les entités/device soient sur un réseau IPv6?
La com ne se fait bien qu’entre l’addon HA et les enceintes connectées.

Ps: les bornes unifi sont sur un switch manageable, en mode vlan trunk.
Pareil y a t’il un truc particulier à faire pour l’ipv6 sur les ports du switch?

bonjour
j’ai installer l’addon, creer un pont, et j’ai reussi ale connecter à google home sur mon téléphone. Le hub apparait bien ainsi que les entités avec le label matterthub, mais sur mon téléphone le hub et l’entité en question sont tjs en hors connexion.
(nota : j’ai un ndd via synology)
Vous auriez une idée ?
les log de l’addon

  QR code URL: https://project-chip.github.io/connectedhomeip/qrcode.html?data=MT:Y.K90KCZ16C.-R57N00
[ 2024-11-23T16:57:47.111Z ] [ INFO  ] [ matter.js / PaseServer                             ]: Received pairing request from udp://fe80::98f6:faff:fe49:37b1%enp0s18:37251.
[ 2024-11-23T16:57:47.217Z ] [ INFO  ] [ matter.js / PaseServer                             ]: Session 4514 created with udp://fe80::98f6:faff:fe49:37b1%enp0s18:37251.
[ 2024-11-23T16:57:47.230Z ] [ INFO  ] [ matter.js / InsecureSession                        ]: End insecure session insecure/12647751284973067126
[ 2024-11-23T16:57:47.297Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.armFailSafe online#de5ec51@0 expiryLengthSeconds: 120 breadcrumb: 1
[ 2024-11-23T16:57:47.452Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.certificateChainRequest online#de5ec5d@0 certificateType: 1
[ 2024-11-23T16:57:48.001Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.armFailSafe online#de5ec62@0 expiryLengthSeconds: 120 breadcrumb: 1
[ 2024-11-23T16:57:48.053Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.setRegulatoryConfig online#de5ec67@0 newRegulatoryConfig: 2 countryCode: FR breadcrumb: 1
[ 2024-11-23T16:57:48.069Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.certificateChainRequest online#de5ec69@0 certificateType: 2
[ 2024-11-23T16:57:48.090Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.attestationRequest online#de5ec6b@0 attestationNonce: a479586ae215d0440000019359f54a5e01220b51431dac0fb754305f69558d38
[ 2024-11-23T16:57:48.109Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.csrRequest online#de5ec6d@0 csrNonce: 817ac998b993d5b10000019359f54a5f01220b5143cf7d2887f3cc3279332f12 isForUpdateNoc: false
[ 2024-11-23T16:57:48.747Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.armFailSafe online#de5ec70@0 expiryLengthSeconds: 1 breadcrumb: 1
[ 2024-11-23T16:57:49.748Z ] [ INFO  ] [ matter.js / FailsafeContext                        ]: Failsafe timer expired, Reset fabric builder.
[ 2024-11-23T16:57:49.748Z ] [ INFO  ] [ matter.js / SecureSession                          ]: Register Session secure/4514 to close when exchange is ended.
[ 2024-11-23T16:57:53.378Z ] [ INFO  ] [ matter.js / PaseServer                             ]: Received pairing request from udp://fe80::98f6:faff:fe49:37b1%enp0s18:37251.
[ 2024-11-23T16:57:53.444Z ] [ INFO  ] [ matter.js / PaseServer                             ]: Session 4515 created with udp://fe80::98f6:faff:fe49:37b1%enp0s18:37251.
[ 2024-11-23T16:57:53.457Z ] [ INFO  ] [ matter.js / InsecureSession                        ]: End insecure session insecure/9374244448614462320
[ 2024-11-23T16:57:53.517Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.armFailSafe online#32cdbd5@0 expiryLengthSeconds: 120 breadcrumb: 1
[ 2024-11-23T16:57:53.666Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.certificateChainRequest online#32cdbe1@0 certificateType: 1
[ 2024-11-23T16:57:54.131Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.armFailSafe online#32cdbe6@0 expiryLengthSeconds: 120 breadcrumb: 1
[ 2024-11-23T16:57:54.178Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.setRegulatoryConfig online#32cdbeb@0 newRegulatoryConfig: 2 countryCode: FR breadcrumb: 1
[ 2024-11-23T16:57:54.197Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.certificateChainRequest online#32cdbed@0 certificateType: 2
[ 2024-11-23T16:57:54.211Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.attestationRequest online#32cdbef@0 attestationNonce: c5113250a174568f0000019359f5626001220b51439d90ca10cd43913184d59e
[ 2024-11-23T16:57:54.232Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.csrRequest online#32cdbf1@0 csrNonce: dc345d154f1631280000019359f5626001220b5143113a0e7f25e6685a3b326a isForUpdateNoc: false
[ 2024-11-23T16:57:55.561Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.addTrustedRootCertificate online#32cdbf3@0 rootCaCertificate: 153001010124020137032c840255532c0706476f6f676c652c010b4d617474657220526f6f74271401000000feffffff1826047fd2432926057f945be537062c840255532c0706476f6f676c652c010b4d617474657220526f6f74271401000000feffffff18240701240801300941045b37df6549c20dc8d722a6b8acb660a8a764ce7baf6c6c224f7ee84349684ad7d809ff650033d1527dcf1fbaac6a9c3ad8b41edac909f7b5c760fd542c892375370a350129012402011824026030041472c201f7571913b348ca00ca7b45f4774668c97e30051472c201f7571913b348ca00ca7b45f4774668c97e18300b4065164b166adff18c15610a8ce91bd703e9c1f677b711ce133505152df0da15111675ac5591cee786851cdd9efdad296674bebcb2a3a3209bcde7b309db552c6f18
[ 2024-11-23T16:57:55.586Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.operationalCredentials.addNoc online#32cdbf5@0 nocValue: 15300110649df87293ddaa6fcc4cab8c0ad7927324020137032c840255532c0706476f6f676c652c010f4d61747465722075732d6561737431271302000000feffffff182604fbb0d42e260513cc6c5437062715497e0d494555692226113901eaa31824070124080130094104d3f32a3c6369f77f0c85815716d4100ac775b5269cafd722ff9b54a6013e7f47b5b1675f7d8932dca299729a8b655589d1ac5f01e016c5b0131dbe2f8f529979370a3501280118240201360304020401183004141e5f215069705b0e9433d9f76149f6c37d0040c830051481420662831a8a83e7247bff47de6cdb19883a2918300b409dc07c9aa97e4d781f0d1eddb3957b03f890a991acb7209dbe0d1a282b80b0fae471577760d1d2a026f151705ce13cbd6b0ef811ed1cf98ca56cd2030c8d02f218 icacValue: 153001010224020137032c840255532c0706476f6f676c652c010b4d617474657220526f6f74271401000000feffffff18260440d34329260540955be537062c840255532c0706476f6f676c652c010f4d61747465722075732d6561737431271302000000feffffff1824070124080130094104edb9dce05aaa200d89535964b9ee05e874a3f9cd4665dd7905879864efb091b8b485ab54cfc31de20b1c2d91f78786468ac00c24a13423e5a31b1eae6b0a93c6370a350129012402001824026030041481420662831a8a83e7247bff47de6cdb19883a2930051472c201f7571913b348ca00ca7b45f4774668c97e18300b4008767394a59c29729a7464f3bf42e2e4d343ff13f90d7aa94eb5aa9cfb67c202356fb5aa0af4fc478117893421f0c5779ea882abd650fa18c168246bfc0e13a218 ipkValue: d4d02050dcdd651942a5649e0e81510a caseAdminSubject: 18446744060824715265 adminVendorId: 24582
[ 2024-11-23T16:57:55.589Z ] [ INFO  ] [ matter.js / DeviceCommissioner                     ]: Announce done fabric: 2479606825910894153 fabricIndex: 1
[ 2024-11-23T16:57:55.589Z ] [ INFO  ] [ matter.js / DeviceCommissioner                     ]: Announce done fabric: 2479606825910894153 fabricIndex: 1
[ 2024-11-23T16:57:55.589Z ] [ INFO  ] [ matter.js / DeviceCommissioner                     ]: Announce done fabric: 2479606825910894153 fabricIndex: 1
[ 2024-11-23T16:57:55.589Z ] [ INFO  ] [ matter.js / DeviceCommissioner                     ]: Announce done fabric: 2479606825910894153 fabricIndex: 1
[ 2024-11-23T16:57:55.612Z ] [ INFO  ] [ matter.js / Operationa~edentials                   ]: addNoc success, adminVendorId 24582, caseAdminSubject 18446744060824715265
[ 2024-11-23T16:57:55.613Z ] [ INFO  ] [ matter.js / AccessControlServer                    ]: ACL updated, updating ACL manager { fabricIndex: 1, privilege: 5, authMode: 2, subjects: [ 18446744060824715265 ], targets: null } { fabricIndex: 1, privilege: 5, authMode: 2, subjects: [ 18446744060824715265 ], targets: null }
[ 2024-11-23T16:57:58.139Z ] [ INFO  ] [ matter.js / CaseServer                             ]: Received pairing request from udp://fe80::98f6:faff:fe49:37b1%enp0s18:37251
[ 2024-11-23T16:57:58.189Z ] [ INFO  ] [ matter.js / CaseServer                             ]: session 4516 created with udp://fe80::98f6:faff:fe49:37b1%enp0s18:37251 for Fabric 00000000A3EA0139(index 1) and PeerNode 00000000D9985143 with CATs 65537
[ 2024-11-23T16:57:58.202Z ] [ INFO  ] [ matter.js / InsecureSession                        ]: End insecure session insecure/10440192548227577648
[ 2024-11-23T16:58:04.672Z ] [ INFO  ] [ matter.js / Behavior                               ]: Invoke 363519c7d81640f39d9ea1d8eebebc46.generalCommissioning.commissioningComplete online#8cdb946@d9985143 (no payload)
[ 2024-11-23T16:58:04.673Z ] [ INFO  ] [ matter.js / DeviceCommissioner                     ]: All announcements stopped
[ 2024-11-23T16:58:04.673Z ] [ INFO  ] [ matter.js / SecureSession                          ]: Register Session secure/4515 to close when exchange is ended.
[ 2024-11-23T16:58:04.674Z ] [ INFO  ] [ matter.js / GeneralCom~erHandler                   ]: Commissioning completed on fabric #2479606825910894153 as node #2750021945.

edit : j’ai voulu tout reinstaller, et maintenant impossible d’ajouter le pont matter a google home, quand je scanne le qrcode généré par l’adon, google home me dit « vous avez besoin d’un hub compatible avec Matter… » :frowning:

Bonsoir,

J’ai ce code dans Home-Assistant-Matter-Hub, qui me permet d’ouvrir mes brises-soleil. Le souci, c’est que ça m’ouvre aussi mes portes de garage et mon volet de porte d’entrée. J’ai lu plus haut dans ce post qu’il fallait faire un template.
Comment je dois intégrer ça dans ce code ?

{
  "filter": {
    "include": [
      {
        "type": "pattern",
        "value": "cover.bs_cuisine"
      },
      {
        "type": "pattern",
        "value": "cover.bs_sal_a_m_gauche"
      },
      {
        "type": "pattern",
        "value": "cover.bs_sal_a_m_terr"
      },
      {
        "type": "pattern",
        "value": "cover.bs_salon_gauche"
      },
      {
        "type": "pattern",
        "value": "cover.bs_salle_a_m_droit"
      },
      {
        "type": "pattern",
        "value": "script.ouvrir_volets_bas"
      },
      {
        "type": "pattern",
        "value": "script.fermer_volets_bas"
      },
      {
        "type": "pattern",
        "value": "script.arreter_volets_bas"
      }
    ],
    "exclude": []
  }
}

voici le script

ouvrir_volets_bas:
  alias: Ouvrir volets bas
  sequence:
    - service: cover.open_cover
      target:
        entity_id:
          - cover.bs_cuisine
          - cover.bs_sal_a_m_gauche
          - cover.bs_sal_a_m_terr
          - cover.bs_salon_gauche
          - cover.bs_salle_a_m_droit

fermer_volets_bas:
  alias: Fermer volets bas
  sequence:
    - service: cover.close_cover
      target:
        entity_id:
          - cover.bs_cuisine
          - cover.bs_sal_a_m_gauche
          - cover.bs_sal_a_m_terr
          - cover.bs_salon_gauche
          - cover.bs_salle_a_m_droit

arreter_volets_bas:
  alias: Arrêter volets bas
  sequence:
    - service: cover.stop_cover
      target:
        entity_id:
          - cover.bs_cuisine
          - cover.bs_sal_a_m_gauche
          - cover.bs_sal_a_m_terr
          - cover.bs_salon_gauche
          - cover.bs_salle_a_m_droit

incliner_volets_bas:
  alias: Incliner volets bas
  fields:
    tilt_position:
      name: Position d'inclinaison
      description: Pourcentage d'inclinaison des lames (0-100)
      example: "50"
  sequence:
    - service: cover.set_cover_tilt_position
      target:
        entity_id:
          - cover.bs_cuisine
          - cover.bs_sal_a_m_gauche
          - cover.bs_sal_a_m_terr
          - cover.bs_salon_gauche
          - cover.bs_salle_a_m_droit
      data:
        tilt_position: "{{ tilt_position }}"

Merci

Bonjour,
J’ai testé cet addon avec Alexa et j’arrive enfin à connecter Home assistant et Alexa (après des essais infructueux avec la skill personnalisée) ! Super.
Je ne connais pas le fonctionnement de matter et je me pose maintenant une question :
J’utilise « HomeKit Bridge » sous Home assistant pour Siri avec mes appareils Apple mais ça fait peut-être deux process de lancés pour rien.
Le module me dit qu’il est appairé avec Alexa et n’affiche plus les codes d’appairage, il ne semble pas prévoir de faire 2 appairage en même temps. Peut-on utiliser le même « matterbridge » pour les deux ? Faut-il lancer 2 processus matter en parallèle ? Comment ? Plus intéressant que HomeKit lancé en même temps ?