]> Piment Noir Git Repositories - e-mobility-charging-stations-simulator.git/commit
feat(ocpp2): add RequestStartTransaction command (#1583)
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Mon, 3 Nov 2025 16:44:04 +0000 (17:44 +0100)
committerGitHub <noreply@github.com>
Mon, 3 Nov 2025 16:44:04 +0000 (17:44 +0100)
commite5f4eca2842c1858a3753df16bfc55727753a6f8
tree3f93bfc54f7d469cbeb98dd6951e893c8a739043
parenta830001c57a5fc36ca076c85d582497cb0277f52
feat(ocpp2): add RequestStartTransaction command (#1583)

* feat(ocpp2): add RequestStartTransaction command

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* chore: refine opencode configuration

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* chore: refine opencode configuration

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* refactor: cleanups OCPP2 type definition

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* fix: ocpp2 type definition

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* refactor: standardize OCPP2 unit references using enum constants

- Replace hardcoded unit strings with OCPP20UnitEnumType enum references in Variable Registry
- Add CHARS custom extension to OCPP20UnitEnumType for non-standard character count units
- Update OCPP20UnitOfMeasure interface to use enum type for better type safety
- Improves type safety and maintains single source of truth for OCPP2 units

* refactor: move OCPP20UnitEnumType enum to Common.ts for better architectural organization

* chore: cleanup meter values types integration

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* refactor: cleanup OCPP stack error messages

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* refactor: use enums in variables registry

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* Update tests/ChargingStationFactory.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: proper type definition for SampledValueTemplate

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* refactor: code formatting

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* test: refine request transaction payload

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* refactor: handle remoteStartId

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
* docs: update README.md

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
---------

Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
40 files changed:
.opencode/agent/review.md [new file with mode: 0644]
.opencode/command/format-simulator.md [new file with mode: 0644]
.opencode/command/test-simulator.md [moved from .opencode/command/tests-simulator.md with 57% similarity]
.opencode/command/tests-simulator-file.md [deleted file]
.serena/memories/code_style_conventions.md
README.md
eslint.config.js
src/charging-station/Helpers.ts
src/charging-station/ocpp/1.6/OCPP16ServiceUtils.ts
src/charging-station/ocpp/2.0/OCPP20IncomingRequestService.ts
src/charging-station/ocpp/2.0/OCPP20VariableRegistry.ts
src/charging-station/ocpp/OCPPServiceUtils.ts
src/types/ConnectorStatus.ts
src/types/MeasurandPerPhaseSampledValueTemplates.ts
src/types/index.ts
src/types/ocpp/2.0/Common.ts
src/types/ocpp/2.0/MeterValues.ts
src/types/ocpp/2.0/Requests.ts
src/types/ocpp/2.0/Responses.ts
src/types/ocpp/2.0/Transaction.ts [new file with mode: 0644]
src/types/ocpp/2.0/Variables.ts
src/types/ocpp/ChargingProfile.ts
src/types/ocpp/ConnectorEnumType.ts
src/types/ocpp/ConnectorStatusEnum.ts
src/types/ocpp/MeterValues.ts
tests/ChargingStationFactory.test.ts [new file with mode: 0644]
tests/ChargingStationFactory.ts
tests/charging-station/Helpers.test.ts
tests/charging-station/ocpp/2.0/OCPP20IncomingRequestService-ClearCache.test.ts
tests/charging-station/ocpp/2.0/OCPP20IncomingRequestService-GetBaseReport.test.ts
tests/charging-station/ocpp/2.0/OCPP20IncomingRequestService-GetVariables.test.ts
tests/charging-station/ocpp/2.0/OCPP20IncomingRequestService-RequestStartTransaction.test.ts [new file with mode: 0644]
tests/charging-station/ocpp/2.0/OCPP20IncomingRequestService-Reset.test.ts
tests/charging-station/ocpp/2.0/OCPP20IncomingRequestService-SetVariables.test.ts
tests/charging-station/ocpp/2.0/OCPP20RequestService-BootNotification.test.ts
tests/charging-station/ocpp/2.0/OCPP20RequestService-HeartBeat.test.ts
tests/charging-station/ocpp/2.0/OCPP20RequestService-NotifyReport.test.ts
tests/charging-station/ocpp/2.0/OCPP20RequestService-StatusNotification.test.ts
tests/charging-station/ocpp/2.0/OCPP20TestConstants.ts
tests/charging-station/ocpp/2.0/OCPP20VariableManager.test.ts