homebridgeMapping for Alexa Routine

Begonnen von steffen83, 01 Januar 2021, 19:29:33

Vorheriges Thema - Nächstes Thema

steffen83

Hallo und frohes Neues in die Runde,
ich komme hier leider nicht weiter und habe schon alles mögliche ausprobiert. Im Forum und Wiki geht es alles mehr auf Homekit aus. Und zwar habe ich über ESP Easy (D1 mini) 3 Bewegungsmelder, welche ich gerne auch über die Alexa Routinen steuern möchte. Die Geräte werden mir schon als Bewegungsmelder in Alexa angezeigt, jedoch funktionieren sie nicht.

Hierzu ein List vom Bewegungsmelder (readingsproxy)
ZitatInternals:
   DEF        ESPEasy_ESP_Kueche:Bewegungsmelder_K_Kiste
   DEVICE     ESPEasy_ESP_Kueche
   FUUID      5eddfedd-f33f-3317-4205-5916c9bb249d8a43
   NAME       Bewegungsmelder_K_Kiste
   NOTIFYDEV  ESPEasy_ESP_Kueche,global
   NR         92
   NTFY_ORDER 50-Bewegungsmelder_K_Kiste
   READING    Bewegungsmelder_K_Kiste
   STATE      off
   TYPE       readingsProxy
   CONTENT:
     ESPEasy_ESP_Kueche 1
   READINGS:
     2020-12-31 09:36:19   motion          0
     2020-12-31 09:36:19   state           off
Attributes:
   alexaName  Bewegungsmelder_Keller
   alexaProactiveEvents 1
   devStateIcon on:motion_detector@red off:motion_detector@green
   genericDeviceType MotionSensor
   homebridgeMapping MotionDetected=motion,values=0:off;1:on
   room       Keller,alexa
   userReadings motion {if(ReadingsVal("Bewegungsmelder_K_Kiste","state","") eq "off") {return "0"} else {return "1"} },
In Alexa sieht das ganze wie folgt aus:
Anlage

Ich habe schon viel rumgefummelt um das ganze über das statereading irgendwie hinzubiegen jedoch keine Chance.
Wichtig, ich habe kein HOMEKIT! Ich möchte es lediglich über Alexa erkennen.

Vielleicht habe ihr ja die Lösung parat.
Gruß
Steffen
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

MadMax-FHEM

#1
Hm, ich bin jetzt auch kein homebridgeMapping-Spezialist.

Ich hab mal bei meinem ContactSensor "gespickt" (der funktioniert als Trigger für Routinen / falls du das gemeint hast):


homebridgeMapping ContactSensorState=state,values=closed:CONTACT_DETECTED;open:CONTACT_NOT_DETECTED


Daher würde ich eher sowas mal versuchen:


homebridgeMapping MotionSensorState=motion,values=1:MOTION_DETECTED;0:MOTION_NOT_DETECTED


Du könntest aber auch ohne userReadings (wenn du es nur deshalb hast) direkt auf state gehen (siehe mein Beispiel).

Aber bzgl. MotionSensorState und MOTION_DETECTED bzw. MOTION_NOT_DETECTED bin ich nicht sicher...

Evtl. reicht auch (schon) DETECTED oder NOT_DETECTED

EDIT: bzw. laut Wiki (klingt aber "eigenartig") auch sowas wie MotionDetected=motion,values=1:1;0:0 oder MotionDetected=state,values=on:1;off:0 bzw. steht dort auch, dass wenn ein Reading 'motion' vorhanden wäre sollte es autom. gehen. Aber verm. passen die Werte 0 und 1 nicht? Ansonsten eben im alexa-fhem Log (NICHT fhem Log!) nachschauen bei der Erkennung (reload oder restart von alexa-fhem). Und nach Änderungen nat. reload alexa-fhem und besser auch das Gerät bei Alexa entfernen und neu suchen (mindestnens bei "größeren" Änderungen)...

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)

micky0867

Zitat von: steffen83 am 01 Januar 2021, 19:29:33
Hallo und frohes Neues in die Runde,
Frohes neues!
Ich bin nur neugierig, weil ich's nicht verstehe:
Was ist Dein Ziel?

Vielleicht machst du ja etwas interessantes, was ich bisher noch nicht auf dem Schirm hatte.

Gruß
Micky

MadMax-FHEM

Ich nehme an: wenn Bewegung, dann starte eine Routine und das konfiguriert in der Alexa-App
(weil in fhem geht das mit dem echodevice ja schon lange ;)  )

Geht ja mittlerweile -> proactive Events

Habe ich mit meinem Fenster-Sensor auch schon mal gemacht (aber nur "rumgespielt")...
...aber ich bin eher "Verfechter" von: eine Stelle für Automatismen...

Sonst wird es irgendwann unübersichtlich...

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)

steffen83

Danke, ich prüfe mal ob es geht.

Wäre ja nur, falls meine Frau das mal machen möchte...
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

steffen83

ContactSensorState=state,values=on:CONTACT_DETECTED;off:CONTACT_NOT_DETECTED


homebridgeMapping MotionSensorState=motion,values=1:MOTION_DETECTED;0:MOTION_NOT_DETECTED


geht leider beides nicht. Ich sehe die zwar aber der reagiert nicht
noch ideen?
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

MadMax-FHEM

#6
Hast du (nur zum Test) mal einen ContactSensor (genericDeviceType) gemacht und mit meinem Mapping probiert?

Oder einfach mal mit diesem dummy:

