FHEM Forum

FHEM => Frontends => Sprachsteuerung => Thema gestartet von: tklein am 22 Februar 2017, 14:35:57

Titel: Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 22 Februar 2017, 14:35:57
Hallo,

als was muss ich meine RF-LED-Dimmer definieren, den ich per Alexa/Siri togglen sowie heller/dunkler möchte?


define Kuechenlampe dummy
attr Kuechenlampe genericDeviceType switch
attr Kuechenlampe group Stripes
attr Kuechenlampe room Küche,Stripes,Homekit,alexa
attr Kuechenlampe setList toggle up down
attr Kuechenlampe webCmd toggle up down

define toggle_Kuechenlame notify Kuechenlampe:toggle {system(" /home/pi/433Utils/RPi_utils/codesend 15883553 &")}
define up_Kuechenlampe notify Kuechenlampe:up {system(" /home/pi/433Utils/RPi_utils/codesend 15883556 &")}
define down_Kuechenlampe notify Kuechenlame:down { system("/home/pi/433Utils/RPi_utils/codesend 15883554 &")}


Was können die jeweiligen Typen?
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: KölnSolar am 22 Februar 2017, 14:48:25
verschieb den Beitrag besser nach Frontends/Sprachsteuerungen.
(Bin auch auf Antworten gespannt, da ich das genericDeviceType nicht so kenne, außer für Alexa)
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 22 Februar 2017, 14:53:02
@KölnSolar done :-)
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 22 Februar 2017, 16:00:22
Zitat von: tklein am 22 Februar 2017, 14:35:57
Hallo,

als was muss ich meine RF-LED-Dimmer definieren, den ich per Alexa/Siri togglen sowie heller/dunkler möchte?

Als light.
Um dann auch dimmen zu können musst Du Dir wohl eine Brightness Characteristic selber mappen.
Die Frage ist nur wo Du den dim-Wert her nimmst, da den ja Dein dummy auch nicht kennt und ich nehme an dass Deine LED-Dimmer auch keinen Rückkanal haben.
Evtl. kannst Du Dir da mit einem userReading behelfen. Das wird aber nie genau sein da ja der Wert nicht vorhanden ist und nur geschätzt werden kann.

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 22 Februar 2017, 16:15:38
Danke,

nee, einen Rückkanal gibt es nicht. Hier ein Link zu dem Produkt: https://www.amazon.de/dp/B009IBUHFK/ref=cm_sw_em_r_mt_dp_qOARybHWRHKYR

Könntest du mir bitte ein Beispiel zum Thema Brightness Characteristic posten. Wie meinst du das mit dem userReading?

Also geht das so wie ich ir das in meinem Beispiel gedacht habe nicht? Siri/Alex können ein in einer leicht geänderten Versioin schon schalten. Jetzt wollte ich mich an der Helligkeit versuchen.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 22 Februar 2017, 17:29:17
userReading war falsch an dieser Stelle! 8)

Die Characteristic Brightness hat einen prozentualen Wertebereich.. Also 0 - 100.
Da es sich ja um ein "dummes" Gerät handelt, musst Du also eine erweiterte Logik selbst implementieren.
Du musst also als Erstes mal zählen wie oft Du auf up/down drücken musst um von aus auf ganz hell zu dimmen und umgekehrt.
Die 100 musst Du dann durch diesen Wert teilen damit Du die Einzelschritte bekommst.

Per notify könntest Du dann bei jedem up den jeweiligen Wert dazu addieren und bei down entsprechend abziehen.
Etwa so bei 10 Dimmstufen (ungetestet):
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0); $dim+=$EVENT eq "up"?10:-10; fhem "setreading $NAME dim $dim"}

Dann hast Du schon mal ein Reading dim welches Du in der Brightness Characteristic mappen kannst.
Evtl. wird die Characteristic dann sogar schon automatisch erkannt und gemappt wenn Du das Reading dim hast. Probiere es mal aus.

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 22 Februar 2017, 17:50:38
Hi,

diese kompakte und sehr knackige Schreibweise treibt mir neben ganz viel Angstschweiss auch etliche "?" über meinen Kopf.  ???
Da setzt es bei mir als Anfänger (noch) leider aus. Wo/Wie würde ich den/die RF Impuls senden?

Verwirrte Grüße
Thomas
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 22 Februar 2017, 18:25:25
Zitat von: tklein am 22 Februar 2017, 17:50:38
Hi,

diese kompakte und sehr knackige Schreibweise treibt mir neben ganz viel Angstschweiss auch etliche "?" über meinen Kopf.  ???
Da setzt es bei mir als Anfänger (noch) leider aus. Wo/Wie würde ich den/die RF Impuls senden?

Verwirrte Grüße
Thomas

Die Befehle sendest Du doch schon mit den notify(s) aus dem ersten Beitrag!
Das könnte man natürlich alles auch in einem notify zusammenfassen!

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 23 Februar 2017, 10:17:30
Hi,

habe deinen Code in die fhem.cfg geschrieben und bekomme folgende Logausgabe:

Messages collected while initializing FHEM: configfile: Unknown command $dim+=$EVENT, try help. Unknown command fhem, try help.
Was muss ich ändern/definieren?
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 23 Februar 2017, 10:30:01
Zitat von: tklein am 23 Februar 2017, 10:17:30
habe deinen Code in die fhem.cfg geschrieben

Das solltest Du unter keinen Umständen jemals tun!
In der fhem.cfg wird nicht manuell drin rumgefuchtelt!
Alles was nötig ist kann über das Frontend (WEB) konfiguriert werden.
Und dann kann es auch nicht zu solchen Fehlern kommen.

Der Fehler kommt daher weil in der fhem.cfg die ; verdoppelt werden müssen.
Lösche das bitte wieder heraus, füge folgenden Code in die FHEM Eingabezeile ein und drücke Enter:
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0);; $dim+=$EVENT eq "up"?10:-10;; fhem "setreading $NAME dim $dim"}

Habe das notify eben bei mir getestet und es macht genau was es soll.
Man könnte natürlich noch abfangen dass die Werte nie "aus versehen" über 100 und unter 0 gehen.

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 23 Februar 2017, 11:21:17
Mit dieser kleinen Erweiterung sind auch die Grenzfälle abgedeckt.
Somit kann dim nie mehr unter 0 oder über 100 gehen:
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0);; $dim+=$EVENT eq "up"?10:-10;; $dim=$dim>100?100:$dim<0?0:$dim;; fhem "setreading $NAME dim $dim"}

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 23 Februar 2017, 15:49:30
Hi Dan,

vielen Dank dafür. Jetzt gibt es keine Fehlermeldung.
Jedoch wird die Helligkeit in keinster Weise geändert.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 23 Februar 2017, 15:51:32
Magst du mir einmal ein List von deinem dummy geben ;-) ?
Ich versuche ja etwas ähnliches zu bauen... komme aber nicht mal soweit, dass Echo/Alexa die Möglichkeit der Dimmfunktion für meinen Dummy erkennt.

Helfen kann ich leider noch nicht dabei...
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 23 Februar 2017, 15:54:22
Zitat von: tklein am 23 Februar 2017, 15:49:30
Jedoch wird die Helligkeit in keinster Weise geändert.

Das macht ja nicht dieses notify, sondern die beiden die Du schon hattest!
Zitat von: tklein am 22 Februar 2017, 14:35:57

define up_Kuechenlampe notify Kuechenlampe:up {system(" /home/pi/433Utils/RPi_utils/codesend 15883556 &")}
define down_Kuechenlampe notify Kuechenlame:down { system("/home/pi/433Utils/RPi_utils/codesend 15883554 &")}


Falls Du die nicht "zufällig" gelöscht hast und es schon mal damit ging, sollte es auch weiterhin damit funktionieren.

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 23 Februar 2017, 16:41:33
die waren noch drin. Habe gesehen, das die ca 70 Einzelschritte kaum beim Ändern zu sehen sind. :-)

Wie kann ich es dann machen, dass je Hellersignal ca 15 Sendeimpule gesendet werden?
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 23 Februar 2017, 22:02:29
Also in bash script hätte ich es mit einer variable gelöst die hoch oder runter gezählt wird.

Perl könnte so gehen:

my $counter = 15;
chomp $counter ;

for($counter){

  my $counter = ($counter - 1);
}

Dummerweise versau ich noch oft die Syntax.. *Edit hab es mal eben in ein notify gepackt gemeckert hat die neue Kontrolle von FHEM 5.8 nicht :-D


*EDIT geht wohl noch besser:


for ($i = 1; $i != 15; $i++) {{system(" /home/pi/433Utils/RPi_utils/codesend 15883556 &")}}

Müsstest du mal testen...
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 24 Februar 2017, 11:50:05
mmhhmmm:

Kuechenlampe:up for ( my $i=1; $i !=15; $i++) {{system(" /home/pi/433Utils/RPi_utils/codesend 15883556 &")}}
--> da wird gemeckert: (ohne my wird auch gemeckert)

Log:

2017.02.24 11:06:17 3: up_Kuechenlampe return value: Unknown command for, try help.
Unknown command $i, try help.
Unknown command $i++), try help.

Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0); $dim+=$EVENT eq "up"?10:-10; $dim=$dim>100?100:$dim<0?0:$dim; fhem "setreading $NAME dim $dim"}
--> hier wird nicht gemeckert
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 24 Februar 2017, 12:18:09
Zitat von: tklein am 24 Februar 2017, 11:50:05
mmhhmmm:

Kuechenlampe:up for ( my $i=1; $i !=15; $i++) {{system(" /home/pi/433Utils/RPi_utils/codesend 15883556 &")}}
--> da wird gemeckert: (ohne my wird auch gemeckert)

Log:

2017.02.24 11:06:17 3: up_Kuechenlampe return value: Unknown command for, try help.
Unknown command $i, try help.
Unknown command $i++), try help.

Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0); $dim+=$EVENT eq "up"?10:-10; $dim=$dim>100?100:$dim<0?0:$dim; fhem "setreading $NAME dim $dim"}
--> hier wird nicht gemeckert

Wenn dann so:
define up_Kuechenlampe notify Kuechenlampe:up {for (my $i=1;;$i!=15;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 15883556 &`}}

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 24 Februar 2017, 15:02:33
geil!! Das klappt.

Als was muss ich die Lampe jetzt deklarieren, damit ich die mit meinem StandardSkill schalten kann? Derzeit wird sie von Alexa werder mit Typ (genericDeviceType) lamp noch switch gefunden.
24 andere werden aber gefunden.


define Kuechenlampe dummy
attr Kuechenlampe alexaName Stripetest
attr Kuechenlampe alexaRoom Kueche
attr Kuechenlampe genericDeviceType lamp
attr Kuechenlampe group Stripes
attr Kuechenlampe room Küche,Stripes,Homekit,alexa
attr Kuechenlampe setList toggle up down
attr Kuechenlampe webCmd toggle:up:down
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 24 Februar 2017, 15:09:04
Zitat von: tklein am 24 Februar 2017, 15:02:33
geil!! Das klappt.

Als was muss ich die Lampe jetzt deklarieren, damit ich die mit meinem StandardSkill schalten kann? Derzeit wird sie von Alexa werder mit Typ (genericDeviceType) lamp noch switch gefunden.
24 andere werden aber gefunden.


define Kuechenlampe dummy
attr Kuechenlampe alexaName Stripetest
attr Kuechenlampe alexaRoom Kueche
attr Kuechenlampe genericDeviceType lamp
attr Kuechenlampe group Stripes
attr Kuechenlampe room Küche,Stripes,Homekit,alexa
attr Kuechenlampe setList toggle up down
attr Kuechenlampe webCmd toggle:up:down


Ich nehme an es liegt am nicht vorhandenen "on off" in "setList".
Kenne zwar die Alexa Mappings nicht, aber bei homebridge ist das so dass diese in der setList sein müssen damit es erkannt wird.

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 24 Februar 2017, 18:57:24
jetzt habe ich sie mit Alexa gefunden. Allerdings kann ich nicht dimmen. Befehl kann für das Gerät nicht gefunden werden. Das sollte der Standardskill doch auch können oder?
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 24 Februar 2017, 22:17:27
Meinen Dummy kann ich mit dem Smart Home Skill (dem nicht Custom) Dimmen schau mal hier rein und vergleiche mit deinem:
https://forum.fhem.de/index.php/topic,67721.0.html
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 25 Februar 2017, 10:52:25
Danke dafür, werde sehen, ob ich das anpassen/verstehen kann.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 25 Februar 2017, 11:38:15
Du kannst mich auch gerne Fragen, bei Unklarheiten - dein Thread hier hat mir maßgeblich geholfen.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 25 Februar 2017, 12:05:17
da komme ich doch gleich drauf zurück. Bitte im Hinterkopf haben, dass ich ein Frischling bin.

attr Stripe homebridgeMapping Brightness=state,cmd=
--> was sagt das genau aus?

attr Stripe setList value:slider,0,1,100 on off
attr Stripe webCmd value
--> kann man so einfach die Werte aus der SetList übernehmen? Cool.

Wie müsste ich meinen Code anpassen, damit es bei mir auch klappt:


define Kuechenlampe dummy
attr Kuechenlampe alexaName Stripetest
attr Kuechenlampe alexaRoom Kueche
attr Kuechenlampe genericDeviceType lamp
attr Kuechenlampe group Stripes
attr Kuechenlampe room Küche,Stripes,Homekit,alexa
attr Kuechenlampe setList toggle up down on off
attr Kuechenlampe webCmd toggle:up:down:on:off

define toggle_Kuechenlame notify Kuechenlampe:toggle {`/home/pi/433Utils/RPi_utils/codesend 11508417 &`}
define up_Kuechenlampe notify Kuechenlampe:up {for (my $i=1;;$i!=10;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 11508420 &`}}
define down_Kuechenlampe notify Kuechenlampe:down {for (my $i=1;;$i!=10;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 11508418 &`}}
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0);; $dim+=$EVENT eq "up"?10:-10;; $dim=$dim>100?100:$dim<0?0:$dim;; fhem "setreading $NAME dim $dim"}
define off_Kuechenlampe notify Kuechenlampe:off {system(" /home/pi/433Utils/RPi_utils/codesend 11508417 &")}
define on_Kuechenlampe notify Kuechenlampe:on { system("/home/pi/433Utils/RPi_utils/codesend 11508417 &")}


Hast du das genutzt?:


sub my_HierDimmeIch($)
{
  my ($Event) = @_;
  my $ActValue = ReadingsNum("Gerät", "Reading", Default);

  # um zu sehen was kommt / wenn zu viel/falsches kommt evtl. dann statt $EVENT -> $EVTPART1 $EVTPART2 etc. (hier wäre dann das mit value auch kein Problem: EVTPART1 oder EVTPART2 wäre dann nur die Zahl)
  Log(1, "my_HierDimmeIch   Event: $Event");

  # hier was immer nötig ist zu dimmen

  # abspeichern des aktuellen Wertes
  {fhem "setReading DIMMDUMMY READING_NAME $ActValue "}

}


Wo kam das her?


setreading Streifen newstate [Streifen:state]
if ([Streifen:state] = "on") { set Stripe.Strom on }
if ([Streifen:state] = "off") { set Stripe.Strom off }
if ([Streifen:state] = "0") { set harmony_37861872 Dimm- }
if ([Streifen:state] = "5") {}


Hoffe, du hast viel Geduld  :D
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 25 Februar 2017, 13:06:37
Vorab: Alle Antworten spiegeln mein aktuelles Wissen wieder :-) Sie müssen nicht fehlerfrei sein.

attr Stripe homebridgeMapping Brightness=state,cmd=
--> was sagt das genau aus? 

Antwort: Es gibt an Alexa weiter, dass der Device ein Helligkeitslevel beinhaltet und gedimmt werden kann und das über das Reading state. Also ein Dimmwert wird in das Reading state geschrieben. Das cmd= muss definiert werden sonst tauch ein undefined vor dem Dimmwert im Reading State auf. Ursprünglich stand dort value, aber meine weitere Planung kann da reine Zahlen besser verarbeiten als Text + Zahl. Somit über probieren heraus bekommen, dass es so einfach nur einen Zahlenwert liefert.


Wie müsste ich meinen Code anpassen, damit es bei mir auch klappt?

Antwort - da kommt darauf an wie du per Sprache deinen Device steuern möchtest. Ich arbeite mit schalte ein/aus und schalte auf X %. Oder Setze auf X %.
Wie dein up und down als Sprachbefehl lauten soll ist mir unklar :-) Aber heller und dunkler wäre ja ne Idee sofern das integriert ist.

Meine Idee daher für den Dummy:

define Kuechenlampe dummy
attr Kuechenlampe alexaName Stripetest
attr Kuechenlampe alexaRoom Kueche
attr Kuechenlampe genericDeviceType light
attr Kuechenlampe group Stripes
attr Kuechenlampe room Küche,Stripes,Homekit,alexa
attr Kuechenlampe setList state:slider,0,1,100 toggle up down on off
attr Kuechenlampe webCmd state

Für dein Notify, du könntest es auch alles in ein Notify packen:

define Steuerung_Kuechenlame notify Kuechenlampe {
if ([Kuechenlampe:state] = "toggle") {`/home/pi/433Utils/RPi_utils/codesend 11508417 &`}
if ([Kuechenlampe:state] = "up") {for (my $i=1;;$i!=10;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 11508420 &`}}
if ([Kuechenlampe:state] = "down") {for (my $i=1;;$i!=10;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 11508418 &`}}
if ([Kuechenlampe:state] = "off") {system(" /home/pi/433Utils/RPi_utils/codesend 11508417 &")}
if ([Kuechenlampe:state] = "on") { system("/home/pi/433Utils/RPi_utils/codesend 11508417 &")}
}

Es fehlt aktuell genau das, was ich selber noch für mich bauen muss und noch nicht so funktional umsetzen kann wie ich es möchte.
Ein if, dass auf alle Zahlenwerte im Reading state reagiert und bemessen an einem gespeicherten Wert des Dimmstandes dementsprechend oft hoch oder runter dimmt.
Das ist definitiv machbar indem man über einen regex auf state reagiert. Aber es ist etwas mehr logik und etwas komplexer... noch fehlte mir da die Zeit ;-D

Mein erster Versuch (zugegeben sehr abstrakt gehalten und ohne alle Zahlen in einem statement abzufrühstücken) war ja hier zu sehen: https://forum.fhem.de/index.php/topic,67721.msg592622.html#msg592622


Den nachfolgenden versteh ich gerade nicht was er machen soll, bzw den Sinn :-D
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0);; $dim+=$EVENT eq "up"?10:-10;; $dim=$dim>100?100:$dim<0?0:$dim;; fhem "setreading $NAME dim $dim"}


Hast du das genutzt?
"sub my_HierDimmeIch($)"

Antwort: bisher noch nicht getestet oder ausgewertet.

Wo kam das her?
setreading Streifen newstate [Streifen:state]
if ([Streifen:state] = "on") { set Stripe.Strom on }
if ([Streifen:state] = "off") { set Stripe.Strom off }
if ([Streifen:state] = "0") { set harmony_37861872 Dimm- }
if ([Streifen:state] = "5") {}

Antwort: Von mir, ein erster gedanklicher Entwurf. Der würde noch auf Einzelzahlen reagieren statt alles in einem abzuarbeiten.

set Stripe.Strom on/off <- schaltet meinen IT Aktor ein der als Gerät in FHEM definiert ist.
set harmony_37861872 Dimm- und set harmony_37861872 Dimm+ dimmt über meinen Harmony Hub meinen LED Stripe.


Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 25 Februar 2017, 13:30:25
Salve,

attr Kuechenlampe setList state:slider,0,1,100 toggle up down on off
--> die Werte 0,1 und on,off haben doch die identische Wirkung, oder? was sagt die 100 aus?

Zitat
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0);; $dim+=$EVENT eq "up"?10:-10;; $dim=$dim>100?100:$dim<0?0:$dim;; fhem "setreading $NAME dim $dim"}
--> das hat mir ein FHEM-Kollege (DeeSPe) zum Thema "Brightness Characteristic" gecoded. Verstanden habe ich das nicht richtig. Es geht darum, dass der Wert nicht unter 0 und über 100 gehen darf.

Zitat
attr Stripe homebridgeMapping Brightness=state,cmd=
--> das kann ich so übernehmen oder muss das erweitert werden? Falls ja wie/womit?

Fragen über Fragen.... :-)
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: DeeSPe am 25 Februar 2017, 13:40:27
Wie schon erwähnt kenne ich mich nicht mit Alexa Mapping aus, sondern nur für homebridge.
Da aber beide vom selben Entwickler sind, gehe ich davon aus dass es auch ähnlich funktioniert.
Brightness musst Du mitteilen wo es seine Werte findet (Reading) und wie es diese setzen kann.

attr Stripe homebridgeMapping Brightness=dim,cmd=

Das Problem ist das cmd! Da es bei Dir kein cmd gibt mit welchem Du das Licht auf einen bestimmten Helligkeitswert setzen kannst. Du kann nur hoch/runter dimmen.
Sicher könnte man da auch noch was bauen, aber ein "dummes Devices" bleibt halt ein "dummes Device".

Gruß
Dan
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 25 Februar 2017, 17:49:42
Also mit meinem kann ich den Dummy auf einen bestimmten Wert setzen. Problem ist aktuell auf diesen Wert auch richtig zu reagieren ;-)
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 01 März 2017, 19:26:23
Hallo,

kann uns hier bitte jemand weiterhelfen?
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 02 März 2017, 13:23:19
Wo genau ist denn nun dein Problem noch?

Ich muss nur noch die Logik schreiben, dass er auf die Werte dimmt und nicht pauschal ganz runter und dann hoch auf den Wert.

Der Rest geht bei mir.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 02 März 2017, 13:34:38
Hi,

bei dem Mapping tue ich mich noch schwer. Habe dazu einen anderen Thread erstellt: https://forum.fhem.de/index.php/topic,68263.0.html
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 02 März 2017, 15:10:12
Hast du jemals meinen von mir auf einer Seit vorher verlinkten Thread gelesen?  ;)

Da steht alles was dein Dummy braucht damit du ihm über Alexa die Werte geben kannst. Lediglich das Notify ist noch nicht dabei.

Und auch das heller dunkler.... dafür brauchst du zum einen Alexa-FHEM in der Version mit frei definierbaren Dingen: https://forum.fhem.de/index.php/topic,67490.0.html (denke ich)
Oder du versucht es einfach mal meinen Dummy zu bauen und zu sagen setze auf HELLER.

Eventuell wird diese Value ja schon übergeben, dann brauchst du nur ein Notify, dass auf diesen State "heller" reagiert.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: Master_Nick am 02 März 2017, 23:22:18
Soo ich kann dir was schönes sagen :-)

Mein Dummy kann von Alexa per "Setze Streifen auf dunkler" gedimmt werden hoch und runter.

Er ändert einfach den Wert von 0 bis 100 oder eben von 100 bis 0 in 25er Schritten (0, 25, 50, 75, 100). Du brauchst also nichts bauen mit Dim Up oder Dim Down. Ob man die Schritte anpassen kann, weiß ich aktuell nicht.
Titel: Antw:Frage zu genericDeviceType:switch,outlet,light,blind,speaker,thermostat
Beitrag von: tklein am 03 März 2017, 16:01:23
Hi,

klasse. Das freut mich für dich.

Das Thema mit dem Mapping/Alexa ist für mich momentan echt noch zu hoch für mich. Schaffe selbst das Beispiel in dem anderen Thread mit der Temperatur/Feuchtigkeitsansage im Raum xy nicht.  :'(
Mal schauen, ob das noch besser wird.


Woher weiss sie denn wie lange sie senden muss? Bzw. wie der Status momentan ist?
Vielleicht schaffe ich mein Stripe auch noch dimmbar zu machen.


define Kuechenlampe dummy
attr Kuechenlampe userattr dim_status
attr Kuechenlampe alexaName Stripetest
attr Kuechenlampe alexaRoom Kueche
attr Kuechenlampe genericDeviceType light
attr Kuechenlampe group Stripes
attr Kuechenlampe homebridgeMapping on=Kuechenlampe:toggle,off=Kuechenlampe:toogle,down=Kuechenlampe:down,up=Kuechenlampe:up
attr Kuechenlampe icon light_led_stripe
attr Kuechenlampe room Küche,Stripes,Homekit,alexa
attr Kuechenlampe setList toggle up down on off
attr Kuechenlampe webCmd toggle:up:down:on:off

define toggle_Kuechenlame notify Kuechenlampe:toggle {`/home/pi/433Utils/RPi_utils/codesend 11508417 &`}
define up_Kuechenlampe notify Kuechenlampe:up {for (my $i=1;;$i!=10;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 11508420 &`}}
define down_Kuechenlampe notify Kuechenlampe:down {for (my $i=1;;$i!=10;;$i++) {`/home/pi/433Utils/RPi_utils/codesend 11508418 &`}}
define n_Kuechenlampe_up_down notify Kuechenlampe:(up|down).* {my $dim=ReadingsVal($NAME,"dim",0);; $dim+=$EVENT eq "up"?10:-10;; $dim=$dim>100?100:$dim<0?0:$dim;; fhem "setreading $NAME dim $dim";; fhem "set Kuechenlampe dim_status $dim"
define off_Kuechenlampe notify Kuechenlampe:off {system(" /home/pi/433Utils/RPi_utils/codesend 11508417 &")}
define on_Kuechenlampe notify Kuechenlampe:on { system("/home/pi/433Utils/RPi_utils/codesend 11508417 &")}