/// <summary> /// Create a SetEVSEBusyStatus XML/SOAP request. /// </summary> /// <param name="PartnerId">The partner identification.</param> /// <param name="OperatorId">The operator identification.</param> /// <param name="EVSEId">The EVSE identification.</param> /// <param name="StatusEventDate">The timestamp of the status change.</param> /// <param name="BusyStatus">The EVSE busy status.</param> /// <param name="TransactionId">An optional transaction identification.</param> /// <param name="BusyStatusUntil">An optional timestamp until which the given busy status is valid.</param> /// <param name="BusyStatusComment">An optional comment about the busy status.</param> /// /// <param name="HTTPRequest">The correlated HTTP request of this eMIP request.</param> /// <param name="Timestamp">The optional timestamp of the request.</param> /// <param name="CancellationToken">An optional token to cancel this request.</param> /// <param name="EventTrackingId">An optional event tracking identification for correlating this request with other events.</param> /// <param name="RequestTimeout">An optional timeout for this request.</param> public SetEVSEBusyStatusRequest(Partner_Id PartnerId, Operator_Id OperatorId, EVSE_Id EVSEId, DateTime StatusEventDate, EVSEBusyStatusTypes BusyStatus, Transaction_Id?TransactionId = null, DateTime?BusyStatusUntil = null, String BusyStatusComment = null, HTTPRequest HTTPRequest = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(HTTPRequest, PartnerId, TransactionId, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.OperatorId = OperatorId; this.EVSEId = EVSEId; this.StatusEventDate = StatusEventDate; this.BusyStatus = BusyStatus; this.BusyStatusUntil = BusyStatusUntil; this.BusyStatusComment = BusyStatusComment?.Trim(); }
SetEVSEBusyStatus(this ICPOClient CPOClient, Partner_Id PartnerId, Operator_Id OperatorId, EVSE_Id EVSEId, DateTime StatusEventDate, EVSEBusyStatusTypes BusyStatus, Transaction_Id?TransactionId = null, DateTime?BusyStatusUntil = null, String BusyStatusComment = null, HTTPRequest HTTPRequest = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) => CPOClient.SetEVSEBusyStatus(new SetEVSEBusyStatusRequest(PartnerId, OperatorId, EVSEId, StatusEventDate, BusyStatus, TransactionId, BusyStatusUntil, BusyStatusComment, HTTPRequest, Timestamp, CancellationToken, EventTrackingId, RequestTimeout ?? CPOClient.RequestTimeout));
/// <summary> /// Create a new EVSE busy status. /// </summary> /// <param name="EVSEId">The EVSE identification.</param> /// <param name="StatusEventDate">The timestamp of the status change.</param> /// <param name="BusyStatus">The EVSE busy status.</param> /// <param name="BusyStatusUntil">An optional timestamp until which the given busy status is valid.</param> /// <param name="BusyStatusComment">An optional comment about the busy status.</param> public EVSEBusyStatus(EVSE_Id EVSEId, DateTime StatusEventDate, EVSEBusyStatusTypes BusyStatus, DateTime?BusyStatusUntil = null, String BusyStatusComment = null) { this.EVSEId = EVSEId; this.StatusEventDate = StatusEventDate; this.BusyStatus = BusyStatus; this.BusyStatusUntil = BusyStatusUntil; this.BusyStatusComment = BusyStatusComment?.Trim(); }
/// <summary> /// Return a text representation of the given EVSE busy status. /// </summary> /// <param name="BusyStatus">An EVSE busy status.</param> public static String AsText(this EVSEBusyStatusTypes BusyStatus) { switch (BusyStatus) { case EVSEBusyStatusTypes.Free: return("free"); case EVSEBusyStatusTypes.Busy: return("busy"); case EVSEBusyStatusTypes.Reserved: return("reserved"); default: return("unspecified"); } }
/// <summary> /// Return a numeric representation of the given EVSE busy status. /// </summary> /// <param name="BusyStatus">An EVSE busy status.</param> public static Byte AsNumber(this EVSEBusyStatusTypes BusyStatus) { switch (BusyStatus) { case EVSEBusyStatusTypes.Free: return(1); case EVSEBusyStatusTypes.Busy: return(2); case EVSEBusyStatusTypes.Reserved: return(3); default: return(0); } }