ServerMessageService.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using EVCB_OCPP.Packet.Features;
  2. using EVCB_OCPP.Packet.Messages.Core;
  3. using Microsoft.Extensions.Logging;
  4. namespace EVCB_OCPP.WSServer.Service;
  5. public class ServerMessageService
  6. {
  7. public ServerMessageService(
  8. IMainDbService mainDbService
  9. , ILogger<ServerMessageService> logger)
  10. {
  11. this.mainDbService = mainDbService;
  12. this.logger = logger;
  13. }
  14. private readonly IMainDbService mainDbService;
  15. private readonly ILogger<ServerMessageService> logger;
  16. internal async Task SendGetEVSEConfigureRequest(string chargeBoxId)
  17. {
  18. if (string.IsNullOrEmpty(chargeBoxId)) return;
  19. await mainDbService.AddServerMessage(
  20. ChargeBoxId: chargeBoxId,
  21. OutAction: Actions.GetConfiguration.ToString(),
  22. OutRequest: new GetConfigurationRequest() { key = new List<string>() }
  23. );
  24. }
  25. internal Task SendChangeConfigurationRequest(string chargeBoxId, string key, string value)
  26. {
  27. return mainDbService.AddServerMessage(
  28. ChargeBoxId: chargeBoxId,
  29. OutAction: Actions.ChangeConfiguration.ToString(),
  30. OutRequest: new ChangeConfigurationRequest()
  31. {
  32. key = key,
  33. value = value
  34. });
  35. }
  36. internal Task SendDataTransferRequest(string chargeBoxId, string messageId, string vendorId, string data)
  37. {
  38. return mainDbService.AddServerMessage(
  39. ChargeBoxId: chargeBoxId,
  40. OutAction: Actions.DataTransfer.ToString(),
  41. OutRequest: new DataTransferRequest()
  42. {
  43. messageId = messageId,
  44. vendorId = vendorId,
  45. data = data
  46. }
  47. );
  48. }
  49. }