Snippets

OICP 2.1 Authorize Stop | C#

You are viewing an old version of this snippet. View the current version.
Revised by Gregor Schermuly 7498e09
/// <summary>
/// Create an OICP v2.0 authorize stop request.
/// </summary>
/// <param name="OperatorId">An EVSE Operator identification.</param>
/// <param name="SessionId">The OICP session identification from the AuthorizeStart request.</param>
/// <param name="AuthToken">A (RFID) user identification.</param>
/// <param name="EVSEId">An optional EVSE identification.</param>
/// <param name="PartnerSessionId">An optional partner session identification.</param>
/// <param name="QueryTimeout">An optional timeout for this query.</param>
public async Task<HTTPResponse<AUTHSTOPResult>>

    AuthorizeStop(EVSEOperator_Id      OperatorId,
                  ChargingSession_Id   SessionId,
                  Auth_Token           AuthToken,
                  EVSE_Id              EVSEId            = null,
                  ChargingSession_Id   PartnerSessionId  = null,   // [maxlength: 50]
                  TimeSpan?            QueryTimeout      = null)

{ ... }
var HubjectCPO = new CPOClient("api.playground.hubject.com");

Task.Factory.StartNew(async () => {

    var AuthStartResult = await HubjectCPO.
        AuthorizeStart(EVSEOperator_Id.Parse("DE*GEF"),
                       Auth_Token.     Parse("08152305"),
                       EVSE_Id.        Parse("DE*GEF*E123456789*1"));

    ConsoleX.WriteLines("AuthStart result:",
                        AuthStartResult.Content.AuthorizationStatus,
                        AuthStartResult.Content.StatusCode.Code,
                        AuthStartResult.Content.StatusCode.Description,
                        AuthStartResult.Content.StatusCode.AdditionalInfo);


    await Task.Delay(1000);


    var AuthStopResult = await HubjectCPO.
        AuthorizeStop(EVSEOperator_Id.Parse("DE*GEF"),
                      AuthStartResult.Content.SessionId,
                      Auth_Token.     Parse("08152305"),
                      EVSE_Id.        Parse("DE*GEF*E123456789*1"));

    ConsoleX.WriteLines("AuthStop result:",
                        AuthStopResult.Content.AuthorizationStatus,
                        AuthStopResult.Content.StatusCode.Code,
                        AuthStopResult.Content.StatusCode.Description,
                        AuthStopResult.Content.StatusCode.AdditionalInfo);

}).

// Wait for the task to complete...
Wait();
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.