Beispiel #1
0
        private async Task CreateSubscriptionsFromClientStatesAsync(CancellationToken cancellationToken)
        {
            var client = await _clientManager.GetMSGraphClientFromTokenAttributeAsync(_attribute, cancellationToken);

            var userInfo = await client.Me.Request().Select("Id").GetAsync();

            var subscriptions = _values.Select(GetSubscription);

            foreach (var subscription in subscriptions)
            {
                _log.LogTrace($"Sending a request to {_notificationUrl} expecting a 200 response for a subscription to {subscription.Resource}");
                var newSubscription = await client.Subscriptions.Request().AddAsync(subscription);

                await _subscriptionStore.SaveSubscriptionEntryAsync(newSubscription, userInfo.Id);
            }
        }