예제 #1
0
        SetSessionAction(this IEMPClient EMPClient,
                         Partner_Id PartnerId,
                         Operator_Id OperatorId,
                         ServiceSession_Id ServiceSessionId,
                         SessionAction SessionAction,

                         Transaction_Id?TransactionId = null,
                         PartnerServiceSession_Id?SalePartnerSessionId = null,

                         HTTPRequest HTTPRequest             = null,
                         DateTime?Timestamp                  = null,
                         CancellationToken?CancellationToken = null,
                         EventTracking_Id EventTrackingId    = null,
                         TimeSpan?RequestTimeout             = null)


        => EMPClient.SetSessionAction(new SetSessionActionRequest(PartnerId,
                                                                  OperatorId,
                                                                  ServiceSessionId,
                                                                  SessionAction,

                                                                  TransactionId,
                                                                  SalePartnerSessionId,

                                                                  HTTPRequest,
                                                                  Timestamp,
                                                                  CancellationToken,
                                                                  EventTrackingId,
                                                                  RequestTimeout ?? EMPClient.RequestTimeout));
        /// <summary>
        /// Create a SetSessionEventReportRequest XML/SOAP request.
        /// </summary>
        /// <param name="PartnerId">The partner identification.</param>
        /// <param name="OperatorId">The operator identification.</param>
        /// <param name="ServiceSessionId">The service session identification.</param>
        /// <param name="SessionEvent">The session event.</param>
        ///
        /// <param name="TransactionId">An optional transaction identification.</param>
        /// <param name="ExecPartnerSessionId">An optional partner service session identification.</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 SetSessionEventReportRequest(Partner_Id PartnerId,
                                            Operator_Id OperatorId,
                                            ServiceSession_Id ServiceSessionId,
                                            SessionEvent SessionEvent,

                                            Transaction_Id?TransactionId = null,
                                            PartnerServiceSession_Id?ExecPartnerSessionId = 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.ServiceSessionId     = ServiceSessionId;
            this.SessionEvent         = SessionEvent;
            this.ExecPartnerSessionId = ExecPartnerSessionId;
        }
        /// <summary>
        /// Create a new GetServiceAuthorisation response.
        /// </summary>
        /// <param name="Request">The GetServiceAuthorisation request leading to this response.</param>
        /// <param name="TransactionId">A transaction identification.</param>
        /// <param name="AuthorisationValue">The result of the authorisation.</param>
        /// <param name="ServiceSessionId">The GIREVE session id for this service session.</param>
        /// <param name="IntermediateCDRRequested">Whether the eMSP wishes to receive intermediate charging session records.</param>
        /// <param name="RequestStatus">The status of the request.</param>
        ///
        /// <param name="SalesPartnerOperatorId">The optional sales operator identification.</param>
        /// <param name="UserContractIdAlias">An optional alias of the contract id between the end-user and the eMSP. This alias may have been anonymised by the eMSP.</param>
        /// <param name="MeterLimits">An optional meter limits for this authorisation: The eMSP can authorise the charge but for less than x kWh or y minutes, or z euros.</param>
        /// <param name="Parameter">Optional information from the CPO to the eMSP.</param>
        /// <param name="HTTPResponse">The correlated HTTP response of this eMIP response.</param>
        /// <param name="CustomData">Optional additional customer-specific data.</param>
        public GetServiceAuthorisationResponse(GetServiceAuthorisationRequest Request,
                                               Transaction_Id TransactionId,
                                               AuthorisationValues AuthorisationValue,
                                               ServiceSession_Id ServiceSessionId,
                                               Boolean IntermediateCDRRequested,
                                               RequestStatus RequestStatus,

                                               Provider_Id?SalesPartnerOperatorId    = null,
                                               Contract_Id?UserContractIdAlias       = null,
                                               IEnumerable <MeterReport> MeterLimits = null,
                                               String Parameter          = null,
                                               HTTPResponse HTTPResponse = null,
                                               IReadOnlyDictionary <String, Object> CustomData = null)

            : base(Request,
                   TransactionId,
                   RequestStatus,
                   HTTPResponse,
                   CustomData)

        {
            this.AuthorisationValue       = AuthorisationValue;
            this.ServiceSessionId         = ServiceSessionId;
            this.IntermediateCDRRequested = IntermediateCDRRequested;

            this.SalesPartnerOperatorId = SalesPartnerOperatorId;
            this.UserContractIdAlias    = UserContractIdAlias;
            this.MeterLimits            = MeterLimits ?? new MeterReport[0];
            this.Parameter = Parameter;
        }
        /// <summary>
        /// Create a SetServiceAuthorisationRequest XML/SOAP request.
        /// </summary>
        /// <param name="PartnerId">The partner identification.</param>
        /// <param name="OperatorId">The operator identification.</param>
        /// <param name="TargetOperatorId">The target operator identification.</param>
        /// <param name="EVSEId">The EVSE identification.</param>
        /// <param name="UserId">The user identification.</param>
        /// <param name="RequestedServiceId">The service identification for which an authorisation is requested.</param>
        /// <param name="ServiceSessionId">The service session identification.</param>
        /// <param name="AuthorisationValue">Whether to start or stop the charging process.</param>
        /// <param name="IntermediateCDRRequested">Whether the eMSP wishes to receive intermediate charging session records.</param>
        /// 
        /// <param name="TransactionId">An optional transaction identification.</param>
        /// <param name="UserContractIdAlias">Anonymized alias of the contract id between the end-user and the eMSP.</param>
        /// <param name="MeterLimits">Meter limits for this authorisation: The eMSP can authorise the charge but for less than x Wh or y minutes, or z euros.</param>
        /// <param name="Parameter">eMSP parameter string (reserved for future use).</param>
        /// <param name="BookingId"></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 SetServiceAuthorisationRequest(HTTPRequest                HTTPRequest,
                                              Partner_Id                 PartnerId,
                                              Operator_Id                OperatorId,
                                              Operator_Id                TargetOperatorId,
                                              EVSE_Id                    EVSEId,
                                              User_Id                    UserId,
                                              Service_Id                 RequestedServiceId,
                                              ServiceSession_Id          ServiceSessionId,
                                              RemoteStartStopValues      AuthorisationValue,
                                              Boolean                    IntermediateCDRRequested,

                                              Transaction_Id?            TransactionId             = null,
                                              Contract_Id?               UserContractIdAlias       = null,
                                              IEnumerable<MeterReport>   MeterLimits               = null,
                                              String                     Parameter                 = null,
                                              Booking_Id?                BookingId                 = 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.TargetOperatorId          = TargetOperatorId;
            this.EVSEId                    = EVSEId;
            this.UserId                    = UserId;
            this.RequestedServiceId        = RequestedServiceId;
            this.ServiceSessionId          = ServiceSessionId;
            this.AuthorisationValue        = AuthorisationValue;
            this.IntermediateCDRRequested  = IntermediateCDRRequested;

            this.UserContractIdAlias       = UserContractIdAlias;
            this.MeterLimits               = MeterLimits;
            this.Parameter                 = Parameter;
            this.BookingId                 = BookingId;

        }
        /// <summary>
        /// Create a new SetSessionEventReport response.
        /// </summary>
        /// <param name="Request">The SetSessionEventReport request leading to this response.</param>
        /// <param name="TransactionId">A transaction identification.</param>
        /// <param name="RequestStatus">The status of the request.</param>
        /// <param name="ServiceSessionId">The service session identification.</param>
        /// <param name="SessionActionId">The unique identification of the session action.</param>
        ///
        /// <param name="HTTPResponse">The correlated HTTP response of this eMIP response.</param>
        /// <param name="CustomData">Optional additional customer-specific data.</param>
        public SetSessionEventReportResponse(SetSessionEventReportRequest Request,
                                             Transaction_Id TransactionId,
                                             RequestStatus RequestStatus,
                                             ServiceSession_Id ServiceSessionId,
                                             SessionAction_Id SessionActionId,

                                             HTTPResponse HTTPResponse = null,
                                             IReadOnlyDictionary <String, Object> CustomData = null)

            : base(Request,
                   TransactionId,
                   RequestStatus,
                   HTTPResponse,
                   CustomData)

        {
            this.ServiceSessionId = ServiceSessionId;
            this.SessionActionId  = SessionActionId;
        }
