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

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

Vorheriges Thema - Nächstes Thema

etienne

Hallo,

hier http://www.fhemwiki.de/wiki/Alexa-Fhem
steht unter Punkt 2.7.7

ZitatAuf der Seite Interaction Model folgende Eingaben tätigen: In die Box Intent Schema den Programmcode aus folgendem Post einfügen [...]

Das Problem ist, ich habe gar keine Eingabe Box "Intent Schema" im Tab "Interaction Model" ... bei mir steht dort nur:

ZitatYour skill uses Smart Home Skill API - The interaction model is already built into the Smart Home Skill API and you can find the supported utterances here. You just have to handle the directives sent by Alexa in your Smart Home adapter (Lambda function)

Was habe ich falsch gemacht?


Unter Punkt 2.8.8 (AWS Lambda Funktion anlegen) steht:

ZitatDer Quellcode der Datei lambda.js aus dem Quellpaket wird dann an die Stelle des großen Textfeldes vollständig eingefügt.
Genau das ist aber bei mir nicht passiert - kann jemand hier bitte mal seinen Quellcode posten, sodass ich den dort manuell einfügen kann?

Danke und Gruß
Etienne

justme1968

#766
2.7 bzw. 2.7.7 ist für den custom skill. d.h. es gilt nur wenn du vorher Skill Type = Custom Interaction Model ausgewählt hast.

für den smart home skill gilt 2.6

lambda.js ist im ausgepackten tar file enthalten.


das wiki bitte wirklich wörtlich befolgen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

RaspiCOC

Zitat von: mrbreil am 10 Dezember 2016, 15:05:52
Ich hoffe die Frage ist nicht zu "lächerlich" für euch, ich kapiere das leider noch nicht so recht mit dem custom skill.

Meine zu steuernden Geräte die ich mit Alexa steuern möchte liegen in einem "fhem raum" attr Wohnzimmer_Licht room Alexa, manche auch in mehreren attr Bad_Licht room Alexa,Licht.

Allen habe ich auch das Attribut alexaRoom und alexaName gegeben.
attr Wohnzimmer_Licht alexaName licht
attr Wohnzimmer_Licht alexaRoom wohnzimmer


Wenn ich jetzt auf https://developer.amazon.com in den Customskill gehe und unter dem Reiter test bei "Enter Utterance" z.B. "raumliste" teste, bekomme ich folgenden Output:

{
  "version": "1.0",
  "response": {
    "outputSpeech": {
      "type": "PlainText",
      "text": "Ich kenne: Alexa,Licht, Alexa und Alexa,Homekit,Licht"
    },
    "card": {
      "content": "Alexa,Licht\nAlexa\nAlexa,Homekit,Licht",
      "title": "Raumliste",
      "type": "Simple"
    },
    "shouldEndSession": true
  },
  "sessionAttributes": {}
}


Das sind aber die "Fhemräume" und nicht die per Attribut gesetzten.
Habe ich einen Fehler oder ein Verständnisproblem.
Außerdem verstehe ich nicht ganz, wofür ich HomeSkittskill dann noch benötige, geht das dann nicht alles über den customskill?
Was müsste den passieren wenn ich get alexa customSlotTypes anklicke, da passiert bei mir nix offensichtliches?
Ich hoffe ich konnte mich einigermaßen so ausdrücken, das ihr versteht was ich nicht verstehe.

Gruß MrBreil
Wozu Du den Home Skill benötigst steht im Wiki. Den brauchst Du zumindest dafür, dass Deine Geräte erkannt werden.

Gesendet von meinem SM-G925F mit Tapatalk


RaspiCOC

@gonz: Würde Deine Grafik dann gern ins Wiki aufnehmen. Nehme an, das ist ok...

Gesendet von meinem SM-G925F mit Tapatalk


justme1968

@mbreil: du 'brauchst' keinen der beiden.

schau weiter oben im thread. ich habe die unterschiede schon ein paar mal erklärt.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

botchico

Gude, ich bin neu in dem Thema Alexa und Fhem.
Beim starten des Dienstaes auf dem Raspi bekomme ich folgende Meldung:

./bin/alexa

/home/pi/alexa-fhem/lib/server.js:205
  for( connection of this._config.connections ) {
                  ^^
SyntaxError: Unexpected identifier
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/home/pi/alexa-fhem/lib/cli.js:3:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)

