FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: ChrisLenz am 29 August 2019, 16:30:35

Titel: FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 29 August 2019, 16:30:35
Hallo,
ich hab mal eine frage.

Ich habe den S7 Adapter mit der Ha-Bridge laufen um mein Licht über Alexa zu steuern, funktioniert auch einwandfrei.
Ich finde die direkte Programmierung über den Connector für Amazon Alexa aber etwas angenehmer und vorteilhafter.
Gibt es jemanden der es schon geschafft hat?
Die Verbindung von FHEM zum Alexa Skill funktioniert, aber ich finde keine Geräte
Vielleicht hat ja jemand eine Beispiel Programmierung?
define Temp.Wohnz S7_ARead db 20 4 float

attr Temp.Wohnz IODev CPU315
attr Temp.Wohnz event-on-change-reading state
attr Temp.Wohnz group 1.0.1.Temperatur
attr Temp.Wohnz icon temp_inside
attr Temp.Wohnz room 01.Wohnzimmer
attr Temp.Wohnz stateFormat {sprintf("%.1f",ReadingsVal($name,"state",0))." C°"}

define Wz.Wandlampe S7_DWrite db 23 0.0
attr Wz.Wandlampe IODev CPU315
attr Wz.Wandlampe devStateIcon .*:toggle:TRIGGER
attr Wz.Wandlampe event-on-change-reading state
attr Wz.Wandlampe group 1.0.0.Licht EG
attr Wz.Wandlampe icon IR
attr Wz.Wandlampe room 01.Wohnzimmer

zur Zeit sieht das so bei mir aus.

Oder funktioniert das gar wegen der Siemens Steuerung
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 29 August 2019, 17:13:50
Du kannst entweder einen Dummy und Notify "zwischenschalten", das geht auf jeden Fall.

Oder du beschäftigst dich mit homebridgeMapping...

Weil alexa-fhem "erkennen" muss, um "was" es sich handelt und "was" das Gerät "kann"...

Entweder passen die Readings (z.B. temperature statt Temperatur) und die entsprechenden "set Befehle" (z.B. on/off) ODER es muss mittels homebridgeMapping eben entsprechend "erläutert" werden welcher Amazon Befehl wie auf das Gerät "gemapped" werden muss bzw. eben der Zustand "zurück" damit alexa-fhem/Amazon das "versteht"...

Auch genericDeviceType "unterstützt" dabei...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 11 September 2019, 21:36:24
Hallo Joachim,
Danke schön mal für die schnelle Antwort, bin leider heute erst dazu gekommen mich noch mal mit dem Skill auseinander zu setzen!
Könntest du mir mal ein Beispiel tippen für einen dummy z.B für den Taster Wandlampe
Die Verbindung steht, Amazon findet wohl auch Geräte nur steuern kann ich die nicht!
Viele Grüße
Chris
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 11 September 2019, 22:15:38
Hi Chris,

jep geht klar, hier eine "raw definition" (also per raw definition einfügen / oder alles per web interface halt "einzeln"):


defmod dmControlLight dummy
attr dmControlLight alexaName Wandlampe
attr dmControlLight genericDeviceType switch
attr dmControlLight room alexa
attr dmControlLight setList on off


Der Raum alexa ist optional (mache ich wegen der "Ordnung")...
...beim alexaName halt schauen was du noch nicht hast.

Und dann brauchst du noch ein notify.
Das notify reagiert, wenn die "Dummy-Lampe" geschalten wird und schaltet dann die "echte Lampe" an (also was immer eben an/aus gehen soll):


defmod nControlLight notify dmControlLight:(on|off) {if($EVENT eq "on"){fhem("set SIMATIC on")}else{fhem("set SIMATIC off")}}


Statt "set SIMATIC on" bzw. "set SIMATIC off" (inkl. der Anführungszeichen) musst du halt den entsprechenden Befehl eingeben, der nötig ist damit entsprechend geschalten wird...

Viel Erfolg, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 12 September 2019, 13:34:41
hi Joachim,
danke schon mal, sehr cool.
werde es heute Abend mal testen, dachte mir das schon mit dem notify, habs nur noch nicht so oft gemacht!
FHEM dann doch etwas anders zu programmieren als eine S7  ;D

Vielen Dank, hast mir sehr geholfen
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 12 September 2019, 13:43:00
Hätte wohl noch eine frage,
in der Beschreibung wird immer nur von Schaltern gesprochen, funktioniert das ganze auch mit Tastern???
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 12 September 2019, 14:07:11
Hmm, Taster?

Du meinst das in der S7 sind "nur" Taster!?

Hmmm.
Was dann halt nicht bzw. schwer/aufwändig geht ist, dass der Status in der Alexa-App immer korrekt ist...

Weil:

"Alexa schalte das Licht ein" -> Dummy geht auf "on" -> Notify reagiert und schaltet den "Taster" (der geht halt wieder zurück auf "aus")

Dass der Taster wieder zurück geht "sieht" Amazon halt nicht, daher bleibt das Licht in der Alexa-App halt "eingeschaltet", weil ja der Dummy auch nicht "zurück fällt"...
...aber das Licht brennt ja auch noch, oder?

D.h. dein S7 Schalter ist ein "Toggle-Taster"!? Also jede Aktivierung ändert den Aktor:

1. Aktivierung -> Licht an
2. Aktivierung -> Licht aus
3. Aktivierung -> Licht an

usw. ?

Oder hast du einen "Taster" für an und einen für aus?

Letzteres ist dann kein Problem, da du einfach im Notify entscheidest (je nachdem was der Dummy "schickt" [an oder aus]) welchen "Taster" du setzt...
...bei Ersterem wird es halt schwer.

Weil du dann ja nicht weißt, ob das Licht grad an oder aus ist, also was der nächste Toggle dann tut...
Aber ich denke (hoffe) du kannst den tatsächlichen Zustand des Aktors rauskriegen und dann ist es auch kein Problem...
...wenn du das nicht kannst würde halt ein "Alexa schalte das Licht ein" es halt auch mal ausschalten ;)

Oder habe ich das mit dem Taster ganz falsch verstanden, dann brauche ich mehr "Licht" ;)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 12 September 2019, 14:35:36
Also in der S7 verarbeite ich nur Taster Signale, dadurch kann ich vom Tablet/Handy oder am Taster selber die Lampe ein oder aus (schalten)
Die Rückmeldung kommt von der S7 und schaltet mir ein Bit für FHEM, bzw. Für das Tablet!
Ob Alexa jetzt die richtige Rückmeldung hat ist mir ja eigentlich egal, könnte ja theoretisch beide Befehle (an oder aus) geben und sie würde mir immer ein Impuls zum Tasten geben!
Als App Steuerung benutze ich FHEM und da sollte die Rückmeldung ja dann Stimmen.
Ich würde den ja quasi den Dummy nur benutzen damit Alex den ,,Taster" über den Skill überhaupt findet oder?
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 12 September 2019, 14:56:46
Zitat von: ChrisLenz am 12 September 2019, 14:35:36
Also in der S7 verarbeite ich nur Taster Signale, dadurch kann ich vom Tablet/Handy oder am Taster selber die Lampe ein oder aus (schalten)
Die Rückmeldung kommt von der S7 und schaltet mir ein Bit für FHEM, bzw. Für das Tablet!

Also so wie ich dachte, bzw. sicherheitshalber:

