Giter Club home page Giter Club logo

e-mobility-charging-stations-simulator's Issues

[FEATURE] UI Protocol: add all supported OCPP 1.6 commands

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

  • BootNotification
  • Heartbeat
  • StatusNotification
  • Authorize
  • StartTransaction
  • StopTransaction
  • MeterValues
  • DataTransfer
  • FirmwareStatusNotification
  • DiagnosticsStatusNotification

Attachments

No response

[BUG] Failed to run

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Failed to run command

pnpm start

e-mobility-charging-stations-simulator version

main branch

Node.js Version

v18.12.1

System

System:
OS: Windows 10 10.0.19043
CPU: (6) x64 Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz
Memory: 3.78 GB / 15.91 GB

Expected result

start the simulator

Actual result

start the simulator

Attachments

λ pnpm start

[email protected] start E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13
pnpm build && cross-env NODE_ENV=production node -r source-map-support/register dist/start.mjs

[email protected] build E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13
pnpm rollup

[email protected] rollup E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13
pnpm build-requirements && rollup --config

[email protected] build-requirements E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13
node --no-warnings build-requirements.mjs

src/start.ts, src/charging-station/ChargingStationWorker.ts → dist...
(!) Circular dependencies
src/charging-station/internal.ts -> src/charging-station/IdTagsCache.ts -> src/charging-station/internal.ts
src/types/internal.ts -> src/types/ocpp/ChargePointErrorCode.ts -> src/types/internal.ts
src/types/internal.ts -> src/types/ocpp/ChargingProfile.ts -> src/types/internal.ts
...and 45 more
(!) Unused external imports
ManyToOne,PrimaryKey,Property,Collection,OneToMany,Configuration,Connection imported from external module "@mikro-orm/core" but never used in "src/performance/storage/MikroOrmStorage.ts", "src/types/orm/entities/PerformanceRecord.ts" and "src/types/orm/entities/PerformanceData.ts".
created dist in 9.1s
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, open 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at Object.openSync (node:fs:600:3)
at Object.readFileSync (node:fs:468:35)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:344:14)
at Function.getLogRotate (file:///E:/Workbench/node/src/utils/Configuration.ts:239:43)
at file:///E:/Workbench/node/src/utils/Logger.ts:11:19
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5)
at handleMainPromise (node:internal/modules/run_main:65:12) {
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, watch 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at FSWatcher. (node:internal/fs/watchers:244:19)
at Object.watch (node:fs:2315:34)
at Function.getConfigurationFileWatcher (file:///E:/Workbench/node/src/utils/Configuration.ts:364:17)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:356:64)
at Function.getLogRotate (file:///E:/Workbench/node/src/utils/Configuration.ts:239:43)
at file:///E:/Workbench/node/src/utils/Logger.ts:11:19
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5) {
errno: -4058,
syscall: 'watch',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json',
filename: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, open 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at Object.openSync (node:fs:600:3)
at Object.readFileSync (node:fs:468:35)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:344:14)
at Function.getLogMaxFiles (file:///E:/Workbench/node/src/utils/Configuration.ts:246:38)
at file:///E:/Workbench/node/src/utils/Logger.ts:12:37
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5)
at handleMainPromise (node:internal/modules/run_main:65:12) {
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, watch 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at FSWatcher. (node:internal/fs/watchers:244:19)
at Object.watch (node:fs:2315:34)
at Function.getConfigurationFileWatcher (file:///E:/Workbench/node/src/utils/Configuration.ts:364:17)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:356:64)
at Function.getLogMaxFiles (file:///E:/Workbench/node/src/utils/Configuration.ts:246:38)
at file:///E:/Workbench/node/src/utils/Logger.ts:12:37
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5) {
errno: -4058,
syscall: 'watch',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json',
filename: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, open 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at Object.openSync (node:fs:600:3)
at Object.readFileSync (node:fs:468:35)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:344:14)
at Function.getLogMaxSize (file:///E:/Workbench/node/src/utils/Configuration.ts:253:38)
at file:///E:/Workbench/node/src/utils/Logger.ts:13:36
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5)
at handleMainPromise (node:internal/modules/run_main:65:12) {
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, watch 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at FSWatcher. (node:internal/fs/watchers:244:19)
at Object.watch (node:fs:2315:34)
at Function.getConfigurationFileWatcher (file:///E:/Workbench/node/src/utils/Configuration.ts:364:17)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:356:64)
at Function.getLogMaxSize (file:///E:/Workbench/node/src/utils/Configuration.ts:253:38)
at file:///E:/Workbench/node/src/utils/Logger.ts:13:36
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5) {
errno: -4058,
syscall: 'watch',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json',
filename: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, open 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at Object.openSync (node:fs:600:3)
at Object.readFileSync (node:fs:468:35)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:344:14)
at Function.warnDeprecatedConfigurationKey (file:///E:/Workbench/node/src/utils/Configuration.ts:330:49)
at Function.getLogErrorFile (file:///E:/Workbench/node/src/utils/Configuration.ts:271:19)
at file:///E:/Workbench/node/src/utils/Logger.ts:17:23
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5) {
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
5/23/2023, 4:56:40 PM Simulator configuration | configuration file E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json not found: Error: ENOENT: no such file or directory, watch 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
at FSWatcher. (node:internal/fs/watchers:244:19)
at Object.watch (node:fs:2315:34)
at Function.getConfigurationFileWatcher (file:///E:/Workbench/node/src/utils/Configuration.ts:364:17)
at Function.getConfig (file:///E:/Workbench/node/src/utils/Configuration.ts:356:64)
at Function.warnDeprecatedConfigurationKey (file:///E:/Workbench/node/src/utils/Configuration.ts:330:49)
at Function.getLogErrorFile (file:///E:/Workbench/node/src/utils/Configuration.ts:271:19)
at file:///E:/Workbench/node/src/utils/Logger.ts:17:23
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24) {
errno: -4058,
syscall: 'watch',
code: 'ENOENT',
path: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json',
filename: 'E:\Workbench\node\e-mobility-charging-stations-simulator-1.2.13\dist\assets\config.json'
}
TypeError: Cannot read properties of null (reading 'errorFile')
at Function.warnDeprecatedConfigurationKey (file:///E:/Workbench/node/src/utils/Configuration.ts:330:49)
at Function.getLogErrorFile (file:///E:/Workbench/node/src/utils/Configuration.ts:271:19)
at file:///E:/Workbench/node/src/utils/Logger.ts:17:23
at ModuleJob.run (node:internal/modules/esm/module_job:193:25)
at async Promise.all (index 0)
at ESMLoader.import (node:internal/modules/esm/loader:530:24)
at loadESM (node:internal/process/esm_loader:91:5)
at handleMainPromise (node:internal/modules/run_main:65:12)
 ELIFECYCLE  Command failed with exit code 1.

[FEATURE] Incoming request payload validation

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Use ajv JSON schema validator to validate incoming request JSON payload. Use OCA JSON schemas. Make it configurable.

Attachments

No response

[FEATURE] Add charging station templates syntax versionning

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

  • Add syntax check against JSON schema (use ajv)
  • Add versioning to cope with syntax breaking changes flawlessly

Attachments

No response

[BUG] SyntaxError: Named export 'Queue' not found. The requested module 'mnemonist' is a CommonJS module

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

On start, with pnpm start, I get a lot of output, and in the middle there's this message.

SyntaxError: Named export 'Queue' not found. The requested module 'mnemonist' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:

import pkg from 'mnemonist';

e-mobility-charging-stations-simulator version

1.2.14

Node.js Version

16

System

System:
OS: Linux 5.10 Debian GNU/Linux 11 (bullseye) 11 (bullseye)
CPU: (2) x64 AMD EPYC 7B12
Memory: 564.53 MB / 975.63 MB
Container: Yes
Shell: 5.1.4 - /bin/bash

Expected result

The program to start.

Actual result

Error observed.

Attachments

No response

[FEATURE] Add logging to remote server via standard protocols

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Depends on the encapsulation of the logging code into an abstraction such as a class or function.
The abstraction shall permit to change the logging underlying system and configuration at runtime.

Targeted protocols:

  • syslog (RFC 3164)

Attachments

No response

[BUG]

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

In the previous simulator i used that didnt have a ui whenever it connects to my websocket it send me a bootnotification and after i responde i get a status notification but its not the same in the current version. Please why

e-mobility-charging-stations-simulator version

latest

Node.js Version

18

System

No response

Expected result

To receive status notification after bootnotification

Actual result

Did not to receive status notification after bootnotification

Attachments

No response

[BUG] Worker crash at WS connection close and first connection retry

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

No response

e-mobility-charging-stations-simulator version

1.0.62

Node.js Version

v14.17.6

System

OS: macOS 11.5.2
CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Memory: 108.63 MB / 16.00 GB
Shell: 5.8 - /bin/zsh

Expected result

No response

Actual result

No response

Attachments

No response

[BUG] Handle file exception at JSON schemas file reading

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

No response

e-mobility-charging-stations-simulator version

No response

Node.js Version

No response

System

No response

Expected result

No response

Actual result

No response

Attachments

No response

[BUG] Performance storage: make MikroORM integration works

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

No response

e-mobility-charging-stations-simulator version

No response

Node.js Version

No response

System

No response

Expected result

No response

Actual result

No response

Attachments

No response

[FEATURE] Encapsulate logger usage in global and per class helpers

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

  • Generate logPrefix base string at class instantiation (static attribute)
  • Refine per class logPrefix method signature to make use of the static attribute
  • Add logger helpers to Logger class
  • Migrate direct logger usage to the Logger helpers

Attachments

No response

[FEATURE] Coherent random MeterValues for all measurand type

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Currently the MeterValues code generate randomly values for all measurand without any coherence.

Make the code also allow coherent MeterValues values generation.

Attachments

No response

[BUG]

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

when i run pnpm start i get this error
Error: ENOENT: no such file or directory, open '/e-mobility-charging-stations-simulator-main/performance Records.json'

e-mobility-charging-stations-simulator version

latest

Node.js Version

18

System

No response

Expected result

No response

Actual result

No response

Attachments

No response

[BUG] Reboot during de firmware update

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

When the CS is rebooted during downloading, the CS reconnects once to say "installed" and then reconnects a second time and says "installed" again.
In the same firmware update it goes from "1.10.4" to "1.10.6", so 2 versions.
The "installing" and "downloaded" do not appear.

e-mobility-charging-stations-simulator version

1.1.96

Node.js Version

v16.18.0

System

System:
OS: macOS 13.2.1
CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
Memory: 110.62 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh

Expected result

This is the normal behaviour :
OcppUpdateFirmware is sent to the station
StatusNotification received with connector ID'1' status Unavailable
FirmwareStatusNotification received with status Downloading
FirmwareStatusNotification received with status Downloaded
FirmwareStatusNotification received with status Installing
OcppReset is sent to the station
BootNotification received
FirmwareStatusNotification received with status InstallationFailed

Actual result

OcppUpdateFirmware is sent to the station
StatusNotification received with connector ID'1' status Unavailable
FirmwareStatusNotification received with status Downloading
OcppReset is sent to the station
StatusNotification received with connector ID'1' status Unavailable
BootNotification received
FirmwareStatusNotification received with status Installed 1.10.4
BootNotification received
StatusNotification received with connector ID'1' status Unavailable
StatusNotification received with connector ID'1' status Available
FirmwareStatusNotification received with status Installed 1.10.5

Attachments

I'll let you show the full test in the wiki on the right at "Reboot during de firmware update":
https://wiki.one.int.sap/wiki/display/EMobility/Simulator

[FEATURE] Add HTTP transport to the UI socket server

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

The UI socket server should also handle HTTP protocol via express.
The implementation can use the object factory design pattern to create a stable, type safe API to deal with the two application level protocols: WS and HTTP.
The protocol choice shall be a configuration tunable.

Attachments

No response

[HELP]

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

  • after cloning the code I have given npm install on root directory.
  • then npm start to start the server.
  • started the client side server also.
  • after clicking the start simulator button on client side in console it shows the error WebSocket connection to 'ws://localhost:8080/' failed:

e-mobility-charging-stations-simulator version

1.1.88

Node.js Version

v16.17.1

System

OS: macOS 12.5
CPU: (8) arm64 Apple M1
Memory: 91.77 MB / 8.00 GB
Shell: 5.8.1 - /bin/zsh

Expected result

Expected to start the webSocket connection and able to view the list of charging stations after clicking the start simulator.

Actual result

Actually it shows the error like WebSocket connection to 'ws://localhost:8080/' failed:

Attachments

Screenshot 2022-12-27 at 2 35 07 PM

[BUG]

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

strict mode: missing type "object" for keyword "additionalProperties" at "urn:OCPP:1.6:2019:12:BootNotificationResponse#/properties/status" (strictTypes)

keep getting error how do i fix

e-mobility-charging-stations-simulator version

No response

Node.js Version

No response

System

No response

Expected result

No response

Actual result

No response

Attachments

No response

[FEATURE] Installation instructions

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Working through the installation instructions, it's not 100% clear which config files I should be copying/editing/using.

I've copied the config-template.json file in /src/assets into a config.json file, with a change in the URL for the OCPP server from localhost to the URL of an actual OCPP server. Should I also be copying or changing other template files? It's not clear.

When I try to npm start after doing that (windows 10), I get the following outputs.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

PS D:\hughs\e-mobility-charging-stations-simulator-main> npm start
npm WARN config global --global, --local are deprecated. Use --location=global instead.

[email protected] prestart
npm run build

npm WARN config global --global, --local are deprecated. Use --location=global instead.

[email protected] build
npm run rollup

npm WARN config global --global, --local are deprecated. Use --location=global instead.

[email protected] rollup
rollup --config

'rollup' is not recognized as an internal or external command,
operable program or batch file.
PS D:\hughs\e-mobility-charging-stations-simulator-main>

Attachments

No response

[FEATURE] Make the ATG a node.js AsyncResource

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Use internal node.js API instead if open coding a similar feature less performant.

Attachments

No response

[FEATURE] WS commands for qmate automated e2e tests

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

In automated e2e tests and regression tests context,
we would make great use of following features:

With WS/http remote commands:

  • add and start a new CS following a given template with given onboarding url.
  • for given CS, set a new auth token url
  • reboot CS
  • start/stop charging session

Attachments

No response

[BUG]

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

After Importing the http ui-protocol to insomnia i can't seem to send request. Request doesn't go through just timeout. I have tried searching for cause or solution but to no avail. Is there any requirement before i can start sending request with insomnia or what else can i do

e-mobility-charging-stations-simulator version

latest

Node.js Version

18

System

No response

Expected result

No response

Actual result

No response

Attachments

No response

[FEATURE] Move log tunables into its own configuration section

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

"log": {
	"enabled": true/false,
	"file": "",
	"errorFile": "",
	"level": "",
	"console": true/false,
	"format": "simple",
	"rotate": true/false,
	"maxFiles": 2,
	"maxSize": "512m"
}

Attachments

No response

[FEATURE] Request payload validation

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Use ajv JSON schema validator to validate response JSON payload. Use OCA JSON schemas. Make it configurable.

Attachments

No response

[BUG] BootNotification sending incorrect payload

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

When sending a bootNotification to the server, chargePointModel and meterSerialNumber fields are being prefixed with undefined, generating an error at the schema validation done by cpo. It seems the empty value for meterSerialNumberPrefix and chargePointSerialNumberPrefix is wrongly catched.

image

Impact: not able to boot a new charging station

To reproduce: Onboard a new charging station --> check CPO logs --> Error will show up as follows because of the schema validation failure:
image

e-mobility-charging-stations-simulator version

1.1.92

Node.js Version

16.19.0

System

System:
OS: macOS 13.2
CPU: (8) arm64 Apple M1
Memory: 64.59 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh

Expected result

Normal bootNotification process. CS onboarded.

Actual result

Failure when onboarding a CS

Attachments

No response

[FEATURE] Response payload validation

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Use ajv JSON schema validator to validate response JSON payload. Use OCA JSON schemas. Make it configurable.

Attachments

No response

[FEATURE] Make connectors/evses status persistent

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

  • Include connectors/evses map in the charging station configuration file
  • Trigger connectors/evses map save at charging station stop
  • Reuse the charging station configuration file to build connectors/evses map

Attachments

No response

[FEATURE] Implement Vue.js web UI to pilot the simulated charging stations through the UI protocol

Duplicate issue

  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Preparation

  • Install Vue.js in src/ui/web as a standalone node.js application.
  • Serve that application locally with express.static
    • add a npm script to start the local HTTP server
    • ...

List simulated charging stations

  1. Send listChargingStations command through websocket
  2. While waiting, use any mean (loading animation...) to notify user the request is being processed
  3. Once response received, display it
    • Design quickly the UI listing the CS
    • Implement the design
  4. Make that list displayed by default

Start transaction command

  1. Send startTransaction command through websocket
  2. While waiting, use any mean (loading animation...) to notify user the request is being processed
  3. Once response received, display it

Stop transaction command

  1. Send stopTransaction command through websocket
  2. While waiting, use any mean (loading animation...) to notify user the request is being processed
  3. Once response received, display it

Attachments

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.