Tips zur Alexa Sprachsteuerung ?

Begonnen von dt2510, 21 Januar 2021, 14:03:33

Vorheriges Thema - Nächstes Thema

dt2510

Nach einigen Anlaufschwierigkeiten habe ich mein FHEM endlich dazu bekommen, sich mit Alexa zu unterhalten :)

Ich habe den Lampen, Steckkdosen, Rolläden und diversen Sensoren jetzt (Alexa) Namen gegeben und angefangen zu testen. Zunächst mal eine Frage zu den Attributen:

- alexaName ist der Name, also z.B. "Rolladen Wohnzimmer"
- alexaRoom wäre in dem Fall "Wohnzimmer"
- alexaProactiveEvents habe ich nicht verwendet (wozu bräuchte ich das ?)

Wofür genau wird alexaRoom genutzt ? Ich hätte mir vorstellen können den Raum dann im Namen wegzulassen, aber das funktionierte nicht.

Ich habe folgende genericDeviceType Werte eingesetzt:

- Lampen "light"
- Rolläden "blind"
- Steckdosen "ignore"

Ich kann jetzt schonmal alle Lampen gebündelt an/aus schalten (ohne "ignore" bei den Steckdosen wurden die auch geschaltet).

Probleme hab' ich bei

- Steckdosen - hatte ich auf "outlet" statt "ignore", konnte aber z.B. nicht "schalte alle Steckdosen an" sagen
- Rollläden - reagieren nicht, seit sie auf "blind" stehen
- Luftfeuchtigkeit (Sensoren) - die kennt Alexa wohl nicht

Was ich auf jeden Fall noch umsetzen möchte ist die Anwesenheitssteuerung. Ich habe ein Dummy "HomeStatus" mit den Werten "home", "away", "holiday", sleep".
Gibt es da irgendeine Möglichkeit diesen Status über die Standard Routinen (Alexa, guten Tag usw.) zu steuern ?

MadMax-FHEM

Das sind ja viele Punkte... ;)

Ich fang schon mal an:

das hast du gelesen?
https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa#Ger.C3.A4te_im_FHEM-Webfrontend_zuweisen

Da sind schon mal mindestens 2 deiner Fragen beantwortet ;)

alexaRoom: das ist (bis auf Ausnahmen) nur für den Custom Skill

Auch wie alexa-fhem die "Möglichkeiten" der Geräte/Devices erkennt wird behandelt und auch was generell überhaupt geht (wichtig ist nat. am Anfang, bei Amazon, zu beginnen: was da nicht geht [verm. immer noch Luftfeuchte] geht nat. nicht)...

in alexaName sollte man keine Raumnamen haben. Räume gehen über Gruppen in der Alexa-App (sollte)...

Dann geht z.B. "Alexa, schalte das Licht im Wohnzimmer aus", dann sollten alle Lichter (also gefundene Devices die Lichter sind) in der Gruppe Wohnzimmer aus gehen usw.

Bzgl. Rollladen gibt es einen extra Thread...


proactiveEvents: damit kann die "Automatisierung" nach Amazon "verlagert" werden.
Also z.B. ein Fenstersensor (MIT proactiveEvents) meldet offen/geschlossen, dann kann in der Alexa-App das als "Trigger" für Aktionen (Routinen) verwendet werden...

So weit so schnell ;)

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)

dt2510

Zitat von: MadMax-FHEM am 21 Januar 2021, 14:48:10
das hast du gelesen?
https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa#Ger.C3.A4te_im_FHEM-Webfrontend_zuweisen

Da sind schon mal mindestens 2 deiner Fragen beantwortet ;)

in alexaName sollte man keine Raumnamen haben. Räume gehen über Gruppen in der Alexa-App (sollte)...

Bzgl. Rollladen gibt es einen extra Thread...

proactiveEvents: damit kann die "Automatisierung" nach Amazon "verlagert" werden.

Erstmal danke für die schnelle Antwort :)

ja, hab ich gelesen - vielleicht nicht so aufmerksam ;)

- alexaRoom hab' ich jetzt mal entfernt
- alexaProactiveEvents tangiert mich aktuell nicht
- Rollladen muss ich noch den thread suchen

Den Raum in alexaName hatte ich eingebaut um identischen alexaName Werte zu vermeiden. Wenn das aber funktioniert 5x Deckenlicht zu haben, ist das für mich auch ok :) Räume hab' ich in Alexa schon angelegt.

Das mit der Luftfeuchtigkeit hatte ich gelesen ... hoffe das kommt irgendwann noch.

Fehlt dann aktuell (wenn ich den Rollladen Thread mit positivem Ergebnis durch habe) nur noch

- Steckdosen
- HomeStatus

Dann teste ich mal weiter :)

p.s.: gibt es irgendwo Infos zum Custom Skill ?

dt2510

das mit den Steckdosen nervt ziemlich ... ich habe in der Küche Teekocher, Kaffeemaschine und Toaster jeweils an einer Funksteckdose.

Setze ich genericDeviceType auf "ignore" kann ich keine davon per Alexa schalten, mache ich es nicht werden bei "licht aus" alle Steckdosen ausgeschaltet  :-\

rabehd

Meine (Homematic-)Steckdosen kommen ohne genericDeviceType aus und stehen in der Alexa-App als Schalter.
Auch funktionierende Lösungen kann man hinterfragen.

dt2510

Zitat von: rabehd am 21 Januar 2021, 16:43:09
Meine (Homematic-)Steckdosen kommen ohne genericDeviceType aus und stehen in der Alexa-App als Schalter.

Wenn ich genericDeviceType entferne, wird die Steckdose immer noch als Lampe angezeigt. Ich kann sie dann zwar per Alexa an und ausschalten, aber wenn ich "alexa, licht aus" sage, geht auch die Steckdose und somit z.B. die Kaffemaschine aus.

Andi35

Gehe doch mal in der Alexa App auf Deine Steckdose, dann oben rechts aufs Zahnrad dann steht da unter "Info" der Punkt "Typ" hier mal drauf klicken und "Steckdose" auswählen (vorher war vermutlich der Typ Licht eingetragen)
Das sollte dann funktionieren und die Steckdose nicht mehr als Licht erkannt werden und so über ihren Namen oder den Raum angesprochen werden können.

justme1968

ignore bedeutet ignorieren. klar das sie dann nicht verwendet werden können.

wenn etwas keine lampe ist solltest du auch nicht light als genericDeviceType verwenden. switch oder outlet wäre für steckdosen richtig.

generische namen kennt alexa aktuell scheinbar nur für licht, rollläden und thermostate. steckdosen noch nicht. -> bei amazon beschweren.

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

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

rabehd

#8
ZitatWenn ich genericDeviceType entferne, wird die Steckdose immer noch als Lampe angezeigt.
Wenn Du nicht mehr getan hast, dann ist das klar.
Entweder der Tip mit dem Ändern in der App oder in der App löschen und Neueinlesen. Vorher aber auch ein Restart des Alexa-Device.
Auch funktionierende Lösungen kann man hinterfragen.

dt2510

Zitat von: justme1968 am 21 Januar 2021, 18:37:32
ignore bedeutet ignorieren. klar das sie dann nicht verwendet werden können.
wenn etwas keine lampe ist solltest du auch nicht light als genericDeviceType verwenden. switch oder outlet wäre für steckdosen richtig.

Die Steckdose war auch nie als "light" definiert, sondern als "outlet", "ignore" oder ohne genericDeviceType. Dass "ignore" ignorieren bedeutet ist schon klar - war ja auch Absicht, damit die Kaffeemaschine an bleibt, wenn ich alle Lampen aus mache ...

Zitat von: rabehd am 21 Januar 2021, 19:57:52
Wenn Du nicht mehr getan hast, dann ist das klar.

Natürlich wurde ein Alexa restart ausgeführt und Geräte (im Browser unter alexa.amazon.de) neu gesucht.

Zitat von: Andi35 am 21 Januar 2021, 17:17:41
Gehe doch mal in der Alexa App auf Deine Steckdose, dann oben rechts aufs Zahnrad dann steht da unter "Info" der Punkt "Typ" hier mal drauf klicken und "Steckdose" auswählen (vorher war vermutlich der Typ Licht eingetragen)