Du schaltest "in der SIMATIC" (was hast du denn da, nur Interesse ;)  ) einen "Taster".
Daraufhin schaltet die SIMATIC dann echt was ein/aus und meldet das dann zurück an fhem (an "was" dort?) damit dann eine Anzeige stimmt!?
Über "das was immer das ist" zur Anzeige kannst du per "drücken" auch schalten!?
Dann kannst du doch entweder schon "das" nehmen und versuchen Alexa "beizubringen" (statt zusätzlicher Dummy/Notify) oder "das" per Notify schalten (so wie per Weboberfläche), statt den Taster der SIMATIC...
...dann würde auch der Zustand passen...


Zitat von: ChrisLenz am 12 September 2019, 14:35:36
Ob Alexa jetzt die richtige Rückmeldung hat ist mir ja eigentlich egal, könnte ja theoretisch beide Befehle (an oder aus) geben und sie würde mir immer ein Impuls zum Tasten geben!

Nicht ganz also irgendwie ja ;)

Du musst Alexa schon sagen, ob du Licht an oder aus haben willst ;)

Daraufhin wird eben der Dummy auf on oder off gesetzt.
Ein Notify wie folgendes reagiert auf on und off:

define nNotifyOnOff notify AlexaDummy:(on|off) set SIMATIC Taster on/off/toggle/?

Würde praktisch egal was du zu Alexa sagst immer den SIMATIC Taster "betätigen"...
...ist halt nur komisch, wenn du sagst: "Alexa schalte das Licht aus" und es wäre schon aus, dann würde es halt an gehen ;)

Klar bei Licht das man sieht ist es egal bzw. da kann man als Mensch natürlich passend Anweisungen geben...
...aber "komisch" bleibt es trotzdem ;)


Zitat von: ChrisLenz am 12 September 2019, 14:35:36
Als App Steuerung benutze ich FHEM und da sollte die Rückmeldung ja dann Stimmen.

Vermutlich ja ;)

Zitat von: ChrisLenz am 12 September 2019, 14:35:36
Ich würde den ja quasi den Dummy nur benutzen damit Alex den ,,Taster" über den Skill überhaupt findet oder?

Ja, so war die erste Idee...
...bzw. halt: einfach umzusetzen und funktioniert.

Aber trotzdem jetzt noch mal:

was nimmst du denn zur Statusanzeige bzw. Bedienung in fhem!?

Poste doch mal ein list davon...

Wenn das schon ein Dummy etc. ist/wäre, dann kann man den schon vermutlich auch für Alexa "erkennbar" machen und fertig...
...inklusive, dass der Status stimmt/stimmen sollte und sogar in der Alexa-App...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 12 September 2019, 15:06:38
Ich schick heute Abend mal die Rückmeldung!
Ist Quasi wie der Taster programmiert in fhem,
Define wz.wandlampe.rue S7_DRead db21 0.0
Taster kennst du ja einmal hab ich einen DRead und einmal einen DWrite

Aber ich schick das heute Abend mal
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 12 September 2019, 15:11:48
Hm, das ist also ein fhem-S7-Dingens...

Da hab ich leider keine Ahnung... :-|

Bzw. wird man dann nicht um homebridgeMapping drumrum kommen, wenn es überhaupt geht.

Aber trotzdem mal:

wie ist dann der Status in fhem "richtig"?
Oder ist das "nur" das SIMATIC-Dingens für die Anzeige/Steuerung aus fhem-Web?
(und niht der "Taster" den du für das Notify dachtest!?)


EDIT: grad mal nach S7_DRead geschaut. Ok, also prinzipiell kenne ich SIMATIC ja ;) und weiß dass du damit (vermutlich) den Status ausliest!? Zum Schalten hast du dann noch extra was, also einen S7_DWrite (auf ein anderes Bit!?) das dann intern in der SIMATIC ein "Taster" ist und damit eben den Aktor toggelt und an die Adresse des S7_DRead zurück "spiegelt"!? Was nutzt du zur Anzeige bzw. wie machst du das, dass du per "Anzeige" (in fhem-Web?) wo ja "nur" der S7_DRead GELESEN und angezeigt wird auch schalten kannst (also auf den S7_DWrite "einwirkst"). Das ist mir noch etwas "schleierhaft"... ;)


Welche "Befehle" kann das Ding bzw. wie schaltest du damit und wo/wie siehst du dann den Status!?
Aber ich warte mal das list ab, dann sehe ich vielleicht was...

Ansonsten wie geschrieben: Dummy und Notify sollte auf jeden Fall gehen.

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 12 September 2019, 21:56:55
Hallo Joachim,
also Schalter funktioniert nicht!
Alexa hat den Dummy gefunden, aber eben nur als schalter und das klappt nicht, meien sps erkennt das nicht!
Ich muss mehrmals den Schalter über Alexa schalten damit die Lampe an oder ausgeht.

#Taster Licht
define Wz.Wandlampe S7_DWrite db 23 0.0
attr Wz.Wandlampe IODev CPU315
attr Wz.Wandlampe devStateIcon .*:toggle:TRIGGER
attr Wz.Wandlampe event-on-change-reading state
attr Wz.Wandlampe group 1.0.0.Licht EG
attr Wz.Wandlampe icon IR
attr Wz.Wandlampe room 01.Wohnzimmer

#Rueckmeldungen Lampen
define Wz.Wandlampe.Rue S7_DRead db 21 0.0
attr Wz.Wandlampe.Rue IODev CPU315
attr Wz.Wandlampe.Rue event-on-update-reading state
attr Wz.Wandlampe.Rue group 1.0.0.Licht EG
attr Wz.Wandlampe.Rue room 01.Wohnzimmer,17.Zentral Licht
define Wz.Deckenlampe.Rue S7_DRead db 21 0.1

Hier mal die FHEM Taster und die Rückmeldung

      A     "Wohn_Ta.1"
      =     %L5.0
      BLD   103
      A     "Wohn_Ta.2"
      =     %L5.1
      BLD   103
      A     "DB23_BINAER_VON_FHEM".Wz_Wandlampe
      =     %L5.2
      BLD   103
      A     "Wohn1_Li_Ansch"
      =     %L5.3
      BLD   103
      A(
      O     "Licht_Zentral_AUS"
      O     "DB23_BINAER_VON_FHEM".Zentral_Aus_EG
      )
      =     %L5.4
      BLD   103
      CALL  "FB10 Licht anschalten", "DB198 Licht Wohn, Wandlampen"
         Taster1          :=%L5.0
         Taster2          :=%L5.1
         Taster3          :=
         Licht_FHEM       :=%L5.2
         Panel            :=%L5.3
         Zentral_Aus      :=%L5.4
         Rueckmeldung     :="Wohn1_Hi_Me_Rue"
         FHEM_Rückmeldung :="DB21_BINAER_AN_FHEM".Wz_Wandlampe_Rue
         Lampe            :="Wohn_Licht1_AN"
      NOP 0

Hier mal die DB verarbeitung in der SPS S7

Vielleicht wird es dir jetzt etwas klarer, denke mit dem Connector werde ich warten müssen bis dieser auch taster erkennt, vielleicht werde ich mal mit den Temperaturen befassen, wäre cool wenn ich es hinbekomme das Alexa mir die Temperartuen an sagt
Aber auch da  werde ich mich erst mal ein lesen müssen,
bin mir auch nicht sicher ob der Connector von FHEM parallel mit der HABridge auf dem Raspberray läuft

define Temp.Wohnz S7_ARead db 20 4 float
attr Temp.Wohnz IODev CPU315
attr Temp.Wohnz event-on-change-reading state
attr Temp.Wohnz group 1.0.1.Temperatur
attr Temp.Wohnz icon temp_inside
attr Temp.Wohnz room 01.Wohnzimmer
attr Temp.Wohnz stateFormat {sprintf("%.1f",ReadingsVal($name,"state",0))." C°"}
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 12 September 2019, 22:06:52
Bitte die lists etc. in "code-Tags" das '#' im "Menü"...

