X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Ftypes%2Focpp%2F1.6%2FRequests.ts;h=39e8a9bb3269509639e70b43fb65d4e9f3496e8e;hb=6e2f954cbb505ad26c61d950e29685d5d49d5f00;hp=47b110ab4dae1e0d5076f058de63784c424ea86f;hpb=c9a4f9ea603df09541c6837fee50012256fb46ad;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 47b110ab..39e8a9bb 100644 --- a/src/types/ocpp/1.6/Requests.ts +++ b/src/types/ocpp/1.6/Requests.ts @@ -1,10 +1,14 @@ -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 { + 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', @@ -26,6 +30,7 @@ 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', @@ -34,6 +39,8 @@ export enum OCPP16IncomingRequestCommand { TRIGGER_MESSAGE = 'TriggerMessage', DATA_TRANSFER = 'DataTransfer', UPDATE_FIRMWARE = 'UpdateFirmware', + RESERVE_NOW = 'ReserveNow', + CANCEL_RESERVATION = 'CancelReservation', } export type OCPP16HeartbeatRequest = EmptyObject; @@ -62,8 +69,10 @@ export interface OCPP16StatusNotificationRequest extends JsonObject { export type OCPP16ClearCacheRequest = EmptyObject; +type OCPP16ConfigurationKey = string | OCPP16StandardParametersKey | OCPP16VendorParametersKey; + export interface ChangeConfigurationRequest extends JsonObject { - key: string | OCPP16StandardParametersKey; + key: OCPP16ConfigurationKey; value: string; } @@ -82,10 +91,10 @@ export interface UnlockConnectorRequest extends JsonObject { } export interface GetConfigurationRequest extends JsonObject { - key?: string | OCPP16StandardParametersKey[]; + key?: OCPP16ConfigurationKey[]; } -export enum ResetType { +enum ResetType { HARD = 'Hard', SOFT = 'Soft', } @@ -94,14 +103,20 @@ export interface ResetRequest extends JsonObject { type: ResetType; } +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 JsonObject { @@ -112,7 +127,7 @@ export interface ChangeAvailabilityRequest extends JsonObject { export interface ClearChargingProfileRequest extends JsonObject { id?: number; connectorId?: number; - chargingProfilePurpose?: ChargingProfilePurposeType; + chargingProfilePurpose?: OCPP16ChargingProfilePurposeType; stackLevel?: number; } @@ -170,3 +185,15 @@ export interface OCPP16DataTransferRequest extends JsonObject { 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; +}