3.1 通讯交互流程
3.1.1 SOAP报文 空报文
POST / HTTP/1.1
Host: 127.0.0.1:8659 Content-Type: text/xml Connection: keep-alive Content-Length: 0
非空报文
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: 123 Connection: Keep-Alive xmlns:SOAP-ENC=\xmlns:xsi=\xmlns:xsd=\xmlns:cwmp=\ xmlns:SOAP-ENV=\ 3.1.2 CPE主动上报事件流程 1)Inform协议报文 2)Inform参数说明 参数 DeviceId Manufacturer OUI ProductClass SerialNumber Event 说明 唯一标识设备的结构,包含以下4个属性 设备制造商标识 默认取值:00FD80 设备类型号 设备的唯一标识 说明引发事件的一个或多个事件,包EventStruct EventCode CommandKey MaxEnvlopes CurrentTime RetryCount ParamterList 含n个EventStruct 包含下面2个属性 取值范围如下: 0 BOOTSTARP 1 BOOT 8 DIAGNOSTICS COMPLETE 6 CONNECTION REQUEST X *** M *** 取值为空 接受的一个HTTP回复中的最大SOAP信包数目。 为0则表式在次信包的数目上并没有特别的限定要求 当前日期和时间(UTC) 在成功调用Inform方法前,已经进行的调用尝试次数。 另外,RetryCount值会在失败时+1。 失败包括:设备登录失败(收到错误应答404或服务器无响应)。 在发送Inform报文,并且接收到完成应答”200 OK”之后,RetryCount置零。 参数列表,包含n个ParameterValueStruct 根据不同的EventCode,有不同的值 3.1.3 OMC主动请求流程 1)UDP协议报文 ACS-?CPE 请求 GET / HTTP/1.1 Host: 192.168.99.167:3074 Content-Type: text/xml; charset=utf-8 Content-Length: 0 Connection: Keep-Alive CPE-?ACS 响应 200 OK CPE心跳 POST / UDP/1.0 I:BC-30-5B-B8-D7-67-10000 T:1999-01-01 08:00:00 3.2 会话流程 3.2.1 CPE主动上报会话 1)注册boot OMCInform(1 BOOT)InformResponseEmpty PostGetParameterValuesGetParameterValuesResponseSetParameterValuesSetParameterValuesResponse200 OKCPE 协议报文 参数说明 参数 Inform参数 EventCode ParameterList Device.DeviceSummary Device.DeviceInfo.HardwareVersion Device.DeviceInfo.SoftwareVersion 说明 1 BOOT 设备硬件版本 设备软件版本 IAD:不变的版本 IPPBX:真实设备软件版本 Device.ManagementServer.ConnectionRequestURL 设备监听的http url Device.ManagementServer.ParameterKey Device.LAN.IPAddress 设备IP地址 Device.DeviceInfo.OfficialVersion IPPBX:不变的版本 参数 GetParameterValues参数 ParameterList Device.DeviceInfo. X_00D0F8_OfficialVersion Response 参数 SetParameterValues参数 ParamterList 说明 参数列表,包含n个参数名称 IAD:真实设备软件版本 说明 n个参数列表,包含ParameterValueStruct Device.ManagementServer.STUNServerAddress 心跳IP Device.ManagementServer.STUNServerPort 心跳端口 Device.ManagementServer.STUNEnable 心跳是否允许 Device.ManagementServer.PeriodicInformEnable 心跳周期 3.2.2 OMC主动请求会话 参数 Inform参数 EventCode 1)获取设备参数值GetParameterValues 说明 6 CONNECTION REQUEST OMCCPEInform(6 CONNECTION REQUEST)InformResponseEmpty PostGetParameterValuesGetParameterValuesResponse200 OK 协议报文 Response SOAP-ENC:arrayType=\ 参数说明 参数 GetParameterValues参数 ParameterNames ParameterValueStruct 说明 参数列表,包含n个参数名称 一个名值对结构 2)设置设备参数值SetParameterValues OMCCPEInform(6 CONNECTION REQUEST)InformResponseEmpty PostSetParameterValuesSetParameterValuesResponse200 OK 协议报文 Response 参数说明 参数 SetParameterValues参数 ParameterValueStruct Status 说明 一个名值对结构 结果状态 0:成功 其他:失败 3)下载 Download(用作配置加载) OMCCPEInform(6 CONNECTION REQUEST)InformResponseEmpty PostDownloadDownloadResponse200 OKFTP 下载数据Inform(M Download)InformResponseTransferCompleteTransferCompleteResponse 协议报文 参数说明 参数 CommandKey FileType URL Username Password FileSize TargetFileName DelaySeconds SuccessURL FailureURL Response 说明 用于指订特定的下载字符串 值为一个整数,紧接着是一个空格,再然后是文件类型说明。 当前FileType参数只定义了如下值: \\\下列格式用于定义唯一的厂商自定义文件类型: \identifier>\其中, 4)上传 Upload(用作配置备份) OMCCPEInform(6 CONNECTION REQUEST)InformResponseEmpty PostUploadUploadResponse200 OKFTP 上传数据Inform(M Upload)InformResponseTransferCompleteTransferCompleteResponse 协议报文 Response 参数说明 参数 说明 CommandKey FileType URL Username Password DelaySeconds 用于指订特定的下载字符串 值为一个整数,紧接着是一个空格,再然后是文件类型说明。 当前FileType参数只定义了如下值: \\\下列格式用于定义唯一的厂商自定义文件类型: \identifier>\其中, 5)重启 Reboot 协议报文 参数说明 参数 CommandKey 说明 设备重启后用于上报 6)恢复出厂FactoryReset OMCCPEInform(6 CONNECTION REQUEST)InformResponseEmpty PostFactoryResetFactoryResetResponse200 OK 协议报文 7)OMC端获取CPE端的可被访问参数 GetParameterNames OMCCPEInform(6 CONNECTION REQUEST)InformResponseEmpty PostGetParameterNamesGetParameterNamesResponse200 OK 协议报文 Response SOAP-ENV:arrayType=\ 参数说明 参数 ParameterPath 说明 一个字符串,其中包含完整的参数名或着只有部分的路径名。若为中间路径名则需要在层次的最后节点名后面NextLevel 加上“.”用作结尾。 完整路径: InternetGatewayDevice.DeviceSummary 部分路径: InternetGatewayDevice. 1)value为true: CPE返回的消息包括所有ParameterPath参数中指定字符串相关参数的完全路径名以及它的子节点的路径名。 2)value为false: CPE返回的消息包括所有ParameterPath参数中指定字符串开始参数的完全路径名。 说明 1)NextLevel为false: 包括所有ParameterPath参数中指定字符串开始参数的完全路径名。 2)NextLevel是true: 包括所有ParameterPath参数中指定字符串参数的完全路径名以及它的子节点的路径名。 Response 参数 ParameterList { Name;//参数名称 Writable;//是否可写 } 3.3 扩展 3.3.1 信令跟踪Xtrace 1)开启流程见3.2.2 (2) 设置设备参数值SetParameterValues 2)交互流程如下 OMCCPEStart Trace MessageTcp ConnectionXtrace messageStop Trace MessageTcp Connection break 协议报文 1)开启 2)返回(客户端确认) key:xx\\r\\n sn:xxx\\r\\n\\r\\n 3)交互 INFO XTRACE/1.0\\r\\n Proto: SIP\\r\\n Transport: Content-Length: 120\\r\\n Content-Type: application/xtrace\\r\\n Content-Transfer-Encoding: base64\\r\\n \\r\\n xxx(base64编码) \\r\\n 注:消息包编码方式为MIME编码 Proto:协议类型 Key:当前信令任务唯一标识 Mac:设备Mac地址 Transport : tx:发送方向 rx:接收方向 addr:目的地址 local:源地址 示例: Transport: tx;addr=192.168.33.100:5060,local=192.168.33.1:5060 Date:报文发送/接收时间 Content-Length的值=Length(内容+\\r\\n) 另:消息采用base64编码; 3)结束 节点名称 节点含义 Device.ManagementServer.Trace. Enable 是否开启信令跟踪任务(True则开启,False则为关闭) Key 当前信令跟踪任务的唯一标识,上报信令消息时需要上报该信息。 3.3.2 CLI功能(TELNET) 1)开启流程见3.2.2 (2) 设置设备参数值SetParameterValues 2)交互流程如下 OMCCPEStart CLI MessageTcp ConnectionCLI messageStop CLI MessageTcp Connection break 协议报文 1)开启 节点名称 节点含义 Device.DeviceInfo.SystemManage. Enable 是否开启CLI信息上报功能(True则开启,False则为关闭) Key 当前CLI信息上报的唯一标识,上报消息时需要上报该信息。 RemotePort 网管TCP监听端口 2)返回(客户端确认) key:xx\\r\\n sn:xxx\\r\\n\\r\\n 3)交互(TCP信息交互采用异步,CPE与命令提示符交互同样采用异步) 命令下发使用原有连接 报文内容:用户输入数据加上\\r\\n 报文以\\0结束 输出中颜色的格式使用printf标准色输出: 例如,报文头包含\输出为黄色 文本编码方式使用UTF-8 3)结束 节点名称 节点含义 Device.DeviceInfo.SystemManage. Enable 是否开启CLI信息上报功能 1)True:开启 2)Fals:关闭 Key 当前CLI信息上报的唯一标识,上报消息时需要上报该信息。