iotagent-node-lib 3.2.0 → 3.4.0
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/.github/ISSUE_TEMPLATE/bug_report.yml +134 -0
- package/.github/ISSUE_TEMPLATE/config.yml +16 -0
- package/.github/ISSUE_TEMPLATE/feature_request.yml +55 -0
- package/.github/advanced-issue-labeler.yml +30 -0
- package/.github/workflows/issue-labeler.yml +43 -0
- package/README.md +10 -11
- package/doc/README.md +16 -0
- package/doc/admin.md +565 -0
- package/doc/api.md +32 -85
- package/doc/deprecated.md +16 -10
- package/doc/{architecture.md → devel/architecture.md} +3 -3
- package/doc/{Contribution.md → devel/contribution-guidelines.md} +43 -35
- package/doc/devel/development.md +1879 -0
- package/doc/{northboundinteractions.md → devel/northboundinteractions.md} +18 -33
- package/doc/index.md +3 -5
- package/doc/requirements.txt +1 -1
- package/docker/Mosquitto/Dockerfile +1 -1
- package/docker/Mosquitto/README.md +1 -0
- package/lib/commonConfig.js +0 -5
- package/lib/fiware-iotagent-lib.js +1 -1
- package/lib/jexlTranformsMap.js +2 -1
- package/lib/model/Device.js +0 -1
- package/lib/model/Group.js +0 -1
- package/lib/model/dbConn.js +1 -7
- package/lib/plugins/jexlParser.js +1 -1
- package/lib/request-shim.js +2 -2
- package/lib/services/commands/commandService.js +1 -1
- package/lib/services/common/genericMiddleware.js +1 -1
- package/lib/services/common/iotManagerService.js +0 -1
- package/lib/services/devices/deviceRegistryMemory.js +2 -2
- package/lib/services/devices/deviceRegistryMongoDB.js +32 -19
- package/lib/services/devices/deviceService.js +44 -43
- package/lib/services/devices/devices-NGSI-LD.js +14 -2
- package/lib/services/devices/devices-NGSI-mixed.js +0 -2
- package/lib/services/devices/devices-NGSI-v2.js +23 -104
- package/lib/services/groups/groupService.js +1 -1
- package/lib/services/ngsi/entities-NGSI-LD.js +3 -3
- package/lib/services/ngsi/entities-NGSI-v2.js +28 -19
- package/lib/services/northBound/deviceProvisioningServer.js +14 -8
- package/lib/templates/createDevice.json +0 -4
- package/lib/templates/createDeviceLax.json +0 -4
- package/lib/templates/deviceGroup.json +1 -5
- package/lib/templates/updateDevice.json +4 -0
- package/lib/templates/updateDeviceLax.json +11 -0
- package/mkdocs.yml +6 -11
- package/package.json +3 -3
- package/scripts/legacy_expression_tool/README.md +280 -0
- package/scripts/legacy_expression_tool/legacy_expression_tool.py +423 -0
- package/scripts/legacy_expression_tool/requirements.txt +3 -0
- package/test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice4.json +0 -1
- package/test/unit/general/contextBrokerKeystoneSecurityAccess-test.js +5 -15
- package/test/unit/mongodb/mongodb-registry-test.js +1 -1
- package/test/unit/ngsi-ld/general/contextBrokerOAuthSecurityAccess-test.js +66 -65
- package/test/unit/ngsi-ld/general/https-support-test.js +1 -1
- package/test/unit/ngsi-ld/lazyAndCommands/command-test.js +8 -7
- package/test/unit/ngsi-ld/lazyAndCommands/merge-patch-test.js +31 -30
- package/test/unit/ngsi-ld/lazyAndCommands/polling-commands-test.js +12 -11
- package/test/unit/ngsi-ld/ngsiService/subscriptions-test.js +41 -39
- package/test/unit/ngsi-ld/provisioning/device-provisioning-api_test.js +122 -122
- package/test/unit/ngsi-ld/provisioning/device-registration_test.js +28 -28
- package/test/unit/ngsi-ld/provisioning/device-update-registration_test.js +18 -17
- package/test/unit/ngsi-ld/provisioning/singleConfigurationMode-test.js +7 -7
- package/test/unit/ngsi-ld/provisioning/updateProvisionedDevices-test.js +8 -7
- package/test/unit/ngsi-mixed/provisioning/ngsi-versioning-test.js +33 -37
- package/test/unit/ngsiv2/examples/contextRequests/updateContext.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContext1.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContext3WithStatic.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContext4.json +4 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContext5.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContext6.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin1.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin2.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin3.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin4.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin5.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin6.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin7.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin8.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAliasPlugin9.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast1.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast2.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast3.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast4.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast5.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast6.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextAutocast7.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCommandError.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCommandExpired.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCommandFinish.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCommandStatus.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCommandStatus2.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCompressTimestamp1.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextCompressTimestamp2.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin1.json +2 -12
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin11.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin12.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin13.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin2.json +2 -12
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin29.json +2 -12
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin3.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin30.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin31.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin32.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin33.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin34.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin35.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin36.json +1 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin4.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin40.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin41.json +1 -10
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin5.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin6.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin7.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin8.json +2 -12
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin9.json +2 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionSkip.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityJexlExpressionPlugin1.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin1.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin10.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin11.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin12.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin13.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin14.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin15.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin16.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin17.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin2.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin25.json +2 -6
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin3.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin4.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin5.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin6.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin7.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin8.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin9.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin1.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin2.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin3.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin4.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextProcessTimestamp.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextStaticAttributes.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextStaticAttributesMetadata.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextTimestamp.json +3 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextTimestampFalse.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextTimestampFalseTimeInstant.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextTimestampOverride.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextTimestampOverrideWithoutMilis.json +2 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextTimestampTimezone.json +3 -1
- package/test/unit/ngsiv2/expressions/jexlBasedTransformations-test.js +144 -85
- package/test/unit/ngsiv2/general/contextBrokerOAuthSecurityAccess-test.js +20 -53
- package/test/unit/ngsiv2/general/https-support-test.js +2 -6
- package/test/unit/ngsiv2/lazyAndCommands/command-test.js +4 -10
- package/test/unit/ngsiv2/lazyAndCommands/polling-commands-test.js +8 -24
- package/test/unit/ngsiv2/ngsiService/active-devices-test.js +146 -65
- package/test/unit/ngsiv2/ngsiService/autocast-test.js +14 -21
- package/test/unit/ngsiv2/ngsiService/staticAttributes-test.js +3 -5
- package/test/unit/ngsiv2/ngsiService/subscriptions-test.js +11 -20
- package/test/unit/ngsiv2/plugins/alias-plugin_test.js +20 -30
- package/test/unit/ngsiv2/plugins/compress-timestamp-plugin_test.js +4 -6
- package/test/unit/ngsiv2/plugins/custom-plugin_test.js +1 -2
- package/test/unit/ngsiv2/plugins/multientity-plugin_test.js +3 -5
- package/test/unit/ngsiv2/plugins/timestamp-processing-plugin_test.js +2 -3
- package/test/unit/ngsiv2/provisioning/device-group-api-test.js +2 -3
- package/test/unit/ngsiv2/provisioning/device-provisioning-api_test.js +13 -156
- package/test/unit/ngsiv2/provisioning/device-registration_test.js +9 -13
- package/test/unit/ngsiv2/provisioning/device-update-registration_test.js +4 -10
- package/test/unit/ngsiv2/provisioning/singleConfigurationMode-test.js +0 -11
- package/test/unit/ngsiv2/provisioning/updateProvisionedDevices-test.js +0 -8
- package/test/unit/plugins/capture-provision-inPlugins_test.js +0 -6
- package/.nyc_output/33364de2-1199-4ec2-b33c-cae063ef8cc4.json +0 -1
- package/.nyc_output/processinfo/33364de2-1199-4ec2-b33c-cae063ef8cc4.json +0 -1
- package/.nyc_output/processinfo/index.json +0 -1
- package/doc/config-basic-example.js +0 -20
- package/doc/development.md +0 -285
- package/doc/howto.md +0 -645
- package/doc/installationguide.md +0 -370
- package/doc/operations.md +0 -127
- package/doc/usermanual.md +0 -900
- package/lib/plugins/bidirectionalData.js +0 -356
- package/test/unit/ngsi-ld/plugins/bidirectional-plugin_test.js +0 -697
- package/test/unit/ngsiv2/plugins/bidirectional-plugin_test.js +0 -599
- /package/doc/{NorthboundInteractions.postman_collection → devel/NorthboundInteractions.postman_collection} +0 -0
- /package/doc/{echo.js → devel/echo.js} +0 -0
- /package/doc/{finalResult.js → devel/finalResult.js} +0 -0
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
name: 'Bug report'
|
|
2
|
+
description: Create a report to help us improve
|
|
3
|
+
labels: ['bug']
|
|
4
|
+
|
|
5
|
+
body:
|
|
6
|
+
- type: markdown
|
|
7
|
+
attributes:
|
|
8
|
+
value: Thanks for taking the time to fill out this bug report!
|
|
9
|
+
|
|
10
|
+
- type: input
|
|
11
|
+
id: version
|
|
12
|
+
attributes:
|
|
13
|
+
label: IoT Agent Node Lib version the issue has been seen with
|
|
14
|
+
description: |
|
|
15
|
+
Do not submit bug reports about anything but the two most recently released *major* systemd versions upstream!
|
|
16
|
+
If there have been multiple stable releases for that major version, please consider updating to a recent one before reporting an issue.
|
|
17
|
+
See https://github.com/telefonicaid/iotagent-node-lib/releases/ for the list of most recent releases.
|
|
18
|
+
placeholder: '3.2.0'
|
|
19
|
+
validations:
|
|
20
|
+
required: true
|
|
21
|
+
|
|
22
|
+
- type: dropdown
|
|
23
|
+
id: port
|
|
24
|
+
attributes:
|
|
25
|
+
label: Bound or port used (API interaction)
|
|
26
|
+
description: Select with part of the API is motivating this issue creation.
|
|
27
|
+
multiple: true
|
|
28
|
+
options:
|
|
29
|
+
- 'Southbound (Devices data API)'
|
|
30
|
+
- 'Northbound (Provision API and NGSI Interactions)'
|
|
31
|
+
- 'Other'
|
|
32
|
+
validations:
|
|
33
|
+
required: true
|
|
34
|
+
|
|
35
|
+
- type: dropdown
|
|
36
|
+
id: ngsi-version
|
|
37
|
+
attributes:
|
|
38
|
+
label: NGSI version
|
|
39
|
+
description: Please chose the NGSI version configured
|
|
40
|
+
multiple: true
|
|
41
|
+
options:
|
|
42
|
+
- 'NGSIv2'
|
|
43
|
+
- 'NGSI-LD'
|
|
44
|
+
- 'Mixed Mode'
|
|
45
|
+
- 'Other'
|
|
46
|
+
validations:
|
|
47
|
+
required: true
|
|
48
|
+
|
|
49
|
+
- type: dropdown
|
|
50
|
+
id: containerized
|
|
51
|
+
attributes:
|
|
52
|
+
label: Are you running a container?
|
|
53
|
+
description: In case you are using a container, please select the image type the issue was seen on
|
|
54
|
+
options:
|
|
55
|
+
- 'Yes, I am using a contaner (Docker, Kubernetes...)'
|
|
56
|
+
- 'No, I am running it natively'
|
|
57
|
+
validations:
|
|
58
|
+
required: false
|
|
59
|
+
|
|
60
|
+
- type: dropdown
|
|
61
|
+
id: image-type
|
|
62
|
+
attributes:
|
|
63
|
+
label: Image type
|
|
64
|
+
description: In case you are using a container, please select the image type the issue was seen on
|
|
65
|
+
options:
|
|
66
|
+
- normal
|
|
67
|
+
- pm2
|
|
68
|
+
- distroless
|
|
69
|
+
validations:
|
|
70
|
+
required: false
|
|
71
|
+
|
|
72
|
+
- type: textarea
|
|
73
|
+
id: expected-behaviour
|
|
74
|
+
attributes:
|
|
75
|
+
label: Expected behaviour you didn't see
|
|
76
|
+
validations:
|
|
77
|
+
required: false
|
|
78
|
+
|
|
79
|
+
- type: textarea
|
|
80
|
+
id: unexpected-behaviour
|
|
81
|
+
attributes:
|
|
82
|
+
label: Unexpected behaviour you saw
|
|
83
|
+
validations:
|
|
84
|
+
required: false
|
|
85
|
+
|
|
86
|
+
- type: textarea
|
|
87
|
+
id: steps-to-reproduce
|
|
88
|
+
attributes:
|
|
89
|
+
label: Steps to reproduce the problem
|
|
90
|
+
description: Please fill this field with all the required information and steps to reproduce the issue described above.
|
|
91
|
+
Consider including curl requests if required
|
|
92
|
+
placeholder: |
|
|
93
|
+
```sh
|
|
94
|
+
# Get IoTA version
|
|
95
|
+
`curl -iX GET 'http://localhost:4041/iot/about'`
|
|
96
|
+
```
|
|
97
|
+
validations:
|
|
98
|
+
required: false
|
|
99
|
+
|
|
100
|
+
- type: textarea
|
|
101
|
+
id: config
|
|
102
|
+
attributes:
|
|
103
|
+
label: Configs
|
|
104
|
+
description: |
|
|
105
|
+
Please provide details about your environment vars or config file by copying and pasting the enviroments variables
|
|
106
|
+
or the config.js file.
|
|
107
|
+
value: |
|
|
108
|
+
```yaml
|
|
109
|
+
environment:
|
|
110
|
+
- "IOTA_CB_HOST=orion"
|
|
111
|
+
- "IOTA_CB_PORT=1026"
|
|
112
|
+
- "IOTA_NORTH_PORT=4041"
|
|
113
|
+
- "IOTA_REGISTRY_TYPE=mongodb"
|
|
114
|
+
- "IOTA_MONGO_HOST=mongodb"
|
|
115
|
+
- "IOTA_MONGO_PORT=27017"
|
|
116
|
+
- "IOTA_MONGO_DB=iotagent-json"
|
|
117
|
+
- "IOTA_HTTP_PORT=7896"
|
|
118
|
+
- "IOTA_PROVIDER_URL=http://iot-agent:4041"
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
validations:
|
|
122
|
+
required: false
|
|
123
|
+
|
|
124
|
+
- type: textarea
|
|
125
|
+
id: additional-information
|
|
126
|
+
attributes:
|
|
127
|
+
label: Log output
|
|
128
|
+
description: |
|
|
129
|
+
Please paste the output log here, ideally when generated in debug mode (try setting the `IOTA_LOG_LEVEL=debug` environment variable).
|
|
130
|
+
For very long copy/pasted data consider using a service like https://gist.github.com/. Where copy/paste is not possible, a photo of the screen might do too, but text is always much preferred.
|
|
131
|
+
placeholder: Paste your log here
|
|
132
|
+
render: sh
|
|
133
|
+
validations:
|
|
134
|
+
required: false
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
blank_issues_enabled: true
|
|
2
|
+
contact_links:
|
|
3
|
+
- name: IoT Agent documentation
|
|
4
|
+
url: https://iotagent-node-lib.readthedocs.io/en/latest/
|
|
5
|
+
about: check the documentation before asking help or reporting a bug.
|
|
6
|
+
- name: Community Support
|
|
7
|
+
url: https://stackoverflow.com/questions/ask?tags=iot-agent+fiware
|
|
8
|
+
about: |
|
|
9
|
+
Volunteers from the Open Source FIWARE community monitor the 𝚏𝚒𝚠𝚊𝚛𝚎 tag
|
|
10
|
+
and related tags over on Stack Overflow. For 𝗱𝗲𝘃𝗲𝗹𝗼𝗽𝗺𝗲𝗻𝘁 𝗾𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 𝗼𝗻𝗹𝘆 you can ask questions
|
|
11
|
+
over on Stack Overflow provided you follow their rules and guidance on posting and respond to any feedback given.
|
|
12
|
+
|
|
13
|
+
Stack Overflow is a crowd-sourced question and answer website for professional and enthusiast programmers. It is not affliated with this
|
|
14
|
+
software and 𝗱𝗼𝗲𝘀 𝗻𝗼𝘁 𝗮𝗻𝘀𝘄𝗲𝗿 𝗰𝘂𝘀𝘁𝗼𝗺𝗲𝗿 𝘀𝗲𝗿𝘃𝗶𝗰𝗲 𝗿𝗲𝗹𝗮𝘁𝗲𝗱 𝗾𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀.
|
|
15
|
+
|
|
16
|
+
Do not raise a Stack Overflow question for bug reports or feature requests, stick with opening an issue directly within this repository.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
name: Feature request
|
|
2
|
+
description: Suggest an improvement
|
|
3
|
+
labels: ["Feature Request"]
|
|
4
|
+
|
|
5
|
+
body:
|
|
6
|
+
- type: markdown
|
|
7
|
+
attributes:
|
|
8
|
+
value: Thanks for taking the time to fill out this feature request!
|
|
9
|
+
|
|
10
|
+
- type: dropdown
|
|
11
|
+
id: type
|
|
12
|
+
attributes:
|
|
13
|
+
label: Component
|
|
14
|
+
description: Please chose components related to this feature request.
|
|
15
|
+
multiple: true
|
|
16
|
+
options:
|
|
17
|
+
- 'New feature'
|
|
18
|
+
- 'Feature enhancement'
|
|
19
|
+
- 'Techdeb'
|
|
20
|
+
- 'Other'
|
|
21
|
+
validations:
|
|
22
|
+
required: false
|
|
23
|
+
|
|
24
|
+
- type: textarea
|
|
25
|
+
id: description
|
|
26
|
+
attributes:
|
|
27
|
+
label: Is your feature request related to a problem? Please describe
|
|
28
|
+
description: A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
29
|
+
validations:
|
|
30
|
+
required: false
|
|
31
|
+
|
|
32
|
+
- type: textarea
|
|
33
|
+
id: solution
|
|
34
|
+
attributes:
|
|
35
|
+
label: Describe the solution you'd like
|
|
36
|
+
description: A clear and concise description of what you want to happen.
|
|
37
|
+
validations:
|
|
38
|
+
required: false
|
|
39
|
+
|
|
40
|
+
- type: textarea
|
|
41
|
+
id: alternatives
|
|
42
|
+
attributes:
|
|
43
|
+
label: Describe alternatives you've considered
|
|
44
|
+
description: A clear and concise description of any alternative solutions or features you've considered.
|
|
45
|
+
validations:
|
|
46
|
+
required: false
|
|
47
|
+
|
|
48
|
+
- type: input
|
|
49
|
+
id: version
|
|
50
|
+
attributes:
|
|
51
|
+
label: The systemd version you checked that didn't have the feature you are asking for
|
|
52
|
+
description: If this is not the most recently released upstream version, then please check first if it has that feature already.
|
|
53
|
+
placeholder: '3.2.0'
|
|
54
|
+
validations:
|
|
55
|
+
required: false
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
#
|
|
2
|
+
# This file is used by .github/workflows/issue-labeler.yml
|
|
3
|
+
# Here, you can configure which dropdown fields are used
|
|
4
|
+
# to assing a label (keys) to the issue and the name of the label (name)
|
|
5
|
+
#
|
|
6
|
+
# More info: https://github.com/marketplace/actions/advanced-issue-labeler
|
|
7
|
+
#
|
|
8
|
+
|
|
9
|
+
policy:
|
|
10
|
+
- template: [bug_report.yml]
|
|
11
|
+
section:
|
|
12
|
+
- id: [ngsi-version]
|
|
13
|
+
block-list: ['None', 'Other', 'Mixed Mode']
|
|
14
|
+
label:
|
|
15
|
+
- name: 'NGSIv2'
|
|
16
|
+
keys: ['NGSIv2']
|
|
17
|
+
- name: 'NGSI-LD'
|
|
18
|
+
keys: ['NGSI-LD']
|
|
19
|
+
|
|
20
|
+
- template: [feature_request.yml]
|
|
21
|
+
section:
|
|
22
|
+
- id: [type]
|
|
23
|
+
block-list: ['None', 'Other']
|
|
24
|
+
label:
|
|
25
|
+
- name: 'Feature request'
|
|
26
|
+
keys: ['New feature']
|
|
27
|
+
- name: 'Enhancement'
|
|
28
|
+
keys: ['Feature enhancement']
|
|
29
|
+
- name: 'Techdeb'
|
|
30
|
+
keys: ['Techdeb']
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
#
|
|
2
|
+
# This workflow is used to asign labels to issues created through the templates.
|
|
3
|
+
# There is another file associated that maps a issue label name to each field on the
|
|
4
|
+
# issue template. You can find that file in /.github/advanced-issue-labeler.yml
|
|
5
|
+
#
|
|
6
|
+
# More info: https://github.com/marketplace/actions/advanced-issue-labeler
|
|
7
|
+
#
|
|
8
|
+
|
|
9
|
+
name: Issue labeler
|
|
10
|
+
on:
|
|
11
|
+
issues:
|
|
12
|
+
types: [ opened ]
|
|
13
|
+
|
|
14
|
+
permissions:
|
|
15
|
+
contents: read
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
label-component:
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
|
|
21
|
+
permissions:
|
|
22
|
+
# required for all workflows
|
|
23
|
+
issues: write
|
|
24
|
+
|
|
25
|
+
strategy:
|
|
26
|
+
matrix:
|
|
27
|
+
template: [ bug_report.yml, feature_request.yml ]
|
|
28
|
+
|
|
29
|
+
steps:
|
|
30
|
+
- uses: actions/checkout@v3
|
|
31
|
+
|
|
32
|
+
- name: Parse issue form
|
|
33
|
+
uses: stefanbuck/github-issue-parser@v3
|
|
34
|
+
id: issue-parser
|
|
35
|
+
with:
|
|
36
|
+
template-path: .github/ISSUE_TEMPLATE/${{ matrix.template }}
|
|
37
|
+
|
|
38
|
+
- name: Set labels based on policy
|
|
39
|
+
uses: redhat-plumbers-in-action/advanced-issue-labeler@v2
|
|
40
|
+
with:
|
|
41
|
+
issue-form: ${{ steps.issue-parser.outputs.jsonString }}
|
|
42
|
+
template: ${{ matrix.template }}
|
|
43
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
package/README.md
CHANGED
|
@@ -21,8 +21,7 @@ This project is part of [FIWARE](https://www.fiware.org/). For more information
|
|
|
21
21
|
[IoT Agents](https://github.com/Fiware/catalogue/tree/master/iot-agents).
|
|
22
22
|
|
|
23
23
|
| :books: [Documentation](https://iotagent-node-lib.rtfd.io) | :mortar_board: [Academy](https://fiware-academy.readthedocs.io/en/latest/iot-agents/idas) | :dart: [Roadmap](https://github.com/telefonicaid/iotagent-node-lib/blob/master/doc/roadmap.md) |
|
|
24
|
-
| ---------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
25
|
-
|
|
24
|
+
| ---------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
|
|
26
25
|
|
|
27
26
|
## Index
|
|
28
27
|
|
|
@@ -47,8 +46,6 @@ functions.
|
|
|
47
46
|
communications are left to the library.
|
|
48
47
|
- Standardized OAuth2-based security is available to enable each IoT Agent to connect to several common Identity
|
|
49
48
|
Managers (e.g. Keystone and Keyrock) so that communications can be restricted to trusted components.
|
|
50
|
-
- A series of additional plugins are offered where necessary to allow for expression parsing, attribute aliasing and
|
|
51
|
-
the processing of timestamp metadata.
|
|
52
49
|
|
|
53
50
|
Each individual IoT Agent offers is driven by a `config.js` configuration file contains explicit custom settings based
|
|
54
51
|
on the protocol and payload the IoT Agent is translating. It will also contain some common flags for common
|
|
@@ -76,16 +73,18 @@ const iotagentLib = require('iotagent-node-lib');
|
|
|
76
73
|
```
|
|
77
74
|
|
|
78
75
|
Information about how to configure the Library can be found at the corresponding section of the
|
|
79
|
-
[Installation & Administration Guide](doc/
|
|
76
|
+
[Installation & Administration Guide](doc/admin.md).
|
|
80
77
|
|
|
81
78
|
## Usage
|
|
82
79
|
|
|
83
|
-
This library has no packaging or build processes. The [Getting Started](doc/getting-started.md) is a good place to
|
|
84
|
-
start.
|
|
80
|
+
This library has no packaging or build processes. The [Getting Started](./doc/getting-started.md) is a good place to
|
|
81
|
+
start. You can also review the [API documentation](./doc/api.md) for a full list of the available functions.
|
|
82
|
+
|
|
83
|
+
If you plan to use the library in your own IoT Agent, you should read the [Developer Guide](./doc/devel/development.md).
|
|
84
|
+
You can also review the [Architecture](./doc/devel/architecture.md) documentation and
|
|
85
|
+
[Northbound API](./doc/devel/northbound-api.md).
|
|
85
86
|
|
|
86
|
-
|
|
87
|
-
- Further Advanced topics can be found [here](doc/advanced-topics.md).
|
|
88
|
-
- The following features are listed as [deprecated](doc/deprecated.md).
|
|
87
|
+
The following features are listed as [deprecated](doc/deprecated.md).
|
|
89
88
|
|
|
90
89
|
## API
|
|
91
90
|
|
|
@@ -94,7 +93,7 @@ decommission devices. [API](doc/api.md).
|
|
|
94
93
|
|
|
95
94
|
## Testing
|
|
96
95
|
|
|
97
|
-
Contributions to development can be found [here](doc/development.md) - additional contributions are welcome.
|
|
96
|
+
Contributions to development can be found [here](doc/devel/development.md) - additional contributions are welcome.
|
|
98
97
|
|
|
99
98
|
### Agent Console
|
|
100
99
|
|
package/doc/README.md
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# IoT Agent documentation
|
|
2
|
+
|
|
3
|
+
## User documentation
|
|
4
|
+
|
|
5
|
+
- [Getting started](getting-started.md)
|
|
6
|
+
- [IoT Agent API](api.md)
|
|
7
|
+
- [Installation and administration manual](admin.md)
|
|
8
|
+
- [Deprecated features](deprecated.md)
|
|
9
|
+
- [Roadmap](roadmap.md)
|
|
10
|
+
|
|
11
|
+
## Development documentation
|
|
12
|
+
|
|
13
|
+
- [Development manual](devel/development.md)
|
|
14
|
+
- [Contributing guide](devel/contribution-guidelines.md)
|
|
15
|
+
- [Architecture](devel/architecture.md)
|
|
16
|
+
- [North Port - NGSI Interactions](devel/northboundinteractions.md)
|