Ich habe die Steckdosen jetzt aus der Alexa App entfernt, als genericDeviceType "outlet" eingerichtet, Alexa neu gestartet und nach neuen Geräten gesucht.

Ergebnis: Die Steckdosen erscheinen - wie zuvor - als Lampen. In den Einstellungen sehe ich zwar den Typ "Lampe" (weshalb auch immer), kann ihn aber nicht ändern. Wenn ich drauf klicke passiert gar nichts. Das einzige, was ich in der App ändern kann ist der Name.

guhu

schau doch mal, ob die Characteristics richtig sind bei Deinen Devices, näheres siehe "Alexa und Mappings"

Wenn das -aus welchen Gründen auch immer- nicht passt, dann geht's halt nicht.
FHEM 5.9 auf Synology DS918+ (in Docker), HM-CFG-USB2 mit hmlan, HM-CC-RT-DN, HM-SEC-SC-2, nanoCUL,a-culfw,deCONZ,Brennenstuhl-Steckdosen,-FB
Module:ENIGMA2,SONOS,FRITZBOX,FB_CALLLIST,WDT_TIMER,VCONTROL300,WITHINGS

TomLee

Zeig doch mal ein List einer der Steckdosen die als light gefunden werden und eines der Rollläden der nicht reagiert.

Auch wenn man eine gewisse Vorstellung des Anwesenheits-Dummy hat, auch ein List von dem.

dt2510

Zitat von: guhu am 22 Januar 2021, 09:11:36
schau doch mal, ob die Characteristics richtig sind bei Deinen Devices, näheres siehe "Alexa und Mappings"

Wenn das -aus welchen Gründen auch immer- nicht passt, dann geht's halt nicht.

Ich vermute mal Du beziehst dich auf das Attribut alexaMapping. Das Attribut ist seit Definition unverändert

#Characteristic=<name>=<value>,...
On=verb=schalte,valueOn=an;ein,valueOff=aus,valueToggle=um

Brightness=verb=stelle,property=helligkeit,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

Hue=verb=stelle,valuePrefix=auf,values=rot:0;grün:128;blau:200
Hue=verb=färbe,values=rot:0;grün:120;blau:220

Saturation=verb=stelle,property=sättigung,valuePrefix=auf,values=AMAZON.NUMBER
Saturation=verb=sättige,values=AMAZON.NUMBER

TargetPosition=verb=mach,articles=den;die,values=auf:100;zu:0
TargetPosition=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

TargetTemperature=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=grad

Volume:verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

#Weckzeit=verb=stelle,valuePrefix=auf;für,values=AMAZON.TIME,valueSuffix=uhr


Ich hab' jetzt mal spasseshalber genericDeviceType auf "switch" gesetzt. Auch dann wird das Gerät als Lampe angezeigt. In der Alexa App kann man leider nur Switch > Lampe ändern, aber nicht umgekehrt.

Eine Sache ist noch seltsam:

Ich hab' 2 verschiedene Typen von Steckdosen

- Greenwave PowerNode (ZWave): 1x als Lampe, 1x als Steckdose
- Aeotec Smart Switch (ZWave): 3x Steckdose

Die Aeotecs werden immer - egal ob oder welcher genericDeviceType genutzt wird - als Lampe angezeigt.
Die Greenwave Steckdose, die nicht als Lampe definiert ist, kann ich umschalten zwischen Lampe und Schalter. Da sie aber über einen Luftfeuchtigkeitssensor aktiviert wird, hab' ich sie auf "ignore" stehen.

dt2510

Zitat von: TomLee am 22 Januar 2021, 09:27:51
Zeig doch mal ein List einer der Steckdosen die als light gefunden werden und eines der Rollläden der nicht reagiert.

Auch wenn man eine gewisse Vorstellung des Anwesenheits-Dummy hat, auch ein List von dem.

Steckdose

Internals:
   DEF        xxxxxxxx 27
   FUUID      xxxxxxxx-xxxxxxxxx-xxxx-xxxxxxxxxxxxxxxx
   IODev      AeonGen5
   NAME       Aeotec_Smart_Switch_6_ID27
   NR         148
   STATE      on
   TYPE       ZWave
   ZWaveSubDevice no
   homeId     xxxxxxxx
   nodeIdHex  1b
   READINGS:
     2021-01-21 16:53:57   CMD             ZW_APPLICATION_UPDATE
     2019-09-25 10:20:59   UNPARSED        SENSOR_MULTILEVEL 063101012200d6
     2021-01-22 08:31:05   basicReport     255
     2020-02-09 22:33:10   config_85       5
     2019-11-08 14:27:38   deviceName      Kaffeemaschine
     2019-10-30 19:35:49   devices         
     2020-03-26 12:32:02   energy          2.92 kWh
     2019-10-30 19:35:49   plugsOn         0
     2019-01-04 14:40:56   setOnHomeDay    on
     2019-01-04 14:41:02   setOnHomeNight  on
     2019-01-04 14:41:10   setOnHomeTwilight on
     2021-01-22 08:31:05   state           on
     2019-09-24 12:59:21   temperature     21.6 C
     2021-01-22 08:31:05   timeToAck       0.133
     2021-01-22 08:31:05   transmit        OK
Attributes:
   DbLogExclude .*
   DbLogInclude state:3600
   IODev      AeonGen5
   Plugs      Plugs
   alexaName  Kaffeemaschine
   alias      Kaffeemaschine
   classes    ZWAVEPLUS_INFO SWITCH_BINARY SWITCH_MULTILEVEL COLOR_CONTROL CONFIGURATION SWITCH_ALL METER CLOCK ASSOCIATION ASSOCIATION_GRP_INFO MANUFACTURER_SPECIFIC VERSION FIRMWARE_UPDATE_MD POWERLEVEL MARK DEVICE_RESET_LOCALLY HAIL
   genericDeviceType switch
   group      Steckdosen
   icon       hue_filled_outlet
   room       Raum_EG_Küche
   stateFormat {ReadingsVal("Aeotec_Smart_Switch_6_ID27","basicReport","") eq "255"  ? "on" : "off" }
   userattr   Plugs Plugs_map group_map structexclude
   vclasses   ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 CLOCK:1 COLOR_CONTROL:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:2 HAIL:1 MANUFACTURER_SPECIFIC:2 METER:3 POWERLEVEL:1 SWITCH_ALL:1 SWITCH_BINARY:1 SWITCH_MULTILEVEL:2 VERSION:2 ZWAVEPLUS_INFO:2


Rolladen

Internals:
   AeonGen5_MSGCNT 1
   AeonGen5_RAWMSG 000400110a32022144000000cf0000
   AeonGen5_TIME 2021-01-22 09:21:38
   DEF        xxxxxxxx 17
   FUUID      xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx
   IODev      AeonGen5
   LASTInputDev AeonGen5
   MSGCNT     1
   NAME       FGR222_ID17
   NR         115
   STATE      dim 98
   TYPE       ZWave
   ZWaveSubDevice no
   homeId     xxxxxxxx
   isWakeUp   
   nodeIdHex  11
   READINGS:
     2019-05-19 18:05:20   UNKNOWN         multilevel type  00 fl: 22 arg: 0000
     2018-11-16 17:24:25   UNPARSED        SENSOR_MULTILEVEL 063101042204fa
     2019-01-02 10:35:27   battery         100 %
     2019-01-02 10:35:27   batteryPercent  100
     2019-01-02 10:35:27   batteryState    ok
     2018-08-02 10:35:41   configEnergyReports 10
     2018-08-02 10:35:41   configInRollerBlindModeOrVenetianBlind17 10
     2018-08-02 10:35:41   configInVenetianBlindModeTheParameter12 150
     2018-08-02 10:35:46   configManagingLamellasInResponseTo35 SetLamellasToTheirExtreme1
     2018-08-02 10:35:47   configMotorOperationDetection 10
     2018-08-02 10:35:47   configMotorOperationTime 240
     2018-08-02 10:35:47   configPeriodicPowerOrEnergyReports 3600
     2018-08-02 10:35:47   configPowerReports 10
     2018-08-02 10:35:52   configReportsType BlindPositionReportsSentToThe1
     2018-08-02 10:35:53   configResponseToFloodingAlarm NoReaction
     2018-08-02 10:35:53   configResponseToGeneralAlarm CloseBlind
     2018-08-02 10:35:53   configResponseToSmokeCOOrCO2Alarm OpenBlind
     2018-08-02 10:35:54   configResponseToTemperatureAlarm OpenBlind
     2018-08-02 10:35:55   configRollerShutterOperatingModes 1RollerBlindModeWithPositioning
     2018-08-02 10:35:55   configScenesAssociationsActivation AssociationsActivation
     2018-08-02 10:35:55   configSelfMeasurement SelfMeasurementInactive
     2018-08-02 10:35:56   configSetLamellasBackToPrevious13 1LamellasReturnToPreviouslySet1
     2018-08-02 10:35:56   configSwitchType MomentarySwitches
     2019-10-31 09:47:05   devices         
     2021-01-22 09:21:38   energy          2.07 kWh
     2018-08-02 10:34:07   model           FIBARO System FGRM222 Roller Shutter Controller 2
     2018-08-02 10:34:07   modelConfig     fibaro/fgrm222.xml
     2018-08-02 10:34:07   modelId         010f-0302-1000
     2021-01-22 07:40:47   position        96
     2021-01-22 08:40:47   power           0.0 W
     2016-11-19 17:57:01   reportedState   off
     2019-10-31 09:47:05   shuttersOpen    0
     2021-01-22 07:40:26   state           dim 98
     2021-01-22 07:40:26   timeToAck       0.313
     2021-01-22 07:40:26   transmit        OK
     2019-04-19 05:38:05   ultraviolet     0 UV
     2018-09-19 14:15:44   undef           0.93 undef
Attributes:
   IODev      AeonGen5
   Shutters   Shutters
   alexaName  Rolladen Büro
   alias      Rollladen
   classes    MULTI_CHANNEL_ASSOCIATION MANUFACTURER_SPECIFIC VERSION CONFIGURATION ASSOCIATION POWERLEVEL METER SWITCH_MULTILEVEL SENSOR_MULTILEVEL SWITCH_BINARY MANUFACTURER_PROPRIETARY PROTECTION MARK METER SENSOR_MULTILEVEL MANUFACTURER_PROPRIETARY SCENE_ACTIVATION SWITCH_MULTILEVEL SWITCH_BINARY
   genericDeviceType blind
   group      Rollladen
   icon       fts_shutter
   room       Raum_EG_Büro
   roomName   Büro
   userattr   Shutters Shutters_map group_map structexclude
   vclasses   ASSOCIATION:2 CONFIGURATION:1 MANUFACTURER_PROPRIETARY:1 MANUFACTURER_SPECIFIC:1 METER:2 MULTI_CHANNEL_ASSOCIATION:2 POWERLEVEL:1 PROTECTION:2 SCENE_ACTIVATION:1 SENSOR_MULTILEVEL:2 SWITCH_BINARY:1 SWITCH_MULTILEVEL:3 VERSION:1


Homestatus

Internals:
   FUUID      xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx
   NAME       HomeStatus
   NR         237
   STATE      Home
   TYPE       dummy
   READINGS:
     2021-01-22 08:01:28   state           Home
Attributes:
   group      Anlagenstatus
   icon       status_available
   room       System
   setList    Home Bed Away Holiday

dt2510

#14
Zitat von: dt2510 am 22 Januar 2021, 09:33:11
Ich hab' jetzt mal spasseshalber genericDeviceType auf "switch" gesetzt. Auch dann wird das Gerät als Lampe angezeigt. In der Alexa App kann man leider nur Switch > Lampe ändern, aber nicht umgekehrt.

Interessanterweise wird die Steckdose in der Alexa App immer noch als Lampe angezeigt, aber nicht mehr mit den Lampen geschaltet. Ich kann sie also normal per "Kaffeemaschine an" einschalten usw. bei "Licht an" oder "Licht aus" wird sie - wie gewünscht - nicht geschaltet.

edit

Kommando zurück ... die Steckdosen waren nicht im Raum "Küche" (wie die Beleuchtung) - werden immer noch mit dem Licht geschaltet.  :-[