Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email 自动将属于同一对话线程的所有邮件移动到外部文件夹_Email_Outlook_Exchange Server_Exchangewebservices - Fatal编程技术网

Email 自动将属于同一对话线程的所有邮件移动到外部文件夹

Email 自动将属于同一对话线程的所有邮件移动到外部文件夹,email,outlook,exchange-server,exchangewebservices,Email,Outlook,Exchange Server,Exchangewebservices,您好,我安装了ExchangeServer2007,有些用户有自己的收件箱。由于这一切都与办公室对话有关,我想将属于同一个对话线程的所有传入和传出邮件移动到磁盘文件夹中,如他机器上的任何文件夹D:\Conversation1 我可以让用户为每个对话创建单独的磁盘文件夹,并让他将对话中的第一封邮件移动到此文件夹。所以这不是现在的问题 此外,我还编写了一个web应用程序,当提供会话ID时,该应用程序将返回相应的磁盘文件夹路径 然而,现在我想要的是处理所有传入和传出的邮件,并将它们自动移动到与其对话线

您好,我安装了ExchangeServer2007,有些用户有自己的收件箱。由于这一切都与办公室对话有关,我想将属于同一个对话线程的所有传入和传出邮件移动到磁盘文件夹中,如他机器上的任何文件夹D:\Conversation1

我可以让用户为每个对话创建单独的磁盘文件夹,并让他将对话中的第一封邮件移动到此文件夹。所以这不是现在的问题

此外,我还编写了一个web应用程序,当提供会话ID时,该应用程序将返回相应的磁盘文件夹路径

然而,现在我想要的是处理所有传入和传出的邮件,并将它们自动移动到与其对话线程对应的磁盘文件夹中。我找到了两种可能的方法:

编写Outlook插件,当用户登录时,该插件将截获所有传入邮件和传出邮件,找到他们的对话id,将其发送到我编写的web应用程序,并将其移动到我的web应用程序返回的磁盘文件夹路径。 使用EWS:我可以为客户端计算机编写一个服务,该服务将要求用户登录,并基于该登录凭据,它将使用Exchange server Webservices EWS连接到Exchange server,然后执行与上面相同的操作。但是,这里需要定期轮询/要求Exchange Server检查他们的邮件是否是通过提供登录凭据的用户发送/接收的任何新邮件。在OutlookPlugin中,我不需要做这样的定期请求——我可以在新的收发邮件处理程序上编写代码。 有没有比上述更好的方法通过EWS实现这一点

主要问题。我发现上述两种方法的错误在于——我的功能对于所有邮件帐户/用户都是相同的。所以为什么用户只需要登录来移动邮件呢。我是否可以编写类似Exchange Server Tasks的内容?这是一个服务器端代码,而不是客户端代码,因为上述两种方法都会持续处理来自Exchange Server上配置的所有邮件帐户的所有邮件,并找到它们的对话ID,然后在我的web应用程序的帮助下将它们移动到相应的磁盘文件夹中

您可能忽略的详细信息

我已经为用户配置了Outlook 2010。 我有一个存储库设置,可以管理文件夹中邮件的存储。是,此存储库将是自己的计算机,而不是在exchange服务器上。但最终它会在硬盘上,所以将它们称为磁盘文件夹仍然没有错。 您还可以将该web应用程序视为存储库处理的一部分。所以它在存储库机器上运行。只是上面没有提到,以减少细节和关注哪些方法可用和更可取-简单和干净。
若要消除任何歧义,请编辑您的问题,并将磁盘上的每个文件夹命名为“磁盘文件夹”,将Exchange中的每个文件夹命名为“邮件文件夹”。该web应用程序在哪里运行?为什么是web应用程序?这些磁盘文件夹位于哪里?请添加一些有关您的网络结构的信息。IIRC有推送通知,Exchange会在推送通知中通知您新邮件等。您完全正确,应该尝试编写一个不需要用户干预的后台程序。该程序将在您的服务器上运行,因此不使用Outlook系统管理员不喜欢Outlook在邮件服务器上运行。@Jandogen实际上上面提到的文件夹都是磁盘文件夹,这里没有Exchange邮件文件夹。总之,更新了问题,在最后两个要点中包括了你想要什么。谢谢你告诉我推送通知-我不知道………..但我也认为有了它们,我将只为一个用户帐户获得推送通知推送通知处理程序示例应用程序需要uname和pwd。现在,如果我必须从100个这样的用户帐户中移动邮件,我是否需要一直运行100个这样的推送通知处理程序实例?还有这种推送通知处理程序的Java实现吗?