ACS 方法(翻译 TR069 A.3.3)

A.3.3 

 ACS支持在这个章节定义的方法,只有CPE 才能调用这些方法

A.3.3.1 Inform

无论会话是否建立,CPE必须调用Inform方法来初始化一个传输序列(交流)。这种方法的调用论据在table37中定义,回应的论据在table38中定义。


table37

1,DeviceId  类型为DeviceldStruct,可以唯一标识CPE的结构体,在table39中定义

2,Event  类型为EventStruct[64] , 一个结构体数组,表明这些事件引起了会话建立。如果一个或是多个原因存在,CPE必须列出所有原因。在这个数组的顺序上ACS不能起任何作用。如果CPE需要在一个Inform中传递超过64个事件,它必须丢弃掉旧的“M”事件,防止超过数组数量的最大值。如果由于上一个会话没有成功终止而建立的会话,这个事件组不能包括已经发送的事件,如果所有的事件都发出去了,这个事件组必须为空。当一个新事件在先前会话重试失败时产生,新的事件必须要被包括在下一个重试会话的事件组。

3,MaxEnvelopes  类型unsignedInt, 这个值必须设置为1,因为这个版本只能支持在一个信息中含有一个envelope,在接收的信息中这个值可以忽略。

4,CurrentTime 类型为dateTime, CPE方的当前日期和事件,这个事件必须被本地的time zone代替,并且包括与UTC的偏移量。

5,RetryCount  类型为unsignedInt   某个会话此前重试的次数,如果先前的会话使成功完成的,这个值必须为0,

6,ParameterList 类型为ParameterValueStruct[],  成对出现的参数与其值组成的结构体数组,这些参数有以下几种情况:1)有些参数被ACS设置了Notification属性,不管是Active 或是Passive,从上次发送成功的通知Inform后,如果这些参数的值改变了且这些改变不是由于ACS引起的;2)有些参数和数据模型相关,需要强制性主动通知,如果这些参数改变且由于ACS改变的;3)与数据模型相关的参数需要在每一个Inform包中出现。  从上次成功发送Inform通知,如果一个参数改变了多次,这个参数必须用最新的值包含在参数列表中,在这种情况下,尽管该参数会变为原来的值也需要加在参数列表中。 无论什么时候CPE重启,或者是ACS的URL改变,CPE会在此时清除参数列表,这个参数列表是由于参数值发生变化而即将放在通知里被发送出去,但是,CPE必须保持所有参数的通知属性的值。 如果CPE清除了因为参数变化而将要发送的参数记录,它必须同时丢弃掉“4 VALUE CHANGE”事件。如果在参数列表中的至少有一个参数的值发生变化且这种变化不是由ACS引起的,那么在Inform中必须包含“4 VALUE CHANGE”事件。 如果Inform中包含“4 VALUE CHANGE”事件,那么参数列表中的参数必须满足以上三种标准的其中一种。  如果Inform中不包含“4 VALUE CHANGE”,CPE决定参数列表的内容。  注意,如果Inform中含有“8 DIAGNOSTICS COMPLETE”事件,包中不需要含有与诊断相关的结果参数。如上所述,如果“4 VALUE CHANGE”也包含在Inform中,参数列表的所有参数必须满足以上三个条件中的一个。



table38--InformResponse 依据

MaxEnvelopes  类型为unsignedInt  ,这个值必须被设置为1,因为此版本只是支持在一个msg里含有一个单独的envelope,并且在接收的信息中该值不被考虑。


table39---DeviceldStruct 定义

1,Manufacturer  类型为string(64), 设备的制造商,这个值必须与参数DeviceInfo.Manufacturer的值相同。

2,OUI   类型为string(6) ,设备制造商的唯一标识符,用所有大写字母和一些前置零表示出来的十六进制的值来代表。这个值必须与参数DeviceInfo.ManufacturerOUI的值相同。

3,ProductClass   类型为string(64), 适用于产品类别标识符的序列号,也就是说,对于给定的生产制造商,这个参数用来区分产品或者是产品类型,这个序列参数使唯一的。这个是必须与DeviceInfo.ProductClassParameter.相同。在设备的整个寿命过程中,这个值必须保持固定,包括FW的升级。任何改变都说明这是一个新的设备,需要发送一个BOOTSTARP Inform。

4,SerialNumber   类型为string(64), 对于给定的产品制造商和产品类别,唯一的设备标识符。这个值必须与DeviceInfo.SerialNumberParameter相同。在设备的整个寿命过程中,这个值必须保持固定,包括FW的升级。任何改变都说明这是一个新的设备,需要发送一个BOOTSTARP Inform。



table40----EventStruct definiton

1,EventCode    类型为string(64)

2,CommandKey    类型为string(32)   如果事件列表记录的事件代码与特定的CommandKey有关,这个元素必须包含CommandKey的值。




按照标准,ACS在收到不含有“0 BOOTSTRAP”的Inform之前没有收到含有“0 BOOTSTRAP”的Inform, 在这种情况下ACS会回复8003(无效的论据)


A.3.3.2 传输完成


这个方法通知ACS文件传输的完成(无论成功与否)。文件的传输是由调用Download,ScheduleDownload或者是Upload方法引起的。当通过调用CancelTransfer方法成功取消文件传输时,该方法不必被调用。

这段只是适用于通过Download或者是Upload方法引起的文件传输, 它不适用于ScheduleDownload,ScheduleDownload不支持在同一个会话中下载。当相关下载或上传回应表示传输没有完成时传输完成方法必须被调用。在这种情况下,它会在由传输启动的同一个会话中调用或者是在后续的会话中被调用。



你可能感兴趣的:(TR069)