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

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

Vorheriges Thema - Nächstes Thema

amenomade

Zitat von: justme1968 am 11 Juni 2017, 17:35:37
hoch und runter geht nur mit dem custom skill. beispiel direkt im post mit dem download.
Stimmt nicht ganz: Alexa versteht schon "Alexa, fahre die Jalousie hoch" als +25%: wenn die Jalousie bei 50% liegt, geht sie auf 75%. Wenn die bei 80% liegt, antwortet sie "Der Wert liegt ausserhalb des Bereichs für das Gerät".
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

justme1968

ok. das alexa rauf und runter als relative änderung versteht ist neu.

ich könnte für rollläden auch eine sonderbehandlung einbauen. das allgemein zu machen ist aber vermutlich keine gute idee weil dann ein falsch verstandener wert z.b. aus versehen die heizung an den anschlag fahren könnte.

und ein 'richtiges' hoch und runter um ganz auf oder ganz zu zu machen geht bis auf weiteres nur mit dem custom skill.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

amenomade

Zitat von: justme1968 am 11 Juni 2017, 18:33:23
ok. das alexa rauf und runter als relative änderung versteht ist neu.

ich könnte für rollläden auch eine sonderbehandlung einbauen. das allgemein zu machen ist aber vermutlich keine gute idee weil dann ein falsch verstandener wert z.b. aus versehen die heizung an den anschlag fahren könnte.

und ein 'richtiges' hoch und runter um ganz auf oder ganz zu zu machen geht bis auf weiteres nur mit dem custom skill.

Kann man es nicht über homebridgeMapping lösen ? (wenn ich ne neue Funktionalität entdecke, kann ich nicht aufhören zu forschen ;) )
Hier was Alexa-fhem kriegt, wenn man "Alexa fahre die Jalousie hoch" sagt:
**** Received Directive: {"header":{"namespace":"Alexa.ConnectedHome.Control","name":"IncrementPercentageRequest","payloadVersion":"2","messageId":"blabla"},
"payload":{"accessToken":"blabla",
   "appliance":{"applianceId":"DUOFERN_61AC5E","additionalApplianceDetails":{"device":"ez_Rolladen"}},"percentageState":{"value":25},"deltaPercentage":{"value":25}}}
[2017-06-11 18:45:54] [FHEM] ez_Rolladen: executing set cmd for TargetPosition with value 45


Und beim "runter" (da ist aber Alexa seeeeeeeeehr schwerhörig - identifiziert "runter" in max 20% der Fälle - liegt vielleicht an meinem frz. Akzent ;) )
**** Received Directive: {"header":{"namespace":"Alexa.ConnectedHome.Control","name":"DecrementPercentageRequest","payloadVersion":"2","messageId":"blabla"},
"payload":{"accessToken":"blabla",
"appliance":{"applianceId":"DUOFERN_61AC5E","additionalApplianceDetails":{"device":"ez_Rolladen"}},"percentageState":{"value":25},"deltaPercentage":{"value":25}}}
[2017-06-11 18:51:02] [FHEM] ez_Rolladen: executing set cmd for TargetPosition with value 20
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

justme1968

woher soll alexa-fhem wissen das die +/-25% durch ein hoch/runter ausgelöst wurden und nicht durch ein echtes erhöhe oder vermindere kommando.

das geht nur mit dem
custom skill.

morgen ändert amazon das hoch/runter vielleicht auf +/-10% oder tatsächlich auf 100/0.

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

AndyMu

Versuche gerade, den Custom Skill anzulegen, komme beim Interaction Model nicht weiter.
Problem ist, dass mir manche Types fehlen... nämlich die, die ich vermutlich über "get MyAlexa customSlotTypes" bekommen sollte.
Da kommt allerdings nichts bei mir... "get MyAlexa interactionModel" liefert hingegen Werte.

justme1968

alexa-fhem muss laufen damit du die ausgabe bekommst.

was steht im fhem log? was im alexa-fhem log?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

AndyMu

Im Verbose 5 Level konnte ich die noch fehlenden Types rauslesen und anlegen.
Jetzt funktioniert alles bis auf zwei Sample Utterances:
TargetPositionIntent mach {TargetPosition_article} {Device} {TargetPosition_Value}
TargetPositionIntent mach {TargetPosition_article} {Device} {preposition} {Room} {TargetPosition_Value}


