X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FUIProtocol.ts;h=d995e096676fd7d40a3944defb8cab8d9f91fb2d;hb=a9ed42b2eaac1fb26700d6d86952d0d2cee4d857;hp=2c5914953b2768bd94bdf836bb15c50fd40d1457;hpb=4e3ff94d15f16cbeb7f65d14525bca7af3c551fd;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/UIProtocol.ts b/src/types/UIProtocol.ts index 2c591495..d995e096 100644 --- a/src/types/UIProtocol.ts +++ b/src/types/UIProtocol.ts @@ -1,4 +1,5 @@ -import { JsonObject } from './JsonType'; +import type { JsonObject } from './JsonType'; +import type { BroadcastChannelResponsePayload } from './WorkerBroadcastChannel'; export enum Protocol { UI = 'ui', @@ -9,6 +10,10 @@ export enum ApplicationProtocol { WS = 'ws', } +export enum AuthenticationType { + BASIC_AUTH = 'basic-auth', +} + export enum ProtocolVersion { '0.0.1' = '0.0.1', } @@ -19,19 +24,26 @@ export type ProtocolResponse = [string, ResponsePayload]; export type ProtocolRequestHandler = ( uuid?: string, payload?: RequestPayload -) => ResponsePayload | Promise; +) => undefined | Promise | ResponsePayload | Promise; export enum ProcedureName { LIST_CHARGING_STATIONS = 'listChargingStations', START_CHARGING_STATION = 'startChargingStation', STOP_CHARGING_STATION = 'stopChargingStation', - START_TRANSACTION = 'startTransaction', - STOP_TRANSACTION = 'stopTransaction', START_SIMULATOR = 'startSimulator', STOP_SIMULATOR = 'stopSimulator', + OPEN_CONNECTION = 'openConnection', + CLOSE_CONNECTION = 'closeConnection', + START_TRANSACTION = 'startTransaction', + STOP_TRANSACTION = 'stopTransaction', + START_AUTOMATIC_TRANSACTION_GENERATOR = 'startAutomaticTransactionGenerator', + STOP_AUTOMATIC_TRANSACTION_GENERATOR = 'stopAutomaticTransactionGenerator', + STATUS_NOTIFICATION = 'statusNotification', } + export interface RequestPayload extends JsonObject { - hashId?: string; + hashIds?: string[]; + connectorIds?: number[]; } export enum ResponseStatus { @@ -41,4 +53,7 @@ export enum ResponseStatus { export interface ResponsePayload extends JsonObject { status: ResponseStatus; + hashIdsSucceeded?: string[]; + hashIdsFailed?: string[]; + responsesFailed?: BroadcastChannelResponsePayload[]; }