Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - {Misterhouse] Problem mit Mailversand aus Perl-Script

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    - √ - {Misterhouse] Problem mit Mailversand aus Perl-Script

    Hallo zusammen,

    ich möchte gerne, dass mir Misterhouse bei diversen Events eine Mail verschickt. Ich muss / möchte aber SMTP mit Authentifizierung benutzen.

    Folgendes Testscript kann ich aus der Konsole heraus starten (wenn man den "If" Teil ausklammert) und schickt auch eine Mail raus. Nimmt man den "If" Teil wieder rein und startet MH, dann wird vom "if ( (...) || $Startup)" auch eine Mail geschickt.

    Code:
    #!/usr/bin/perl
    use Net::SMTP_auth;
    my $mailServer  = 'smtp.test.de';
    my $absender    = 'test@test.de';
    my $user = 'testuser';
    my $pass = 'password';
    my $empfaenger  = 'empfaenger@test.de';
    my $nachricht   = 'Test nachricht';
    my $betreff     = 'Test Betreff';
     
     
    if ($New_Minute || $Startup) {
     
    my $smtp = Net::SMTP_auth->new($mailServer);
    $smtp->auth('PLAIN', $user, $pass) or die 'not auth';
    $smtp->mail($absender);                 
     
    $smtp->to($empfaenger);                 
     
    $smtp->data();                          
     
    $smtp->datasend("Subject: $betreff\n"); 
     
    $smtp->datasend("To: $empfaenger\n"); 
     
    $smtp->datasend("\n");                  
    $smtp->datasend("$nachricht");
    $smtp->dataend(); 
     
    $smtp->quit;      
    }
    Sobald aber die nächste Minute da ist, kommt der Fehler von MH:

    Code:
    Error in user code: not auth at ...
    Also, ich würde sagen, dass es am Konstruktor liegt, aber ich weiss nicht genau was. Dieses "not auth" kommt ja irgendwie daher, dass die Zeile
    Code:
     
    $smtp->auth('PLAIN', $user, $pass) or die 'not auth';
    nicht mehr gesetzt werden kann.

    Aber warum ?!

    An der Häufigkeit, dass man sich am SMTP Server zu oft anmeldet o.ä. liegt es definitiv auch nicht.

    Ich hoffe jemand, der fit in Perl ist, hat eine Idee !?

    Danke schonmal.

    MfG

    Daniel
    Endlich kann Ich Bei Euch mitreden ...


    #2
    Probier mal net_mail_send, damit gehts in einer Zeile:

    Beispiel:

    Code:
    my $email_to='xxx@xxx.de, yyy@yyy.de';
    net_mail_send to => $email_to, subject => "[MrHouse] Anruf von $call_from ($cid_name)", text => "Anruf von Telefonnummer $call_from ($cid_name) um $Time_Now auf Leitung $call_to\.\n\n";
    Wegen den anderen Optionen musst Du in der Hilfe schauen.

    Gruss
    Michael
    Viele Grüße,
    Michael

    Kommentar


      #3
      Hi,

      danke, ist ein anderer Ansatz, aber funktioniert.

      Vielen Dank !

      Gruß

      Daniel
      Endlich kann Ich Bei Euch mitreden ...

      Kommentar

      Lädt...
      X