X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2Focpp%2F1.6%2FRequests.ts;h=4a90569d5e9a18fee51b7a46bc000dac260f4b95;hb=b1340ec1468911ac6d199013e4d382f2975f453c;hp=8af407c0ac3789fceb6ca52fb54c3cbec133398f;hpb=1af50fac1ab71fed19f11864d1644261046698a3;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ocpp/1.6/Requests.ts b/src/types/ocpp/1.6/Requests.ts index 8af407c0..4a90569d 100644 --- a/src/types/ocpp/1.6/Requests.ts +++ b/src/types/ocpp/1.6/Requests.ts @@ -1,108 +1,149 @@ -import { ChargingProfilePurposeType, OCPP16ChargingProfile } from './ChargingProfile'; - -import { OCPP16ChargePointErrorCode } from './ChargePointErrorCode'; -import { OCPP16ChargePointStatus } from './ChargePointStatus'; -import { OCPP16StandardParametersKey } from './Configuration'; +import type { EmptyObject } from '../../EmptyObject'; +import type { JsonObject } from '../../JsonType'; +import type { OCPP16ChargePointErrorCode } from './ChargePointErrorCode'; +import type { OCPP16ChargePointStatus } from './ChargePointStatus'; +import type { ChargingProfilePurposeType, OCPP16ChargingProfile } from './ChargingProfile'; +import type { OCPP16StandardParametersKey } from './Configuration'; +import type { OCPP16DiagnosticsStatus } from './DiagnosticsStatus'; export enum OCPP16RequestCommand { BOOT_NOTIFICATION = 'BootNotification', HEARTBEAT = 'Heartbeat', STATUS_NOTIFICATION = 'StatusNotification', - CHANGE_CONFIGURATION = 'ChangeConfiguration', AUTHORIZE = 'Authorize', START_TRANSACTION = 'StartTransaction', STOP_TRANSACTION = 'StopTransaction', - METERVALUES = 'MeterValues' -} - -export enum OCPP16IncomingRequestCommand { - RESET = 'Reset', - CLEAR_CACHE = 'ClearCache', - CHANGE_AVAILABILITY = 'ChangeAvailability', - UNLOCK_CONNECTOR = 'UnlockConnector', - GET_CONFIGURATION = 'GetConfiguration', - CHANGE_CONFIGURATION = 'ChangeConfiguration', - SET_CHARGING_PROFILE = 'SetChargingProfile', - CLEAR_CHARGING_PROFILE = 'ClearChargingProfile', - REMOTE_START_TRANSACTION = 'RemoteStartTransaction', - REMOTE_STOP_TRANSACTION = 'RemoteStopTransaction' + METER_VALUES = 'MeterValues', + DIAGNOSTICS_STATUS_NOTIFICATION = 'DiagnosticsStatusNotification', + DATA_TRANSFER = 'DataTransfer', } -// eslint-disable-next-line @typescript-eslint/no-empty-interface -export interface HeartbeatRequest { } +export type OCPP16HeartbeatRequest = EmptyObject; -export interface OCPP16BootNotificationRequest { - chargeBoxSerialNumber?: string; +export interface OCPP16BootNotificationRequest extends JsonObject { + chargePointVendor: string; chargePointModel: string; chargePointSerialNumber?: string; - chargePointVendor: string; + chargeBoxSerialNumber?: string; firmwareVersion?: string; iccid?: string; imsi?: string; - meterSerialNumber?: string; meterType?: string; + meterSerialNumber?: string; } -export interface StatusNotificationRequest { +export interface OCPP16StatusNotificationRequest extends JsonObject { connectorId: number; errorCode: OCPP16ChargePointErrorCode; - info?: string; status: OCPP16ChargePointStatus; + info?: string; timestamp?: string; vendorId?: string; vendorErrorCode?: string; } -export interface ChangeConfigurationRequest { +export enum OCPP16IncomingRequestCommand { + RESET = 'Reset', + CLEAR_CACHE = 'ClearCache', + CHANGE_AVAILABILITY = 'ChangeAvailability', + UNLOCK_CONNECTOR = 'UnlockConnector', + GET_CONFIGURATION = 'GetConfiguration', + CHANGE_CONFIGURATION = 'ChangeConfiguration', + SET_CHARGING_PROFILE = 'SetChargingProfile', + CLEAR_CHARGING_PROFILE = 'ClearChargingProfile', + REMOTE_START_TRANSACTION = 'RemoteStartTransaction', + REMOTE_STOP_TRANSACTION = 'RemoteStopTransaction', + GET_DIAGNOSTICS = 'GetDiagnostics', + TRIGGER_MESSAGE = 'TriggerMessage', + DATA_TRANSFER = 'DataTransfer', +} + +export type OCPP16ClearCacheRequest = EmptyObject; + +export interface ChangeConfigurationRequest extends JsonObject { key: string | OCPP16StandardParametersKey; value: string; } -export interface RemoteStartTransactionRequest { +export interface RemoteStartTransactionRequest extends JsonObject { connectorId: number; idTag: string; chargingProfile?: OCPP16ChargingProfile; } -export interface RemoteStopTransactionRequest { +export interface RemoteStopTransactionRequest extends JsonObject { transactionId: number; } -export interface UnlockConnectorRequest { +export interface UnlockConnectorRequest extends JsonObject { connectorId: number; } -export interface GetConfigurationRequest { +export interface GetConfigurationRequest extends JsonObject { key?: string | OCPP16StandardParametersKey[]; } export enum ResetType { HARD = 'Hard', - SOFT = 'Soft' + SOFT = 'Soft', } -export interface ResetRequest { +export interface ResetRequest extends JsonObject { type: ResetType; } -export interface SetChargingProfileRequest { +export interface SetChargingProfileRequest extends JsonObject { connectorId: number; csChargingProfiles: OCPP16ChargingProfile; } export enum OCPP16AvailabilityType { INOPERATIVE = 'Inoperative', - OPERATIVE = 'Operative' + OPERATIVE = 'Operative', } -export interface ChangeAvailabilityRequest { +export interface ChangeAvailabilityRequest extends JsonObject { connectorId: number; type: OCPP16AvailabilityType; } -export interface ClearChargingProfileRequest { +export interface ClearChargingProfileRequest extends JsonObject { id?: number; connectorId?: number; chargingProfilePurpose?: ChargingProfilePurposeType; stackLevel?: number; } + +export interface GetDiagnosticsRequest extends JsonObject { + location: string; + retries?: number; + retryInterval?: number; + startTime?: Date; + stopTime?: Date; +} + +export interface DiagnosticsStatusNotificationRequest extends JsonObject { + status: OCPP16DiagnosticsStatus; +} + +export enum OCPP16MessageTrigger { + BootNotification = 'BootNotification', + DiagnosticsStatusNotification = 'DiagnosticsStatusNotification', + FirmwareStatusNotification = 'FirmwareStatusNotification', + Heartbeat = 'Heartbeat', + MeterValues = 'MeterValues', + StatusNotification = 'StatusNotification', +} + +export interface OCPP16TriggerMessageRequest extends JsonObject { + requestedMessage: OCPP16MessageTrigger; + connectorId?: number; +} + +export enum OCPP16DataTransferVendorId {} + +export interface OCPP16DataTransferRequest extends JsonObject { + vendorId: string; + messageId?: string; + data?: string; +}