@corvina/device-client 1.0.10

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.
Files changed (51) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/CONTRIBUTING.md +31 -0
  3. package/LICENSE +21 -0
  4. package/README.md +138 -0
  5. package/dist/common/types.d.ts +89 -0
  6. package/dist/common/types.js +65 -0
  7. package/dist/common/types.js.map +1 -0
  8. package/dist/device.module.d.ts +2 -0
  9. package/dist/device.module.js +41 -0
  10. package/dist/device.module.js.map +1 -0
  11. package/dist/index.d.ts +6 -0
  12. package/dist/index.js +22 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/services/configparser.d.ts +232 -0
  15. package/dist/services/configparser.js +458 -0
  16. package/dist/services/configparser.js.map +1 -0
  17. package/dist/services/corvinadatainterface.d.ts +24 -0
  18. package/dist/services/corvinadatainterface.js +107 -0
  19. package/dist/services/corvinadatainterface.js.map +1 -0
  20. package/dist/services/device.service.d.ts +77 -0
  21. package/dist/services/device.service.js +464 -0
  22. package/dist/services/device.service.js.map +1 -0
  23. package/dist/services/devicerunner.interface.d.ts +3 -0
  24. package/dist/services/devicerunner.interface.js +3 -0
  25. package/dist/services/devicerunner.interface.js.map +1 -0
  26. package/dist/services/devicerunner.service.d.ts +8 -0
  27. package/dist/services/devicerunner.service.js +123 -0
  28. package/dist/services/devicerunner.service.js.map +1 -0
  29. package/dist/services/licensesaxiosinstance.d.ts +29 -0
  30. package/dist/services/licensesaxiosinstance.js +77 -0
  31. package/dist/services/licensesaxiosinstance.js.map +1 -0
  32. package/dist/services/logger.service.d.ts +8 -0
  33. package/dist/services/logger.service.js +9 -0
  34. package/dist/services/logger.service.js.map +1 -0
  35. package/dist/services/messagepublisher.d.ts +69 -0
  36. package/dist/services/messagepublisher.js +154 -0
  37. package/dist/services/messagepublisher.js.map +1 -0
  38. package/dist/services/messagepublisherpolicies.d.ts +222 -0
  39. package/dist/services/messagepublisherpolicies.js +499 -0
  40. package/dist/services/messagepublisherpolicies.js.map +1 -0
  41. package/dist/services/messagesender.d.ts +17 -0
  42. package/dist/services/messagesender.js +3 -0
  43. package/dist/services/messagesender.js.map +1 -0
  44. package/dist/services/messagesubscriber.d.ts +17 -0
  45. package/dist/services/messagesubscriber.js +32 -0
  46. package/dist/services/messagesubscriber.js.map +1 -0
  47. package/dist/services/simulation.d.ts +83 -0
  48. package/dist/services/simulation.js +610 -0
  49. package/dist/services/simulation.js.map +1 -0
  50. package/envs.md +67 -0
  51. package/package.json +105 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulation.js","sourceRoot":"","sources":["../../src/services/simulation.ts"],"names":[],"mappings":"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"}
