2017-01-12 68 views
0

我正在嘗試編寫服務以在發生日曆事件時採取操作。即在15分鐘內提醒預約。多個用戶需要能夠註冊該服務。我認爲訂閱是我需要的,儘管用什麼「ChageType」來獲得警報,我還沒有得到。現在我得到「MSA請求不支持Exchange Online資源。」當我嘗試使用此代碼。我正在針對outlook.com帳戶工作。Microsoft.Graph訂閱 - MSA請求不支持Exchange Online資源

GraphServiceClient graphClient = SDKHelper.GetAuthenticatedClient(); 

var subscription = new Microsoft.Graph.Subscription(); 
subscription.ChangeType = "updated"; 
subscription.ExpirationDateTime = System.DateTime.UtcNow.AddDays(1); 
subscription.ClientState = System.Guid.NewGuid().ToString(); 
subscription.NotificationUrl = "https://mywebhook.azurewebsites.net/api/send/myNotifyClient"; // must be valid and able to verify? 

subscription.Resource = "me/events"; 
var newsub = await graphClient.Subscriptions 
        .Request().AddAsync(subscription); 

回答

-1

目前不支持在多個資源上使用MS帳戶進行訂閱。相反,郵箱必須使用「工作或學校」帳戶。

請參閱https://stackoverflow.com/a/41026203/270142瞭解更多詳情。

+0

對Outlook.com的訂閱由金塊包支持:包裝Outlook365 API的Microsoft.Office365.OutlookServices-V2.0。實際上這件事情已經成型 - 認證模式就像是用溜冰鞋拉牙。 –

0

訂閱到Outlook.com由熔核包所支持:Microsoft.Office365.OutlookServices-V2.0 封裝了Outlook365 API。

https://msdn.microsoft.com/en-us/office/office365/api/notify-rest-operations

我得到它的工作 - 使用排序的: https://github.com/jasonjoh/dotnet-tutorial 聯合: aspnet-webhooks-rest-sample

到目前爲止,我可以創建使用MVC應用程序和捕捉用戶信息+客戶端狀態的訂閱;在網絡掛接我可以捕獲客戶端狀態和訂閱ID與變更類型和資源ID一起:

https://outlook.office.com/api/v2.0/Users('[email protected]aaaaaaaaa')/Messages('AQMkADAwATNiZmYAZC1hODk4LTYwYjEtMDACLTAwCgBGAAADhL94GyFZe0WMH6_2kacBNAcAVYqcEoTpoEy-bsETzU244wAAAgEKAAAAVYqcEoTpoEy-bsETzU244wAAAFP_o9AAAAA=') 

不幸的是,沒有提供對「項目」的信息。

更新:使用來自MVC 5 application - implement OAuth Authorization code flow的信息我能夠獲得「授權碼流」的工作 - 仍然需要弄清楚如何使用access_token驗證OWIN(所以MVC應用程序具有登錄標識)。

相關問題