Also d.h. die SIMATIC braucht unbedingt eine Taster-Bedienung!?

Also ein: on - off um zu schalten!?

Und zwar immer ein "on - off"!?

Du kannst beim Dummy die setExtenions aktivieren (ist ein Attribut, habe ich noch nie verwendet, kenne es nur ;)  ).
Damit sollte auch ein Dummy on-for-timer können...

Dumm nur, dass du dann ein homebridgeMapping brauchst, welches von on/off immer auf on-for-timer mapped...

Was du mal versuchen kannst:

"Alexa schalte AlexaDummy ein" (AlexaDummy dann durch den Namen den du bei alexaName vergeben hast nat. ;)  )

Dann über die Weboberfläche:

set AlexaDummy off

Hier dann AlexaDummy durch den Namen (also wo in der Detailansicht NAME steht) ersetzen...

Poste doch mal ein list von dem Notify und dem Dummy...

EDIT: statt dem homebridgeMapping geht evtl. auch ein weiterer Trick, vors. das mit dem Webinterface, also den "off" nachzuschicken klappt...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 12 September 2019, 22:11:14
ich versuche dir das mal WE zu schicken, für heute ist schluss, morgen noch mal arbeiten
Schönen Feierabend noch
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 12 September 2019, 22:20:09
Jep, klar. Ok.

Nur noch mal zur Sicherheit:

Der Dummy wird gefunden und du kannst ihn per Sprache schalten!?
Zu sehen an der "Glühbirne" in der Weboberfläche...
Das Notify reagiert, also das SIMATIC Bit wird gesetzt? (nur halt nicht zurückgesetzt, also Schalter nicht Taster)

Wenn das alles zutrifft, dann mal das Bit zurücksetzen.

Dann per Sprache schalten und manuell per Weboberfläche zurücksetzen (also Taster "spielen"):
- Per Sprache einschalten.
- Und (sofort) danach mal was ich dir geschrieben habe: set AlexaDummy off in das Webcmd eingeben
(richtigen Namen nat. nehmen! ;)  )

Wenn es dann geht wie es soll, zumindest mal für das Einschalten...
...Ausschalten würde dann ebenso gehen nur, musst du halt erneut sagen: "Alexa schalte das Licht ein" (erst mal dumm, dass du immer "ein" sagen musst, obwohl du "aus" haben willst ;)  ).
Aber darum kümmern wir uns, wenn es so klappt...
...wenn nicht, hmmm dann wird es wohl doch noch aufwändiger...

Andere Frage: warum brauchst du auf SIMATIC-Seite unbedingt einen Taster? Kannst du das nicht auf Schalter-Funktionalität umprogrammieren!?

Dann mal gute Nacht, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 13 September 2019, 08:40:59

Guten Morgen,
"
[size=0.85em]Der Dummy wird gefunden und du kannst ihn per Sprache schalten!?[/size]
[/size]
[size=0.85em]Zu sehen an der "Glühbirne" in der Weboberfläche...[/size]
[size=0.85em]Das Notify reagiert, also das SIMATIC Bit wird gesetzt? (nur halt nicht zurückgesetzt, also Schalter nicht Taster"[/size]
[size=0px]


Jeb genau so ist es, wenn die Lampe aus ist geht sie an, dann müsste man den Schalter per Sprache ausschalten, dann wieder anschalten damit die Lampe ausgeht über den positiven Impuls


"[/size][/size]
[size=0px][size=0.85em]Dann per Sprache schalten und manuell per Weboberfläche zurücksetzen (also Taster "spielen"):[/size]
[size=0.85em]- Per Sprache einschalten.[/size]
[size=0.85em]- Und (sofort) danach mal was ich dir geschrieben habe: set AlexaDummy off in das Webcmd eingeben[/size]
[size=0.85em](richtigen Namen nat. nehmen! [/size]
[size=0.85em]  "[/size]
[/size]
[size=0px]
[/size]
[size=0px][size=0.85em]das funktioniert ist aber ja keine Option, dann arbeite ich lieber weiter mit der HA Bridge, zumindest für das Tasten![/size]
[/size]
[size=0px]
[/size]
[size=0px][size=0.85em]Hab gestern in der Beschreibung noch was gefunden[/size]
[/size]
[size=0px][size=0.85em]Über genericDeviceType switch bzw. light kann bestimmt werden ob alexa als Schalter oder Licht behandelt wird. Meinst du das ändert was am schalt verhalten? Über die HA Bridge wird meine Lampe ja auch als Hue Lampe bei Alexa gefunden.[/size]
[/size]
[size=0px]
[/size]
[size=0px][size=0.85em]Wenn das alles nix bringt werde ich wohl versuchen den FHEM Connector für die Temperaturen benutzen und parallel eben mit der HA Bridge die Taster steuern.[/size]
[/size]
[size=0px]
[/size]
[size=0px][size=0.85em]Umprogrammieren geht gar nicht, dann müsste ich Hardware mäßig Zuviel umbauen, keine chance [/size]
[/size]
[size=0px]
[/size]
[size=0px][size=0.85em]werde versuchen am WE noch mal bisschen zu spielen [/size]
[/size]
[size=0px]
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 09:10:23
Guten Morgen.

Äh kannst du das noch mal umformatieren!?

Kann man so echt schwer/kaum/gar nicht lesen...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 09:12:09
Eins konnte ich rauslesen:

warum sollte es mit der ha-Bridge gehen?!

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 13 September 2019, 10:17:59
Sorry, komme irgendwie nicht dem Chat hier klar ;D

Der Dummy wird gefunden und du kannst ihn per Sprache schalten!?
Zu sehen an der "Glühbirne" in der Weboberfläche...
Das Notify reagiert, also das SIMATIC Bit wird gesetzt? (nur halt nicht zurückgesetzt, also Schalter nicht Taster)


Jeb genau so ist es, wenn die Lampe aus ist geht sie an, dann müsste man den Schalter per Sprache ausschalten, dann wieder anschalten damit die Lampe ausgeht über den positiven Impuls

Dann per Sprache schalten und manuell per Weboberfläche zurücksetzen (also Taster "spielen"):
- Per Sprache einschalten.
- Und (sofort) danach mal was ich dir geschrieben habe: set AlexaDummy off in das Webcmd eingeben
(richtigen Namen nat. nehmen!


Das funktioniert ist aber ja keine Option, dann arbeite ich lieber weiter mit der HA Bridge, zumindest für das Tasten!
Hab gestern in der Beschreibung noch was gefunden
Über genericDeviceType switch bzw. light kann bestimmt werden ob Alexa als Schalter oder Licht behandelt wird. Meinst du das ändert was am schalt verhalten? Über die HA Bridge wird meine Lampe ja auch als Hue Lampe bei Alexa gefunden.

Wenn das alles nix bringt werde ich wohl versuchen den FHEM Connector für die Temperaturen benutzen und parallel eben mit der HA Bridge die Taster steuern.

Umprogrammieren geht gar nicht, dann müsste ich Hardware mäßig Zuviel umbauen, keine Chance

werde versuchen am WE noch mal bisschen zu spielen


die HA Bridge ist ja ein extra Programm auf dem Raspberry, da ich die Taster in FHEM definiert habe. Alexa die HA Bridge als HUE Lampe findet und ich das Signal dann von der HA Bridge, quasi als Set Befehl an FHEM schicke und FHEM meine SPS steuert.

durch den Connector hätte ich mir das zweite Programm eben gespart
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 10:29:59
Das mit dem manuellen "Nachschalten" war ja nur als Test gedacht, damit ich verstehe wie deine SIMATIC-Logik tut.

Vielleicht besser das mal erläutern... ;)

ABER MAL GANZ ANDERS, daher die Frage mit ha-bridge.
(kenne ich nutze ich auch auf einem meiner Systeme)

ABER: wie du selber schreibst setzt du doch dort "auch nur" fhem Befehle ab!?

GENAU DIESE EINFACH IN DAS NOTIFY!!

Also der Ablauf mit alexa-fhem (vielleicht noch mal [ausführlicher]):

"Alexa schalte AlexaDummy ein" -> AlexaDummy geht auf "on" -> Notify nAlexaDummy "erkennt" das und setzt dann eben die notwendigen fhem-Befehle für "an" ab (genauso wie in der ha-bridge)

"Alexa schalte AlexaDummy aus" -> AlexaDummy geht auf "off" -> Notify nAlexaDummy "erkannt" das und setzt eben den/die notwendigen fhem-Befehle für "aus" ab (genauso wie in der ha-bridge)

Also kurz: was in der ha-Bridge geht, geht mit alexa-fhem (normalerweise) schon lange ;)

Poste doch mal die Befehle, die du in der ha-bridge stehen hast...


D.h. der AlexaDummy ist "nur" die Verbindung zu Alexa/Amazon, das Notify nAlexaDummy ist dann die "Brücke" (genau wie ha-bridge ;)  ) zu fhem...

