StartEventReportRequest.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Edge.Core.Parser.BinaryParser.Attributes;
  2. using Edge.Core.Parser.BinaryParser.MessageEntity;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Text;
  6. namespace VeederRoot_ATG_Console.MessageEntity.DispenserInterface.Outgoing
  7. {
  8. /// <summary>
  9. /// Report a fuel start event to Veeder Root ATG console.
  10. /// 'fuel start' indicates a pump get authorized and is about to fueling.
  11. /// <SOH>B000000012FE0A<EOT>
  12. /// Event ID = 0
  13. /// Transmission delay = 0 seconds
  14. /// Selected Fueling Position = 12
  15. ///
  16. ///
  17. /// <SOH>B100000501FE06<EOT>
  18. /// Event ID = 1
  19. /// Transmission delay = 5 seconds
  20. /// Selected Fueling Position = 1
  21. /// </summary>
  22. public class StartEventReportRequest : OutgoingMessageBase
  23. {
  24. /// <summary>
  25. ///
  26. /// </summary>
  27. /// <param name="eventId">must range from 0 - 9, rotation control is needed, Start Events and Stop Events contain event IDs to help the dispenser interface module identify transmissions that are repeated as a result of communication errors. Once an event report (start or end) is successfully transmitted, the Event Message ID must change so the next event report (start or end) will get a new ID in the range 0 - 9. An event report must keep the same ID until it is successfully transmitted. The status report does not require an ID</param>
  28. /// <param name="errorFlag">Range: '00' to 'FF'</param>
  29. /// <param name="secondsDelay">0-9999</param>
  30. /// <param name="fuelingPositionId">0-99</param>
  31. public StartEventReportRequest(int eventId, byte errorFlag, int secondsDelay, byte fuelingPositionId)
  32. {
  33. base.FunctionCodeRaw = "B";
  34. base.EventId = eventId;
  35. base.ErrorFlag = errorFlag;
  36. base.SecondsDelay = secondsDelay;
  37. base.FuelingPositionId = fuelingPositionId;
  38. }
  39. }
  40. }