c# - EWS 邮箱组流订阅

标签 c# exchange-server exchangewebservices

我正在尝试创建一个项目来使用 EWS 服务收听 Exchange 房间邮箱中的事件。

如果我们需要监控 20k 个邮箱,那么我们需要创建 20k 个打开的连接。而不是 EWS 允许我们在每个组中创建最多 200 个邮箱的批处理连接。所以在监控20k个邮箱的情况下,我们只需要100个连接就可以监听所有的邮箱。

我只想知道这个邮箱分组使用了哪些标准? 我们可以在外部对这些邮箱进行分组吗?

我们可以通过将邮箱 ID 传递给方法“GetUserSettings”来获取群组信息

public GetUserSettingsResponse GetUserSettings(string userSmtpAddress, params UserSettingName[] userSettingNames);

感谢任何帮助

最佳答案

如果您可以从 GetUserSettings 获取分组信息,则连接上的所有 SMTP 都应该具有相同的组。我记得,分组信息仅在您反对 Exchange Online 时才重要,因此本地 Exchange 通常会发回空的分组信息,在这种情况下,您可以根据需要在连接上随意添加 SMTP 订阅,具体取决于200 的限制。 (我没有验证这在 E2019 中是否仍然如此,但可能是因为分组信息似乎在识别 O365 基础架构中的后端服务器。)

顺便说一句,我可能应该提一下,您可能已经看到了,对于新代码,应该使用图形 API 而不是 EWS。然而在我看来,Graph 中的更改通知是基于 EWS 中的推送通知建模的,不是流式通知,因此使用 Graph 通知可能存在一些网络障碍。

关于c# - EWS 邮箱组流订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61920356/

相关文章:

c# - EWS(Exchange Web 服务)- 向约会添加内联附件

java - Exchange Web 服务搜索自定义文件夹名称

c# - 将字节数组从 C# 传递到 C++ (COM)

c# - 如何调整此 wpf 按钮的大小

c# - vNext 类库中的目标 Android/iOS

java - 使用 JavaMail 连接到 IMAP 时出现 "A1 NO LOGIN failed"异常

c# - Exchange Web 服务 : why is ItemId not constant?

c# - 为什么我必须指定所有泛型类型参数?

.net - EDB 文件格式

c# EWS 2007 地址为空