alexa-fhem: amazon alexa smart home skill für fhem

Begonnen von justme1968, 05 November 2016, 23:21:32

Vorheriges Thema - Nächstes Thema

juelich

Zitat von: MadMax-FHEM am 17 April 2017, 13:41:00
Wie wäre es mit der Frage:

Alexa frage James nach dem Status IM Wohnzimmer

So geht das bei mir...
...wenn ich VON Wohnzimmer frage bekomme ich eine ähnliche Antwort wie du, also es klappt nicht...

Gruß, Joachim

So hat es bis gestern auch bei mir funktioniert, zumindest in den Räumen, in denen "chte" Thermostate sind und keine Structuren. Den Status einer Structur bekomme ich ja irgendwie gar nicht abgefragt.
Seit heute Abend klappt nun wieder gar nichts mehr.
Auf der Developer-Seite findet sich folgendes:

Enter utterance: nach dem Status im Bad

"request": {
    "type": "IntentRequest",
    "requestId": "EdwRequestId.31ca3bbd-3e45-4bf5-9d4a-4d58edf0b97e",
    "locale": "de-DE",
    "timestamp": "2017-04-18T20:44:27Z",
    "intent": {
      "name": "StatusIntent",
      "slots": {
        "Device": {
          "name": "Device"
        },
        "preposition": {
          "name": "preposition",
          "value": "im"
        },
        "Room": {
          "name": "Room",
          "value": "Bad"


"The response is invalid"

Ich habe eigentlich nichts geändert. Ich habe auch alles aus dem Alexa-Device noch einmal in den Custom-Skill kopiert.
Ich verstehe nicht, warum der Skill so bockig ist.
Viele Grüße

Markus

raspklaus

Hat keiner eine Idee warum die zwei IT Switches nicht angezeigt werden ?

MadMax-FHEM

Zitat von: raspklaus am 19 April 2017, 11:05:58
Hat keiner eine Idee warum die zwei IT Switches nicht angezeigt werden ?

Wie gesagt ich nicht aber leg doch mal einen dummy an, nur um zu sehen ob es generell klappt:


define Testdummy dummy

attr Testdummy setlist on off
attr Testdumy genericDeviceType switch
attr Testdummy room alexa
attr Testdummy alexaName Licht


Bei room etc. musst du natürlich das Kriterium angeben, welches dann zu deinem Filter in der config.json passt.

Beim Attribut alexaName kannst du auch was anderes vergeben nimm halt was "einfaches" und "sprechendes", damit es Alexa dann beim Test auch gut verstehen kann... ;)

Das Attribut alexaRoom ist nur für den Custom Skill relevant (schadet aber auch nicht).

Wenn das geht, dann muss noch irgendwas mit den IT-Schaltern konfiguriert werden (homebridgeMapping / alexaMapping / ...)...
...schon mal nach IT und Alexa gesucht?

Wenn auch der Dummy nicht geht, dann passt wohl an anderer Stelle etwas nicht...

Viel Erfolg, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

raspklaus

#2508
Geht auch nicht.

Hier die jason:

{
    "alexa": {
        "port": 3000,
        "name": "Alexa",
        "keyFile": "./key.pem",
        "certFile": "./cert.pem",
        "nat-pmp": "",
        "nat-upnp": false,
        "applicationId": "amzn1.ask.skill.7b57f627-6b6b-4ffa-bc5b-2eacf43b22b6",
        "oauthClientID": "amzn1.application-oa2-client.b60f1bd276894f1b9958cb2dcfee0306"
    },
   
    "connections": [
        {
            "name": "FHEM",
            "server": "127.0.0.1",
            "port": "8083",
            "webname": "fhem",
            "filter": "room=Alexa"
        }
    ]
}


und der Dummy:

Internals:
   CFGFN
   NAME       Testdummy
   NR         56871
   STATE      off
   TYPE       dummy
   Readings:
     2017-04-19 13:05:37   state           off
Attributes:
   alexaName  Licht
   genericDeviceType switch
   room       Alexa
   setList    on off


und die Consolenausgabe:

[4/19/2017, 1:10:11 PM] accepted new token
**** Received Directive: {"header":{"namespace":"Alexa.ConnectedHome.Discovery","name":"DiscoverAppliancesRequest","payloadVersion":"2","messageId":"8922601b-aca3-42e2-b922-e38064f06142"},"payload":{"accessToken":"Atza|IwEBICjeFJ8DrXuGOxu9W9NU-
3pQFbLRXaKg2GsXVsz1TVAYocaVpprGUk7x9jbHDTOM71HTvLT6oEWz4cj0B_iTBeJ9trgYJgc44FvoAMLLceP6VXCS-
WDQYWl5zC5exk4SBLTq1LdKFgqPc4eTrJkkaI_F7xTE51DQsDDmoEZhjnhE_ZhAyr-
3UnHnABAVIprjSBs0N_6BOcsMKkABdQPX0e6PHeiZs2BxZqrNNQpRa8TXNn4HGlsxzMrRCqOsDxfp_akot0zlZ1HPLcEx79pLiaip_
9fykhNrcDxAZ1-NlGzib9H0qB-iI9QH_BWt5MoaM2efwv0oihCeMudJYhD7aiN5fRzN7Ah6LMuELF9dfrqc52-ISGhvbMvplp84uHACR-
J6mPBNS7L-q-854XA61511Q7W_VmzSbPzo91hZSamD1JjhuOpKa5x6jmg8DENIJUs87BqGd6x86ERM4_7QYFq7zHSNIh4o8skV8GnRsFX-
0A"}}
response :{"header":
{"name":"DiscoverAppliancesResponse","payloadVersion":"2","namespace":"Alexa.ConnectedHome.Discovery","messageId":"09d9be
aa-302b-4f5b-886e-531294195631"},"payload":{"discoveredAppliances":
[{"applianceId":"IT_01001111110011001011000010_0_0000","manufacturerName":"FHEMIT","modelName":"FHEMitswitch","version"
:"<unknown>","friendlyName":"fernseher","friendlyDescription":"n: Fernseher, r: alexa","isReachable":true,"actions":
["turnOn","turnOff"],"additionalApplianceDetails":{"device":"Fernseher"}},
{"applianceId":"Testdummy","manufacturerName":"FHEMdummy","modelName":"FHEM<unknown>","version":"
<unknown>","friendlyName":"licht","friendlyDescription":"n: Testdummy, r: alexa","isReachable":true,"actions":
["turnOn","turnOff"],"additionalApplianceDetails":{"device":"Testdummy"}},
{"applianceId":"IT_000000000F_FF_F0","manufacturerName":"FHEMIT","modelName":"FHEMitswitch","version":"
<unknown>","friendlyName":"fensterlampe","friendlyDescription":"n: wz_Deckenlampe, r: alexa","isReachable":true,"actions":
["turnOn","turnOff"],"additionalApplianceDetails":{"device":"wz_Deckenlampe"}}]}}



MadMax-FHEM

#2509
Hi,

hast aber alexa-fhem neu gestartet nach dem Anlegen des Dummy!?
(evtl. mal die IT-Schalter aus dem Raum Alexa raus nehmen)

EDIT: hast du wohl, er erscheint ja in der Liste... ;)

Woher hast du den Eintrag "webname" in der config.json?

(Ich würde die IDs unkenntlich machen, also für hier!)

Das ist die config.json aus dem Wiki:


{
   "alexa": {
       "name": "Alexa TEST",
       "keyFile": "./key.pem",
       "certFile": "./cert.pem",
       "applicationId": "amzn1.ask.skill.xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
       "oauthClientID": "amzn1.application-oa2-client.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
   },
   "connections": [
       {
           "name": "FHEM",
           "server": "192.168.0.xxx.xxx",
           "port": "8083",
           "filter": "room=AlexaRoom"
       }
   ]
}


Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

raspklaus

#2510
Im letzten Versuch hatte ich nur noch den Testdummy.

webname steht in der letzten config-sample.json mit drin (Version 0.3.2)

Nun kommt die Consolenausgabe:

[4/19/2017, 4:28:53 PM] accepted new token
**** Received Directive: {"header":{"namespace":"Alexa.ConnectedHome.Discovery","name":"DiscoverAppliancesRequest","payloadVersion":"2","messageId":"e58a8242-b4ce-4e6e-b58a-5615e48b428c"},"payload":{"accessToken":"Atza|IwEBIAW9NfEVJC8PECzB2HjytJyAvnMiMhp1B4ZicxRbVD6DcaAGeqJZFfV909kvVAsxhUUbmRcS51CLoHKByShpPXsP8-ZdePuI5kWW4UX0caUhKWyeFuYXQxm3c96sp9L4NnWojLuApFTeQtPDuVZi9-ezyw8hV2QBQ0StyCW0I-dBHRCTHuEbuPACGcJooN9SJ6SX0GYaE2_4R_QUg9s5DJBeVIled69Kiz4Yn_1lEHiHqPHEpQHiOkO7LnIrdC8bJEjnYp0SgpF1J4jm0jVqhvblHeco3SgfoTbmgj7a2UVo1mEtw0CFgIzhafr6xIBSmCK-rdb9dVcHy6mz4tombJOQufWjfBfjRoARqMLu2C3TNt2sbSAag0xjl4I9147HdejpaabqQLBQwsugIc5ul-nyX59v0Tst0e3t-18NhepxVwjSrIDDAOpP0JvKG4sfE1-SOkFdcPpqkOJKRWCtFmlLrBoXzdbhk-6NJSc7xHbXPw"}}
response :{"header":{"name":"DiscoverAppliancesResponse","payloadVersion":"2","namespace":"Alexa.ConnectedHome.Discovery","messageId":"09beca27-836a-44aa-b74c-0fffcfc180ce"},"payload":{"discoveredAppliances":[{"applianceId":"Testdummy","manufacturerName":"FHEMdummy","modelName":"FHEM<unknown>","version":"<unknown>","friendlyName":"licht","friendlyDescription":"n: Testdummy, r: alexa","isReachable":true,"actions":["turnOn","turnOff"],"additionalApplianceDetails":{"device":"Testdummy"}}]}}


alexa-fhem wird immer neu gestartet, da es ja durch den Kopiervorgang der Consolenausgabe mit <strg>C ohnehin beendet wird.

Trotz allem kein Gerät gefunden auch nicht über die Sprachsteuerung. (Keine Smarthome Geräte gefunden)

Ich habe so das Gefühl, dass es besser wäre dafür einen eigenen Threat aufzumachen

MadMax-FHEM

Zitat von: raspklaus am 19 April 2017, 16:58:13
Im letzten Versuch hatte ich nur noch den Testdummy.

webname steht in der letzten config-sample.json mit drin (Version 0.3.2)

Ah, ok hab ich nicht mitbekommen, bin noch auf 0.3.1




Zitat von: raspklaus am 19 April 2017, 16:58:13
alexa-fhem wird immer neu gestartet, da es ja durch den Kopiervorgang der Consolenausgabe mit <strg>C ohnehin beendet wird.

Trotz allem kein Gerät gefunden auch nicht über die Sprachsteuerung. (Keine Smarthome Geräte gefunden)

Ich habe so das Gefühl, dass es besser wäre dafür einen eigenen Threat aufzumachen

Jep, neuer Thread ist wohl besser und wollte ich auch schon vorschlagen...
...da kann dann wohl gezielter geholfen werden.

Was mir noch einfällt ist, dass es mit der 0.3.2 wohl einige "Probleme" gab zu beginn (inzwischen seit gestern oder vorgestern oder so ist ein Fix eingebaut, selbe Datei, selbe Version [glaube ich]), weiß aber nicht wie sich das geäußert hat, evtl. findet sich im Forum was dazu...
...nicht, dass du auch davon betroffen bist.

Seit wann hast du die 0.3.2?
Bzw. wann hast du die Datei kopiert?

Viel Erfolg, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MaMi7880

RaspberryPi 3 mit nanoCUL & JeeLink | FHEM 6.0 mit IT, HM  - Sensoren/Aktoren & Lacrosse Temp./Humi. | Shelly | Amazon Echo | Logitech Harmony Hub | Philips HUE | andFHEM

raspklaus

Danke Manuel,

das war genau die Antwort die den Durchbruch gebracht hat  :o :o :-[
Mit der Version geht es natürlich auch nicht :P

MaMi7880

#2514
Zitat von: raspklaus am 20 April 2017, 10:32:38
Danke Manuel,

das war genau die Antwort die den Durchbruch gebracht hat  :o :o :-[
Mit der Version geht es natürlich auch nicht :P

Das wollte ich auch damit nicht sagen...

Ist in deinem FHEM SSL (HTTPS) aktiv?
Wie sieht es mit Benutzer/Passwortzugangfür den FHEMWEB Port 8083 aus?

RaspberryPi 3 mit nanoCUL & JeeLink | FHEM 6.0 mit IT, HM  - Sensoren/Aktoren & Lacrosse Temp./Humi. | Shelly | Amazon Echo | Logitech Harmony Hub | Philips HUE | andFHEM

MadMax-FHEM

Zitat von: MaMi7880 am 20 April 2017, 22:47:25
Das wollte ich auch damit nicht sagen...

Ist in deinem FHEM SSL (HTTPS) aktiv?
Wie sieht es mit Benutzer/Passwortzugangfür den FHEMWEB Port 8083 aus?

So wie es aussieht werden ja die Geräte von alexa-fhem ausgelsen/erkannt...
...nur (so die Aussage) nicht von Alexa selbst...
...obwohl eigentlich auch die Anfrage zu sehen ist...

Ich denkw da muss André (justme1968) mal drüber schauen...

Wie schon festgestellt/vorgeschlagen besser in einem konkreten Thread mit nochmals gesammelt den letzten Ausgaben, dann muss man/André sich nicht alles zusammensuchen...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

djbone92

Hallo Leute :)

meine Alexa kann schon so einiges.. Hab nur momentan ein kleines "Problem":

Wenn ich sage Alexa sag Jarvis Guten Morgen setzt der mir das Intent und mit notify abfragen... alles kein Problem und funktioniert perfekt
möchte nur nicht als Antwort OK.. Kann ich den Antworttext irgentwo bearbeiten? Wäre doch cool wenn sie sagt: Guten morgen. Draußen hat es 12 Grad.

mfg
Mike

Esjay

Zitat von: djbone92 am 21 April 2017, 03:38:57
Hallo Leute :)

meine Alexa kann schon so einiges.. Hab nur momentan ein kleines "Problem":

Wenn ich sage Alexa sag Jarvis Guten Morgen setzt der mir das Intent und mit notify abfragen... alles kein Problem und funktioniert perfekt
möchte nur nicht als Antwort OK.. Kann ich den Antworttext irgentwo bearbeiten? Wäre doch cool wenn sie sagt: Guten morgen. Draußen hat es 12 Grad.

mfg
Mike
https://forum.fhem.de/index.php/topic,65890.0.html

Hier mal ein bisschen einlesen.
Grüße

MadMax-FHEM

@Mike:

Oder so:

https://forum.fhem.de/index.php/topic,67490.msg589378.html#msg589378

Ist mittlerweile im Standard alexa-fhem enthalten (ab 0.3.2)...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Ma_Bo

#2519
Zitat von: justme1968 am 10 April 2017, 23:00:40
ich habe eben hier: https://forum.fhem.de/index.php/topic,60244.msg540117.html#msg540117 die version 0.3.2 hoch geladen.

das custom skill api sendet seit ein paar tagen eine device id des echo devices über das ein kommando ausgelöst wurde mit. d.h. man kann jetzt echos einzelnen default räumen zuordnen ohne den umweg über mehrere accounts und skills zu gehen.

die änderungen im einzelnen sind:

- slots für fhemIntents -> hier: https://forum.fhem.de/index.php/topic,67490.msg589378.html#msg589378 beschrieben
- neues attribut echoRooms um für den custom skill einzelne echos einem default raum zuzuordnen
  dieser wird verwendet wenn im kommando kein raum angegeben wurde
- neue readings echoId und echoRoom
- $_echoId und $_echoRoom für fhem intents mit slots

es ist die 39_alexa.pm von morgen früh nötig.

gruss
  andre

ps: ja ich weiss ich hatte als nächstes die konfigurierbaren abfragen versprochen. die sind aber noch nicht ganz fertig. und die echo identifikation ist auch ohne die abfragen nützlich.

pps: die probleme oben schaue ich mir an sobald ich dazu komme.

Ist es hiermit auch möglich, wenn ich 2 DOTS habe und ich auf DOT1 Sage, "Alexa sage Haussteuerung schalte das Licht ein", dass dann DOT2 die Bestätigung ausgibt?

P.S. ich habe heute ein wenig mit den INTENTS usw gespielt, bis jetzt ist eine recht einfache Konfiguration des Custom Skill möglich, mit der ich mir im <ALEXADEVICE> alles was ich ab dem Invocation Name gesprochen habe, als Reading anzeigen lassen kann.
Somit kann ich auf den gesprochenen Satz direkt auf FHEM Ebene mit einer sub, notify oder wie auch immer reagieren und antworten über die sub ausgeben.
Ich werde dazu noch einen seperaten Thread erstellen, in dem ich auch um Beispielsätze für "Alexa" fragen möchte, um zu sehen, ob auch alles mit dieser Konfiguration klappt.
Ich verlinke den Thread dann hier.



##### EDIT1:

Hier mein neuer Thread dazu: https://forum.fhem.de/index.php/topic,70955.0.html
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.