Variable aus 99_my in Fhem nutzen

Begonnen von Dia81, 13 September 2019, 19:21:02

Vorheriges Thema - Nächstes Thema

Dia81

Zitat von: amenomade am 13 September 2019, 20:31:27
Nein
Statt
{fhem("set $NAME hue {(int(rand(55100))+4900)}")}
einfach
{fhem("set $NAME hue ".Value("Zufahlszahldummy")}, wie ich geschrieben habe, aber bitte 1 zu 1 ersetzen, und nicht noch mit igendwelchem pipe (|) dein Kommando mit der Zeitdefinition verbinden. Du nimmst dein WD wie er funktioniert, und erstetzt das Kommando

Alles klar versuche ich aber fehlt da nicht eine ")"

MadMax-FHEM

Wenn du ein funktionierendes at und das Setzen des WD hast welches klappt und eine Variante ohne Dummy willst:

poste ein list von beidem (allem was beteiligt ist) und ich bau dann "meine" Variante ohne Dummy draus...

Viel Erfolg, 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)

Dia81

Zitat von: MadMax-FHEM am 13 September 2019, 20:39:17
Wenn du ein funktionierendes at und das Setzen des WD hast welches klappt und eine Variante ohne Dummy willst:

poste ein list von beidem (allem was beteiligt ist) und ich bau dann "meine" Variante ohne Dummy...

Viel Erfolg, Joachim

danke gerne aber der WD scheitert noch

Dia81

Zitat von: amenomade am 13 September 2019, 20:31:27
Nein
Statt
{fhem("set $NAME hue {(int(rand(55100))+4900)}")}
einfach
{fhem("set $NAME hue ".Value("Zufahlszahldummy")}, wie ich geschrieben habe, aber bitte 1 zu 1 ersetzen, und nicht noch mit igendwelchem pipe (|) dein Kommando mit der Zeitdefinition verbinden. Du nimmst dein WD wie er funktioniert, und erstetzt das Kommando

define Test WeekdayTimer hueBridge1_HUEDevice5 012345678|20:37|xx {fhem("set $NAME hue ".Value("Zufahlszahldummy"))} bringt für meine Testlampe hinter mir keinen Erfolg leider

der dummy hat den Wer 32575 oder sowas

List:

Internals:
   FUUID      5d7bdb0a-f33f-1dc2-1d43-6a24365f1f83d562
   NAME       Zufallszahldummy
   NR         1445
   STATE      36869
   TYPE       dummy
   READINGS:
     2019-09-13 20:08:24   state           36869
Attributes:

MadMax-FHEM

Zitat von: Dia81 am 13 September 2019, 20:39:57
danke gerne aber der WD scheitert noch

Da vertraue ich mal auf amenomade! :)  ;)

Bzw. vielleicht komme ich auch noch dazu mal zu kucken...

Daddel grad nur auf dem Handy und kann nicht testen...

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)

Dia81

#20
ich sehe gerade den fehler, man sollte richtig schreiben können... neuer Test. ES KLAPPT DANKE!!!!!!!

define Test WeekdayTimer hueBridge1_HUEDevice5 012345678|20:37|xx {fhem("set $NAME hue ".Value("Zufahlszahldummy"))}

MadMax-FHEM

In deinem Versuch fehlen Anführungszeichen und du musst welche die da sind "escapen"!!

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

#22
Zitat von: Dia81 am 13 September 2019, 20:40:51
bringt für meine Testlampe hinter mir keinen Erfolg leider

Wie stellst Du das fest?
Mal in Log geschaut?
"list" vom WD bitte

Was ergibt
{fhem("set hueBridge1_HUEDevice5 hue ".Value("Zufahlszahldummy"))} in der Kommandozeile?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Dia81

Zitat von: amenomade am 13 September 2019, 20:44:45
Wie stellst Du das fest?
Mal in Log geschaut?
"list" vom WD bitte

Was ergibt
{fhem("set hueBridge1_HUEDevice5 hue ".Value("Zufahlszahldummy"))} in der Kommandozeile?

läuft danke ... Rechtschreibfehler grml...Zufahl - Zufall- Danke für deine Geduld!

MadMax-FHEM

Ich denke der Teil von WD müsste so lauten:

{fhem("set $NAME hue ".Value(\"Zufahlszahldummy\"))"}

Weil ja der fhem Aufruf so geht:

fhem"fhem-Befehl")

D.h. es muss alles innerhalb der Klammern des fhem-Aufrufs als String bzw. innerhalb von " " sein...

EDIT: auch interessant! Was ich heute noch alles so lerne... ;) Danke amenomade! :)

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 13 September 2019, 20:48:22
Ich denke der Teil von WD müsste so lauten:

{fhem("set $NAME hue ".Value(\"Zufahlszahldummy\"))"}

Weil ja der fhem Aufruf so geht:

fhem"fhem-Befehl")

D.h. es muss alles innerhalb der Klammern des fhem-Aufrufs als String bzw. innerhalb von " " sein...

Gruß, Joachim
Ne, da ist nichts zu escapen.
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

Zitat von: amenomade am 13 September 2019, 20:49:29
Ne, da ist nichts zu escapen.

Aber wäre doch "sauberer" und müsste aber auch gehen!?

Aber stimmt, Perl ist da sehr gnädig bzgl. "Variablen-Typen" etc. ;)

Danke, 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)

Dia81

Zitat von: MadMax-FHEM am 13 September 2019, 20:39:17
Wenn du ein funktionierendes at und das Setzen des WD hast welches klappt und eine Variante ohne Dummy willst:

poste ein list von beidem (allem was beteiligt ist) und ich bau dann "meine" Variante ohne Dummy draus...

Viel Erfolg, Joachim

Das  AT konnte ich noch nicht testen solte aber einfach sein mit :

List ZufallszahlAT

Internals:
   COMMAND    {Zufallszahlgen(4000)}
   DEF        *12:00:00 {Zufallszahlgen(4000)}
   FUUID      5d7be40b-f33f-1dc2-f777-a489bf9d7d6b0afc
   NAME       ZufallszahlAT
   NR         1446
   PERIODIC   yes
   RELATIVE   no
   REP        -1
   STATE      Next: 12:00:00
   TIMESPEC   12:00:00
   TRIGGERTIME 1568455200
   TRIGGERTIME_FMT 2019-09-14 12:00:00
   TYPE       at
   .attraggr:
   .attrminint:
   READINGS:
     2019-09-13 20:46:35   state           Next: 12:00:00


Die SUB ist:

sub Zufallszahlgen($)
{
my ($Ausgenommen) = @_;
my $Zufallszahl = int(rand(65000-$Ausgenommen))+$Ausgenommen;
fhem ("set Zufallszahldummy $Zufallszahl");
return $Zufallszahl;
}


Der Weekdaytimer:

Internals:
   COMMAND    {fhem("set $NAME hue ".Value("Zufallszahldummy"))}
   CONDITION 
   DEF        hueBridge1_HUEDevice5 012345678|20:44|xx {fhem("set $NAME hue ".Value("Zufallszahldummy"))}
   DEVICE     hueBridge1_HUEDevice5
   FUUID      5d7bdaed-f33f-1dc2-063e-8071c78fabe2d285
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       Test
   NR         1444
   Profil 0: Sonntag 20:44:00 xx
   Profil 1: Montag 20:44:00 xx
   Profil 2: Dienstag 20:44:00 xx
   Profil 3: Mittwoch 20:44:00 xx
   Profil 4: Donnerstag 20:44:00 xx
   Profil 5: Freitag 20:44:00 xx
   Profil 6: Samstag 20:44:00 xx
   Profil 7: Wochenende 20:44:00 xx
   Profil 8: Werktags 20:44:00 xx
   STATE      active
   STILLDONETIME 0
   TYPE       WeekdayTimer
   .attraggr:
   .attrminint:
   READINGS:
     2019-09-13 20:46:42   currValue       xx
     2019-09-13 20:46:42   nextUpdate      2019-09-14 20:44:00
     2019-09-13 20:46:42   nextValue       xx
     2019-09-13 20:46:42   state           active
   SWITCHINGTIMES:
     012345678|20:44|xx
   TIMER:
     Test_SetTimerOfDay:
       HASH       Test
       MODIFIER   SetTimerOfDay
       NAME       Test_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         20:44:00   xx
       1:
         20:44:00   xx
       2:
         20:44:00   xx
       3:
         20:44:00   xx
       4:
         20:44:00   xx
       5:
         20:44:00   xx
       6:
         20:44:00   xx
       7:
         20:44:00   xx
       8:
         20:44:00   xx
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1568400240
       PARA       xx
       TIME       20:44
       TAGE:
         0
         1
         2
         3
         4
         5
         6
         7
         8
   profile_IDX:
     0:
       20:44:00   1
     1:
       20:44:00   1
     2:
       20:44:00   1
     3:
       20:44:00   1
     4:
       20:44:00   1
     5:
       20:44:00   1
     6:
       20:44:00   1
     7:
       20:44:00   1
     8:
       20:44:00   1
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME  $EVENT

amenomade

Zitat von: MadMax-FHEM am 13 September 2019, 20:50:56
Aber wäre doch "sauberer" und müsste aber auch gehen!?

Aber stimmt, Perl ist da sehr gnädig bzgl. "Variablen-Typen" etc. ;)

Danke, Joachim

Ne, wäre nicht sauberer.
Innerhalb {} ist man in Perl
Da ruft man die Funktion fhem mit einem String als Parameter
Dieses String ist eine Konkatenation von "set blabla hue " und das Ergebnis von der Funktion Value()
Es gibt keine verschachtelte Strings
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

Ok, auch wieder wahr...

Danke, 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)