FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Marcel_R am 28 September 2022, 18:49:39

Titel: [gelöst]Undefined subroutine &main::debian
Beitrag von: Marcel_R am 28 September 2022, 18:49:39
Grüezi,
Als Fehlermedlung erhalte ich:
ZitatERROR evaluating { debian ('x@x.ch','Test','Test-Text'); }: Undefined subroutine &main::debian called at (eval 205) line 1.
##############################################
# $Id: myUtilsTemplate.pm 21509 2020-03-25 11:20:51Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.

######## DebianMail  Mail auf dem RPi versenden ############
# $provider für SMTP Server anpassen.
# Einmal in der FHEM Kommandozeile, user und password anpassen:
# {setKeyValue("myEmailKonto",'user@domain');;setKeyValue("myEmailPasswrd",'password')}
sub debian
{
my $rcpt = shift;
my $subject = shift;
my $text = shift;
my $attach = shift;
my $ret = "";
my $error;
my $konto = getKeyValue("myEmailKonto");
my $passwrd = getKeyValue("myEmailPasswrd");
my $from = $konto; # or use different KeyValue if konto is not the from email address
my $provider = "provider.ch:587"; # smtp.domain.tld:port see provider documentation
#Log 1, "sendEmail RCP: $rcpt";
#Log 1, "sendEmail Subject: $subject";
#Log 1, "sendEmail Text: $text";
#Log 1, "sendEmail Anhang: $attach";
if (not defined($attach)){$attach=''}
$ret .= qx(sendemail -f '$from' -t '$rcpt' -u '$subject' -m '$text' -a $attach -s '$provider' -xu '$konto' -xp '$passwrd' -o tls=no -o message-charset=utf-8);
$ret =~ s,[\r\n]*,,g;    # remove CR from return-string
Log 1, "sendemail returned: $ret";
}

1;


Zur Info:
Mail versandt über die Konsole (via ssh) klappt.
Ursprünglich war die Subroutine DebianMail genannt. Auf der Fehlersuche habe ich vereinfacht...

Es scheint mir, dass ich 1 : 1 die Musterroutine übernommen habe - trotzdem will und will es einfach nicht - es scheint mir, dass es ein total blöder Fehler sein muss.

Ich bitte um wohlwollende Hilfe!
Marcel
Titel: Antw:Undefined subroutine &main::debian
Beitrag von: JoWiemann am 28 September 2022, 18:57:46
Wenn Du den Aufruf aus der Kommandozeile im FhemWeb getätigt hast, dann ohne ;

{debian ('x@x.ch','Test','Test-Text')}

Grüße Jörg
Titel: Antw:Undefined subroutine &main::debian
Beitrag von: Otto123 am 28 September 2022, 19:41:55
Hi Marcel,

Die myUtils mit dem FHEM Editor oder extern editiert? Extern muss man sie mit reload neu laden!

Gruß Otto
Titel: Antw:Undefined subroutine &main::debian
Beitrag von: Marcel_R am 28 September 2022, 20:09:39
Danke für die Antworten!

Wer lesen (und begreifen) kann ist klar im Vorteil.

Habe das myUtilsTemplate.pm editiert und NICHT als 99_myUtils.pm abgespeichert.

Asche über mein Haupt!
Marcel