async Task <ReceiveMessageResponse> ConsumeMessage() { var message = await SQSClient.ReceiveMessageAsync(new ReceiveMessageRequest() { QueueUrl = Option.QueueUrl, MaxNumberOfMessages = Option.MaxNumberOfMessages }); if (message?.Messages?.Count() > 0) { // Keep consuming next message on next OnTimer LastConsumeMessage = message.Messages.Last(); var batch = message.Messages.ConvertAll(o => new DeleteMessageBatchRequestEntry() { Id = o.MessageId, ReceiptHandle = o.ReceiptHandle }); var deleteResult = await SQSClient.DeleteMessageBatchAsync(Option.QueueUrl, batch); if (deleteResult.Failed?.Count() > 0) { throw new Exception("Delete from SQS failed. "); } } return(message); }
private async Task SendMessage(string queueName, string messageBody, ILambdaContext context) { try { var response = await SQSClient.GetQueueUrlAsync(queueName); await SQSClient.SendMessageAsync(response.QueueUrl, messageBody); } catch (Exception e) { context.Logger.LogLine("Send Message Error" + e.Message + " and " + e.InnerException); } await Task.CompletedTask; }
public void TwitterScraperService_Constructor() { IScraperService _scraper = new TwitterClient("dakmNn0r3dhbMaUc4lvo46ErA", "RUPlnEIgGrgZ0NnK4diylDorm23zYBfERaIBNkNmvu9l7ZLzb8", "1222242177314631681-MAtzVci7wbHqyw1G4vz5YEfAGRfIby", "qDP1TUtFE0D0gGfc1gmXu9e7rILxZOhKjHWMhFSBbPw6H"); ISQSService _sqsClient = new SQSClient("https://sqs.ca-central-1.amazonaws.com", "IncomeTwitterPosts", "113508044065"); ITwitterScraper client = new TwitterScraperService(_scraper, _sqsClient); Assert.NotNull(client); }
async Task <SendMessageResponse> PublishMessage() { var message = ExecutedCount.ToString(); var result = await SQSClient.SendMessageAsync(new SendMessageRequest() { QueueUrl = Option.QueueUrl, MessageBody = message, MessageAttributes = new Dictionary <string, MessageAttributeValue>() { { "generatedTs", new MessageAttributeValue() { DataType = "String", StringValue = GeneratedTs.ToString("s") } }, { "generatedId", new MessageAttributeValue() { DataType = "String", StringValue = GeneratedId.ToString() } } } }); return(result); }
public async Task SQSClient() { ICollection <IResult> lst = new List <IResult>() { (IResult) new Post() { CreatedAt = DateTime.Now, CreatedBy = "me", HashTags = new List <string>() { "someone" }, Id = Guid.NewGuid().ToString(), PostURL = "", Text = "Sometext" } }; ISQSService service = new SQSClient("https://sqs.ca-central-1.amazonaws.com", "IncomeTwitterPosts", "113508044065"); var msgs = await service.SendBatchMessage(lst); Assert.True(msgs); }
public void SQSClient_Constructor() { ISQSService service = new SQSClient("https://sqs.ca-central-1.amazonaws.com", "IncomeTwitterPosts", "113508044065"); Assert.NotNull(service); }