EDIT: hier zur Sicherheit als "RawDef":

defmod dmAlleFenster dummy
attr dmAlleFenster alexaName alle Fenster
attr dmAlleFenster alexaProactiveEvents 1
attr dmAlleFenster genericDeviceType contact
attr dmAlleFenster homebridgeMapping ContactSensorState=state,values=closed:CONTACT_DETECTED;;open:CONTACT_NOT_DETECTED
attr dmAlleFenster setList open closed

setstate dmAlleFenster 2021-01-01 15:29:23 state closed


Und dann noch den dummy mal auf open oder closed setzen...
EDIT: sollte das setstate der RawDef gemacht haben ;)

Welche Version von alexa-fhem hast du?

Ich hatte vor einiger Zeit auch jemanden hier, der auch einige Zeit gebraucht hat bevor das (mein dummy) funktioniert hat.

Vielleicht mal "sacken" lassen auf Amazon-Seite ;)

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)

steffen83

Hmm schon komisch, mit dem Dummy geht es auch nicht
alexa-fhem version 0.5.55

habe ihn auch mal als security gemacht, geht auch nicht...
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

MadMax-FHEM

Aktuell ist 0.5.57 (oder sogar schon 0.5.58)
Aktualisieren geht über die Linux-Console (siehe Wiki ganz unten)...

Aber bevor du updatest: welches OS? Buster (und aktuell)? Wenn nicht dann besser erst mal nicht alexa-fhem updaten... ;)

Aber wie geschrieben: auch bei anderen die den dummy (testweise) verwendet haben hat es gedauert bevor das geklappt hat.

Ein restart oder reload alexa hast du gemacht und auch neu suchen lassen?

Mehr kann ich da jetzt leider nicht mehr helfen...

Außer: der dummy funktioniert bei mir (habe ich den "anderen" auch immer geschrieben und irgendwann kam dann: und jetzt bei mir auch ;) )...

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)

steffen83

So, ich habe den PI mal neugestartet. der Dummy geht jetzt.... aber halt das readingProxy nicht
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

MadMax-FHEM

#10
Mal beim readingsProxy die Attribute meines dummy probiert?

Ansonsten muss ich noch mal schauen wie das mit Motion geht...
...ich kann ja mal so einen readingsProxy (oder dummy) nachbauen...

EDIT: poste doch mal ein "RawDef" deines readingsProxy...

EDIT: aber verm. erst morgen...

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)

amenomade

Zitat von: MadMax-FHEM am 01 Januar 2021, 22:00:47

EDIT: sollte das setstate der RawDef gemacht haben ;)

setstate generiert aber kein Event. Somit wird Alexa nicht aktualisiert. Wenn steffen kein "set alexa reload" oder kein Restart von alexa-fhem gemacht hat, passiert dann nichts.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

MadMax-FHEM

Ja aber der Fensterkontakt geht ja!?

Aber ich komme mit Motion nicht weiter...
...zu dumm dazu ;)

Konnte ja nicht mal das passende genericDeviceType finden.

Glaube nicht, dass 'MotionSensor' richtig ist.
Die anderen sind ja immer nur kurze "Worte": blind, light, switch, ...

Ich habe schon mal mit 'security' gebastelt und 'motion' hab ich auch schon mal probiert aber irgendwie...

Also ich weiß (aktuell) leider nicht weiter, sorry.

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)

TomLee

Meine Vermutung, es gibt kein Event bei dem ReadingsProxy aus dem ersten Post, die Readings werden nur "aktualisiert", darum kommt auch nix bei "Alexa" an.

Beim readingsProxy müssen mMn/Erfahrung nach Events erzwungen werden, hier bspw. mit event-on-change-reading state

(Trigger im userReadings hier vermutlich (mein ich) nicht nötig)

Mag sein das ich mich täusche, es auch noch nicht ganz verstanden zu haben, aber der Wert der Temperatur aus diesem readingsProxy bspw.:

defmod rp_WW_temp readingsProxy MQTT2_ebusd_bai:1_Warmwassertemperatur
attr rp_WW_temp alexaName nemo
attr rp_WW_temp comment {fhem("setreading rp_WW_temp temperature $VALUE")}\
\
{fhem("setreading $DEVICE temperature $VALUE")}\
\
CurrentTemperature=state
attr rp_WW_temp event-on-change-reading state
attr rp_WW_temp genericDeviceType thermometer
attr rp_WW_temp homebridgeMapping CurrentTemperature=state
attr rp_WW_temp room Homekit,Sprachsteuerung

setstate rp_WW_temp 45.0
setstate rp_WW_temp 2021-01-02 00:00:38 state 45.0


ist nur wegen dem eocr "Alexa" bekannt.

MadMax-FHEM

Naja alles schön und gut ABER: der Fenster dummy geht ja und dass/wie es mit Temperatur etc. geht ist auch klar bzw. zu finden...

Das mit den Events wird dann wichtig, wenn mal der "Rest" passt bzw. klar ist...

Was fehlt: wie muss denn der genericDeviceType für Motion Sensor lauten. Habe (lange) gesucht, konnte aber nirgends was finden...
(gut im Code hab ich noch nicht geschaut)
Genausowenig wie das homebridgeMapping lauten muss...

Habe bei mir ja mit einem dummy "rumgespielt" (und da gibt es Events ;)  Fenster geht ja wie geschrieben auch)...
...nur irgendwas mit Motion hab ich nicht hinbekommen... :-\

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)