Und in dem Notify kann man sehr einfach sehr viel mehr tun als in den (wahrscheinlich HTTP-Requests) Befehlen der ha-bridge.
Du kannst im Notify ja sogar Perl-Funktionen und sogar System-Funktionen, Scripte, etc. aufrufen...


Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 13 September 2019, 10:45:53
so hatte ich mir das auch gedacht,

ich glaube das Problem bin "ich" hab Zuwenig Ahnung von perl und FHEM, bin so mehr der tester :D, S7 geht einfacher ist für mich  irgendwie logischer

die HA Bridge schickt aber auch einen Taster Befehl

http;// IP:8088/fhem?cmd0set%Wz.Wandlampe%20trigger

so ungefähr sieht der aus, fürs ein und ausschalten der Lampe
d.h. ich schicke glaub ich direkt den Trigger Befehl nach FHEM

Der dummy müsste sich automatisch zurück setzen, dann würde das funktionieren

Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 10:54:17
Falsch.

Du schaltest NICHT den Dummy mit dem set-Befehl sondern genau diesen Trigger-Befehl in das Notify!

Also:

define nNotifyOnOff notify AlexaDummy:(on|off) set Wz.Wandlampe trigger

Was bei diesem Konstrukt (aber ja auch bei der ha-bridge so sein müsste) ist, dass wenn du zu Alexa sagst: "Alexa schalte das Licht ein" und es ist schon an, geht es halt aus ;)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 13 September 2019, 11:12:13
Zitat"Alexa schalte das Licht ein" und es ist schon an, geht es halt aus ;)

Dann eben noch eine Routine "Schalte das Licht" mit reinnehmen.

Gruß Thomas
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 11:13:13
Noch mal zur Verdeutlichung der beiden unterschiedlichen "Konstrukte" alexa-fhem und ha-bridge.

ha-bridge:

dort angelegte Geräte werden von Alexa/Amazon als HUE-Lampen/Schalter erkannt

diese (also "nur" die "Abbilder" in der ha-bridge) werden per Sprache geschalten und setzen dann eben HTTP-Requests an fhem ab

daraufhin werden dann Devices (meist "echte Geräte") in fhem entsprechend "geschalten"...

Nachteil: du brauchst einen weiteren Web-Zugang mit fixem (oder deaktiviertem!? Ohje!) csrfToken (oder du hast deinen "Standardzugang" so versehen, auweia!!)


alexa-fhem:

du hast in fhem Devices (können und das ist eigentlich der Plan ;)  direkt "echte Geräte" sein)

diese werden von alexa-fhem (NodeJs) "erkannt" und an Amazon (fhem-Skill) weitergegeben
(und dort geht mehr als "nur" mit HUE: Multimedia, Temperatur, Fensterkontakte, ...)

Per Sprache "wirkst" du dann direkt auf die Devices (und wenn das ein "echtes Gerät" ist auch direkt darauf) ein

DAS IST DER EIGENTLICHE "PLAN" ;)


Wenn du "echte Geräte" hast bzw. eben entspr. Devices in fhem, die nicht direkt erkannt werden, dann kann das mit genericDeviceType und homebridgeMapping "angepasst" werden (geht aber auch nicht immer bzw. wenn man mehrere Geräte schalten will oder noch Prüfungen vorher durchführen will, dann geht das so nicht [so einfach])



Oder eben der "Umweg" über Dummy/Notify (damit geht praktisch alles / funktioniert auch für ha-bridge):

Dummy wird erkannt und geschalten -> Notify reagiert und führt dann entweder direkt die passenden Befehle aus (das sollte dann aber auch mittels homebridgeMapping machbar sein, also ohne Dummy und Notify [homebridgeMapping setzt eben erkannte/gesendete Befehle von Amazon auf notwendige Befehle für das entspr. Device um]) ODER aber macht vorher in Perl (z.B. Sub in myUtils) entsprechende "Prüfungen" o.ä. und schaltet dann (das geht dann mit homebridgeMapping schon nicht mehr [so einfach])

Klarer Nachteil: weitere Devices in fhem (Dummy und Notify) und der Status zwischen "echtem" Gerät (und "Repräsentation" in fhem) und dem "Umwegs-Dummy" stimmen (meist) nicht überein...


Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 11:14:32
Zitat von: TomLee am 13 September 2019, 11:12:13
Dann eben noch eine Routine "Schalte das Licht" mit reinnehmen.

Gruß Thomas

Gute Idee...
...aber dazu muss es erst mal gehen ;)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 13 September 2019, 12:23:45
Komm nur zum Teil mit, wäre es nicht möglich das mit Readingsproxy umzusetzen.

Dieses Gerät schaltet doch aus FHEM das Licht korrekt (so hab ich das bisher verstanden oder welches genau):

Zitatdefine Wz.Wandlampe S7_DWrite db 23 0.0
attr Wz.Wandlampe IODev CPU315
attr Wz.Wandlampe devStateIcon .*:toggle:TRIGGER
attr Wz.Wandlampe event-on-change-reading state
attr Wz.Wandlampe group 1.0.0.Licht EG
attr Wz.Wandlampe icon IR
attr Wz.Wandlampe room 01.Wohnzimmer


Wenn das so ist könnt ich ein Readingsproxy-Beispiel zeigen, gib mal

Zitatjsonlist2  Wz.Wandlampe

oben in die Befehlszeile ein und poste hier die Ausgabe. Die Befehle für an und aus bitte fett hervorheben.

Gruß

Thomas

Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 12:49:16
Hi Thomas,

ja klar jetzt wo wir so weit sind und wissen welches Device und mit welchem Befehl es (scheinbar) geht ginge auch readingsProxy...
...ich würde nur (weil wir da schon dran sind und nicht eine weitere Verwirrung will) erst mal bei dem Dummy (der ja schon gefunden und geschalten werden kann) und dem Notify mit dem jetzt (hoffentlich) richtigen "Befehl" (nämlich einfach dem der ha-bridge, welche ja wohl tut) weitermachen... :)


EDIT: also Dummy von hier https://forum.fhem.de/index.php/topic,103363.msg973797.html#msg973797 bzw. was immer genau draus geworden ist ;)  und das passende Notify mit dem set-Befehl aus der ha-bridge: define nNotifyOnOff notify AlexaDummy:(on|off) set Wz.Wandlampe trigger der Name des Dummy (im Beispiel AlexaDummy) und der Teil des Notify-RegEx (ebenfalls AlexaDummy:(on|off)  ) muss nat. passen damit das Notify "auslöst" (https://wiki.fhem.de/wiki/Notify)

Danach gibt es immer Möglichkeiten für "schöner"...
...weil genau genommen bräuchte man (vermutlich) nicht mal einen readingsProxy sondern es würde (wahrscheinlich) genericDeviceType und homebridgeMapping schon reichen ;)

Gruß und danke, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 13:00:13
Zitat von: TomLee am 13 September 2019, 12:23:45
Die Befehle für an und aus bitte fett hervorheben.

Das ist ja genau das "Problem"...
...es gibt nur toggle (Bit DB23 0.0)...

Also:

toggle -> an (wenn vorher aus nat. ;)  )

toggle -> aus

toggle -> an

usw.

Der Befehl "toggle" heißt hier wohl "trigger"...

Und über ein anders Bit (Bit DB21 0.0) wird dann zurückgelesen wie der Zustand ist (also an/aus) und angezeigt...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 13 September 2019, 13:23:13
Also das kommt da raus:


{
  "Arg":"Wz.Wandlampe",
  "Results": [
  {
    "Name":"Wz.Wandlampe",
    "PossibleSets":" ON OFF TRIGGER",
    "PossibleAttrs":"alias comment:textField-long eventMap:textField-long group room suppressReading userReadings:textField-long verbose:0,1,2,3,4,5 IODev trigger_length event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading cmdIcon devStateIcon devStateIcon:textField-long devStateStyle fm_type icon sortby webCmd webCmdLabel:textField-long widgetOverride userattr",
    "Internals": {
      "ADDRESS": "0.0",
      "AREA": "db",
      "CPU315_MSGCNT": "10744",
      "CPU315_TIME": "2019-09-13 12:39:04",
      "DB": "23",
      "DEF": "db 23 0.0",
      "FUUID": "5d7250c7-f33f-df51-bb1c-7f17b4063bf85c21",
      "LASTInputDev": "CPU315",
      "LENGTH": "1",
      "MSGCNT": "10744",
      "NAME": "Wz.Wandlampe",
      "NR": "65",
      "POSITION": "0",
      "STATE": "off",
      "TYPE": "S7_DWrite"
    },
    "Readings": {      "state": { "Value":"off", "Time":"2019-09-12 21:23:31" } },
    "Attributes": {
      "IODev": "CPU315",
      "devStateIcon": ".*:toggle:TRIGGER",
      "event-on-change-reading": "state",
      "group": "1.0.0.Licht EG",
      "icon": "IR",
      "room": "01.Wohnzimmer"
    }
  }  ],
  "totalResultsReturned":1
}

Aber noch mal für alle:
Ich möchte meine Siemens SPS 315CPU direkt über den FHEM Connector steuern, bzw.über Alexa
Zur Zeit funktioniert über Umwege, d.H
Diese Funktion:
define Wz.Wandlampe S7_DWrite db 23 0.0
attr Wz.Wandlampe IODev CPU315
attr Wz.Wandlampe devStateIcon .*:toggle:TRIGGER
attr Wz.Wandlampe event-on-change-reading state
attr Wz.Wandlampe group 1.0.0.Licht EG
attr Wz.Wandlampe Icon IR
attr Wz.Wandlampe room 01.Wohnzimmer

Simuliert mir einen Taster (muss ein Taster sein, für die weitere Verarbeitung in der SPS) bzw.  über die HABridge für Alexa, das funktioniert wunderbar (ja man könnte wenn die Lampe an ist, über Alexa schalte die Wandlampe an auch Ausschalten, weil aber ein Tasterimpuls gesetzt wird, stimmt dadurch trotzdem meine Rückmeldung (diese kommt ja von der SPS) in FHEM, das die Lampe aus ist
das macht diese Funktion:
define Wz.Wandlampe.Rue S7_DRead db 21 0.0
attr Wz.Wandlampe.Rue IODev CPU315
attr Wz.Wandlampe.Rue event-on-update-reading state
attr Wz.Wandlampe.Rue group 1.0.0.Licht EG
attr Wz.Wandlampe.Rue room 01.Wohnzimmer,17.Zentral Licht
define Wz.Deckenlampe.Rue S7_DRead db 21 0.1

bekommt von der SPS ein Bit das die Lampe geschaltet wurde( egal ob von FHEM oder Raumtaster oder Paneltaster) quasi eine virtuelle Rückmeldung Lampe ist an oder aus

Ich wollte mir nur den weg über die HABridge sparen, bzw habe ich gehofft, das Alexa mir auch meine Temperarturen ansagen kann über diese
Funktion:
define Temp.Wohnz S7_ARead db 20 4 float
attr Temp.Wohnz IODev CPU315
attr Temp.Wohnz event-on-change-reading state
attr Temp.Wohnz group 1.0.1.Temperatur
attr Temp.Wohnz icon temp_inside
attr Temp.Wohnz room 01.Wohnzimmer
attr Temp.Wohnz stateFormat {sprintf("%.1f",ReadingsVal($name,"state",0))." C°"}


Der Connector findet aber nicht die direkte Programmierung von FHEM, deswegen haben wir (mit Hilfe von Joachim) eine Dummy gesetzt.
Alexa findet diesen Dummy, aber nur als Schalterund nicht als Taster
Um einen Schalter zu Tasten bräuchte man jedesmal einen positiven Impuls, egal ob ich die Lampe aus oder an schalten möchte, es müsste der Schalter mehrmals geschaltet werden (geht gar nicht)

deswegen versuchen wir das über ein Notify
define nNotifyOnOff notify AlexaDummy:(on|off) set Wz.Wandlampe trigger

das ist jetzt mein letzter stand, das werde ich am WE mal testen, mein Problem ist eigentlich das ich nicht wirklich fit bin in der Programmierung von FHEM, die S7 ist da einfacher ;D

ich bin mir auch nicht sicher ob es egal ist ob ich den Dummy als Schalter definiere oder aber er sich anders verhält, wenn er als Licht definiert ist


Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 13:59:06
Schalter und Licht ist für deine Anwendung egal.

Es gibt halt in der Alexa-App unterschiedliche Icons und du kannst (wenn du mehrere Lampen in einer Gruppe hast) sagen:

"Alexa schalte das Licht in Gruppenname aus/an" dann gehen immer alle an/aus ;)

Ja, mach erst mal das mit dem Dummy...
...da lernst du gleich etwas über fhem mit, also wie die Abläufe sind und ja es ist anders (aber eigentlich nicht wirklich ;)  ) wie in der SIMATIC.

In fhem erzeugen Devices Events.
Entweder weil jemand wo was drückt oder sich tatsächlich der Zustand eines "korrespondierenden" Gerätes ändert (an/aus, andre Temp, ....).

Daraus erzeugt das entsprechende Device dann Readings (oder ist es anders rum, erst Readings dann Events / ist aber eigentlich [fast] egal).


Auf die Events (also Zustandsänderungen von "irgendwas") kann man dann "reagieren":

Notify
DOIF
watchdog
readingsProxy
...

Je nachdem was man will bzw. was einem liegt halt so oder so oder ganz anders ;)

Wenn dich mal interessiert was auf deinem System so los ist, dann öffne doch einfach mal den EventMonitor: https://wiki.fhem.de/wiki/Event_monitor


Wenn ich mir dein SIMATIC Temoeraturkonstrukt so anschaue: das wird hart ;)
Äh beim 2ten mal hinschauen ist es vielleicht gar nicht so schilmm ;)

Zunächst muss die Temperatur am besten in einem Reading mit dem Namen "temperature" stehen.
Daher würde ich mal ein userReadings anlegen wo dein StateFormat code kommen könnte:


attr Temp.Wohnz userReadigs temperature {sprintf("%.1f",ReadingsVal($name,"state",0))}


Wenn das Reading mit der Temperatur gleich schon richtig heißt tut sich alexa-fhem leichter... ;)

Dann den genericDeviceType auf thermometer:


attr Temp.Wohnz genericDeviceType thermometer


und dann halt noch einen "sprechenden" alexaName vergeben und dann mal dein Glück versuchen...

Das userReadings wird aber erst angelegt/geändert, wenn mal ein Wert gekommen ist!
Also warten ;)
https://wiki.fhem.de/wiki/UserReadings


Äh und besser immer lists der Devices (oder auch jsonlist2) posten statt der "Definition" aus der fhem.cfg :)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 14:10:46
Du hast ja geschrieben, dass dein Kommando in der ha-bridge so lautet:

Zitat von: ChrisLenz ha-bridge Request
http;// IP:8088/fhem?cmd0set%Wz.Wandlampe%20trigger

Weil der ist bestimmt aus dem Kopf geschrieben, weil der kann NICHT funktionieren!!

http;//LEERZEICHEN usw. ;)

Bist du sicher, dass der set-Befehl "trigger" und nicht "TRIGGER" heißt?

Weil:

Zitat von: jsonlist2
"PossibleSets":" ON OFF TRIGGER"

Also du musst natürlich im Notify von mir schon den richtigen Befehl nehmen!! ;)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 13 September 2019, 14:52:59
so hier mal der kopierte text aus der HABridge

http://192.168.122.160:8088/fhem?cmd=set%20Wz.Wandlampe%20trigger

wie gesagt, der wird einmal beim einschalten eingetragen und einmal beim ausschalten
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 13 September 2019, 15:21:58
Ich komm immer noch nicht mit, TRIGGER hab ich jetzt verstanden, was machen dann die Befehle ON und OFF, nix ?
Heißt doch nicht wenn ich in der HA-Bridge nur den trigger-Befehl genutzt habe, das ich die vom S7_DWrite-Device angebotenen Befehle ON und OFF nicht nutzen darf. Was machen die, das hab ich hier noch nirgendwo gelesen.
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 16:06:50
Die Befehle kann man (vermutlich) schon auch nehmen...
...aber hinter denen bzw. hinter dem Bit das geschalten wird steckt halt SIMATIC Logik.

Oder auch echte andere HW...

Und die braucht halt einen Toggle/Trigger um entsprechend zu reagieren ;)

Daher ja die Frage, ob das evtl. geändert/umprogrammiert werden könnte ;)

Wurde ja verneint, also muss man halt mit "toggle" leben und halt dann so schlau sein entweder deinen Vorschlag zu nehmen: einfach nur Licht zu schalten ;)  oder eben den passenden "Spruch" weil man ja sieht, ob das Licht an oder aus ist :)

Man kann halt "lustige" Dinge tun wie: "Alexa schalte das Licht aus" (obwohl es aus ist) und es geht halt "dummerweise" an ;)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 13 September 2019, 16:10:46
Zitat von: ChrisLenz am 13 September 2019, 14:52:59
so hier mal der kopierte text aus der HABridge

http://192.168.122.160:8088/fhem?cmd=set%20Wz.Wandlampe%20trigger

wie gesagt, der wird einmal beim einschalten eingetragen und einmal beim ausschalten

Ok, wenn das wirklich passt, dann sollte das Notify wie folgt tun:


define nNotifyOnOff notify AlexaDummy:(on|off) set Wz.Wandlampe trigger


Dann macht das Notify genau dasselbe wie der Aufruf von der ha-bridge...
...und wenn das geht, dann sollte das auch mit dem Notify gehen...

Wie geschrieben (da ich noch kein list deines funktionierenden Dummy habe) muss halt der Name des Dummy (NICHT der vergebene alexaName!!!) zum "RegEx" des Notify passen...
...sonst wird es nat. nicht ausgelöst.

Wenn du noch ein list deines funktionierenden AlexaDummy postest, kann ich prüfen, ob das Notify so passt bzw. wenn nicht anpassen...

EDIT: habe mich nur gewundert, weil als "possible Commands" eben ON OFF TRIGGER großgeschrieben steht... Du hast aber den alexaName für den Dummy schon anders gewählt wie das Gerät in der ha-bridge!? (Vermutlich ja, sonst hätte es ja jetzt schon "zufällig" über den Weg der ha-bridge geklappt und der Dummy vermutlich [trotzdem] eben "seine" Anzeige-Lampe geschalten) Bzw. weiß ich nicht, ob das überhaupt geht: 2 gleich lautende Geräte!? Hmm, aber wohl doch, ich glaube einige machen das (dummerweise) und kriegen dann nicht mehr zusammen welche Lampe welche Lampe ist ;) Aber für "unseren" Test ist wichtig einen anderen Namen zu haben!

EDIT2: wenn das dann geht, kannst du es entweder lassen (und versuchen zu verstehen, schadet nicht, wenn du noch mehr mit fhem machen willst ;)  ) oder wir können entweder readingsProxy "anschauen", dann hast du statt einem Dummy und einem Notify halt "nur" ein weiteres Device ;)  Oder man kann auch mal schauen das SIMATIC_Write-Dingenz mit generic DeviceType und homebridgeMapping zu versehen. Man sollte ja auch on und off (was ja von Amazon kommt) jeweils auf trigger mappen können ;)

EDIT3: wenn du "mutig" bist, kannst du ja auch schon mal das mit der Temperatur versuchen ;) https://forum.fhem.de/index.php/topic,103363.msg974242.html#msg974242

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 17 September 2019, 15:52:59
Hallo Joachim,
wollte nur bescheid sagen, das ich es noch nicht geschafft habe mal zu probieren!
Denke eventuell am Wochenende, wenn's klappt melde ich mich natürlich direkt?

MfG
Chris
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 17 September 2019, 16:19:17
Kein Thema...
...is ja bei dir wo's (noch) nicht läuft... ;)

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 05 Oktober 2019, 10:08:39
Guten Morgen Joachim,
Hab gestern die Zeit gefunden noch an den Laptop zu kommen.
Gute Nachricht: Funktioniert
Taster und auch die Temperaturwerte bekomme ich rein und kann sie von Alexa ansagen lassen
Schlechte Nachricht:
Die Temperaturwerte aktualisieren sich nicht, d.h. Wenn ich connector über Fhem neu starte, findet Alexa die Werte, aber bekommt auch erst neue Werte wenn ich den Connector wieder neu starte oder einen reload mache! Hast du auch eine Idee für?
Gruß Chris
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 10:15:54
Schön wenn es (fast) läuft...

Poste doch mal ein aktuelles list von einem Device mit Temperatur...

Was steht im alexa-fhem Log (NICHT fhem Log) bzgl. dem Temp-Device beim Start?

Ich nehme mal an die entsprechenden Readings des Temp-Devices werden in fhem aktualisiert!?

Evtl. bekommt das alexa-fhem per "longpoll" nicht mit...

Steht etwas im alexa-fhem Log wenn sich die Temp ändert?

Ansonsten kann ich leider wenig weiterhelfen, da ich nix mit Temperatur nutze...
...also nicht weiß, wie das Verhalten sein sollte...

Geht eine Abfrage per Sprache?
Nicht, dass nur die App nicht aktualisiert (und das halt so ist)...

Aber alles nur Spekulation...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 05 Oktober 2019, 10:21:37
Wie komm ich denn an fhem Alexa log?

Sprachausgabe funktioniert auch, gleicher wert wie in der App (also auch nicht aktuell)

Dividenden schick ich dir spätestens Montag
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 10:48:44
Den Pfad findest du im Alexa-Device...

EDIT: wenn du es "bequem" haben willst, dann kannst du dir noch ein READONLY fhem FileLog-Device anlegen (falls das mittlerweile nicht automatisch gemacht wird/wurde)...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 05 Oktober 2019, 21:52:57
Hallo Joachim, hier mal der define, hoff edu kannst dchon was damit anfangen

define Temp.Wohnz S7_ARead db 20 4 float
attr Temp.Wohnz IODev CPU315
attr Temp.Wohnz alexaName Temperartur Wohnzimmer
attr Temp.Wohnz event-on-change-reading state
attr Temp.Wohnz genericDeviceType thermometer
attr Temp.Wohnz group 1.0.1.Temperatur
attr Temp.Wohnz icon temp_inside
attr Temp.Wohnz room 01.Wohnzimmer,Alexa
attr Temp.Wohnz userReadings temperature {sprintf("%.1f",ReadingsVal($name,"state",0))." C°"}

wie gesagt, anzeige funktioniert, ansage auch nur aktualiesiert sich der wert nicht
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 05 Oktober 2019, 22:03:56
Hi,

zeig mal bitte ein richtiges list Temp.Wohnz.

Gruß

Thomas
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 05 Oktober 2019, 22:06:18
Internals:
   ADDRESS    4
   AREA       db
   CPU315_MSGCNT 1084
   CPU315_TIME 2019-10-05 22:05:50
   DATATYPE   float
   DB         20
   DEF        db 20 4 float
   FUUID      5d98f26e-f33f-36cb-1494-3e039f89e972be0f
   IODev      CPU315
   LASTInputDev CPU315
   LENGTH     4
   MSGCNT     1084
   NAME       Temp.Wohnz
   NR         198
   STATE      22.7000007629395
   TYPE       S7_ARead
   READINGS:
     2019-10-05 00:03:20   Temp.Wohnz      23.1 C°
     2019-10-05 22:03:08   state           22.7000007629395
     2019-10-05 22:03:08   temperature     22.7 C°
Attributes:
   IODev      CPU315
   alexaName  Temperartur Wohnzimmer
   event-on-change-reading state
   genericDeviceType thermometer
   group      1.0.1.Temperatur
   icon       temp_inside
   room       01.Wohnzimmer,Alexa
   userReadings temperature {sprintf("%.1f",ReadingsVal($name,"state",0))." C°"}
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 22:08:28
Besser wäre ein list davon, also:

list Temp.Wohnz

EDIT: gut, list hat sich erledigt ;) Das mit code-Tags wäre wirklich gut, ist dann besser lesbar... :)

in FhemWeb und dann hier posten.
Und bitte in "code-Tags" (das '#' im Menü)...
Damit sieht man auch die Aktualisierungen der Readings etc.

Wobei es gut aussieht (und ja auch funktioniert, also prinzipiell).

Was ist bzgl. des Thermometers im alexa-fhem Log zu finden?

Was bzw. kommen zusätzliche Einträge, wenn sich die Temperatur ändert?

Evtl. auch mal alexa-fhem (im Debug-modus) auf der Console starten.

Wie sollte im alexa-fhem Connector Wiki stehen...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 22:11:14
Bei deiner Temp steht:

22.7 C°

statt

22.7 °C

Bzw. evtl. sogar besser mal ganz ohne Einheit probieren...

Hatte ganz zu beginn mal meine HM-Thermostate mit alexa-fhem (ganz alte Version ;)  ) genutzt und da ist die Temperatur ganz ohne Einheit...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 05 Oktober 2019, 22:41:05
[5.10.2019, 22:34:09] >>>> [ssh] {"directive":{"header":{"namespace":"Alexa","name":"ReportState","payloadVersion":"3","messageId":"691431e2-a354-4575-bd18-24d549574a0e","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","cookie":{"fuuid":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","device":"Temp.Wohnz"}},"payload":{}}}
[5.10.2019, 22:34:09] [FHEM]     caching: CurrentTemperature: 22.7 (as number; from '22.7 °C')
[5.10.2019, 22:34:09] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.TemperatureSensor","name":"temperature","value":{"value":22.7,"scale":"CELSIUS"},"timeOfSample":"2019-10-05T20:34:09.367Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"StateReport","payloadVersion":"3","messageId":"60141aea-306a-4382-be4c-dc2d796dfad0","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c"},"payload":{}}}
[5.10.2019, 22:34:12] >>>> [ssh] {"directive":{"header":{"namespace":"Alexa","name":"ReportState","payloadVersion":"3","messageId":"2d383275-6c41-46f7-8856-78858cd012c0","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","cookie":{"fuuid":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","device":"Temp.Wohnz"}},"payload":{}}}
[5.10.2019, 22:34:12] [FHEM]     caching: CurrentTemperature: 22.7 (as number; from '22.7 °C')
[5.10.2019, 22:34:12] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.TemperatureSensor","name":"temperature","value":{"value":22.7,"scale":"CELSIUS"},"timeOfSample":"2019-10-05T20:34:12.330Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"StateReport","payloadVersion":"3","messageId":"3359e5e9-c8ee-4eb8-9747-7ad9131254af","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c"},"payload":{}}}
[5.10.2019, 22:34:15] >>>> [ssh] {"directive":{"header":{"namespace":"Alexa","name":"ReportState","payloadVersion":"3","messageId":"f1d67361-1fd9-42f8-aa60-1ab2cfeb3575","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","cookie":{"fuuid":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","device":"Temp.Wohnz"}},"payload":{}}}
[5.10.2019, 22:34:15] [FHEM]     caching: CurrentTemperature: 22.7 (as number; from '22.7 °C')
[5.10.2019, 22:34:15] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.TemperatureSensor","name":"temperature","value":{"value":22.7,"scale":"CELSIUS"},"timeOfSample":"2019-10-05T20:34:15.347Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"StateReport","payloadVersion":"3","messageId":"70137146-b766-4376-afd5-fba7835f112c","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c"},"payload":{}}}
[5.10.2019, 22:34:18] >>>> [ssh] {"directive":{"header":{"namespace":"Alexa","name":"ReportState","payloadVersion":"3","messageId":"678add4b-7547-4ba4-85cd-b3fbc7aa0937","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","cookie":{"fuuid":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","device":"Temp.Wohnz"}},"payload":{}}}
[5.10.2019, 22:34:18] [FHEM]     caching: CurrentTemperature: 22.7 (as number; from '22.7 °C')
[5.10.2019, 22:34:18] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.TemperatureSensor","name":"temperature","value":{"value":22.7,"scale":"CELSIUS"},"timeOfSample":"2019-10-05T20:34:18.364Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"StateReport","payloadVersion":"3","messageId":"7653d7e4-91a5-4783-b5b3-73974f74813a","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c"},"payload":{}}}
[5.10.2019, 22:34:21] >>>> [ssh] {"directive":{"header":{"namespace":"Alexa","name":"ReportState","payloadVersion":"3","messageId":"8efe71c5-7b7e-49f5-bbe3-6c27d8f951b6","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","cookie":{"fuuid":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","device":"Temp.Wohnz"}},"payload":{}}}
[5.10.2019, 22:34:21] [FHEM]     caching: CurrentTemperature: 22.7 (as number; from '22.7 °C')
[5.10.2019, 22:34:21] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.TemperatureSensor","name":"temperature","value":{"value":22.7,"scale":"CELSIUS"},"timeOfSample":"2019-10-05T20:34:21.379Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"StateReport","payloadVersion":"3","messageId":"e8c790a1-f689-47a2-8263-6c95920fe48c","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c"},"payload":{}}}
[5.10.2019, 22:34:24] >>>> [ssh] {"directive":{"header":{"namespace":"Alexa","name":"ReportState","payloadVersion":"3","messageId":"7a48a56e-e798-4c45-a3d3-633ef05cbf12","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","cookie":{"fuuid":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c","device":"Temp.Wohnz"}},"payload":{}}}
[5.10.2019, 22:34:24] [FHEM]     caching: CurrentTemperature: 22.7 (as number; from '22.7 °C')
[5.10.2019, 22:34:24] <<<< [ssh] {"context":{"properties":[{"namespace":"Alexa.TemperatureSensor","name":"temperature","value":{"value":22.7,"scale":"CELSIUS"},"timeOfSample":"2019-10-05T20:34:24.415Z","uncertaintyInMilliseconds":500}]},"event":{"header":{"namespace":"Alexa","name":"StateReport","payloadVersion":"3","messageId":"ced8bd33-1db2-41c2-a2fd-368de0efbe9a","correlationToken":"-"},"endpoint":{"scope":{"type":"BearerToken","token":"4A72708B-9AF08D5375A6A08A"},"endpointId":"5d98ee33-f33f-36cb-a860-ec164327b64f6f3c"},"payload":{}}}


hoffe du kannst damit was anfangen

Zitat von: MadMax-FHEM am 05 Oktober 2019, 22:11:14
Bei deiner Temp steht:

22.7 C°

statt

22.7 °C

Bzw. evtl. sogar besser mal ganz ohne Einheit probieren...

Hatte ganz zu beginn mal meine HM-Thermostate mit alexa-fhem (ganz alte Version ;)  ) genutzt und da ist die Temperatur ganz ohne Einheit...

Gruß, Joachim

hat nix gebracht das zu ändern, ohne Einheit, bekomm ich gar keine Anzeige

denke es liegt am connector, das der nicht aktualiesiert wird, der normale device unter FHEM Temp.Wohnz aktualiesiert sich

Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 22:55:32
Ginge das in code-Tags zu packen...
Kann man auch nachträglich ändern...

Ich muss mir das am PC dann mal in Ruhe anschauen..


Besser wäre wohl, wenn Andre (justme1968) mal drüber schaut...

Hast du es mal in der Console (im Debug-Modus) gestartet und geschaut, ob sich was tut (also Ausgaben kommen), wenn du/sich die Temperatur ändert...

EDIT: komisch, dass ohne Einheit nichts erkannt wird... Ging wie geschrieben bei meinen Homematic problemlos...


Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 05 Oktober 2019, 22:57:27
Versuchs einfach mal mit

attr Temp.Wohnz homebridgeMapping CurrentTemperature=state

Wenn das klappt, brauchst das userreadings gar nicht.

Gruß

Thomas
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 05 Oktober 2019, 23:02:43
Zitat von: TomLee am 05 Oktober 2019, 22:57:27
Versuchs einfach mal mit

attr Temp.Wohnz homebridgeMapping CurrentTemperature=state

Wenn das klappt, brauchst das userreadings gar nicht.

Gruß

Thomas
Zitat von: MadMax-FHEM am 05 Oktober 2019, 22:55:32


Wenn ich das mache bekomme ich nur einen wert von 1,0 im handy angezeigt, schade
Ginge das in code-Tags zu packen...
Kann man auch nachträglich ändern...

Ich muss mir das am PC dann mal in Ruhe anschauen..


Besser wäre wohl, wenn Andre (justme1968) mal drüber schaut...

Hast du es mal in der Console (im Debug-Modus) gestartet und geschaut, ob sich was tut (also Ausgaben kommen), wenn du/sich die Temperatur ändert...

EDIT: komisch, dass ohne Einheit nichts erkannt wird... Ging wie geschrieben bei meinen Homematic problemlos...


Gruß, Joachim

wenn du mir kurz beschreibst wie das geht mit dem Dubug Modus
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 23:04:54
Hmm, kannst du mal den Eventmonitor öffnen und schauen ob für temperature ein Event kommt, wenn sich die Temperatur ändert?

Evtl. liegt es an deinem event-on-change-reading...
...wenn kein Event kommt, dann bekommt das auch "miemand", also verm. auch alexa-fhem nicht mit...

Wenn im Eventmonitor KEIN Event für temperature kommt, dann mal event-on-change-reading um temperature ergänzen...

Nur so eine Idee...

Weil ansonsten bin ich dann langsam ratlos...

EDIT: mit homebridgeMapping lässt sich nat. auch anpassen...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 05 Oktober 2019, 23:06:52
Zitat von: ChrisLenz am 05 Oktober 2019, 23:02:43
wenn du mir kurz beschreibst wie das geht mit dem Dubug Modus

Sollte wie geschrieben im alexa-fhem Connector Wiki stehen...
...bei Troubleshooting...

Schadet nicht generell mal die Wikis bzgl. alexa-fhem zu lesen... ;)

EDIT: aber probier erst mal.die anderen Dinge... (vorm Starten in der Console nat. das laufende alexa-fhem stoppen ;)  )...

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 05 Oktober 2019, 23:13:56
Bzw. gleich Temp.Wohnz nehmen (sonst ist die Antwort recht lang mit den vielen Kommastellen  ;D), im Log sieht man ja das sich Alexa den Wert ohne Einheit nimmt.

attr Temp.Wohnz homebridgeMapping CurrentTemperature=Temp.Wohnz

Gruß

Thomas

edit:

Nach dem anlegen des homebridgeMapping-Attributes nicht vergessen Alexa zu restarten.

edit2:

Sehe jetzt erst,  mit homebridgeMapping auf Temp.Wohnz zu mappen ist Quatsch, das stammt wonl noch von vorherigen Versuchen.
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 06 Oktober 2019, 09:33:21
Und immer wenn du etwas "alexa-relevantes" änderst:

- Gerät in der Alexa-App (oder Web) löschen

- reload/restart von alexa-fhem

- Gerätesuche (auch wenn Alexa sagt, dass nichts gefunden wurde mal in der App kontrollieren / hatte ich letztes Mal, Geräte waren aber da :) )

Gruß, Joachim
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: TomLee am 07 Oktober 2019, 11:51:37
ZitatDie Temperaturwerte aktualisieren sich nicht, d.h. Wenn ich connector über Fhem neu starte, findet Alexa die Werte, aber bekommt auch erst neue Werte wenn ich den Connector wieder neu starte oder einen reload mache!

Hast du es jetzt mal testweise mit

attr Temp.Wohnz homebridgeMapping CurrentTemperature=state

probiert ?

Nur um mal zu sehen ob es grundsätzlich funzt ?




hat nix gebracht das zu ändern, ohne Einheit, bekomm ich gar keine Anzeige

zeig mal das userReadings ohne Einheit.


Gruß

Thomas
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: ChrisLenz am 07 Oktober 2019, 15:30:46
So hab den Fehler gefunden,

Funktioniert jetzt perfekt

Event-on-change-Reading State,temperature

Temperature hinzugefügt und siehe da, der Wert wird aktualisiert
Titel: Antw:FHEM Connector für Amazon Alexa mit S7 Adapter verknüpfen
Beitrag von: MadMax-FHEM am 07 Oktober 2019, 17:35:27
Zitat von: ChrisLenz am 07 Oktober 2019, 15:30:46
So hab den Fehler gefunden,

Funktioniert jetzt perfekt

Event-on-change-Reading State,temperature

Temperature hinzugefügt und siehe da, der Wert wird aktualisiert

Dachte ich mir fast ;)

https://forum.fhem.de/index.php/topic,103363.msg981041.html#msg981041

Dann viel Erfolg und nat. Spaß weiterhin, Joachim