private void SendMessageToSilkQueue(SilkEvent request) { using (IAmazonSQS sqs = new AmazonSQSClient(AwsSettings.AwsAccessKey, AwsSettings.AwsSecretKey, RegionEndpoint.USEast1)) { SendMessageRequest queueRequest = new SendMessageRequest { MessageBody = JsonConvert.SerializeObject(request), QueueUrl = AwsSettings.SilkProcessingQueueUrl }; sqs.SendMessageAsync(queueRequest); } }
public override void LoanOpened(object sender, EventArgs e) { Loan loan = EncompassApplication.CurrentLoan; var currentUser = loan.Session.GetCurrentUser(); bool isPortalUser = currentUser.ID.Equals("portal"); bool isSilkLoan = loan.Fields["411"].ToString().Contains("Silk") || loan.Fields["419"].ToString().Contains("Silk"); var processorId = loan.Fields["LPID"]; var closerId = loan.Fields["CLID"]; var processorAssignDate = loan.Fields["CX.SILK.PROCESR.ASSIGN.DATE"]; var closerAssignDate = loan.Fields["CX.SILK.CLOSER.ASSIGN.DATE"]; var orderId = loan.Fields["187"].ToString(); bool isOrderIdCorrect = !loan.Fields["CX.SILK.ORDER.ID.FAILURE"].Value.Equals("Y"); if (isPortalUser == false && isOrderIdCorrect) { if (isSilkLoan && !string.IsNullOrEmpty(orderId)) { if (!processorId.IsEmpty() && processorAssignDate.IsEmpty()) { SilkEvent queueMessage = new SilkEvent() { LoanNumber = loan.LoanNumber, OrderId = loan.Fields["187"].ToString(), EventType = "Processor", UserEmail = loan.Fields["LoanTeamMember.Email.Processor"].ToString() }; SendMessageToSilkQueue(queueMessage); } if (!closerId.IsEmpty() && closerAssignDate.IsEmpty()) { SilkEvent queueMessage = new SilkEvent() { LoanNumber = loan.LoanNumber, OrderId = loan.Fields["187"].ToString(), EventType = "Closer", UserEmail = loan.Fields["LoanTeamMember.Email.Closer"].ToString() }; SendMessageToSilkQueue(queueMessage); } } } }