Obwohl "TargetPosition_article" angelegt ist, gibt es eine Fehlermeldung:
Error: There was a problem with your request: Unknown slot name '{TargetPosition_article}'.This error occurred in sample 'TargetPositionIntent mach {TargetPosition_article} {Device} {TargetPosition_Value}' on line 43.

FHEM_article der | die | das | den
FHEM_preposition in | im | in der
Hue_Value blau | grün | rot
Hue_ValueB blau | grün | rot
On_Value an | ein | aus | um
TargetPosition_Value auf | zu
TargetPosition_article den | die
FHEM_Device party | essecke | ambientelicht | couchlicht | licht | lampen | rolladen | rolläden | jalousie | jalousien | rollo | rollos | lampe
FHEM_Room alexaroom

amenomade

ZitatError: There was a problem with your request: Unknown slot name '{TargetPosition_article}'.This error occurred in sample 'TargetPositionIntent mach {TargetPosition_article} {Device} {TargetPosition_Value}' on line 43.

Hast Du ein slot "TargetPosition_article" im Intent TargetPositionIntent im Intent Schema?
Etwas in der Art:
    {
      "slots": [
       {
          "name": "TargetPosition_article",
          "type": "TargetPosition_article"
        },
        {
          "name": "Device",
          "type": "FHEM_Device"
        },
        {
          "name": "preposition",
          "type": "FHEM_preposition"
        },
       {
          "name": "Room",
          "type": "FHEM_Room"
        },
        {
          "name": "TargetPosition_Value",
          "type": "TargetPosition_Value"
      ],
      "intent": "TargetPositionIntent"
    },
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

AndyMu

Zitat von: amenomade am 13 Juni 2017, 00:18:09
Hast Du ein slot "TargetPosition_article" im Intent TargetPositionIntent im Intent Schema?
Danke, das wars... habe ich nachgetragen, jetzt lässt sich das Ganze sichern.
Muss ich den slot noch irgendwie im FHEM anlegen, nicht dass es Fehler beim Benutzen gibt?

amenomade

Normalerweise wird das Intent Schema durch "get <AlexaDevice> interactionModel" generiert.
Wenn es bei Amazon falsch war, fehlt wahscheinlich etwas in deinem Alexa Device.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

oeiber

Hallo,

hätte noch eine Frage zum SmartHome Skill:
Wenn ich Alexa nach einer Temperatur frage, sagt sie, dass das Gerät <Name des Sensors> nicht reagiert. Im Log von alexa fhem steht dann: Error: GetTemperatureReadingRequest

Mit dem Custom Skill funktionierts.

Was mache ich falsch?

Danke!

LG

Olli

Esjay

Zitat von: oeiber am 19 Juni 2017, 20:25:59
Hallo,

hätte noch eine Frage zum SmartHome Skill:
Wenn ich Alexa nach einer Temperatur frage, sagt sie, dass das Gerät <Name des Sensors> nicht reagiert. Im Log von alexa fhem steht dann: Error: GetTemperatureReadingRequest

Mit dem Custom Skill funktionierts.

Was mache ich falsch?

Danke!

LG

Olli
Der Smart Home Skill kann das noch nicht

oeiber

Zitat von: Esjay am 19 Juni 2017, 20:26:43
Der Smart Home Skill kann das noch nicht

Aber warum kommt dann der GetTemperatureReadingRequest bei alexa fhem an, wenns von Amazon noch nicht unterstützt wird?

Esjay

Zitat von: oeiber am 19 Juni 2017, 20:36:14
Aber warum kommt dann der GetTemperatureReadingRequest bei alexa fhem an, wenns von Amazon noch nicht unterstützt wird?

https://forum.fhem.de/index.php/topic,70899.0.html

justme1968

#2729
weil amazon gerade daran arbeitet es auch in deutsch frei zu schalten und bis dahin manchmal etwas geht. teilweise. mal ja mal nein...

genaueres hier: https://forum.fhem.de/index.php/topic,60244.msg633127.html#msg633127 und in drauf folgenden posting.

kurz: es ist noch nicht freigegeben und nicht routine tauglich.

das betrifft aktuell leider noch eine ganze reihe anderer dinge wie:
- farbe und farbtemperatur für lampen+
- türschlösser
- video skill api
- stark erweiterte amazon slot types
- ...

die gibt es zum teil nur in englisch und zum teil sogar nur in den usa. noch nicht mal in england.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968