使用Microsoft graph API sdk订阅用户状态

时间:2020-09-01 07:47:38

标签: .net subscription microsoft-graph-teams

我一直在尝试使用Microsoft graph beta sdk来向用户订阅Microsoft graph api。 我能够成功地订阅一个用户,并且也可以正常工作,就像我从Microsoft团队更改状态时按预期进行更改一样。

当我尝试订阅另一个用户时,它说订阅已经存在。尝试删除一个以添加另一个。

有没有办法一次订阅所有用户,或者我需要循环其他方式?

代码:

var subscription = new Subscription
                {
                    ChangeType = "updated",
                    NotificationUrl = _applicationBaseUrl + "/Platform/presenceNotification",
                    Resource = $"/communications/presences/{id}",
                    ExpirationDateTime = DateTime.UtcNow.AddMinutes(2),
                    ClientState = tenantId
                };
await graphClient.Subscriptions
                    .Request()
                    .AddAsync(subscription);

1 个答案:

答案 0 :(得分:1)

是的,您可以要求多个ID,并且必须在请求中写入每个ID,MS会将您限制为最多650个用户的列表。

资源格式为:

"/communications/presences?$filter=id in ('id1','id2',...)";