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();
        }