MS Teams - 在"应用 + 用户"上下文(图形 API)中不支持此资源丰富的通知



我正在尝试为频道订阅设置丰富的通知,就像下面的文档一样。

特定Teams通道中的新消息或更改消息:/Teams/{id}/channels/{id}/messages

我像下面这样用ROPC认证流程向订阅url提供详细信息。

{
"changeType": "created,updated",
"notificationUrl": "https://f554-118-110-222-226.ngrok.io/api/teams/events",
"resource": "teams/TEAM_ID/channels/CHANNEL_ID/messages",
"expirationDateTime": "2021-10-20T02:55:53Z",
"encryptionCertificate": "encryptionCertificate",
"encryptionCertificateId": "encryptionCertificateId",
"includeResourceData": true,
}

我应该有访问该资源所需的所有权限,因为我可以在incleresourcedata为false时创建订阅. 但是,当incleresourcedata为true时,我得到以下错误我提供加密证书

操作:创建;异常:[状态码:BadRequest;原因:在"app + user"上下文中不支持富通知。请将incleresourcedata字段设置为false

我认为这可能与我的授权和权限设置有关,但我不完全确定这是什么意思。任何帮助都是感激的

建议您尝试重新验证并设置以下所有先决条件,如果您可能在设置团队频道更改通知时错过了。

  • 你需要包含" incleresourcedata "设置为"true";并提供如下所述的证书信息
  • 你需要让你的申请获得批准

动态订阅通道消息通知的其他方法(例如:powerapp -当前用户可以订阅他所有的joinedTeams或selected teams,并接收推送通知),因为Ms Flows和Logic应用程序只允许您一次设置一个。

在创建订阅时设置包含资源数据的更改通知,请遵循此MS文档。

参考:团队频道消息允许更改通知测试版?·Issue #3977·microsoftgraph/microsoft-graph-docs·GitHub

在这个文档块中找到了我问题的答案。感谢RahulKumarShaw-MT链接正确的版本。

https://learn.microsoft.com/en-us/graph/api/subscription-post-subscriptions?view=graph-rest-beta&标签= http # chatmessage

下面的错误意味着由于应用程序正在使用ROPC认证流它属于委托权限,API不支持发送加密数据。

操作:创建;异常:[状态码:BadRequest;原因:富在"app + user"中不支持此资源的通知上下文。请将incleresourcedata字段设置为false

为了解决这个问题,我不得不设置一个额外的认证令牌,其中包含专门为此目的设置的应用程序权限。

最新更新