我正在使用perspective gem来订阅微软交换通知服务。 到目前为止,我设法使用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服务器收到批量推送通知,而不是为每个订阅获得一个?
谢谢
答案 0 :(得分: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。