Exchange server 使用Exchange托管api(EWS)监视邮箱附件
我计划创建一个windows服务,用于监视exchange邮箱中特定主题的邮件。此类电子邮件的附件需要存储在网络共享上的特定文件夹中。我相信我可以使用ExchangeWebServicesManagedAPI(使用Exchange2007SP1)实现这一点 如果你有这方面的经验,请分享一些样本或链接,而不是下面的MSDN链接,可以给我一个跳转开始 假设这些邮件将通过X邮箱进入您的收件箱。您可以像这样创建对该文件夹的订阅Exchange server 使用Exchange托管api(EWS)监视邮箱附件,exchange-server,ews-managed-api,Exchange Server,Ews Managed Api,我计划创建一个windows服务,用于监视exchange邮箱中特定主题的邮件。此类电子邮件的附件需要存储在网络共享上的特定文件夹中。我相信我可以使用ExchangeWebServicesManagedAPI(使用Exchange2007SP1)实现这一点 如果你有这方面的经验,请分享一些样本或链接,而不是下面的MSDN链接,可以给我一个跳转开始 假设这些邮件将通过X邮箱进入您的收件箱。您可以像这样创建对该文件夹的订阅 PullSubscription subscription = Some
PullSubscription subscription =
SomeExchangeService.SubscribeToPullNotifications(
new FolderId[]{ WellKnownFolderName.Inbox },1440,"",EventType.Created);
Subscriptions.Add(subscription);
现在,您必须设置一个计时器并检查拉动通知
static void Exchanger_Elapsed(object sender, ElapsedEventArgs e)
{
foreach (var pullSubscription in Subscriptions)
{
foreach (var itemEvent in pullSubscription.GetEvents().ItemEvents)
{
Item item = Item.Bind(SomeExchangeService, itemEvent.ItemId);
if (item.Subject == someString)
{
// item.Attachments do something
// As in read it as a stream and write it
// to a file according to mime type and file extension
}
}
}
}
我希望这有助于
因电子邮件请求而更新
public static List<PullSubscriptionpublic static List<PullSubscription> Subscriptions = new List<PullSubscription>();> Subscriptions = new List<PullSubscription>();
公共静态列表订阅=新列表();
考虑创建一个搜索文件夹来筛选邮件。您只需在搜索文件夹中查找和处理邮件。有什么建议吗?@Pratick Kothari您试过在serverfault上问这个问题吗?我想你在那个网站会更幸运。你想把附件保存到一个文件夹吗?或者您正在尝试移动电子邮件?我想按电子邮件的主题将附件保存到文件夹中。您可以提供更详细的信息,以获得更全面的示例。这将导致每隔一段时间轮询服务器,因为您无法订阅Exchange 2007 sp1 EWS托管api中的searchfolders。