X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2Focpp%2F1.6%2FRequests.ts;h=80128a271c9fd6edd3cb6ec9609ad6b2ed898da7;hb=d193a94981cfed2c3d502eeca581ce4e9f0eebe5;hp=6518213c71042c8aca6f89dd57cbb57a6837b4cb;hpb=794aea9d3e6b713d55bf5adb06faa211206cfa77;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 6518213c..80128a27 100644 --- a/src/types/ocpp/1.6/Requests.ts +++ b/src/types/ocpp/1.6/Requests.ts @@ -1,11 +1,14 @@ -import { ChargingProfilePurposeType, OCPP16ChargingProfile } from './ChargingProfile'; - -import { EmptyObject } from '../../EmptyObject'; -import { JsonType } from '../../JsonType'; -import { OCPP16ChargePointErrorCode } from './ChargePointErrorCode'; -import { OCPP16ChargePointStatus } from './ChargePointStatus'; -import { OCPP16DiagnosticsStatus } from './DiagnosticsStatus'; -import { OCPP16StandardParametersKey } from './Configuration'; +import type { OCPP16ChargePointErrorCode } from './ChargePointErrorCode'; +import type { OCPP16ChargePointStatus } from './ChargePointStatus'; +import type { + OCPP16ChargingProfile, + OCPP16ChargingProfilePurposeType, + OCPP16ChargingRateUnitType, +} from './ChargingProfile'; +import type { OCPP16StandardParametersKey, OCPP16VendorParametersKey } from './Configuration'; +import type { OCPP16DiagnosticsStatus } from './DiagnosticsStatus'; +import type { EmptyObject } from '../../EmptyObject'; +import type { JsonObject } from '../../JsonType'; export enum OCPP16RequestCommand { BOOT_NOTIFICATION = 'BootNotification', @@ -16,6 +19,10 @@ export enum OCPP16RequestCommand { STOP_TRANSACTION = 'StopTransaction', METER_VALUES = 'MeterValues', DIAGNOSTICS_STATUS_NOTIFICATION = 'DiagnosticsStatusNotification', + FIRMWARE_STATUS_NOTIFICATION = 'FirmwareStatusNotification', + DATA_TRANSFER = 'DataTransfer', + RESERVE_NOW = 'ReserveNow', + CANCEL_RESERVATION = 'CancelReservation', } export enum OCPP16IncomingRequestCommand { @@ -25,93 +32,129 @@ export enum OCPP16IncomingRequestCommand { UNLOCK_CONNECTOR = 'UnlockConnector', GET_CONFIGURATION = 'GetConfiguration', CHANGE_CONFIGURATION = 'ChangeConfiguration', + GET_COMPOSITE_SCHEDULE = 'GetCompositeSchedule', 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', + UPDATE_FIRMWARE = 'UpdateFirmware', + RESERVE_NOW = 'ReserveNow', + CANCEL_RESERVATION = 'CancelReservation', } export type OCPP16HeartbeatRequest = EmptyObject; -export interface OCPP16BootNotificationRequest extends JsonType { - 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 OCPP16StatusNotificationRequest extends JsonType { +export interface OCPP16StatusNotificationRequest extends JsonObject { connectorId: number; errorCode: OCPP16ChargePointErrorCode; - info?: string; status: OCPP16ChargePointStatus; - timestamp?: string; + info?: string; + timestamp?: Date; vendorId?: string; vendorErrorCode?: string; } -export interface ChangeConfigurationRequest extends JsonType { - key: string | OCPP16StandardParametersKey; +export type OCPP16ClearCacheRequest = EmptyObject; + +type OCPP16ConfigurationKey = string | OCPP16StandardParametersKey | OCPP16VendorParametersKey; + +export interface ChangeConfigurationRequest extends JsonObject { + key: OCPP16ConfigurationKey; value: string; } -export interface RemoteStartTransactionRequest extends JsonType { +export interface RemoteStartTransactionRequest extends JsonObject { connectorId: number; idTag: string; chargingProfile?: OCPP16ChargingProfile; } -export interface RemoteStopTransactionRequest extends JsonType { +export interface RemoteStopTransactionRequest extends JsonObject { transactionId: number; } -export interface UnlockConnectorRequest extends JsonType { +export interface UnlockConnectorRequest extends JsonObject { connectorId: number; } -export interface GetConfigurationRequest extends JsonType { - key?: string | OCPP16StandardParametersKey[]; +export interface GetConfigurationRequest extends JsonObject { + key?: OCPP16ConfigurationKey[]; } -export enum ResetType { +enum ResetType { HARD = 'Hard', SOFT = 'Soft', } -export interface ResetRequest extends JsonType { +export interface ResetRequest extends JsonObject { type: ResetType; } -export interface SetChargingProfileRequest extends JsonType { +export interface OCPP16GetCompositeScheduleRequest extends JsonObject { + connectorId: number; + duration: number; + chargingRateUnit?: OCPP16ChargingRateUnitType; +} + +export interface SetChargingProfileRequest extends JsonObject { connectorId: number; csChargingProfiles: OCPP16ChargingProfile; } export enum OCPP16AvailabilityType { - INOPERATIVE = 'Inoperative', - OPERATIVE = 'Operative', + Inoperative = 'Inoperative', + Operative = 'Operative', } -export interface ChangeAvailabilityRequest extends JsonType { +export interface ChangeAvailabilityRequest extends JsonObject { connectorId: number; type: OCPP16AvailabilityType; } -export interface ClearChargingProfileRequest extends JsonType { +export interface ClearChargingProfileRequest extends JsonObject { id?: number; connectorId?: number; - chargingProfilePurpose?: ChargingProfilePurposeType; + chargingProfilePurpose?: OCPP16ChargingProfilePurposeType; stackLevel?: number; } -export interface GetDiagnosticsRequest extends JsonType { +export interface OCPP16UpdateFirmwareRequest extends JsonObject { + location: string; + retrieveDate: Date; + retries?: number; + retryInterval?: number; +} + +export enum OCPP16FirmwareStatus { + Downloaded = 'Downloaded', + DownloadFailed = 'DownloadFailed', + Downloading = 'Downloading', + Idle = 'Idle', + InstallationFailed = 'InstallationFailed', + Installing = 'Installing', + Installed = 'Installed', +} + +export type OCPP16FirmwareStatusNotificationRequest = { + status: OCPP16FirmwareStatus; +} & JsonObject; + +export interface GetDiagnosticsRequest extends JsonObject { location: string; retries?: number; retryInterval?: number; @@ -119,11 +162,11 @@ export interface GetDiagnosticsRequest extends JsonType { stopTime?: Date; } -export interface DiagnosticsStatusNotificationRequest extends JsonType { +export interface OCPP16DiagnosticsStatusNotificationRequest extends JsonObject { status: OCPP16DiagnosticsStatus; } -export enum MessageTrigger { +export enum OCPP16MessageTrigger { BootNotification = 'BootNotification', DiagnosticsStatusNotification = 'DiagnosticsStatusNotification', FirmwareStatusNotification = 'FirmwareStatusNotification', @@ -132,7 +175,27 @@ export enum MessageTrigger { StatusNotification = 'StatusNotification', } -export interface OCPP16TriggerMessageRequest extends JsonType { - requestedMessage: MessageTrigger; +export interface OCPP16TriggerMessageRequest extends JsonObject { + requestedMessage: OCPP16MessageTrigger; connectorId?: number; } + +export enum OCPP16DataTransferVendorId {} + +export interface OCPP16DataTransferRequest extends JsonObject { + vendorId: string; + messageId?: string; + data?: string; +} + +export interface OCPP16ReserveNowRequest extends JsonObject { + connectorId: number; + expiryDate: Date; + idTag: string; + parentIdTag?: string; + reservationId: number; +} + +export interface OCPP16CancelReservationRequest extends JsonObject { + reservationId: number; +}