Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

...

InterfaceNameTriggerDescriptionTypeEndpoint or TopicSchema
1HealthCheck30 second interval (configurable)NCMP is to perform a health check against each of the DMI PluginsREST

http://<dmiPluginServiceName>/manage/health

This endpoint will be the standard heath check endpoint provided by spring boot actuator. We don't store it anywhere. We just document it for now.


2CMHandle trust level changeA CMHandle managed by DMI Plugin's trust level has changed

data contains {trustLevel: ENUM} 

event id is cmhandle id in kafka header

Kafka

kafka topic:

dmi-device-heartbeat

<cloudEvents-header>

  id : <cmhandleId>

  type : org.onap.cm.events.trustlevel-notification

data : {
      trustlevel : "COMPLETE/NONE"
}

3CMHandle Query API with trustLevel Query ConditionClient Request

CmHandle is to be returned based on the values in above CMHandle Trust Map

REST
  1. http://<host>:<port>/ncmp/v1/ch/id-searches
  2. http://<host>:<port>/v1/ch/searches 

{
  "cmHandleQueryParameters": [
    {
        "conditionName""cmHandleWithTrustLevel",
        "conditionParameters": [ {"trustLevel""COMPLETE"} ]
    }
  ]
}

Managing TrustLevel

...

kafka-key : cmHandleId/deviceId

 Toine Siebelink Kolawole Adebisi-Adeolokun  

language
Code Block
texttitleNCMP to Clients Notifications on Trust Level Changes
linenumberstrue
Notification (Proposed by Kieran)
collapsetrue
id : "random UUID"
source : "NCMPncmp.<cmhandleId>" specversion	: "1.0" type# :// "deviceTrustLevelNotification" dataschemaadding : "org.onap.cps.ncmp.events.trustlevel.DeviceTrustLevelNotification:1.0.0"
correlationid : "deviceId+trustLevel"
"data": {
	"deviceId": "CmHandle1",  // or we can call it cmHandleId as well [mandatory]
	"oldValues": {  // optional
			"trustLevel" : "NONE"
				},
	"newValues" : { // optional
			"trustLevel" : "COMPLETE"
		}
}

 Toine Siebelink Kolawole Adebisi-Adeolokun  

Code Block
titleNCMP to Clients Notification (Proposed by Kieran)
collapsetrue
id : "random UUID"
source : "ncmp.<cmhandleId>"   # //  adding cmhandle to be a little more specific on the origin of the change event.  If the event was triggered by DMI plugin then use the “source” supplied from that even if available.  If not available then set as <dmi-plugin-name>.<cmhandleId>
specversion : "1.0"
type : "trustLevelChangeEvent"
dataschema : cmhandle to be a little more specific on the origin of the change event.  If the event was triggered by DMI plugin then use the “source” supplied from that even if available.  If not available then set as <dmi-plugin-name>.<cmhandleId>
specversion : "1.0"
type : "trustLevelChangeEvent"
dataschema : "org.onap.cps.ncmp.events.cmhandle.TrustLevelChangeEvent:1.0.0"
correlationid : "<cmhandleId>
"data": {
   "attributeValueChange": [  # Mandatory
        { 
         "attributeName"     : " trustLevel",
         "oldAttributeValue" : "NONE",
         "newAttributeValue" : "COMPLETE"
        }
    ]
}


#attribute-nametypevalue

idheaderrandom UUID

sourceheaderncmp.<cmhandle-id>

specversionheader"1.0"

typeheader"trustLevelChangeEvent"

dataschemaheader"org.onap.cps.ncmp.events.cmhandle.TrustLevelChangeEvent:1.0.0"

...


correlationidext-header"<cmhandle-id>"

datapayload

Compliant with the below.

Code Block
titleattributeValueChange
collapsetrue
"attributeValueChange": {
         "type": "array",
            "items": {
              "

...

$ref": "#/definitions/attributeValueChange-Type"
            }

...

 

...

       

...

},
"attributeValueChange-Type": {
      "type": "object",
        "properties": {
          "attributeName": {
            "

...

type"

...

: "

...

string"
          },
          "oldAttributeValue": {},
          "newAttributeValue": {}
        }
 

...

   }