从iPhone上的Exchange IMAP邮箱删除邮件

时间:2020-03-05 18:45:27  来源:igfitidea点击:

我使用IMAP在iPhone上配置了辅助Exchange邮箱。这一切似乎都可以正常工作,除非在电话上删除了一条消息后,它仍然可以在Outlook中正常显示。我在手机上将"删除已删除的邮件"设置设置为什么似乎无关紧要。

我了解这是由于电话无法删除已删除的邮件和Exchange在Outlook中显示已删除但未删除的邮件所导致的。

我正在寻找一种自动化的解决方案,在删除手机上的消息和在Outlook中消失之间没有太大的延迟。从手机中删除后,该消息也应显示在"已删除邮件"中。

我曾考虑过创建一个后台进程,该进程通过IMAP连接到邮箱,并处于IDLE模式,直到文件夹中的邮件已删除。然后它将清除文件夹并返回IDLE模式。这不适用于一个以上的文件夹(没有多个实例),但可能可以完成这项工作。

有关支持IMAP IDLE的易于编写脚本的工具或者库的任何建议?

解决方案

回答

我可以全力推荐使用Mail :: MAPClient模块使用一个简单的Perl客户端编写这样的过程。

#!/usr/bin/perl -w
use strict;
use Mail::IMAPClient;

# returns an unconnected Mail::IMAPClient object:
my $imap = Mail::IMAPClient->new(  
                    Server => $host,
                    User    => $id,
                    Password=> $pass,
)       or die "Cannot connect to $host as $id: $@";
$imap->expunge();

然后可以从crontab或者其他调度程序运行。