Thread E-Mails löschen mit (3 answers)
Opened by rommi at 2014-02-27 22:25

rommi
 2014-02-27 22:25
#173746 #173746
User since
2005-03-03
54 Artikel
BenutzerIn
[default_avatar]
Hallo Zusammen,

benötige Hilfe.
Würde gerne meine E-Mails bei Bedarf über Mail::IMAPClient löschen. Das Connecten und
Abrufen der E-Mails funzt soweit, nur das Löschen nicht. Ich weiss nicht woran es liegt,
muss ich die E-Mail, die ich löschen möchte, irgendwie noch selektieren/markieren oder
irgend ein Flag vorher setzen ..?

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
use strict;
use warnings;
use Mail::IMAPClient;
use IO::Socket::SSL;

############################
### SSL erstellen
############################
my $socket = IO::Socket::SSL->new ( PeerAddr => 'imap.web.de',
PeerPort => 993,
SSL_verify_mode => SSL_VERIFY_NONE,
) or die "socket(): $@";


my $client = Mail::IMAPClient->new ( Socket => $socket,
User => '****@web.de',
Password => '***********',
) or die "new(): $@";

############################
### select Ordner
############################

$client->select('INBOX');

############################
### Mails holen
############################

my @mails = ($client->seen(),$client->unseen);

############################
### Mail-Durchlauf
############################

foreach my $id (@mails)
{
print "\nid: $id\n";

my $from = $client->get_header($id, 'From');
my $subject = $client->get_header($id, 'Subject');
my $date = $client->get_header($id, 'Date');

print "\nFrom: $from Subject: $subject Date: $date";

####### Mail löschen
print "\nMail loeschen Ja \ Nein: ";
chomp (my $jn = <STDIN>);
if( $jn eq "J" || $jn eq "j" )
{
print "\nMail-ID $id wird geloescht";
$client->delete_message($id) or warn "Could not delete_message: $@\n";
}

};

############################
### Verbindung trennen
############################

$client->logout();


Lieben Dank und Gruss,
rommi

View full thread E-Mails löschen mit