2017-02-02 60 views
0

我試圖創建一個小的控制檯應用程序發送和接收來自SFB的消息。
我通過使用https://github.com/tamhinsf/ucwa-sfbo-console中的代碼開始,然後使用readme.md在Azure管理門戶中創建應用程序(我分配了所有委派的權限以確保安全)。
都已經包括在API的工作(所以我敢肯定我是正確的登錄),但是當我嘗試調用makeMeAvailable收到IM通話(在https://ucwa.skype.com/documentation/KeyTasks-Communication-IncomingIMCall看)我得到以下響應UCWA:makeMeAvailable返回禁止和API混淆

{"code":"Forbidden","message":"The requested operation isn\u0027t allowed."} 

我發佈數據如下

{"SupportedModalities":["Messaging"]} 

這就是ucwa.skype.com網站的示例。

我也發現有問題發送消息,在Skype的網站https://ucwa.skype.com/documentation/Resources-startMessaging顯示了

Post https://fe1.contoso.com:443//v1/applications/970/communication/startMessaging 

,但在我的應用程序的響應embedded.communication._links.startMessaging是/ messagingInvitations而不是/通話startMessaging。 上https://ucwa.skype.com/documentation/KeyTasks-CreateApplication-3文檔還顯示

"startMessaging":{"href":"/ucwa/oauth/v1/applications/105/communication/messagingInvitations"}, 

我了我應該做的正確發送和接收消息和API文檔並沒有真正的幫助相當混亂。

預先感謝您。

回答

1
  1. makeMeAvailable在UCWA不支持卻爲在線。可能當它被引入時,新的應用程序權限將被添加到AAD權限中,這將需要被授予。所以,這是預料之中的,但文件確實已經過時,只是指UCWA在On-Prem上的行爲。
    參見/票:Enable 'me' resource and controlling self user's presence in UCWA

  2. 你是對的,很好的發現。但是,在messagingInvitations資源(它不在文檔中的哪個位置)上發佈是正確的方法。因此,遵循使用操作返回的URI的原則,而不是在代碼中按慣例編寫URI是一種方法。 您可以在這裏創建一個問題通知如下:https://github.com/OfficeDev/skype-docs/issues

+0

「User.ReadWrite」暴露爲Skype for Business在線和「允許該應用讀取和更新狀態,照片,位置,注意,來電轉接設置的登錄用戶「。我的代碼示例(在原始文章中引用)使用makeMeAvailable來設置用戶存在。 https://msdn.microsoft.com/en-us/skype/ucwa/skypeforbusinessonlinescopepermissions –

+0

我確認這現在按預期工作:'makeMeAvailable'現在返回204.我很確定它不是一個月前,在我的答案時間,具有相同的權限請求和相同的代碼。這個變化是在哪裏跟蹤或宣佈的? –

+0

現在已經有一段時間了 - 不幸的是,它看起來沒有任何公告。我無法回想起何時,但自從我更新我的代碼以支持呈現之後,這已經過去了一個多月。 –