订阅我的日历中的更改,Office 365如何返回通知回调?

时间:2016-03-03 06:17:23

标签: ruby-on-rails ruby office365 outlook-restapi

我正在将Outlook Office 365集成到我的网络应用中。如果日历中有任何创建/更新事件,我希望我的应用程序与Office 365保持同步。

目前,我创建了单向同步过程,例如创建,更新,删除以及从日历中获取所有事件。问题是:

  
      
  1. 如何为我们的应用程序与Office 365进行双向同步?
  2.   
  3. 如何创建通知订阅?
  4.   
  5. 如何验证订阅的通知网址?
  6.   

当我们订阅通知回调时,通过此通知URL的异常返回消息 https://webapp.com/notifications?validationtoken=MmJiM2QwMjYtNjAxYi验证失败。

问题是我们将如何验证通知-ULR? 我在Window Azure上创建了应用程序,当我订阅时返回相同的错误消息。 我怎么解决这个问题?

以下订阅代码:

URL: https://outlook.office365.com/api/v2.0/me/subscriptions

    json_object = {
            "@odata.type":"#Microsoft.OutlookServices.PushSubscription",
            "Resource":"https://outlook.office365.com/api/v2.0/Me/Events",
            "NotificationURL":"https://webapp.com/notifications“,
            "ChangeType":"Created, Updated, Deleted",
            "ClientState":"36228645-58b5-4d73-98a6-1b9ac535680c"
        }

1 个答案:

答案 0 :(得分:0)

https://dev.outlook.com/RestGettingStarted/Concepts/Webhooks

  

Outlook通知服务在创建新订阅之前验证订阅请求中的通知URL,其发生方式如下:

     
      
  1. Outlook通知服务向通知网址发送POST:   POST https://{notificationUrl}?validationtoken={TokenDefinedByService}   ClientState: {Data sent in ClientState value in subscription request (if any)}

  2.   
  3. Webhooks服务必须在5秒内提供200响应,其身体中的validationtoken值为plain / text类型。验证令牌是一个随机字符串,在响应中提供后,应由webhook丢弃。

  4.