Mail Notifier

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
Iridium
Beiträge: 1
Registriert: 27.02.2009 11:13:44

Mail Notifier

Beitrag von Iridium » 27.02.2009 11:25:08

Hallo zusammen,

Ich bin auf der Suche nach einer Software (oder eine Kombination von Programmen), die folgende Funktionen erfüllt:
- Überprüfung eines IMAP-Postfaches
- Sobald eine neue E-Mail eintrifft wird ein Befehl ausgeführt (Wenn möglich mit Parametern wie Betreff, Absender der Mail)
- Programm läuft als Daemon im Hintergrund
- Läuft auf Server, also nur Kommandozeile

Die Überprüfung des Postfaches sollte also periodisch erfolgen oder (was natürlich super wäre) über Push-Mail funktionieren.
Mein Hintergedanke ist folgender: Ich kann über ein Webportal monatlich 500 SMS gratis versenden, dazu gibt es auch ein Programm. Nun möchte ich rein versuchsweise eine SMS bekommen sobald eine neue E-Mail eingegangen ist. In der SMS-Nachricht sollte natürlich wenn möglich der Absender und Betreff der E-Mail stehen. Optional dann noch die ersten Zeilen des Textes.

Das einzige Programm worüber ich gestolpert bis ist "specto", was aber über ein GUI und nicht über die Kommandozeile abläuft.
Ich hoffe jemand kennt eine Lösung zu meinem Problem.

Gruss
Iridium

Benutzeravatar
CrashMan
Beiträge: 340
Registriert: 07.04.2007 14:04:27
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: MD

Re: Mail Notifier

Beitrag von CrashMan » 27.02.2009 18:08:49

Ich hab was ganz in die Richtung gebastelt, aber ich will nur wissen, ob in gewissen Ordnern ungelesene Mails liegen.
Vielleicht hilft es dennoch.

Code: Alles auswählen

#!/usr/bin/perl

use strict;
use Net::IMAP::Simple;
my $server = new Net::IMAP::Simple( "IP-des-Servers" );
$server->login("username", "password");

my $unseen = 1;

while(1)
  {
    $unseen = 0;
    $number_of_messages = $server->select( "INBOX" );
    foreach my $msg ( 1..$number_of_messages ) {
      if ( ! $server->seen( $msg ) ) {
        $unseen = 1;
        last;
      }
    }

  if ($unseen == 1)
  {
   # tuwas
  }

  # 1 Sekunde warten
  select(undef, undef, undef, 1);
}
So in etwa. Ich hab das aus einem Script rauskopiert, wo ich noch einige andere Sachen abfrage...

mfg
debian stable + arch

Benutzeravatar
ckoepp
Beiträge: 1409
Registriert: 11.06.2005 20:11:23
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nähe Heidelberg

Re: Mail Notifier

Beitrag von ckoepp » 27.02.2009 18:54:24

Geht auch mit Postfix und ganz ohne Hintergrunddienst :)
"Es gibt kein Problem, das man nicht mit einem doppelten Scotch lösen könnte!"
Ernest Hemingway

Antworten