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

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

Vorheriges Thema - Nächstes Thema

justme1968

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

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

dk3572

muss das Volume dann nicht auch ins alexaMapping?
Und muss dann auf Amazon Seite auch noch was eingetragen werden?

Genau das ist doch wohl das verzwickte was nicht nur mir Kopfzerbrechen bereitet.

justme1968

#1007
ja muss man.

es ist nicht verzwickt. es sind zwei logische schritte. alexa -> eigenschaft -> fhem.

für das erste ist das alexaMapping zuständig für das zweite das homebridgeMapping.

etwas zu beiden mappings steht hier: https://forum.fhem.de/index.php/topic,60244.msg542120.html#msg542120 und weiter oben im thread gibt es sogar ein komplettes beispiel für Volume.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

dk3572

ich weiß es ist nervig für dich. Aber es ist nun mal nicht für jeden so leicht wie für dich.

Muss man nun auf Amazon Änderungen vornehmen?

Dein link führt mich auf dein Profil.

Und hier ist das weitere Problem. Ich müsste jetzt wieder über 50 Seiten durchsuchen um das Beispiel mit Volume zu finden.
Das macht auf Dauer keinen Spaß.

Könntest du noch mal auf die Stelle im thread verlinken?
Einlesen tu ich mich dann ja  ;)

Danke

justme1968

du weisst schon das es rechts oben eine suche gibt? wenn man da Volume eingibt und die letzen 4 postings (deine letzten und die antworten darauf) überspringt landet man direkt hier: https://forum.fhem.de/index.php/topic,60244.msg541493/topicseen.html#msg541493
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

Joker

Zitat von: justme1968 am 19 Dezember 2016, 18:39:42
beim ändern der attribute im alexa device werden diese von alexa-fhem automatisch neu eingelesen. d.h. ein neustart ist nicht mehr nötig.
Das ist cool, damit fällt eine potentielle Fehlerquelle schon mal weg!

Hast du bzgl diesem undefined Problem auch schon eine Idee? Oder kann ich noch weitere Infos liefern?

dk3572

ach ja,die Suche, sorry  ???

Wieder was gelernt und wieder ein Stück weiter.

Aber wo muss ich das "minValue=0,maxValue=40" unterbringen?

heaC

Hu justme,

vielen Dank, mit der neuen Version stürzt der Prozess nicht mehr ab.

Gruß


justme1968

@Joker: ich habe es noch nicht reproduziert bekommen. ich versuche es noch.


@dk3572: aktuell im homebridgeMapping beim device um das es geht.
später auch mal im alexaMapping für alle devices mit einer bestimmten characteristic.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

dk3572

ok, nur wo genau?
In die Zeile Volume?

Und jetzt habe ich dein vorher befürchtete Problem.
Wenn ich Volume einstelle, ändert sich auch die Helligkeit der dimmbaren Lampe.

justme1968

@Joker: ok. problem gefunden.

wenn du im lib/server.js in zeile 665 das undefined hinter article: in ein '' (zwei einzelne anführungszeichen) änderst ist die meldung korrekt.

ist fürs nächste update eingebaut.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

Joker

Super!

Ich habs gerade getestet, also das hier genannten Problem ist damit gelöst. Die Antwort hat sich geändert von "Ich habe undefined FireTV eingeschaltet" auf "Ich habe FireTV eingeschaltet", perfekt!

Allerdings das hier genannte Problem ist noch da.
Ich erhalte hier weiterhin die Antwort "Ich habe  Deckenlampe links,  Deckenlampe rechts,  Deckenlampe und Ich kann das Gerät mit Namen undefined nicht schalten. ausgeschaltet."

Wenn ich dazu noch was liefern kann, einfach Bescheid sagen...

justme1968

hier erkennt alexa statt dem device namen das wort lampe als typ und schaltet dann alle lampen:

[12/17/2016, 9:24:41 PM] characteristic: On
[12/17/2016, 9:24:41 PM] value: aus
[12/17/2016, 9:24:41 PM] type: light               <----
[12/17/2016, 9:24:41 PM] room: erdgeschoss
[12/17/2016, 9:24:41 PM] name: undefined           <----
[12/17/2016, 9:24:41 PM] device: undefined


schau mal ob du alexa dazu bringst genauer zu erkennen oder nimm lampe aus den alexaTypes raus so das nur noch z.b. nur noch licht erkannt wird. schau mal ob es reicht die FHEM_Device zu ändern.

vielleicht hilft auch der feedback in der alexa app.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

jvollmer

Hallo, ich muss nochmal nerven, ich habe jetzt alles ausprobiert, aber das Schalten von TargetHeatingCoolingState bei FHTs funktioniert bei mir nicht.
Ein Mapping ist ja schon von @justme1968 angelegt.
TargetHeatingCoolingState:
   { reading: 'mode',
     values: [ '/^auto/:AUTO', '/^holiday_short/:OFF', '/.*/:HEAT' ],
     cmds:
      [ 'OFF:mode holiday_short',
        'HEAT:mode manual',
        'COOL:mode manual',
        'AUTO:mode auto' ] },
  CurrentTemperature: { reading: 'measured-temp', minValue: -30 },
  CurrentHeatingCoolingState: { default: 'HEAT' } }

Der zugehörige Intent ist bei mir geschaltet mit AlexaMapping:
TargetHeatingCoolingState=verb=setze,valuePrefix=auf,values=auto:AUTO;manuell:COOL
Mit der Utterance: "setze die heizung im wohnzimmer auf auto" kommt aber immer ein falsches Kommando in fhem an:
[2016-12-19 21:56:18] characteristic: TargetHeatingCoolingState
[2016-12-19 21:56:18] value: auto
[2016-12-19 21:56:18] type: undefined
[2016-12-19 21:56:18] room: wohnzimmer
[2016-12-19 21:56:18] name: heizung
[2016-12-19 21:56:18] device: [object Object]
[2016-12-19 21:56:18] { preposition: { name: 'preposition', value: 'im' },
  TargetHeatingCoolingState_Value: { name: 'TargetHeatingCoolingState_Value', value: 'auto' },
  Room: { name: 'Room', value: 'wohnzimmer' },
  Device: { name: 'Device', value: 'heizung' },
  article: { name: 'article', value: 'die' } }
[2016-12-19 21:56:18] auto
[2016-12-19 21:56:18] TargetHeatingCoolingState
[2016-12-19 21:56:18] TargetHeatingCoolingStateIntent
[2016-12-19 21:56:18] [FHEM] eg.wz.hzg: executing set cmd for TargetHeatingCoolingState with value auto
[2016-12-19 21:56:18] [FHEM]   executing: http://192.168.100.60:9083/fhem?cmd=set%20eg.wz.hzg%20undefined%20auto&XHR=1
response :{"version":"1.0","sessionAttributes":{},"response":{"outputSpeech":{"type":"PlainText","text":"Ich habe Heizung auf auto gestellt"},"shouldEndSession":true,"card":{"type":"Simple","title":"undefinedstatus","content":"Heizung auf auto gestellt"}}}

Es fehlt immer das "mode" in "set eg.wz.hzg mode auto". Ich weiss einfach nicht mehr was ich falsch mache.
Ich möchte nur die vorgegebenen Kommandos: COOL, HEAT und AUTO .. nutzen.

Hat schon mal einer das mit Erfolg gemacht?

Joker

Zitat von: justme1968 am 19 Dezember 2016, 21:50:18
hier erkennt alexa statt dem device namen das wort lampe als typ und schaltet dann alle lampen:

[12/17/2016, 9:24:41 PM] characteristic: On
[12/17/2016, 9:24:41 PM] value: aus
[12/17/2016, 9:24:41 PM] type: light               <----
[12/17/2016, 9:24:41 PM] room: erdgeschoss
[12/17/2016, 9:24:41 PM] name: undefined           <----
[12/17/2016, 9:24:41 PM] device: undefined


schau mal ob du alexa dazu bringst genauer zu erkennen oder nimm lampe aus den alexaTypes raus so das nur noch z.b. nur noch licht erkannt wird. schau mal ob es reicht die FHEM_Device zu ändern.

vielleicht hilft auch der feedback in der alexa app.

Hm, das verstehe ich jetzt nicht. Gesagt habe ich "Schalte das Licht im Erdgeschoß aus". Was Alexa macht (alle Lampen im Erdgeschoß ausschalten) ist komplett richtig. Nur die Antwort ist falsch ("Ich habe  Deckenlampe links,  Deckenlampe rechts,  Deckenlampe und Ich kann das Gerät mit Namen undefined nicht schalten. ausgeschaltet.").
Ich habe gerade noch mal rumgespielt wie du es genannt hast (lampe aus alexaTypes raus, das sieht jetzt so aus: "light:licht blind:rolladen,rollo,rolläden,rollos".) Es ändert sich aber weder was an der Antwort noch auf der Konsole.
Wenn ich übrigens nach "Geräteliste im Erdgeschoß" frage, dann bekomme ich als Antwort "Ich kenne Deckenlampe links, Deckenlampe rechts und Deckenlampe", also die drei richtigen Geräte... ist irgendwie komisch dass dann beim schalten irgendwoher noch ein Eintrag auftaucht..?

Hier ein Screenshot, was in der Alexa App auftaucht.