Exemple #1
0
        private async Task <bool> HandleMessage(IKafkaMessage <string, InitiateKycResponseModel> message)
        {
            var serializedValue = JsonConvert.SerializeObject(message.Value);

            _logger.LogDebug($"Consumed message in service \nkey: '{ message.Key }' \nvalue: '{ serializedValue }' at {DateTime.UtcNow}");

            foreach (var header in message.Headers)
            {
                _logger.LogDebug($"Key: { header.Key }\tValue: { header.Value }");
            }

            try
            {
                var request = new CheckMrzStatusRequest {
                    UserId = message.Value.UserId, KycId = message.Value.KycId, TaskId = message.Value.MrzTaskId
                };
                var payload = JsonConvert.SerializeObject(request);

                // Get token from Identity Server
                var accessToken = await _identityServerClient.RequestClientCredentialsTokenAsync();

                // Set token in http client
                _httpClient.SetBearerToken(accessToken);

                var response = await _httpClient.PostAsync("api/kyc/checkmrzstatus", new StringContent(payload, Encoding.UTF8, "application/json"));

                return(response.IsSuccessStatusCode);
            }
            catch (Exception e)
            {
                _logger.LogError(e, e.Message);
            }

            return(false);
        }
Exemple #2
0
        public async Task <ActionResult <CheckMrzStatusResponse> > CheckMrzStatus(CheckMrzStatusRequest request)
        {
            var model  = _mapper.Map <CheckMrzStatusRequestModel>(request);
            var result = await _kycService.CheckMrzTaskStatusAsync(model);

            var response = _mapper.Map <CheckMrzStatusResponse>(result);

            return(Ok(response));
        }