Weiss einer Rat?

justme1968

deine node version ist zu alt.mindestens 0.12.7. besser 4.x
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

botchico

Angeblich ist alles aktuell:

sudo apt-get install nodejs-legacy
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
nodejs-legacy ist schon die neueste Version.
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 92 nicht aktualisiert.

Tommy82

Zitat von: justme1968 am 08 November 2016, 01:38:39
kanäle würden gehen wenn man pro kanal einen dummy anlegt und schaltet. das wird mit dem custom skill besser gehen.

zum volume: umgekehrt wäre es richtig: homebridgeMapping Brighness=volume

Hi,ich wollte mir jetzt mal vornehmen das Programm Umschalten per Alexa zu testen indem ich je Sender einen Dummy anlege, der Dummy sieht so aus:
Internals:
   NAME       RTL
   NR         328
   STATE      ???
   TYPE       dummy
Attributes:
   genericDeviceType switch
   homebridgeMapping RTL=set Fernseher channel RTL
   room       Alexa,Wohnzimmer



Alexa liefert beim start diesen Fehler.
[12/11/2016, 3:06:49 PM] [FHEM] homebridgeMapping: RTL=set Fernseher channel RTL
[12/11/2016, 3:06:49 PM] [FHEM]   wrong syntax: Fernseher
[12/11/2016, 3:06:49 PM] [FHEM]   wrong syntax: channel
[12/11/2016, 3:06:49 PM] [FHEM]   wrong syntax: RTL
[12/11/2016, 3:06:49 PM] [FHEM] RTL is switch
[12/11/2016, 3:06:49 PM] [FHEM] RTL has
[12/11/2016, 3:06:49 PM] [FHEM]   RTL [set]



Wie müßte ich denn Dummy richtig konfigurieren? Der Name "Fernseher" ist das Alias des Devices, oder muss ich dort den tatsächlichen Devicename nehmen?

Danke


Bekomme beim alexa start auch noch diese Meldung:
[12/11/2016, 3:06:49 PM] [FHEM] VU_Ultimo-power not a number: on
bekomme die bei allen Recivern, was muss ich da abändern?

Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

botchico

#774
aber node -v meldet 0.10.21
nodejs -v meldet 0.6.19

Wie kann ich sonst noch aktualisieren?

justme1968

#775
@Tommy82: es gibt keine charakteristik die RTL heisst. ausserdem müssen leerzeichen müssen durch + ersetzt werden.

so solte es gehen:
On=<device>:state,cmdOn=channel+RTL

bitte schau dir an wie homebridgeMapping funktioniert.

@botchico: und warum aber? 0.10.21 ist doch kleiner als 0.12.7. also zu alt.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

botchico

Die Versionsinfo zeigt veraltet. Aber beim Update bekomme ich die Meldung das alles aktuell ist.
Wie kann ich die Node.js aktualisieren, ausser mittels
sudo apt-get install nodejs-legacy


welches dann nichts macht

justme1968

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

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

rst1

Moin,

als gestern das Wiki noch ging hab ichs mit der Anleitung auch geschafft das alles zum laufen zu bringen,  ist aber schon etwas konfus wo man welche Infos aus späteren Schritten wiw einzutragen hat.. aber ist ja auch ein bunter Straus dran Services beteiligt. Auf jeden Fall vielen Dank an justme1968 und alle anderen Beteiligten für das zusammenbauen dieses Moduls und die Doku dazu.

Was mir aber auffällt, im alexa-2016-12.log kommt andauernd sowas:

[12/11/2016, 3:35:17 PM] [FHEM] starting longpoll: https://192.168.1.10:443/fhem.pl?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1481466917032
[12/11/2016, 3:35:17 PM] [FHEM] longpoll ended, reconnect in: 200msec
[12/11/2016, 3:35:17 PM] [FHEM] starting longpoll: https://192.168.1.10:443/fhem.pl?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1481466917349
[12/11/2016, 3:35:17 PM] [FHEM] longpoll ended, reconnect in: 200msec


kann man das irgendwie etwas eindämmen?

Viele Grüße,
Ralf

justme1968

das wiki geht auch heute noch.

wenn die longpoll verbindung so oft beendet wird stimmt etwas nicht. steht bei verbose 5 etwas im fhem log?

stimmt die url? was passiert wenn du diese im browser verwendet?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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