public CallServiceResponseObj CallService([FromBody] CallServiceRequestObj callServiceObj)
        {
            log.Info("Incoming request to " + GetCurrentMethod());
            var requestString = JsonConvert.SerializeObject(callServiceObj, Formatting.Indented);

            //_logEventService.Init(EventDataType.PCM);
            _logEventService.LogInfo(EventNumber.SPIS_consumeService, EventDataType.Unknown, null, requestString);

            try
            {
                var result = _sscService.CallService(callServiceObj);
                return(result);
            }
            catch (HttpResponseException ex)
            {
                _logEventService.LogError(EventNumber.SPIS_consumeService, EventType.Error_internal,
                                          null, requestString + " " + ex.Response.ToString());

                throw;
            }
            catch (Exception ex)
            {
                string msg = "SPIS internal server error. " + ex.Message;

                _logEventService.LogError(EventNumber.SPIS_consumeService, EventType.Error_internal,
                                          null, requestString + " " + ex.Message);

                throw CreateHttpResponseException(HttpStatusCode.InternalServerError, msg);
            }
        }
        public CallServiceResponseObj CallService([FromBody] CallServiceRequestObj callServiceObj)
        {
            log.Info("Incoming request to " + GetCurrentMethod());

            var requestString = JsonConvert.SerializeObject(callServiceObj, Formatting.Indented);

            _logEventService.LogInfo(EventNumber.VIS_consumeService, EventDataType.Unknown, null, requestString);
            try
            {
                var result         = _sscService.CallService(callServiceObj);
                var responseString = JsonConvert.SerializeObject(result, Formatting.Indented);
                _logEventService.LogSuccess(EventNumber.VIS_consumeService, EventDataType.Unknown, null, responseString);

                //Set last interaction time
                var conInfo = _connectionInformationService.Get().FirstOrDefault();
                if (conInfo == null)
                {
                    _connectionInformationService.Insert(new ConnectionInformation {
                        LastInteraction = DateTime.UtcNow
                    });
                }
                else
                {
                    conInfo.LastInteraction = DateTime.UtcNow;
                    _connectionInformationService.Update(conInfo);
                }
                _context.SaveChanges();

                return(result);
            }
            catch (HttpResponseException ex)
            {
                var errorString = JsonConvert.SerializeObject(ex.Response, Formatting.Indented);
                _logEventService.LogError(EventNumber.VIS_consumeService, EventType.Error_internal,
                                          null, errorString);
                throw;
            }
            catch (Exception ex)
            {
                string msg = "VIS internal server error. " + ex.Message;

                _logEventService.LogError(EventNumber.VIS_consumeService, EventType.Error_internal,
                                          null, ex.Message);

                throw CreateHttpResponseException(HttpStatusCode.InternalServerError, msg);
            }
        }