Alexa / Controlicz

Forum dédié aux questions concernant la configuration de votre serveur sous Linux
nono212
Messages : 24
Inscription : 03 sept. 2018, 14:15
Localisation : Bruxelles

Re: Alexa / Controlicz

Message par nono212 »

en effet jejedelbarro .J' ai eu le meme probleme .
Maintenant je vois mes objects

Merci a Tous

PS petite remarque pour le tuto :
page 4 je peux pas faire de save car il demande le default endpoint ( qui doit etre introduit plus tard ...)
rimram31
Messages : 659
Inscription : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Alexa / Controlicz

Message par rimram31 »

Sympas vos remerciements, votre aide la plus précieuse sera d'essayer d'utiliser et remonter sur le forum les problèmes rencontrés.

En // je travaille sur une solution skill partagé (et j'ai, peut-être ,trouvé des astuces pour éviter trop de dev et un hébergement). Ca éviterait toutes ces manipulations complexes. A étudier, si ça tient la route, on peut imaginer un projet partagé ou on retroussera tous les manches ;)

Heu, j'aime bien Alexicz .
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
jejedelbarro
Messages : 13
Inscription : 25 avr. 2018, 08:23

Re: Alexa / Controlicz

Message par jejedelbarro »

Je commence a faire quelques essais et il y a des types de devices que je n’arrive pas a decouvrir sous alexa : une ampoule connectee, et un scenario de type groupe. Ca fonctionnait sous controlicz. Une idée ?
rimram31
Messages : 659
Inscription : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Alexa / Controlicz

Message par rimram31 »

jejedelbarro a écrit :Je commence a faire quelques essais ...
Ah intéressant, pas certain d'avoir bien testé les scenes et groupes. Pour les lampes, ce qui m'aiderait serait que tu me donnes les types de devices, idéalement la sortie d'un:

Code : Tout sélectionner

http://.../json.htm?type=devices&rid=nnn
ou nnn est le nro de ton device. Tu peux aussi l'avoir dans la liste de tous les devices avec un:

Code : Tout sélectionner

/json.htm?type=devices&used=true
Je suis parti du code original de madgeni (qu'il a du faire évoluer depuis), le "mapping" device / device "Alexa" est basé sur les types/sub types (https://github.com/rimram31/dz_smarthom ... er.py#L260)
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
Damsee
Messages : 87
Inscription : 26 déc. 2016, 22:21

Re: Alexa / Controlicz

Message par Damsee »

Sans contredire Rimram, tu peux au préalable vérifier les 2 points suivants qui font partie des prérequis :
- Est-ce que ta lumière et ton groupe sont bien dans un plan comme tes autres devices qui fonctionnent ?
- Est-ce ta lumière et ton groupe non reconnus sont bien accessibles par le user que tu as configuré dans configdz.json ?

Si ces 2 points sont vérifiés alors oui, le détail demandé par Rimram est nécessaire pour debug :D
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: Alexa / Controlicz

Message par Jeff »

Jeff a écrit :Alexicz :lol:
rimram31 a écrit :Sympas vos remerciements, votre aide la plus précieuse sera d'essayer d'utiliser et remonter sur le forum les problèmes rencontrés.

En // je travaille sur une solution skill partagé (et j'ai, peut-être ,trouvé des astuces pour éviter trop de dev et un hébergement). Ca éviterait toutes ces manipulations complexes. A étudier, si ça tient la route, on peut imaginer un projet partagé ou on retroussera tous les manches ;)

Heu, j'aime bien Alexicz .
Moi aussi j'aime bien :lol:

On est obligé de tout recommencer pour renommer son skill ?
Je n'ai pas trouvé comment faire...
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
boboz2
Messages : 17
Inscription : 05 févr. 2016, 13:59

Re: Alexa / Controlicz

Message par boboz2 »

Alors j'ai eu le temps de regarder un peu hier soir et faire quelques tests.

De mon coté, je vois l'ensemble de mes devices dans l'interface de configuration d'Alexa mais je n'arrive pas tous à les commander.
J'ai réussi à demander une température et allumer/éteindre un interrupteur.
Je n'ai pas réussi à faire fonctionner un device dont le nom est composer "Playlist exterieur" et lorsque je mets que "Playlist" cela fonctionne. D'ailleurs il s'agit d'un device de type "Light/Switch - Selector" qui me permet de lancer une playlist. Quand je dis règle à 40% cela fonctionne mais comment faire pour utiliser le nom du niveau.
Je n'ai pas tester mais je souhaite connaitre l'état d'un device de type "Light/Switch" (détecteur de mouvement, capteur d'ouverture), quel type de phrase demander ?

