X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FUIProtocol.ts;h=b5cf30fff02cbca47089e577d75a0a8a8e7f0bd2;hb=47a41cfff7de841a931f5694dbcddaf235e91bdd;hp=4911f9ada2411c53612978878105ba7b5765beba;hpb=a807045be19c1ed4996a44d8c2c8774e926dc6dc;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/UIProtocol.ts b/src/types/UIProtocol.ts index 4911f9ad..b5cf30ff 100644 --- a/src/types/UIProtocol.ts +++ b/src/types/UIProtocol.ts @@ -2,35 +2,48 @@ import type { JsonObject } from './JsonType.js' import type { BroadcastChannelResponsePayload } from './WorkerBroadcastChannel.js' export enum Protocol { - UI = 'ui', + UI = 'ui' } export enum ApplicationProtocol { HTTP = 'http', - WS = 'ws', + WS = 'ws' } export enum AuthenticationType { BASIC_AUTH = 'basic-auth', + PROTOCOL_BASIC_AUTH = 'protocol-basic-auth' } export enum ProtocolVersion { - '0.0.1' = '0.0.1', + '0.0.1' = '0.0.1' } -export type ProtocolRequest = [string, ProcedureName, RequestPayload] -export type ProtocolResponse = [string, ResponsePayload] +export type ProtocolRequest = [ + `${string}-${string}-${string}-${string}-${string}`, + ProcedureName, + RequestPayload +] +export type ProtocolResponse = [ + `${string}-${string}-${string}-${string}-${string}`, + ResponsePayload +] export type ProtocolRequestHandler = ( - uuid?: string, + uuid?: `${string}-${string}-${string}-${string}-${string}`, procedureName?: ProcedureName, payload?: RequestPayload ) => undefined | Promise | ResponsePayload | Promise export enum ProcedureName { + SIMULATOR_STATE = 'simulatorState', START_SIMULATOR = 'startSimulator', STOP_SIMULATOR = 'stopSimulator', + LIST_TEMPLATES = 'listTemplates', LIST_CHARGING_STATIONS = 'listChargingStations', + ADD_CHARGING_STATIONS = 'addChargingStations', + DELETE_CHARGING_STATIONS = 'deleteChargingStations', + PERFORMANCE_STATISTICS = 'performanceStatistics', START_CHARGING_STATION = 'startChargingStation', STOP_CHARGING_STATION = 'stopChargingStation', OPEN_CONNECTION = 'openConnection', @@ -47,7 +60,7 @@ export enum ProcedureName { METER_VALUES = 'meterValues', DATA_TRANSFER = 'dataTransfer', DIAGNOSTICS_STATUS_NOTIFICATION = 'diagnosticsStatusNotification', - FIRMWARE_STATUS_NOTIFICATION = 'firmwareStatusNotification', + FIRMWARE_STATUS_NOTIFICATION = 'firmwareStatusNotification' } export interface RequestPayload extends JsonObject { @@ -57,7 +70,7 @@ export interface RequestPayload extends JsonObject { export enum ResponseStatus { SUCCESS = 'success', - FAILURE = 'failure', + FAILURE = 'failure' } export interface ResponsePayload extends JsonObject {