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
::ascAPIget
statt ascAPIget
Super, vielen Dank.
Darauf wäre ich nicht gekommen.
Scheint zu funktionieren.
lg, Gerhard
Zitat von: gestein am 30 Juni 2021, 08:20:57
Darauf wäre ich nicht gekommen.
ich auch nicht, wenn ich die Doku nicht gelesen hätte ;)
https://fhem.de/commandref_DE.html#DOIF_Eigener_Namensraum
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!!!