/// <summary> /// Create a new AuthorizeRemoteStart request. /// </summary> /// <param name="ProviderId">An e-mobility provider identification.</param> /// <param name="EVSEId">An EVSE identification.</param> /// <param name="Identification">An user or contract identification.</param> /// <param name="SessionId">An optional charging session identification.</param> /// <param name="CPOPartnerSessionId">An optional CPO partner session identification.</param> /// <param name="EMPPartnerSessionId">An optional EMP partner session identification.</param> /// <param name="PartnerProductId">An optional partner product identification.</param> /// <param name="CustomData">Optional customer specific data, e.g. in combination with custom parsers and serializers.</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">The timeout for this request.</param> public AuthorizeRemoteStartRequest(Provider_Id ProviderId, EVSE_Id EVSEId, Identification Identification, Session_Id?SessionId = null, CPOPartnerSession_Id?CPOPartnerSessionId = null, EMPPartnerSession_Id?EMPPartnerSessionId = null, PartnerProduct_Id?PartnerProductId = null, JObject CustomData = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(CustomData, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.ProviderId = ProviderId; this.EVSEId = EVSEId; this.Identification = Identification; this.SessionId = SessionId; this.CPOPartnerSessionId = CPOPartnerSessionId; this.EMPPartnerSessionId = EMPPartnerSessionId; this.PartnerProductId = PartnerProductId; }
/// <summary> /// Create an AuthorizeRemoteReservationStop request. /// </summary> /// <param name="ProviderId">An e-mobility provider identification.</param> /// <param name="EVSEId">An EVSE identification.</param> /// <param name="SessionId">An charging session identification.</param> /// <param name="CPOPartnerSessionId">An optional CPO partner session identification.</param> /// <param name="EMPPartnerSessionId">An optional EMP partner session identification.</param> /// <param name="CustomData">Optional customer specific data, e.g. in combination with custom parsers and serializers.</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">The timeout for this request.</param> public AuthorizeRemoteReservationStopRequest(Provider_Id ProviderId, EVSE_Id EVSEId, Session_Id SessionId, CPOPartnerSession_Id?CPOPartnerSessionId = null, EMPPartnerSession_Id?EMPPartnerSessionId = null, JObject CustomData = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(CustomData, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.ProviderId = ProviderId; this.EVSEId = EVSEId; this.SessionId = SessionId; this.CPOPartnerSessionId = CPOPartnerSessionId; this.EMPPartnerSessionId = EMPPartnerSessionId; }
/// <summary> /// Create a new EVSE status record. /// </summary> /// <param name="Id">The ID that identifies the charging spot.</param> /// <param name="Status">The status of the charging spot.</param> /// <param name="CustomData">Optional customer specific data, e.g. in combination with custom parsers and serializers.</param> public EVSEStatusRecord(EVSE_Id Id, EVSEStatusTypes Status, JObject CustomData = null) { this.Id = Id; this.Status = Status; this.CustomData = CustomData; }
/// <summary> /// Create a new ChargingNotificationsEnd request. /// </summary> /// <param name="SessionId">The Hubject session identification, that identifies the charging process.</param> /// <param name="Identification">The authentication data used to authorize the user or the car.</param> /// <param name="EVSEId">The EVSE identification, that identifies the location of the charging process.</param> /// <param name="ChargingStart">The timestamp when the charging process started.</param> /// <param name="ChargingEnd">The timestamp when the charging process stopped.</param> /// /// <param name="CPOPartnerSessionId">An optional session identification assinged by the CPO partner.</param> /// <param name="EMPPartnerSessionId">An optional session identification assinged by the EMP partner.</param> /// <param name="SessionStart">An optional timestamp when the charging session started.</param> /// <param name="SessionEnd">An optional timestamp when the charging session stopped.</param> /// <param name="ConsumedEnergy">The optional consumed energy.</param> /// <param name="MeterValueStart">An optional starting value of the energy meter [kWh].</param> /// <param name="MeterValueEnd">An optional ending value of the energy meter [kWh].</param> /// <param name="MeterValuesInBetween">An optional enumeration of meter values during the charging session.</param> /// <param name="OperatorId">An optional operator identification of the hub operator.</param> /// <param name="PartnerProductId">An optional pricing product name (for identifying a tariff) that must be unique.</param> /// <param name="PenaltyTimeStart">An optional timestamp when the penalty time start after the grace period.</param> /// <param name="CustomData">Optional customer specific data, e.g. in combination with custom parsers and serializers.</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">The timeout for this request.</param> public ChargingEndNotificationRequest(Session_Id SessionId, Identification Identification, EVSE_Id EVSEId, DateTime ChargingStart, DateTime ChargingEnd, CPOPartnerSession_Id?CPOPartnerSessionId = null, EMPPartnerSession_Id?EMPPartnerSessionId = null, DateTime?SessionStart = null, DateTime?SessionEnd = null, Decimal?ConsumedEnergy = null, Decimal?MeterValueStart = null, Decimal?MeterValueEnd = null, IEnumerable <Decimal> MeterValuesInBetween = null, Operator_Id?OperatorId = null, PartnerProduct_Id?PartnerProductId = null, DateTime?PenaltyTimeStart = null, JObject CustomData = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(CustomData, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.Type = ChargingNotificationTypes.End; this.SessionId = SessionId; this.Identification = Identification; this.EVSEId = EVSEId; this.ChargingStart = ChargingStart; this.ChargingEnd = ChargingEnd; this.CPOPartnerSessionId = CPOPartnerSessionId; this.EMPPartnerSessionId = EMPPartnerSessionId; this.SessionStart = SessionStart; this.SessionEnd = SessionEnd; this.ConsumedEnergy = ConsumedEnergy; this.MeterValueStart = MeterValueStart; this.MeterValueEnd = MeterValueEnd; this.MeterValuesInBetween = MeterValuesInBetween; this.OperatorId = OperatorId; this.PartnerProductId = PartnerProductId; this.PenaltyTimeStart = PenaltyTimeStart; }
/// <summary> /// Create a new ChargingStartNotification request. /// </summary> /// <param name="SessionId">The Hubject session identification, that identifies the charging process.</param> /// <param name="Identification">The authentication data used to authorize the user or the car.</param> /// <param name="EVSEId">The EVSE identification, that identifies the location of the charging process.</param> /// <param name="ChargingStart">The timestamp when the charging process started.</param> /// /// <param name="CPOPartnerSessionId">An optional session identification assinged by the CPO partner.</param> /// <param name="EMPPartnerSessionId">An optional session identification assinged by the EMP partner.</param> /// <param name="SessionStart">An optional timestamp when the charging session started.</param> /// <param name="MeterValueStart">An optional starting value of the energy meter [kWh].</param> /// <param name="OperatorId">An optional operator identification of the hub operator.</param> /// <param name="PartnerProductId">An optional pricing product name (for identifying a tariff) that must be unique.</param> /// <param name="CustomData">Optional customer specific data, e.g. in combination with custom parsers and serializers.</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">The timeout for this request.</param> public ChargingStartNotificationRequest(Session_Id SessionId, Identification Identification, EVSE_Id EVSEId, DateTime ChargingStart, CPOPartnerSession_Id?CPOPartnerSessionId = null, EMPPartnerSession_Id?EMPPartnerSessionId = null, DateTime?SessionStart = null, Decimal?MeterValueStart = null, Operator_Id?OperatorId = null, PartnerProduct_Id?PartnerProductId = null, JObject CustomData = null, DateTime?Timestamp = null, CancellationToken?CancellationToken = null, EventTracking_Id EventTrackingId = null, TimeSpan?RequestTimeout = null) : base(CustomData, Timestamp, CancellationToken, EventTrackingId, RequestTimeout) { this.Type = ChargingNotificationTypes.Start; this.SessionId = SessionId; this.Identification = Identification; this.EVSEId = EVSEId; this.ChargingStart = ChargingStart; this.CPOPartnerSessionId = CPOPartnerSessionId; this.EMPPartnerSessionId = EMPPartnerSessionId; this.SessionStart = SessionStart; this.MeterValueStart = MeterValueStart; this.OperatorId = OperatorId; this.PartnerProductId = PartnerProductId; }