| 1 | #!/usr/bin/perl -w |
---|
| 2 | |
---|
| 3 | # Author: <joao.alfredo@gmail.com> |
---|
| 4 | |
---|
| 5 | use Cyrus::IMAP::Admin; |
---|
| 6 | |
---|
| 7 | # |
---|
| 8 | # CONFIGURATION PARAMS |
---|
| 9 | # |
---|
| 10 | my $cyrus_server = "localhost"; |
---|
| 11 | my $cyrus_user = "expresso-admin"; |
---|
| 12 | my $user = "expresso-admin"; |
---|
| 13 | my $mechanism = "login"; |
---|
| 14 | |
---|
| 15 | if (!$ARGV[0]) { |
---|
| 16 | die "Usage: $0 [expresso-admin password]\n"; |
---|
| 17 | } else { |
---|
| 18 | $cyrus_pass = "$ARGV[0]"; |
---|
| 19 | } |
---|
| 20 | |
---|
| 21 | print "Criando usuario: $user. \n"; |
---|
| 22 | createMailbox($user,'INBOX'); |
---|
| 23 | createMailbox($user,'Sent'); |
---|
| 24 | createMailbox($user,'Trash'); |
---|
| 25 | createMailbox($user,'Drafts'); |
---|
| 26 | sub createMailbox { |
---|
| 27 | |
---|
| 28 | my ($user, $subfolder) = @_; |
---|
| 29 | |
---|
| 30 | my $cyrus = Cyrus::IMAP::Admin->new($cyrus_server); |
---|
| 31 | $cyrus->authenticate($mechanism,'imap','',$cyrus_user,'0','10000',$cyrus_pass); |
---|
| 32 | |
---|
| 33 | if ($subfolder eq "INBOX") { |
---|
| 34 | $mailbox = "user/". $user; |
---|
| 35 | } else { |
---|
| 36 | $mailbox = "user/". $user ."/". $subfolder; |
---|
| 37 | } |
---|
| 38 | |
---|
| 39 | $cyrus->create($mailbox); |
---|
| 40 | if ($cyrus->error) { |
---|
| 41 | print STDERR "Error: ", $mailbox," ", $cyrus->error, "\n"; |
---|
| 42 | } else { |
---|
| 43 | print "Mailbox $mailbox criada com êxito.\n"; |
---|
| 44 | } |
---|
| 45 | |
---|
| 46 | } |
---|