网络资源变更消息
介绍订阅和取消订阅网络资源变更通知。
订阅网络资源变更通知
接口功能
订阅网络资源变更通知接口。
URI路径
/rest/openapi/notification/network/nedevice
访问方法
PUT
参数说明
参数名 |
必选/可选 |
参数位置 |
参数类型 |
参数说明 |
---|---|---|---|---|
openid |
必选 |
请求头参数列表 |
String |
会话标识,用于Open API的鉴权。 说明:
该参数由第三方调用安全管理登录接口获取openid。 |
systemID |
必选 |
请求实体参数列表 |
String |
第三方系统标识。 说明:
可为IP地址,1~64个字符,字符集合为英文半角:0-9a-zA-Z@_-(),.^$~`! |
openID |
必选 |
请求实体参数列表 |
String |
网管主动连接第三方系统的认证凭证,由第三方系统分配和利用此字符串认证。 说明:
1~1024个字符,字符集同 systemID。 |
url |
必选 |
请求实体参数列表 |
String |
网管以 POST 方式向该 URL发送通知消息。 说明:
例如 http://10.10.10.10:8080/device。需要通知消息订阅者确保URL的正确性,IP地址为OpenAPI白名单列表中地址。长度1~1024,字符串符合HTTP URL编码规范。 |
dataType |
可选 |
请求实体参数列表 |
String |
通知报文的 data 字段类型。 说明:
目前仅支持“JSON”,缺省为“JSON”。 |
desc |
可选 |
请求实体参数列表 |
String |
第三方系统描述。 说明:
缺省为null 不设置。如设置长度限制0~1024字符,字符集合不限制。 |
返回结果
字段名 |
类型 |
说明 |
---|---|---|
code |
int |
操作返回码。可以是如下值之一:
|
data |
List |
此处为null |
description |
String |
接口调用结果的描述信息。 |
注意事项
无。
取消订阅网络资源变更通知
接口功能
取消订阅网络资源变更通知的接口。
URI路径
/rest/openapi/notification/network/nedevice
访问方法
DELETE
参数说明
参数名 |
必选/可选 |
参数位置 |
参数类型 |
参数说明 |
---|---|---|---|---|
openid |
必选 |
请求头参数列表 |
String |
会话标识,用于Open API的鉴权。 说明:
该参数由第三方调用安全管理登录接口获取openid。 |
systemID |
必选 |
参数列表 |
String |
第三方系统标识(可为IP地址) |
desc |
可选 |
参数列表 |
String |
第三方系统描述 |
返回结果
字段名 |
类型 |
说明 |
---|---|---|
code |
int |
操作返回码。可以是如下值之一:
|
data |
List |
此处为null |
description |
String |
接口调用结果的描述信息。 |
注意事项
无。
网络资源变更通知的数据结构
消息数据
字段名 |
类型 |
说明 |
---|---|---|
resourceURI |
String |
资源类型 URI,与订阅消息的URI定义一致,该变更通知固定为“/rest/openapi/notification/network/nedevice”字符串。 |
msgType |
int |
消息类型。取值范围:
|
data |
List<NeDe tailInfoExt> |
业务数据,一个通知消息仅携带一个资源实例的变更 |
description |
String |
描述信息 |
timestamp |
String |
事件发生的时间,eSight服务器所在时区的协调时间: 格式:yyyy-mm-dd hh:MM:ss |
NeDetailInfoExt包含以下字段:
字段名 |
类型 |
说明 |
---|---|---|
resChangedType |
String |
网络设备资源变更类型
|
nedn |
String |
设备DN |
neid |
String |
设备ID |
aliasname |
String |
设备别名 |
nename |
String |
设备名称 |
necategory |
String |
设备种类(类似路由器、交换机) |
netypeinfo |
String |
设备类型 |
nevendorname |
String |
设备厂商信息(设备厂商ID) |
neip |
String |
设备IP地址(通过,分隔) |
nemac |
String |
设备MAC地址 |
version |
String |
软件版本 |
nepatchversion |
String |
补丁版本 |
nesysoid |
String |
设备sysoid |
nestate |
String |
设备状态。可以是如下值之一:
|
lastpolltime |
String |
上次同步时间: eSight服务器本地时间。 格式:YYYY-MM-DD hh:mm:ss YYYY:年 MM:月 DD:日 hh:小时 mm:分钟 ss:秒 |
createtime |
String |
设备创建时间: eSight服务器本地时间。 格式:YYYY-MM-DD hh:mm:ss YYYY:年 MM:月 DD:日 hh:小时 mm:分钟 ss:秒 |
timezoneid |
String |
设备时区 |
neiptypeinfo |
String |
ip地址类型 |
neIP2number |
String |
ip地址转换成后的数值 |
subnet |
String |
所属子网名称默认'/'分割 |
neGroupName |
String |
所属分组名称 |
neosversion |
String |
软件版本 |
necontact |
String |
设备联系人 |
neposition |
String |
设备位置 |
memo |
String |
设备备注 |
maintainunit |
String |
维保单位 |
putintoactiontime |
String |
投入使用时间 eSight服务器本地时间。 格式:YYYY-MM-DD YYYY:年 MM:月 DD:日 |
usefullife |
String |
维保到期时间: eSight服务器本地时间。 格式:YYYY-MM-DD YYYY:年 MM:月 DD:日 |
neruntime |
String |
设备启动时间: eSight服务器本地时间。 格式:YYYY-MM-DD hh:mm:ss YYYY:年 MM:月 DD:日 hh:小时 mm:分钟 ss:秒 |
nedescribe |
String |
设备描述 |
assetManager |
String |
资产管理人 |
assetNumber |
String |
资产编号 |
assetDate |
String |
购买日期 eSight服务器本地时间。 格式:YYYY-MM-DD YYYY:年 MM:月 DD:日 |
encryption |
String |
加密算法,对整个发送的数据进行加密,只支持AES128 |
snmpVersion |
int |
snmp版本,可能为以下值:
|
snmpPort |
int |
snmp端口号 |
snmpTimeout |
int |
超时时间 单位:秒 |
snmpRetries |
int |
重试次数 |
snmpV1V2Param |
SnmpV1V2Param |
snmp V1 、V2参数 |
snmpV3Param |
SnmpV3Param |
snmp V3参数 |
snmpV1V2Param包含以下字段:
字段名 |
类型 |
说明 |
---|---|---|
readCommunity |
String |
读团体字 |
writeCommunity |
String |
写团体字 |
snmpV3Param包含以下字段:
字段名 |
类型 |
说明 |
---|---|---|
userName |
String |
用户名(安全名) |
authenticateMode |
String |
认证协议,可能为以下值:
|
authKey |
String |
认证密钥 |
privacyMode |
String |
加密协议,可能为以下值:
|
privacyKey |
String |
加密密钥 |
通知示例
消息通知以POST方式提交,所有通知数据都保存在HTTP报文Body中。假设第三方系统WebService提供javax.servlet.http.HttpServletRequest的实现request实例(其他语言也有类似库实现),可如下获取消息数据:
调用方法 |
取得的值 |
---|---|
request.getParameter("resourceURI") |
"/rest/openapi/notification/network/nedevice" |
request.getParameter("msgType") |
3 |
request.getParameter("data") |
"[{ \"putintoactiontime\": \"null\", \"netypeinfo": \"S5700-28C-EI\", \"snmpPort\": 161, \"timezoneid\": \"PRC\", \"memo\": \"null\", \"assetNumber\": \"null\", \"nestate\": \"2\", \"resChangedType\": \"network.nedevice.change\", \"necontact\": \"null\", \"nename\": \"auto_resource_205\", \"version\": \"S5700-28C-EIV100R006C00\", \"snmpV1V2Param\": { \"readCommunity\": \"public\", \"writeCommunity\": \"private\" }, \"createtime\": \"1433224048349\", \"neip\": \"10.137.61.205\", \"subnet\": \"/\", \"usefullife\": \"null\", \"nevendorname\": \"Huawei\", \"encryption\": \"AES128\", \"nedn\": \"NE=34603119\", \"necategory\": \"ne.category.switch\", \"maintainunit\": \"null\", \"nesysoid\": \"1.3.6.1.4.1.2011.2.23.140\", \"neosversion\": \"VRP5.70 V100R006C00SPC300\", \"neruntime\": \"1427536914073\", \"snmpVersion\": 1, \"nedescribe\": \"S5700-28C-EI Huawei Versatile Routing Platform Software VRP (R) software,Version 5.70 (S5700 V100R006C00SPC300) Copyright (C) 2003-2011 Huawei Technologies Co., Ltd.\", \"snmpV3Param\": \"null\", \"neid\": \"null\", \"lastpolltime\": \"1433224065552\", \"snmpTimeout\": 4, \"assetManager\": \"null\", \"assetDate\": \"null\", \"nemac\": \"28-6E-D4-EE-F8-74\", \"neposition\": \"Shenzhen China11\", \"nepatchversion\": \"null\", \"neiptypeinfo\": \"0\", \"neGroupName\": \"交换机\", \"aliasname\": \"auto_resource_205!\", \"neIP2number\": \"176766413\", \"snmpRetries\": 3 }]" |
request.getParameter("description") |
"modify device" |
request.getParameter("timestamp") |
"2015-06-03 16:29:31" |
返回值为“null”或-1时,表示属性实际值为空。