PROTOCOL_BASIC_AUTH = 'protocol-basic-auth'
}
-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 = (
payload: RequestPayload
) => ResponsePayload | Promise<ResponsePayload>
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',
+ SET_SUPERVISION_URL = 'setSupervisionUrl',
START_CHARGING_STATION = 'startChargingStation',
STOP_CHARGING_STATION = 'stopChargingStation',
OPEN_CONNECTION = 'openConnection',
status: ResponseStatus
hashIds?: string[]
}
+
+interface TemplateStatistics extends JsonObject {
+ configured: number
+ added: number
+ started: number
+ indexes: number[]
+}
+
+export interface SimulatorState extends JsonObject {
+ version: string
+ started: boolean
+ templateStatistics: Record<string, TemplateStatistics>
+}