DebianMail - aktuellste Datei als Anhang versenden

Begonnen von OliS., 19 Dezember 2015, 17:28:09

Vorheriges Thema - Nächstes Thema

OliS.

Hallo,

ich möchte in Abhängigkeit von einem Bewegungsmelder eine Mail mit einem Snapshot versenden. Mein notify sieht folgendermaßen aus.
BMelder1:motion define BM1_mail_at at +00:00:02 { DebianMail('MEINE@MAIL.COM','Snapshot!','LINK_ZUR_KAMERA_APP','/home/pi/NAS/surveillance/@Snapshot/Snapshot.jpg') }

Hier meine myUtils für den Mailversand.
######## DebianMail  Mail auf dem RPi versenden ############
sub
DebianMail
{
my $rcpt = shift;
my $subject = shift;
my $text = shift;
my $attach = shift;
my $ret = "";
my $sender = "MEINE\@MAIL.COM";
my $konto = "MEINE\@MAIL.COM";
my $passwrd = "PASSWD";
my $provider = "smtp.gmail.com:587";
Log 1, "sendEmail RCP: $rcpt";
Log 1, "sendEmail Subject: $subject";
Log 1, "sendEmail Text: $text";
Log 1, "sendEmail Anhang: $attach";;

$ret .= qx(sendEmail -f '$sender' -t '$rcpt' -u '$subject' -m '$text' -a '$attach' -s '$provider' -xu '$konto' -xp '$passwrd' -o tls=yes -o message-charset=utf-8);
$ret =~ s,[\r\n]*,,g;    # remove CR from return-string
Log 1, "sendEmail returned: $ret";
}


Das Ganze funktioniert auch problemlos, solange der Dateianhang immer "Snapshot.jpg" heißt. Jedoch werden die Snapshots nach dem Schema "Kameraname-Datum-Uhrzeit.jpg" abgelegt. Mit regex innerhalb meines notifys habe ich es schon probiert (Kameraname.*.jpg). Das funktioniert nicht.

Kann mir mal bitte jemand einen Tritt in die richtige Richtung geben, wie ich das notify anpassen muss, damit immer der aktuellste Snapshot mit einem bestimmten Kameranamen versendet wird. Ich würde mich schon über einen Hinweis freuen, wo ich mich diesbezüglich belesen muss. Muss ich hier mit regulären Ausdrücken auf Linux-Ebene beschäftigen oder eher mit Perl RegEx?

Danke und schönes Wochenende.

Oli
PVE auf MiniPC (N100) mit FHEM, Zigbee2MQTT, Homebridge, DeConz

Ellert

Lass die Kamerasoftware den letzten Dateinamen in einen Dummy schreiben.

Schreib ein Perlscript, das immer den Dateinamen mit dem jüngsten Ertellungsdatum ausgibt.

Schreib ein Shellscript, das immer den Dateinamen mit dem jüngsten Ertellungsdatum ausgibt und in einen Dummy schreibt, s. https://wiki.ubuntuusers.de/find

OliS.

Zitat von: Ellert am 19 Dezember 2015, 19:41:18
Lass die Kamerasoftware den letzten Dateinamen in einen Dummy schreiben.

Schreib ein Perlscript, das immer den Dateinamen mit dem jüngsten Ertellungsdatum ausgibt.

Schreib ein Shellscript, das immer den Dateinamen mit dem jüngsten Ertellungsdatum ausgibt und in einen Dummy schreibt, s. https://wiki.ubuntuusers.de/find

Wow, wer hätte gedacht, dass das so simpel ist...  ;)

Danke für die Tipps! Ich schätze, da habe ich noch eine ganze Menge zu lernen. Dachte, dass es da möglicherweise einen etwas einfacheren und direkteren Weg gibt.

Oli
PVE auf MiniPC (N100) mit FHEM, Zigbee2MQTT, Homebridge, DeConz