Долго искал скрипт, позволяющий узнать пришла ли новая почта по IMAP. Не нашёл. Решил сам написать. Получилось вот что #!/usr/local/bin/perl -w use Net::IMAP::Simple; my $mailbox = 'Inbox'; my $hostname = 'mail.domain.com'; my $username = 'user'; my $password = 'pwd'; # Connect to the Server my $server = Net::IMAP::Simple->new( $hostname ) or die "Unable to connect to IMAP: $Net::IMAP::Simple::errstr\n"; # Log on die("Login failed: $server->errstr \n") if (!$server->login($username,$password)); # Open the Specified Folder my $cty = $server->select( $mailbox ); # Start the new mail counting loop my $count = 0; foreach my $msg ( 1 .. $cty ) { if ( ! $server->seen( $msg ) ) { $count++; }; } # Close the connection $server->quit(); # Return result if ($count) { print "New $count"; } else { print "New 0"; } Может кому и понадобится! Я заживил скрипт с XFCE4 Generic Monitor и теперь вижу когда у меня на сервере новая почта!
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Отображение числа непрочитанных сообщений в коньках (2015)
- Форум perl Jabber (2009)
- Форум [Perl][XMPP] Net-XMPP::Message (2010)
- Форум Net::SNMP (2009)
- Форум Thunderbird не коннектится к IMAP (2013)
- Форум Perl: проблема совместимости «use Socket;» (2004)
- Форум Не удается подключиться к FTP через VPN (2015)
- Форум Postfix+Courier+MySQL и Squirrelmail. Connection dropped by IMAP server. (2014)
- Форум Сохранение почтовых вложений(fetchmail + procmail + uudeview) (2011)
- Форум виртуальные пользователи Postfix + Cyrus Sasl (2016)