- Simple app menu (command line app using
cin/cout
is enough) - After app starts it should connect to server using WebSocket
- If WebSocket connection was successful app should send
BootNotification
- App user should be able to start transaction (
StartTransaction
) - If charge transaction was successful user should be able to stop transaction (
StopTransaction
)
- Implement using modern C++ features
- Unit test is not required but is a plus
- Usage of 3rd party libraries or Linux packages allowed
- We expect to get a GitHub repository containing application's source code and short instruction in readme.md how to run that application
- OCPP 1.6 Specification - JSON - document gives the information required to create a correct interoperable OCPP JSON implementation
- OCPP 1.6 Specification - Edition - document defines the protocol used between a Charge Point and Central System
- OCPP JSON WebSocket URL -
ws://3.125.118.3:8080/steve/websocket/CentralSystemService/(chargeBoxId)
- chargeBoxId -
[public_1, public_2, public_3]
Sec-WebSocket-Key
- not requiredSec-WebSocket-Protocol
-"ocpp1.6"
Sec-WebSocket-Version
-"13"
- Use your own
connectorId
-1
idTag
- use random string, generated on app startmeterStart
- use random number
idTag
- Same tag as inStartTransaction
meterStop
-meterStart
+ some value