Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ See issue collection [MWDI v2.0.1_spec](https://github.com/openBackhaul/MicroWav
MWDI v2.0.1 also adds the following changes to notification handling diverging from v2.0.0:
- (1) Controller notifications shall not be pulled from Kafka, but again pushed to MWDI by NotificationProxy
- (2) Device and alarm notifications are to be pulled from Kafka from two separate topics
- (3) Pulling of notifications from Kafka and processing them can be turned on/off via a profileInstance

*Details*:
- for (1) the following changes were applied:
Expand Down
16 changes: 16 additions & 0 deletions spec/MicroWaveDeviceInventory+config.json
Original file line number Diff line number Diff line change
Expand Up @@ -470,6 +470,22 @@
}
}
},
{
"uuid": "mwdi-2-0-1-string-p-005",
"profile-name": "string-profile-1-0:PROFILE_NAME_TYPE_STRING_PROFILE",
"string-profile-1-0:string-profile-pac": {
"string-profile-capability": {
"string-name": "kafkaNotificationReceiptAndProcessingSwitch",
"enumeration": [
"on",
"off"
]
},
"string-profile-configuration": {
"string-value": "on"
}
}
},
{
"uuid": "mwdi-2-0-1-mapping-p-000",
"profile-name": "regex-pattern-mapping-profile-1-0:PROFILE_NAME_TYPE_REGEX_PATTERN_MAPPING_PROFILE",
Expand Down
11 changes: 11 additions & 0 deletions spec/MicroWaveDeviceInventory+profileInstances.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,17 @@ profile-instances:
configuration:
string-value: 'delete-on-disconnect'

- profile-name: 'StringProfile'
uuid: 'mwdi-2-0-1-string-p-005'
capability:
string-name: 'kafkaNotificationReceiptAndProcessingSwitch'
enumeration:
- 'on'
- 'off'
#description: 'This profileInstance allows toggeling the receipt/fetching of notifications from Kafka and processing them on/off. Default is on.'
configuration:
string-value: 'on'

- profile-name: 'RegexPatternMappingProfile'
uuid: 'mwdi-2-0-1-mapping-p-000'
capability:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,8 @@ Depending on the respective notification the cached ControlConstruct is modified

Also note that in the past MWDI had a subscription to NotificationProxy, which did push the notifications to MWDI. For this, NP called the *regard*-services each time a new notification was pushed, thereby creating a new http session every time. With MWDI 2.0.0 this approach has been changed. MWDI pulls the messages from Kafka and processes the notifications then directly. For this, MWDI executes the functionality from *regard*-services internally (i.e. without opening a new http-session), which is why the *regard*-services along with their related forwardings are kept in the specification, but marked as deprecated.

Polling notifications from Kafka can be switched on/off via profileInstance *kafkaNotificationReceiptAndProcessingSwitch*. If it is turned *off*, no notifications shall be fetched and processed until it is changed back to *on* (default).

**User-initiated updates of ControlConstruct parts**
Certain parts of the ControlConstruct can be updated upon “user” demand. I.e. if another application calls a *live* path for e.g. the air interface capabilities, they are retrieved from the device and then the air interface capabilities inside the cached ControlConstruct are updated with the newly retrieved information. The other parts of the ControlConstruct are not updated by this.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,13 @@ end note
mwdi -> kafkaAlarm: {topicName, brokerId, groupId, clientId} (apiKeyAuth)

== cycically poll new notifications and process them ==
note over mwdi #LightPink
Only poll deviceChangeNotifications and deviceAlarmNotifications
while profileInstance
<i>kafkaNotificationReceiptAndProcessingSwitch</i> == "on",
when set to "off" no polling to be executed
end note

note over mwdi
<u>deviceChangeNotificationPolling</u>
Continuously poll all new device change notifications from Kafka.
Expand Down
Binary file modified spec/diagrams/01x_NotificationPollingFromKafkaAndProcessing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading