type UIServerConfigurationSection
} from '@/types'
-import { randomUUID } from './Utils'
+import { randomUUID, validateUUID } from './Utils'
type ResponseHandler = {
procedureName: ProcedureName
}
public async deleteChargingStation(hashId: string): Promise<ResponsePayload> {
- return this.sendRequest(ProcedureName.DELETE_CHARGING_STATIONS, { hashIds: [hashId] })
+ return this.sendRequest(ProcedureName.DELETE_CHARGING_STATIONS, {
+ hashIds: [hashId]
+ })
}
public async setSupervisionUrl(hashId: string, supervisionUrl: string): Promise<ResponsePayload> {
}
public async startChargingStation(hashId: string): Promise<ResponsePayload> {
- return this.sendRequest(ProcedureName.START_CHARGING_STATION, { hashIds: [hashId] })
+ return this.sendRequest(ProcedureName.START_CHARGING_STATION, {
+ hashIds: [hashId]
+ })
}
public async stopChargingStation(hashId: string): Promise<ResponsePayload> {
- return this.sendRequest(ProcedureName.STOP_CHARGING_STATION, { hashIds: [hashId] })
+ return this.sendRequest(ProcedureName.STOP_CHARGING_STATION, {
+ hashIds: [hashId]
+ })
}
public async openConnection(hashId: string): Promise<ResponsePayload> {
this.uiServerConfiguration.authentication?.type === AuthenticationType.PROTOCOL_BASIC_AUTH
? [
`${this.uiServerConfiguration.protocol}${this.uiServerConfiguration.version}`,
- `authorization.basic.${btoa(`${this.uiServerConfiguration.authentication.username}:${this.uiServerConfiguration.authentication.password}`).replace(/={1,2}$/, '')}`
+ `authorization.basic.${btoa(
+ `${this.uiServerConfiguration.authentication.username}:${this.uiServerConfiguration.authentication.password}`
+ ).replace(/={1,2}$/, '')}`
]
: `${this.uiServerConfiguration.protocol}${this.uiServerConfiguration.version}`
this.ws = new WebSocket(
- `${this.uiServerConfiguration.secure === true ? ApplicationProtocol.WSS : ApplicationProtocol.WS}://${this.uiServerConfiguration.host}:${this.uiServerConfiguration.port}`,
+ `${
+ this.uiServerConfiguration.secure === true
+ ? ApplicationProtocol.WSS
+ : ApplicationProtocol.WS
+ }://${this.uiServerConfiguration.host}:${this.uiServerConfiguration.port}`,
protocols
)
this.ws.onopen = () => {
private responseHandler(messageEvent: MessageEvent<string>): void {
let response: ProtocolResponse
try {
- response = JSON.parse(messageEvent.data) as ProtocolResponse
+ response = JSON.parse(messageEvent.data)
} catch (error) {
- useToast().error('Invalid response format')
- console.error('Invalid response format', error)
+ useToast().error('Invalid response JSON format')
+ console.error('Invalid response JSON format', error)
return
}
const [uuid, responsePayload] = response
- console.log('responsePayload', responsePayload.state?.templateStatistics)
+ if (!validateUUID(uuid)) {
+ useToast().error('Response UUID field is invalid')
+ console.error('Response UUID field is invalid:', response)
+ return
+ }
if (this.responseHandlers.has(uuid)) {
const { procedureName, resolve, reject } = this.responseHandlers.get(uuid)!