-
When I first connect a device to GenieACS, I can successfully retrieve all parameters (around 1917 total) using
InternetGatewayDevice from my Dlink router.as the root. -
However, when the device goes offline or connects to another ACS, and then later reconnects to the same ACS, the total number of parameters retrieved drops significantly (for example, from 1917 to 45–57).
-
Even after the device reconnects and appears online again, the parameter count does not go back to normal.
-
This happens particularly when using the RefreshObject API (like
POST /devices/<device-id>/taskswith"name": "refreshObject", "objectName": "InternetGatewayDevice."). -
If I do not use refresh, and instead use only the GetParameterValues API to read existing parameters, then I get the correct full parameter list (1917).
-
So it seems that after a refresh or device reconnection, the stored parameter tree in GenieACS becomes incomplete or partially refreshed.
Example scenario:
-
Device connects to ACS → calling
refreshforInternetGatewayDevice and getting the values.returns 1917 parameters -
Device disconnects or connects to another ACS → returns 57 parameters sometimes 45
-
Device reconnects to the same ACS → calling
refresh and getting the valuesagain now returns only 57 parameters -
Not using
RefreshObjectgives full parameters again, when simply using getparametervalues api, doing a single refersh in the beginning. -
The problem is when i refresh and get the parameters from mongo, the parameter count reduces significantly after the device has been connected to a different acs/offline.
Question:
-
Why does the total parameter count reduce drastically after the device reconnects or after calling
refreshObject? -
Is there a known issue or recommended way to fully restore the parameter tree for a device after it reconnects?
-
-
When a device first connects to GenieACS, retrieving parameters using
InternetGatewayDevice.as the root returns all parameters (around 1917). -
After the device goes offline or connects to another ACS, and then reconnects to the same ACS, the parameter count drops drastically (e.g., from 1917 to 45–57).
-
Even after the device reconnects and is online again, the parameter count does not return to normal.
-
This issue occurs mainly when using the RefreshObject API
(POST /devices/<device-id>/taskswith"name": "refreshObject", "objectName": "InternetGatewayDevice."). -
If I don’t use RefreshObject and only use GetParameterValues to read existing parameters, I consistently get all 1917 parameters.
-
It seems that after a refresh or reconnection, the stored parameter tree in GenieACS becomes incomplete or partially refreshed.
Example Scenario:
-
Device connects to ACS → calling
refreshforInternetGatewayDevice.and getting values returns 1917 parameters -
Device disconnects or connects to another ACS → returns 57 parameters
-
Device reconnects to same ACS → calling
refreshand getting values now returns only 57 parameters -
Skipping
RefreshObjectand using onlyGetParameterValuesreturns full parameters again
Question:
-
Why does the parameter count reduce drastically after device reconnection or using
refreshObject? -
Is there a known issue or best practice to fully restore the parameter tree after a device reconnects?
-
Should any additional GenieACS operation be triggered to rebuild or resync parameters completely?Should we trigger some other GenieACS operation to rebuild or resync the full parameter list?
-
-
-
So if I refresh InternetGatewayDevice more than once, then will the parameter count reduce like this?
Sounds like a CPE issue. I would enable debug logging for the CPEin question and see whats different about the first connect, vs subsequent re-connects.
Look I’ll explain to you, i always refresh “InternetGatewayDevice.” before fetching the parameter and their values from mongo, initially when router is online and connected to the ACS, the count of parameters is 1917, but then when the router disconnects from the ACS the count reduces sometimes to 45 sometimes to 57, this time also I am refresh “InternetGatewayDevice.” and then getting the parameters and their values from the mongo, when the device reconnects to the ACS then too the ace persists.
However when I don’t call refresh object “InternetGatewayDevice.” again and again just call it once in the beginning, then use getparametervalues everytime, then I don’t face this issue.
So I don’t think it’s a CPE issue.