[gelöööööst] DebianMail funktioniert plötzlich nicht mehr

Begonnen von franky08, 24 Mai 2017, 21:07:12

Vorheriges Thema - Nächstes Thema

franky08

Hallo, habe heute DebianMail mal wieder ausgegraben um einen Anhang zu versenden. Dabei ist mir aufgefallen da die Funktion weder mit Anhang noch meine 3 Jahre alten Mailfunktionen funktionieren.
An der sub ist nichts geändert, funktionierte 3 Jahre problemlos:

Ich hatte dummerweise die Klammern vergessen wieder raus zu nehmen: sub DebianMail()

sub DebianMail()
{
my $rcpt = shift;
my $subject = shift;
my $text = shift;
my $ret = "";
my $sender = "adresse\@provider.com";
my $konto = "konto";
my $passwrd = "pw";
my $provider = "smtp.googlemail.com:587";
Log 1, "sendEmail RCP: $rcpt";
Log 1, "sendEmail Subject: $subject";
Log 1, "sendEmail Text: $text";

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


Hier ein notify (aus der DEF) welches sonst immer funktionierte:

AVR_present:absent set MyTTS tts Die Steuerung für die Heizung ist ausgefallen, Netzwerk nicht OK; {DebianMail('xxxxxxxxxxxxxx','Netzwerk Heizung','Das Netzwerk zur Heizungssteuerung ist ausgefallen')}

Fehler im LOG:

2017.05.24 20:49:31 1: ERROR evaluating my $EVTPART0='absent';my $TYPE='PRESENCE';my $SELF='HZ_Steuerung_Ausfall';my $EVENT='absent';my $DEV='MyTTS';my $NAME='AVR_present';{DebianMail('xxxxxxxxxxxxxx','Netzwerk Heizung','Das Netzwerk zur Heizungssteuerung ist ausgefallen')}: Too many arguments for main::DebianMail at (eval 5238823) line 1, near "'Das Netzwerk zur Heizungssteuerung ist ausgefallen')"

2017.05.24 20:49:31 3: HZ_Steuerung_Ausfall return value: Too many arguments for main::DebianMail at (eval 5238823) line 1, near "'Das Netzwerk zur Heizungssteuerung ist ausgefallen')"


Hat jemand einen Tipp, wurde etwas geändert?

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

DeeSPe

Hast Du schon probiert den Code des notify komplett in Perl zu schreiben?
Das Mischen von Perl- und FHEM-Code kann zu unerwarteten Schwierigkeiten führen.

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

franky08

Mmh, ging ja drei Jahre ohne Probleme, könnte das Ganze zum testen mal in Perl packen aber die Fehlermeldung macht mich stutzig ... too many arguments...
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

DeeSPe

Nimm mal die Klammern hinter sub weg!
alt:
sub DebianMail()
neu:
sub DebianMail

Dürfte ein Prototype Problem sein.

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

franky08

Grrr, ja, die hatte ich vorhin übersehen als ich mit den Anhängen gespielt hatte, vorher hatte ich da keine Klammern gesetzt.
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

DeeSPe

Zitat von: franky08 am 24 Mai 2017, 21:26:14
Grrr, ja, die hatte ich vorhin übersehen als ich mit den Anhängen gespielt hatte, vorher hatte ich da keine Klammern gesetzt.

Sind die Klammern da, werden auch Prototypes erwartet, welche aber bei Dir leer sind.
Könntest auch "sub DebianMail($$$)" machen, sollte auch gehen.

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

franky08

Es waren die Klammern, da sollte später mal ein Parameter übergeben werden und dann hab ich nicht mehr an die Klammern gedacht :o

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

DeeSPe

Cool, dann setze bitte auf [gelöst] bevor die "Forums-Polizei" wieder schimpft. :)

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

franky08

#8
Ich denke das gelöst soll nicht mehr gesetzt werden, laut Diskussion im Bereich "Forum".

https://forum.fhem.de/index.php/topic,72131.0.html

;)

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

DeeSPe

Zitat von: franky08 am 24 Mai 2017, 22:09:28
Ich denke das gelöst soll nicht mehr gesetzt werden, laut Diskussion im Bereich "Forum".

https://forum.fhem.de/index.php/topic,72131.0.html

;)

VG
Frank

Ein Konsens wurde da m.E. noch nicht gefunden.
Und da ich die Aufforderungen gestern auch wieder mehrfach gelesen habe, gehe ich davon aus dass das [gelöst] Setzen noch nicht abgeschafft wurde. Ich sehe ehrlich gesagt auch keinen echten Mehrwert darin.

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