[gelöst] ascAPIget in DOIF-Bedingung?

Begonnen von gestein, 29 Juni 2021, 23:46:14

Vorheriges Thema - Nächstes Thema

gestein

Hallo,

ich schaffe es einfach nicht, eine ascAPIget-Funktion im Bedinungsteil eines DOIF aufzurufen.

Der Sinn des DOIF wäre, ein Dummy für die ExternalTrigger-Fahrt des ASC abhängig gewissen Parametern zu setzen.
Dazu hole ich mir den aktuellen Azimuth aus dem ASC-Device und die linke Azimuth-Grenze eines Rollos.

Aber ich schaffe es nicht diese Abfrage in den Bedingungsteil einzubauen.
Wenn ich folgendes mache:
defmod diTV_Rollos DOIF { if ((ascAPIget('ShadingAzimuthLeft','Rollo.WZ.StiegeRechts')<ascAPIget('Azimuth')) and ([MeinFernseher:state] eq "on") and ([TW.Helligkeit:brightness] > 3000)) {\
fhem_set("dyExternalTrigger4Rollos online")\
}\
  else {\
  fhem_set("dyExternalTrigger4Rollos offline")\
  }\
}

Dann kommt die Fehlermeldung im DOIF:
block_01 condition c01: Undefined subroutine &DOIF::ascAPIget called, line 1

Wie mache ich das richtig?
Danke für jeden Tipp.
lg, Gerhard

amenomade

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

gestein

Super, vielen Dank.
Darauf wäre ich nicht gekommen.

Scheint zu funktionieren.
lg, Gerhard

Damian

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

amenomade

#4
Zitat von: Damian am 30 Juni 2021, 09:51:42
ich auch nicht, wenn ich die Doku nicht gelesen hätte ;)

https://fhem.de/commandref_DE.html#DOIF_Eigener_Namensraum
LOL. Die Doku von wem?

Ich muss sagen, ich wusste selbst nicht, dass es dokumentiert ist ;-) Aber um so besser! Du machst hier eine tolle Arbeit!!!
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus