Office365 + EWS:获取账户中的共享邮箱列表

Office365 + EWS: Get a list of shared mailboxes in an account

假设我有一个 O365 帐户 user@example.com,其中有几个共享邮箱,例如shared1@example.com, shared2@example.com.

有没有办法在不知道具体名称的情况下获取这两个共享邮箱的列表?

即。我正在寻找一个这样工作的函数:

list = ews.GetListOfSharedMailboxes("user@example.com")
println(list) --> outputs Array("shared1@example.com", "shared2@example.com")

如果在 EWS 中不可用,是否有其他 API 支持此功能?

这取决于您的意思以及邮箱的添加方式。例如,如果有人刚刚将邮箱添加到他们的 Outlook 配置文件中,因为该配置保存在客户端的 Outlook 配置文件中,那么不可以。

对于用户添加的共享联系人和日历文件夹(这意味着它们在 OWA 中也可用)然后您可以使用 EWS - Access All Shared Calendars or https://social.msdn.microsoft.com/Forums/exchange/en-US/bbff797d-21df-4bf9-8796-e7b81d818f93/cews-retrieve-all-shared-contacts-available-from-user?forum=exchangesvrdevelopment

等快捷方式

最后要检查的地方是 AutoDiscover 结果中的其他邮箱 return 建议您使用 ewseditor https://ewseditor.codeplex.com/

进行测试

干杯 格伦