<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><span></span></div><div><div>Because genie is going to keep running the script (as long as the precondition is met) until there are no more changes.</div><div><br></div><div>This block is unnecessary, as those values are sent in every inform by the device:</div><div><blockquote type="cite"><div dir="ltr"><div><font color="#000000"><span style="background-color: rgba(255, 255, 255, 0);">declare("InternetGatewayDevice.DeviceInfo.SerialNumber", {value: 1});</span></font></div><div><font color="#000000"><span style="background-color: rgba(255, 255, 255, 0);">declare("InternetGatewayDevice.DeviceInfo.ProductClass", {value: 1});</span></font></div><div><font color="#000000"><span style="background-color: rgba(255, 255, 255, 0);">declare("InternetGatewayDevice.DeviceInfo.ManufacturerOUI", {value: 1});</span></font></div><div><font color="#000000"><span style="background-color: rgba(255, 255, 255, 0);">declare("InternetGatewayDevice.DeviceInfo.Manufacturer", {value: 1});</span></font></div></div></blockquote></div><div><br></div><div>In your case, <span style="background-color: rgba(255, 255, 255, 0);">declare("Device.*", {value: now}); refreshes the entire model (the change in this case). Take that part out and only refresh the few specific parameters you actually care about and the script should only execute once.</span></div><div><br><div>-dan</div></div><div><br>On May 5, 2017, at 12:17 AM, Miguel Ángel Sánchez Moragues <<a href="mailto:sanchez.moragues@gmail.com">sanchez.moragues@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr">Hi,<div><br></div><div>I have the following script which is execute every "2 PERIODIC" event:</div><div><br></div><div><div>let now = Date.now();</div><div>let serialNumber = declare("DeviceID.SerialNumber", {value: 1});</div><div><br></div><div>log('start refresh2 script SN=' + serialNumber.value[0]);</div><div><br></div><div>declare("InternetGatewayDevice.DeviceInfo.SerialNumber", {value: 1});</div><div>declare("InternetGatewayDevice.DeviceInfo.ProductClass", {value: 1});</div><div>declare("InternetGatewayDevice.DeviceInfo.ManufacturerOUI", {value: 1});</div><div>declare("InternetGatewayDevice.DeviceInfo.Manufacturer", {value: 1});</div><div><br></div><div>declare("Device.*", {value: now});</div><div><br></div><div>log('end refresh2 script SN=' + serialNumber.value[0]);</div></div><div><br></div><div><br></div><div>In the log, I see the first time after the device was new registered, the script was executed two times:</div><div><br></div><div><div>May  5 09:56:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:56:59.204Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Inform; cpeRequestId="846930886" informEvent="2 PERIODIC" informRetryCount=0</div><div>May  5 09:56:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:56:59.306Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: start refresh2 script SN=xyz</div><div>May  5 09:56:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:56:59.310Z [INFO] 192.168.1.10 D837BE-ONU-xyz: ACS request; acsRequestId="15bd79ca5b7100" acsRequestName="GetParameterValues"</div><div>May  5 09:56:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:56:59.378Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: end refresh2 script SN=xyz</div><div>May  5 09:56:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:56:59.383Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: start refresh2 script SN=xyz</div><div>May  5 09:56:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:56:59.385Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: end refresh2 script SN=xyz</div><div><br></div><div>May  5 09:58:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:58:59.276Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Inform; cpeRequestId="1681692777" informEvent="2 PERIODIC" informRetryCount=0</div><div>May  5 09:58:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:58:59.329Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: start refresh2 script SN=xyz</div><div>May  5 09:58:59 acs2 genieacs-cwmp[887]: 2017-05-05T07:58:59.332Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: end refresh2 script SN=xyz</div><div><br></div><div>May  5 10:00:59 acs2 genieacs-cwmp[887]: 2017-05-05T08:00:59.374Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Inform; cpeRequestId="1714636915" informEvent="2 PERIODIC" informRetryCount=0</div><div>May  5 10:00:59 acs2 genieacs-cwmp[887]: 2017-05-05T08:00:59.425Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: start refresh2 script SN=xyz</div><div>May  5 10:00:59 acs2 genieacs-cwmp[887]: 2017-05-05T08:00:59.430Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: end refresh2 script SN=xyz</div><div><br></div><div>May  5 10:02:59 acs2 genieacs-cwmp[887]: 2017-05-05T08:02:59.392Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Inform; cpeRequestId="1957747793" informEvent="2 PERIODIC" informRetryCount=0</div><div>May  5 10:02:59 acs2 genieacs-cwmp[887]: 2017-05-05T08:02:59.460Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: start refresh2 script SN=xyz</div><div>May  5 10:02:59 acs2 genieacs-cwmp[887]: 2017-05-05T08:02:59.462Z [INFO] 192.168.1.10 D837BE-ONU-xyz: Script: end refresh2 script SN=xyz</div></div><div><br></div><div><br></div><div><br></div><div>Why did acs has this behaviour?</div></div>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>Users mailing list</span><br><span><a href="mailto:Users@lists.genieacs.com">Users@lists.genieacs.com</a></span><br><span><a href="http://lists.genieacs.com/mailman/listinfo/users">http://lists.genieacs.com/mailman/listinfo/users</a></span><br></div></blockquote></div></body></html>