Par contre, j'ai un premier soucis qui est de réponse. Je m'explique. Je demande une première fois la température de la salle de bain, Alexa me répond que l'appareil n'est pas accessible. Je fais une deuxième fois la demande et Alexa me répond correctement. Comme s'il y avait une sorte de mise en veille. Cela me le fait aussi bien sur un interrupteur que sur une température.
Voici une capture d'écran des logs de la première et deuxième tentative.
Bug.png
Bug.png (194.83 Kio) Consulté 5735 fois
Ensuite je me suis essayer à créer des tests dans Lambda pour vérifier certain fonctionnement de mes devices
- Découverte des devices "Alexa.Discovery"
- Récupérer l'état d'un interrupteur (détecteur de mouvement) "ReportState"
- Récupérer l'état d'un interrupteur (capteur d'ouverture) "ReportState"
- Changer l'état d'un interrupteur "Alexa.PowerController"
- Mettre un device de type "Light/Switch - Selector" à un certain pourcentage "Alexa.PercentageController"

@rimram31, j'ai pris le temps de regarder aussi ton code pour comprendre le fonctionnement mais pas tout tout compris. Si cela te dérange pas est ce que tu pourrais expliquer dans les grandes lignes l’enchaînement dans le lambda (pour ma curiosité et pour aider si besoin).
rimram31
Messages : 659
Inscription : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Alexa / Controlicz

Message par rimram31 »

@Jeff, je ne vois pas comment renommer un skill, tu dois pouvoir en créer un autre a l'identique + copier/coller. Par contre on doit pouvoir reuitliser la lambda, attention il faut changer l'id du skill associé et/ou reinitialiser le "trigger" Alexa.

@boboz2 oops, de la matière dans tes retours. pour la "sorte de veille" je vois pas, par contre hors ce skill, j'ai vu dans mes essais qu'Alexa "perd" parfois des devices ou les marque hors service alors qu'ils fonctionnent.

Sur la logique du code, il faut comprendre l'API Smart Home d'Alexa https://developer.amazon.com/fr/docs/sm ... l-api.html (https://github.com/alexa/alexa-smarthome/tree/master). "Tout" n'est pas possible (ton exemple de "level nommé") on ne peut "que" mapper l'api d'Alexa aux devices domoticz. Un skill "Smart Home" est un choix, on pourrait aussi développer un skill plus libre ou on peut décrire toute la logique du dialogue/action avec Alexa mais ce sont des skills de type "Alexa demande a ... de ..." ou "Alexa ouvre ...". Un skill Smart Home est bcp plus intégré mais contraint a respecter le modèle des objets Alexa Smart Home.

Mon code est fortement inspiré/copié du source Home Assistant: https://github.com/auchter/haaska/blob/master/haaska.py et encore https://github.com/home-assistant/home- ... rt_home.py

Un device ou "endpoint" en vocabulaire Alexa est un type de device avec +/- de capabilities (toutes les lumieres par ex. ne supportent pas "set couleur" ...). Le lien "device dz" -> endpoint Alexa est fait dans les getEnpoint du handler Domoticz.

Chaque appel n'a aucun lien avec les autres, il faut tout reconstruire, je stocke le "type" d'objet dans l'id (+idx de domoticz) qui pourra alors ensuite etre reconstruit. Un appel Alexa -> une reconstruction du "end point" et des paramètres/méthodes associées + idx domoticz qui ermettent l'appel de l'api dz.

Ensuite il faut passer pas mal de temps dans la logique de l'api Alexa ... pas trivial (voir par ex. les samples ici https://github.com/alexa/alexa-smarthom ... e_messages
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
Damsee
Messages : 87
Inscription : 26 déc. 2016, 22:21

Re: Alexa / Controlicz

Message par Damsee »

Jeff a écrit :
Jeff a écrit :Alexicz :lol:
Heu, j'aime bien Alexicz .
Bon beh vendu ! On ne va pas tergiverser :lol:
Je modifie la doc dans ce sens ?
Jeff a écrit :On est obligé de tout recommencer pour renommer son skill ?
Je n'ai pas trouvé comment faire...
Tout recommencer non, les parties "OAuth" et "Lambda" sont réutilisables.
Il faut par contre recréer un skill avec le nom souhaité et refaire la conf :
- Config Smart Home avec les endpoints
- Account Linking
Puis redécouvrir les devices avec le nouveau skill.
Tu peux faire tout ça en moins de 10mn (OK, un peu long pour juste un renommage de skill).
boboz2 a écrit : D'ailleurs il s'agit d'un device de type "Light/Switch - Selector" qui me permet de lancer une playlist. Quand je dis règle à 40% cela fonctionne mais comment faire pour utiliser le nom du niveau.
Je n'ai pas tester mais je souhaite connaitre l'état d'un device de type "Light/Switch" (détecteur de mouvement, capteur d'ouverture), quel type de phrase demander ?
Je ne pense pas que ce soit possible car un switch "Selector" n'est pas reconnu nativement par Alexa...

Pas d'idée par contre pour ton souci qui ressemble à un timeout...
Tu peux essayer de jouer avec le timeout du Lambda par défaut à 3 secondes et vérifier la stabilité de ton infra réseau et DZ.
@Rimram : Sinon je vois une erreur SSL dans les logs, ptete rajouter du debug dans la gestion des appels URL ?
rimram31
Messages : 659
Inscription : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Alexa / Controlicz

Message par rimram31 »

Damsee a écrit :...
@Rimram : Sinon je vois une erreur SSL dans les logs, ptete rajouter du debug dans la gestion des appels URL ?
J'ai mis "no check" SSL pour que les auto signés passent, peut-être ça, ça peut générer des warnings ? La partie https est la: https://github.com/rimram31/dz_smarthom ... er.py#L196 codé "a l'arrache" (en voulant s'épargner le module requests)
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
Répondre