예제 #6
0
        /// <summary>
        /// Create a new SetChargeDetailRecord response.
        /// </summary>
        /// <param name="Request">The SetChargeDetailRecord request leading to this response.</param>
        /// <param name="TransactionId">A transaction identification.</param>
        /// <param name="ServiceSessionId">The service session identification.</param>
        /// <param name="RequestStatus">The status of the request.</param>
        ///
        /// <param name="SalesPartnerOperatorId">An optional sales partner operator identification.</param>
        /// <param name="HTTPResponse">The correlated HTTP response of this eMIP response.</param>
        /// <param name="CustomData">Optional additional customer-specific data.</param>
        public SetChargeDetailRecordResponse(SetChargeDetailRecordRequest Request,
                                             Transaction_Id TransactionId,
                                             ServiceSession_Id ServiceSessionId,
                                             RequestStatus RequestStatus,

                                             PartnerOperator_Id?SalesPartnerOperatorId = null,
                                             HTTPResponse HTTPResponse = null,
                                             IReadOnlyDictionary <String, Object> CustomData = null)

            : base(Request,
                   TransactionId,
                   RequestStatus,
                   HTTPResponse,
                   CustomData)

        {
            this.ServiceSessionId       = ServiceSessionId;
            this.SalesPartnerOperatorId = SalesPartnerOperatorId;
        }
        /// <summary>
        /// Create a new SetServiceAuthorisation response.
        /// </summary>
        /// <param name="Request">The SetServiceAuthorisation request leading to this response.</param>
        /// <param name="TransactionId">A transaction identification.</param>
        /// <param name="RequestStatus">The status of the request.</param>
        /// <param name="ServiceSessionId">The GIREVE session id for this service session.</param>
        ///
        /// <param name="ExecPartnerOperatorId">The operator identification of the executing operator.</param>
        /// <param name="HTTPResponse">The correlated HTTP response of this eMIP response.</param>
        /// <param name="CustomData">Optional additional customer-specific data.</param>
        public SetServiceAuthorisationResponse(SetServiceAuthorisationRequest Request,
                                               Transaction_Id TransactionId,
                                               RequestStatus RequestStatus,
                                               ServiceSession_Id ServiceSessionId,

                                               Operator_Id?ExecPartnerOperatorId = null,
                                               HTTPResponse HTTPResponse         = null,
                                               IReadOnlyDictionary <String, Object> CustomData = null)

            : base(Request,
                   TransactionId,
                   RequestStatus,
                   HTTPResponse,
                   CustomData)

        {
            this.ServiceSessionId      = ServiceSessionId;
            this.ExecPartnerOperatorId = ExecPartnerOperatorId;
        }