public ForwarderMessage MakeMeterEditionPackageForForwarder(MeterDto meterDto) { ForwarderMessage forwarderMessage; if (meterDto.Smc != null) { forwarderMessage = new ForwarderMessage { MessageContent = JsonConvert.SerializeObject(new EletraSmcModels.MeterWithSmc { MeterDto = _mapper.Map <MeterDto, EletraSmcModels.MeterDto>(meterDto), Serial = meterDto.Smc.Serial }), Uri = _middlewares.EletraSmc.BaseUrl + _middlewares.EletraSmc.Meters.SubRoute }; } else { forwarderMessage = new ForwarderMessage { MessageContent = JsonConvert.SerializeObject(_mapper.Map <EletraSmiModels.MeterDto>(meterDto)), Uri = _middlewares.EletraSmi.BaseUrl + _middlewares.EletraSmi.Meters.SubRoute }; } return(forwarderMessage); }
private void SendCommand(ForwarderMessage message) { using (var scope = _serviceProvider.CreateScope()) { var scopedForwarderSender = scope.ServiceProvider.GetRequiredService <IForwarderSenderService>(); scopedForwarderSender.SendPost(message); } }
public ForwarderMessage MakeSmcDeletionPackageForForwarder(SmcDto smcDto) { var forwarderMessage = new ForwarderMessage { MessageContent = "", //todo Uri = _middlewares.EletraSmc.BaseUrl + _middlewares.EletraSmc.Smc.SubRoute + "?serial=" + smcDto.Serial }; return(forwarderMessage); }
private void SendAndWaitAnswerOrTimeOut(ForwarderMessage message) { SendCommand(message); var start = DateTime.Now; DateTime end; do { end = DateTime.Now; } while ((end - start).TotalSeconds <= _commandRules.CommandAnswerTimeoutInSeconds && !Answered); }
private HttpResponseMessage SendCommand(ForwarderMessage forwarderMessage) { try { return(_forwarderSenderService.SendPost(forwarderMessage).Result); } catch (Exception e) { throw; } }
public ForwarderMessage MakeSmcCreationPackageForForwarder(SmcDto smcDto) { var forwarderMessage = new ForwarderMessage { MessageContent = JsonConvert.SerializeObject( new EletraSmcModels.SmcWithMeter { SmcDto = _mapper.Map <SmcDto, EletraSmcModels.SmcDto>(smcDto) }), Uri = _middlewares.EletraSmc.BaseUrl + _middlewares.EletraSmc.Smc.SubRoute }; return(forwarderMessage); }
public ForwarderMessage MakeMeterRelayStatusCommandForForwarder(MeterDto meterDto, CommandTicketDto commandTicketDto) { var forwarderMessage = new ForwarderMessage { MessageContent = "", //todo Uri = _middlewares.EletraSmi.BaseUrl + _middlewares.EletraSmi.Meters.SubRoute + _middlewares.EletraSmi.Meters.RelayStatus + "?serialMeter=" + meterDto.Serial + "&commandId=" + commandTicketDto.CommandId, CommandId = commandTicketDto.CommandId }; return(forwarderMessage); }
public async Task <HttpResponseMessage> SendPost(ForwarderMessage forwarderMessage) { try { var content = MakeMessageBody(forwarderMessage.MessageContent); using (var handler = new HttpClientHandler()) { handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) => true; var httpClient = new HttpClient(handler); var response = await httpClient.PostAsync(forwarderMessage.Uri, content); var teste = response.Content.ReadAsStringAsync().Result; return(response); } } catch (Exception e) { throw; } }
public ForwarderMessage MakeMeterDeletionPackageForForwarder(MeterDto meterDto) { var forwarderMessage = new ForwarderMessage { MessageContent = "" }; if (meterDto.Smc != null) { forwarderMessage.Uri = _middlewares.EletraSmc.BaseUrl + _middlewares.EletraSmc.Meters.SubRoute + "?serialSmc=" + meterDto.Smc.Serial + "&serialMeter" + meterDto.Serial; } else { forwarderMessage.Uri = _middlewares.EletraSmi.BaseUrl + _middlewares.EletraSmi.Meters.SubRoute + "?serial=" + meterDto.Serial; } return(forwarderMessage); }
public HttpResponseMessage SendDelete(ForwarderMessage forwarderMessage) { try { using (var handler = new HttpClientHandler()) { handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) => true; Task <HttpResponseMessage> response; using (var client = new HttpClient(handler)) { response = client.DeleteAsync(forwarderMessage.Uri); response.Wait(); } return(response.Result); } } catch (Exception e) { Console.WriteLine(e); throw; } }
public void AddTicketToThread(TicketDto ticketDto, ForwarderMessage forwarderMessage, PriorityValue priorityValue, CommandDeviceType commandDeviceType) { AddTicketToThread(ticketDto, new [] { forwarderMessage }, priorityValue, commandDeviceType); }
public TicketThreadObject(TicketDto ticket, PriorityValue priorityValue, ForwarderMessage forwarderMessage) { Ticket = ticket; PriorityValue = priorityValue; ForwarderMessages.Add(forwarderMessage); }