ocpp-ws-io 2.1.5 → 2.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # ocpp-ws-io
1
+ <p align="center">
2
+ <img src="assets/banner.svg" alt="ocpp-ws-io" width="420" />
3
+ </p>
2
4
 
3
- > **Type-safe OCPP WebSocket RPC client & server for Node.js.**
4
- >
5
- > built with TypeScript — supports OCPP 1.6, 2.0.1, and 2.1 with full JSON schema validation, all security profiles, clustering support, and blazing fast structured logging powered by [voltlog-io](https://ocpp-ws-io.rohittiwari.me/docs/voltlog-io).
5
+ > built with TypeScript — supports OCPP 1.6, 2.0.1, and 2.1 with optional JSON schema validation, all security profiles, clustering support, and structured logging powered by [voltlog-io](https://ocpp-ws-io.rohittiwari.me/docs/voltlog-io).
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/ocpp-ws-io.svg)](https://www.npmjs.com/package/ocpp-ws-io)
8
8
  [![License](https://img.shields.io/npm/l/ocpp-ws-io.svg)](https://github.com/rohittiwari-dev/ocpp-ws-io/blob/main/LICENSE)
@@ -19,6 +19,7 @@ For full API reference, advanced usage, and guides, visit the **[Official Docume
19
19
  - 📐 **Strict Mode** — Optional JSON schema validation
20
20
  - 📡 **Clustering** — Redis adapter support
21
21
  - 🌐 **Browser Client** — Zero-dependency client for simulators
22
+ - ⚡ **CLI Ecosystem** — Built-in `ocpp-ws-cli` for generating types, load testing, fuzzing, and simulating virtual charge points
22
23
 
23
24
  ## 📦 Installation
24
25
 
@@ -173,7 +174,7 @@ client.handle("StatusNotification", ({ params }) => {
173
174
 
174
175
  ## 📝 Logging
175
176
 
176
- `ocpp-ws-io` comes with blazing fast, **built-in structured JSON logging** powered by our custom-built logger, [voltlog-io](https://ocpp-ws-io.rohittiwari.me/docs/voltlog-io). It is finely tuned specifically for high-throughput WebSocket environments.
177
+ `ocpp-ws-io` includes **built-in structured JSON logging** powered by [voltlog-io](https://ocpp-ws-io.rohittiwari.me/docs/voltlog-io), designed for high-throughput WebSocket environments.
177
178
 
178
179
  ### Default Behavior
179
180
 
@@ -191,7 +192,7 @@ By default (`logging: true`), logs are output as structured JSON to `stdout`.
191
192
 
192
193
  ### Pretty Printing & Exchange Logs
193
194
 
194
- Enable `prettify` for development to see colored output with icons.
195
+ Enable `prettify` for development to see colored output with icons.
195
196
  Enable `exchangeLog` to log all OCPP messages with direction (`IN`/`OUT`) and metadata.
196
197
 
197
198
  ```typescript
@@ -375,7 +376,7 @@ Scale your OCPP server across multiple nodes using Redis.
375
376
 
376
377
  - **Unicast Routing**: Send messages to any client on any node.
377
378
  - **Presence**: Track connected clients across the cluster.
378
- - **Reliability**: Zero message loss during node restarts (via Redis Streams).
379
+ - **Reliability**: Uses Redis Streams for durable message delivery.
379
380
  - **Batch Processing**: Use `server.broadcastBatch` to combine multi-node calls effortlessly.
380
381
 
381
382
  ### Custom Adapters (`EventAdapterInterface`)
@@ -0,0 +1,31 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 500 120" width="100%" height="100%">
2
+ <defs>
3
+ <linearGradient id="ocpp-grad" x1="0%" y1="0%" x2="100%" y2="100%">
4
+ <stop offset="0%" stop-color="#7C3AED" />
5
+ <stop offset="100%" stop-color="#A78BFA" />
6
+ </linearGradient>
7
+ <style>
8
+ .text-dark { fill: #0F172A; }
9
+ @media (prefers-color-scheme: dark) {
10
+ .text-dark { fill: #F8FAFC; }
11
+ }
12
+ </style>
13
+ </defs>
14
+
15
+ <g transform="translate(20, 10)">
16
+ <path d="M50 0 L93.3 25 L93.3 75 L50 100 L6.7 75 L6.7 25 Z" fill="url(#ocpp-grad)" opacity="0.12" />
17
+ <path d="M50 10 A 40 40 0 1 0 90 50" fill="none" stroke="url(#ocpp-grad)" stroke-width="8" stroke-linecap="round" />
18
+ <circle cx="90" cy="50" r="8" fill="#7C3AED" />
19
+ <circle cx="50" cy="10" r="8" fill="#A78BFA" />
20
+ <path d="M55 22 L32 55 L48 55 L42 82 L72 45 L52 45 Z" fill="url(#ocpp-grad)" />
21
+ </g>
22
+
23
+ <g transform="translate(140, 72)">
24
+ <text x="0" y="0" font-family="-apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, sans-serif" font-size="46" font-weight="800" fill="#1E293B">
25
+ ocpp<tspan fill="#7C3AED">-ws</tspan><tspan fill="#A78BFA">-io</tspan>
26
+ </text>
27
+ <text x="4" y="26" font-family="-apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, sans-serif" font-size="14" font-weight="600" fill="#64748B" letter-spacing="2">
28
+ TYPE-SAFE CHARGING RPC
29
+ </text>
30
+ </g>
31
+ </svg>
@@ -1,4 +1,4 @@
1
- export { X as RedisAdapter, a0 as RedisAdapterOptions } from '../index-1QBeqAuc.mjs';
1
+ export { X as RedisAdapter, a0 as RedisAdapterOptions } from '../index-BRblF1XV.mjs';
2
2
  import 'ws';
3
3
  import 'node:https';
4
4
  import 'node:http';
@@ -1,4 +1,4 @@
1
- export { X as RedisAdapter, a0 as RedisAdapterOptions } from '../index-1QBeqAuc.js';
1
+ export { X as RedisAdapter, a0 as RedisAdapterOptions } from '../index-BRblF1XV.js';
2
2
  import 'ws';
3
3
  import 'node:https';
4
4
  import 'node:http';