5

我正在使用视点 gem 订阅 Microsoft Exchange 通知服务。到目前为止,我设法通过在此使用 subscribe 方法订阅了一个文件夹:https ://github.com/WinRb/Viewpoint/blob/bcda30abdab99f52270f2c24a1c78364c986d967/lib/ews/soap/exchange_notification.rb

我尝试使用属于同一服务器上不同帐户的不同文件夹 ID 传递多个哈希。

client.ews.subscribe(
[{ :push_subscription_request => {
  :folder_ids =>  [{id: calendar[:id], change_key: calendar[:change_key]}],
  :subscribe_to_all_folders => true,
  :event_types=>  %w{CopiedEvent CreatedEvent DeletedEvent MovedEvent},
  :status_frequency => 1,
  :uRL => 'https://51.ngrok.io/ews_watch',
}, 
{same again with different calendar ids}]
)

我收到了来自 ews 的回复,但仅限于单个日历文件夹。

有谁知道如何批量订阅同一服务器上的多个邮箱,以便我从 ews 服务器接收批量推送通知,而不是为每个订阅获取一个?

谢谢

4

1 回答 1

1

我会遍历它。根据 ID 的存储位置:

@client.ews.subscribe.each do |ces| 
ces([{ :push_subscription_request => {
  :folder_ids =>  [{id: calendar[:id], change_key: calendar[:change_key]}],
  :subscribe_to_all_folders => true,
  :event_types=>  %w{CopiedEvent CreatedEvent DeletedEvent MovedEvent},
  :status_frequency => 1,
  :uRL => 'https://51.ngrok.io/ews_watch',
}])
end

没有经过测试,但这应该可以解决问题。只需遍历 ID。

于 2017-01-31T09:38:32.820 回答