package/envs.md ADDED
@@ -0,0 +1,67 @@
1
+ ## Setup configuration environment
2
+
3
+ The device can be configured passing environment variables inline or in file `.env`
4
+
5
+ The last configuration is saved in `.env` after lines:
6
+
7
+ ```
8
+ ### LAST-ENV ###
9
+ # don't write below this line!!
10
+ ```
11
+
12
+ ## Configuration variables description
13
+
14
+ | | |
15
+ | - | - |
16
+ | **ACTIVATION_KEY** | The device activation key |
17
+ | **PAIRING_ENDPOINT** | The pairing endpoint used by the device to contact corvina server for communicdation |
18
+ | **AVAILABLE_TAGS** | The set of tags (variables) advertised by the device to the cloud. It is a JSON list or object: `{ "name": "string", "type": "integer|double|string|boolean" , "simulation" : { simulation_config }}`. Below the simulation configuration format is described |
19
+ | **AVAILABLE_TAGS_FILE** | The filename the list of available tags should be read from |
20
+ | **SIMULATE_TAGS** | 0 or 1 to disable/enable tag simulation |
21
+ | **SIMULATION_MS** | The simulation step in ms |
22
+ | **AVAILABLE_ALARMS** | The JSON formatted list of alarms that can be triggered. The alarm description format is `{"name":"string","severity":1,"source":"string","desc":{"en":"Description with live tags [Tag1]"},"ack_required":true,"reset_required":true,"simulation":{ simulation_function_config}}` |
23
+ | **PACKET_FORMAT** | The payload format (either 'bson' or 'json') |
24
+ | **SIMULATE_TAGS** | 0 or 1 to disable/enable tag simulation |
25
+ | **LOG_LEVEL** | Verbosity of logs : error, warning, info, debug |
26
+ | **PORT** | The port the http server will listen for commands|
27
+ | | |
28
+
29
+ ### Simulation configuration
30
+
31
+ There are several simulation types:
32
+
33
+ | | |
34
+ | - | - |
35
+ | **const :** `"type": "const", "value": number\|string ` | constant value with optional additional noise |
36
+ | **step :**`"type": "step", "amplitude": number, "offset": number, "easing": string, "easingProps" ?: { d3-ease props }, "jump_probability": number, "dt_min": number, "dt_max": number` | Stepwise function which jumps to different values with a given probability and using a specified easing curve to reach the new target value after the jump. `amplitude` is the maximum amplitude of random jump. `offset` is an initial offset. `easing` is a type of easing function as provided by [d3-ease](https://github.com/d3/d3-ease) package and `easingProps` are the related configuration properties. `jump_probability` is a number between 0 and 1 such that if =1 no jumps/steps are performed at all, if 0 a jump is done right after a new target value is reached, =0.1 jumps every 10sec on average etc. `dt_min` and `dt_max` are used to select the transition time from one value to a new target value |
37
+ | **sine :** `"type": "sine" , "amplitude": number, "offset": number, "period": number, "phase": number `| sine function |
38
+ | **function :** `"type": "function", "f" : "function javascript code"` | custom javascript function. The additional operator `$('tagname')` can be used to access the simulated value of other tags |
39
+ | | |
40
+
41
+ Additional noise can be cascaded to any simulation type. The noise can be absolute or percentual:
42
+
43
+ | | |
44
+ | - | - |
45
+ | `"noise": "abs", "amplitude" : number` | absolute noise of given amplitude |
46
+ | `"noise": "%", "amplitude" : number` | percentual noise of given amplitude |
47
+ | | |
48
+
49
+ In addition simulation values can be nullified with a given probability for a given random configurable time range
50
+
51
+ ```json
52
+ { "nullable": { "probability": [0..1], "dt_min" : ms, "dt_max": ms }
53
+
54
+ ```
55
+
56
+ #### Simulating atomic structures
57
+ Atomic structures can be simulated by simulating individual properties using the naming conventions: `struct_name.property_name`.
58
+
59
+ For instance, the following code:
60
+
61
+ ```
62
+ AVAILABLE_TAGS=[{"name":"struct.Tag1","type":"integer"},{"name":"struct.Tag2","type":"integer"}]
63
+ ```
64
+
65
+ will simulate sending both `struct` as a whole, and `struct.Tag1` and `struct.Tag2` as single properties.
66
+
67
+ In particular, the whole simulated structure can be attached to a Corvina structure only if the set of properties matches (same names, case sensitive).
package/package.json ADDED
@@ -0,0 +1,105 @@
1
+ {
2
+ "name": "@corvina/device-client",
3
+ "version": "1.0.10",
4
+ "description": "Corvina NodeJS Device Client",
5
+ "author": "arrigo.zanette@corvina.io",
6
+ "license": "MIT",
7
+ "files": [
8
+ "dist/**/*",
9
+ "*.md"
10
+ ],
11
+ "main": "index.js",
12
+ "exports": {
13
+ ".": "./dist/index.js",
14
+ "./": "./dist/"
15
+ },
16
+ "typesVersions": {
17
+ "*": {
18
+ "*": [
19
+ "./dist/*"
20
+ ]
21
+ }
22
+ },
23
+ "scripts": {
24
+ "start:dev": "tsc -w",
25
+ "build": "nest build",
26
+ "prepare": "yarn run build",
27
+ "format": "prettier --write \"src/**/*.ts\"",
28
+ "lint": "tslint -p tsconfig.json -c tslint.json",
29
+ "test": "jest",
30
+ "test:watch": "jest --watch",
31
+ "test:cov": "jest --coverage",
32
+ "test:e2e": "jest --config ./test/jest-e2e.json"
33
+ },
34
+ "keywords": [
35
+ "corvina",
36
+ "iot"
37
+ ],
38
+ "publishConfig": {
39
+ "access": "public"
40
+ },
41
+ "repository": {
42
+ "type": "git",
43
+ "url": "git+https://github.com/corvina/corvina-device-sdk.git"
44
+ },
45
+ "bugs": {
46
+ "url": "https://github.com/corvina/corvina-device-sdk"
47
+ },
48
+ "dependencies": {
49
+ "@nestjs/common": "^9.0.3",
50
+ "@nestjs/config": "^2.2.0",
51
+ "axios": "^0.27.2",
52
+ "bson": "^4.6.4",
53
+ "d3-ease": "^1.0.5",
54
+ "lodash": "^4.17.21",
55
+ "mqtt": "^4.3.7",
56
+ "mustache": "^4.2.0",
57
+ "passport": "^0.5.2",
58
+ "passport-headerapikey": "^1.2.2",
59
+ "pem": "^1.14.6",
60
+ "pino": "^7.9.2",
61
+ "reflect-metadata": "^0.1.13",
62
+ "rimraf": "^3.0.2",
63
+ "rxjs": "^7.4.0",
64
+ "ws": "^8.5.0",
65
+ "x509.js": "^1.0.0"
66
+ },
67
+ "devDependencies": {
68
+ "@types/express": "^4.17.13",
69
+ "@types/jest": "^27.0.2",
70
+ "@types/node": "^16.11.1",
71
+ "@types/supertest": "^2.0.11",
72
+ "@typescript-eslint/eslint-plugin": "^4.29.2",
73
+ "@typescript-eslint/parser": "^4.29.2",
74
+ "chai": "^4.3.6",
75
+ "eslint": "^7.32.0",
76
+ "eslint-config-prettier": "^8.3.0",
77
+ "eslint-plugin-prettier": "^3.4.1",
78
+ "jest": "^27.3.0",
79
+ "nodemon": "^2.0.15",
80
+ "prettier": "^2.4.1",
81
+ "source-map-support": "^0.5.20",
82
+ "supertest": "^6.1.6",
83
+ "ts-jest": "^27.0.7",
84
+ "ts-node": "^10.3.0",
85
+ "tsconfig-paths": "^3.11.0",
86
+ "typescript": "^4.4.4"
87
+ },
88
+ "jest": {
89
+ "moduleFileExtensions": [
90
+ "js",
91
+ "json",
92
+ "ts"
93
+ ],
94
+ "rootDir": "../",
95
+ "testRegex": ".spec.ts$",
96
+ "transform": {
97
+ "^.+\\.(t|j)s$": "ts-jest"
98
+ },
99
+ "coverageDirectory": "./coverage",
100
+ "testEnvironment": "node"
101
+ },
102
+ "types": "./dist/index.d.ts",
103
+ "homepage": "https://github.com/corvina/corvina-device-sdk#readme",
104
+ "gitHead": "004dabf5881f9e1a2f38fa9cae128b808d2f477d"
105
+ }