Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Domotique] Un assistant purement local

Connecter l'assistant à la box domotique sans ouvrir sa box à internet

    5 novembre 2021 à 17:16:27

    Bonjour bonjour!

    Voilà en ce moment je me lance dans la domotique, pour apprendre, parce que c'est drole et pratique. J'ai commencé à faire de petites installations sur mesure. J'évite les solutions propriétaires quand je peux (par exemple je remplace le software sonoff de mes prises par Tasmota, etc.) et je connecte le tout à ma box domotique : Home Assistant (HA tourne H24 sur une raspberry).

    J'essaie d'éviter au maximum de transformer mon réseau en passoire, je contrôle mes parefeux, et j'ai limité la redirection de ports de mes routeurs à l'utilisation de mon VPN uniquement. (Comme ça je peux me connecter à mon réseau local depuis l'exterieur, seulement en passant par le VPN).

    Je souhaiterais inclure à la domotique un assistant comme Google Assistant ou Alexa (préférablement Alexa je pense) pour contrôler à la voix les différents outils connectés. Seulement j'ai croisé que 2 solutions pour relier un assistant à HA:

    • la solution payante: un abonnement dans HA pour avoir une connection cloud sécurisée. L'avantage c'est une compatibilité directe avec les services cloud des différents assistants. Les désavantages c'est que 1) ça ouvre d'une nouvelle façon un accès vers le réseau local. 2) c'est payant
    • la solution gratuite: la création d'un projet de développement dans le service associé à l'assistant (Google ou AWS) + la redirection de port (https) vers la box domotique (via un DNS). Bien que ça soit gratuit et plus compliqué à mettre en place (ça me va parfaitement puisqu'on peut personnaliser), cela crée encore une nouvelle façon d'atteindre le réseau (bien moins sécurisée que la première) et faut parfois réactiver le projet tous les X jours. (Note: j'ai vu nul part la possibilité de remplacer une url https qui renvoie vers la box domotique par une adresse ip locale)
      Y'a pas mal de tuto YouTube qui propose cette solution d'ailleurs, comme c'est gratuit.

    ça m'embête d'ourvir mon réseau à Internet par ma box domotique, alors que la finalité c'est pas plus compliqué que relier ma box à un assistant sur le même réseau.
    Ce que je veux dire par là c'est qu'habituellement on peut avoir deux ordinateurs sur le même réseau qui communiquent localement et qui ont accès à internet par leur navigateur, sans avoir à ouvrir ses ports pour qu'on puisse accéder à l'ordinateur directement depuis le net... alors pourquoi l'assistant ne peut pas communiquer localement avec la box domotique?

    Je sais pas ce que je rate dans la compréhension du fonctionnement du réseau avec un assistant. Mais si je me trompe ou si vous avez des solutions à proposer, n'hésitez pas!

    J'attends de trouver une solution avant d'acheter un assistant, au cas où seul un d'entre eux me permettrait de le faire...

    Merci d'avance!

    • Partager sur Facebook
    • Partager sur Twitter
    Si je suis tête en l'air, c'est par habitude de viser le sommet
      6 novembre 2021 à 9:13:45

      Hello !

      Ça a l'air très sympa comme projet !

      J'ai pas bien compris pour l'option deux pourquoi tu aurais besoin d'ouvrir un port. Tu veux héberger un site pour controller ton home assistant c'est ça ? Ou bien c'est pour communiquer avec les API d'aws ?

      Au passage, si tu veux rester sur du non propriétaire, tu peux checker mycroft.ai qui est un assistant open source.

      Bon courage !

      • Partager sur Facebook
      • Partager sur Twitter
        6 novembre 2021 à 22:00:12

        Hello !

        Merci pour ta réponse :D

        FantasMaths a écrit:

        J'ai pas bien compris pour l'option deux pourquoi tu aurais besoin d'ouvrir un port. Tu veux héberger un site pour controller ton home assistant c'est ça ? Ou bien c'est pour communiquer avec les API d'aws ?

        Alors dans l'option 2, par exemple avec Google Assistant/Home, il faut aller sur Google Actions et créer un projet (c'est un service qui permet d'étendre l'utilisation de l'assistant pour les développeurs (y'a l'équivalent avec Alexa pour AWS). Et en fait le but est de créer un rappel HTTP (webhook en anglais) qui va traiter les commandes à l'assistant liées aux contrôles de la domotique. Donc si on demande d'éteindre la lumière, la demande passera par Google Actions et sera automatiquement renvoyé vers l'URL indiquée dans le webhook (ici l'url de Home Assistant). Seulement comme ça vient de Google Actions (donc depuis Internet), on est obligé de fournir au webhook une URL atteignable depuis le web, et donc d'ouvrir des ports. (après il suffit de régler les systèmes d'authentification aux services Google, et de rajouter les paquets pour traiter les demandes venant du webhook sur HA). C'est un peu compliqué à expliquer, j'espère que j'ai été suffisamment clair...

        Mais du coup moi je voudrais 1) soit que la commande soit traité localement : que l'assistant n'ait pas à passer par un service web et communique directement avec la box domotique ; 2) soit que le traitement de la commande soit déporté (traitée par les serveurs Google par exemple) mais que la réponse soit redonnée à l'assistant qui lui va discuter avec la box depuis le réseau local. Peu m'importe la solution tant que je n'ai pas à ouvrir mon réseau local à internet par le biais de ma box domotique.

        Encore dans la solution 1 c'est intégré, ça passe par le cloud et c'est plus ou moins sécurisé. Le service connait à tout moment ce que je demande à l'assistant (ça c'est déjà pas ouf) mais en plus ça finit quand même par ouvrir le réseau au cloud. Après c'est ptet moi qui suis un peu psychorigide sur qui a droit de parler à mon réseau depuis l'extérieur mais bon... vaut mieux être trop prudent que pas assez, non? :lol:

        FantasMaths a écrit:

        Au passage, si tu veux rester sur du non propriétaire, tu peux checker mycroft.ai qui est un assistant open source.

        J'ai checké mycroft.ai, c'est pas mal du tout, la solution est open-source, le traitement de la commande est local, et c'est supporté par HA. Evidemment c'est pas aussi puissant et joli que les solutions GAFA, mais ça a plein d'avantages quand même! Je pense que je vais partir sur ça pour l'instant c'est une super idée :D merci de m'avoir proposé ça, j'étais à deux doigts de commencer à construire et coder mon propre assistant haha :lol: je vais garder ce projet pour une prochaine fois quand j'aurais plus de temps, plutôt que de le faire précipitamment et mal ^^

        Je laisse ouvert à d'autres propositions si d'autres Zéros ont des idées :)

        • Partager sur Facebook
        • Partager sur Twitter
        Si je suis tête en l'air, c'est par habitude de viser le sommet
          6 novembre 2021 à 23:09:01

          Haaaaaa je comprends mieux l'option 1 ;) je suis du même genre pour la sécu, autant en ouvrir le moins possible !

          Content d'avoir pu aider pour Mycroft :)

          • Partager sur Facebook
          • Partager sur Twitter

          [Domotique] Un assistant purement local

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown