Hauptmenü

Probleme bei notify

Begonnen von davedeluxe, 22 Juni 2017, 12:21:44

Vorheriges Thema - Nächstes Thema

davedeluxe

Hi,

kann mir hier jemand weiterhelfen:
klingel:.* set Kamera snap && set telegrambot sendImage @telegram /media/@Snapshot/[Kamera:LastSnapFilename]

Problem 1: der 2. Befehl (sendImage) wird gar nicht ausgeführt
Problem 2: Wenn ich 2 getrennte notify´s mache wird nicht das aktuelle Bild versendet sondern ein altes. Es müsste also alles in ein notify mit einem wait von 2-3 Sekunden.

Hat jemand ne Idee wie ich das am besten löse?
Wenn ich die Schreibweise anpasse:
klingel:.* {
fhem "set Kamera snap" &&
fhem "set telegrambot sendImage @telegram /media/@Snapshot/[Kamera:LastSnapFilename]"
}

erhalte ich folgende Fehler:
ZitatGlobal symbol "@telegram" requires explicit package name at (eval 14700) line 3.
Global symbol "@Snapshot" requires explicit package name at (eval 14700) line 3.

Es hilft leider auch nichts @@telegram und @@Snapshot zu verwenden.

Otto123

#1
Hi,

Du hast aus meiner Sicht folgende Problemfälle
1. set Befehle in FHEM durch ; trennen, was Du machst ist Perl, weiß nicht ob das geht.
2. gehen denn die Befehle in der FHEM Kommandozeile einzeln? Das Problem hat ja gar nichts mit notify zu tun? Zu dem telegrambot Befehl kann ich nichts sagen, da kenne ich mich im Syntax nicht aus
3. Deine andere Schreibweise benötigt \@
4. Dein Syntax für fhem Befehle im Perl stimmt so eventuell auch nicht -> https://fhem.de/commandref_DE.html#command da bin ich aber nicht sicher welche Varianten alle gehen

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

davedeluxe

Okay, 5 min später habe ich eine mögliche Lösung gefunden.
1. Notify welches beim Auslösen der Klingel (Klingel:trigger:.*) einen Snapshot erstell und ein
2. Notify welches bei einem neuen Snapshot (Kamera:LastSnapFilename:.*) diesen per Telegram versendet.

trotzdem würde mich interessieren was es mit den Sonderzeichen aufsich hat.

Nachtrag: Danke Otto123, das \@ kannte ich bisher nicht.

Grüße
Dave

DeeSPe

Zitat von: davedeluxe am 22 Juni 2017, 12:29:56
trotzdem würde mich interessieren was es mit den Sonderzeichen aufsich hat.

Alle Sonderzeichen die in Perl eine bestimmte Bedeutung haben (wie z.B. $,%,@) müssen durch einen vorangestellten Backslash geschützt (escaped) werden.

In FHEM Befehlen ist das Semikolon das Trennzeichen zwischen den Befehlen. "&&" oder "AND" oder "||" oder "OR" werden nicht unterstützt.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe