public async Task Run([CosmosDBTrigger( databaseName: "TwitterBotDB", collectionName: "TweetCollection", ConnectionStringSetting = "CosmosDB:ConnectionString", LeaseCollectionName = "leases", CreateLeaseCollectionIfNotExists = true)] IReadOnlyList <Document> documents, [SignalR( HubName = "TweetNotificationsHub", ConnectionStringSetting = "SignalR:ConnectionString")] IAsyncCollector <SignalRMessage> messages, ILogger log) { log.LogInformation("Documents modified " + documents.Count); foreach (var document in documents) { var tweet = await _tweetRepository.GetByIdAsync(document.Id); var users = _userRepository.GetUsersByHashtags(tweet.Hashtags.Select(p => p.Text).ToArray()); foreach (var user in users) { await messages.AddAsync(new SignalRMessage { UserId = user.Id, Target = "updateTweets", Arguments = new[] { tweet } }); } } await messages.FlushAsync(); }