Problem with data type

Hello, I have a problem with a CPE that has faults when I try to send some boolean parameters to it.
The error is 9007
The parameter is “boolean” on the data model, but I’m unable to set it, I’ve tried sending “true” and true and even 1 and “1” with no luck.
When I use de GUI doesn’t work also.

This is one of them:
InternetGatewayDevice.WANDevice.1.WANConnectionDevice.3.WANIPConnection.1.Enable,false,1620632456221,true,1620632456221,“true”,xsd:boolean,1620632456223,

Is there something to force it or what I’m doing wrong?
Thank you.
Regards, Jorge.

I’ve seen some devices not like the word ‘boolean’ but will only listen to ‘Boolean’. Try changing the case of the first letter in the xsd:boolean.

Thank you for your answer, finally I got it working adding this

GENIEACS_BOOLEAN_LITERAL=false

genieacs.env config file.

Well this is now working but I have another problem, I configure everything as is show on the web gui of the CPE, but the wan connection doesn’t connect.
I’m trying to compare the data model on a CPE configured by genieacs and another one configured manually by the web interface but I’m unable to find the different option.

The router is a TP-LINK TX-VG1530, is there a way to download the whole populated data model on both CPE to compare it much easier?

Thank you.
Regards. Jorge.

After 3 days “fighting” against the CPE I’ve found that the only thing needed was a reboot after it was configured to somehow enable the interfaces.
Do you know any other command to “restart” the interfaces faster or cleaner than a reboot?
Thank you.
Regards. Jorge.

Check if the instance has a “.Reset” parameter. If it does, you can set the value to true and that will cause the interface to reset/restart. This works for WANPPPConnection. If that doesn’t work, try setting Enable to false, committing the values and then setting the value to true.

But honestly, I’ve tried all sorts of things to speed up the setup process of a CPE, and in the end I always end up back at rebooting the darn thing because otherwise the CPE gets wonky.

Hi Dan thank you for your advice as always, I’ll try your suggestion but probably I’ll stick to the safe approach.
Another thing regarding this particular CPE model is the admin username and password the parameter is like this

InternetGatewayDevice.X_TP_UserCfg.AdminPwd

but is not loaded by genieacs, is it any way to force writing that parameter ignoring that is not present in the genieacs data model?

And also if it’s posible to disable or how to configure the authentication ACS->CPE because these CPE comes with the Connection Request Authentication enable by default.

Regards. Jorge.

it is possible to load that leaf in the genieacs UI. Otherwise it is also possible to force write it with provision scripts or the nbi.

when you are using the default presets, it will automatically set connection request username and passwords.

Hi Jonas,
the branch InternetGatewayDevice.X_TP_UserCfg doesn’t shows up even in the genieacs UI, no matter what node I try to refresh, I’ve tried to set it up with the provision script but it seems like is ignored, and about the nbi I don’t know really what you mean, can you give me an example?

Then about the connection request credencials I mean that this CPE has it already configured, but I don’t know were to configure genieacs to use them. I’ve read about config/auth.js in some posts but I’m can’t find that file on my system.

Thank you.
Regards. Jorge.

genieacs will overwrite them with the genieacs Connection Request Passwort on the first connect.
If you can “Summon” the device over the UI without any errors, this part is working.

I believe the API will allow you to set parameters that aren’t exposed. Its been a long time since I’ve had to fight that battle.

You could try fighting the battle with the vendor to have them expose the parameter, but we all know how that goes.

You mean something like this:

curl -i 'http://localhost:7557/devices/XXXXXXXXXXXXXXX/tasks?timeout=3000&connection_request' \
-X POST \
--data '{"name": "setParameterValues", "parameterValues": [["InternetGatewayDevice.X_TP_UserCfg.AdminPwd","password"]]}'

Because it doesn’t work either.
Thank you. Regards.

About that I found, if I set:

declare("InternetGatewayDevice.WANDevice.1.WANConnectionDevice.3.WANIPConnection.1.Enable", {value: now}, {value: "false"});

and then I change the value to “true” through the genieacs UI or API, the wan connects without rebooting, but I can’t achieve the same just from the script doing false and then true or false->commit->true
Am I missing something? or is ir just the way it works? (I mean, no actual change is made in the cpe until the script finishes) and that’s why this state change doesn’t work.

Thank you. Regards.

You would have to do false, commit, true, commit. At some point, its honestly easier and less issue prone to just to reboot the stupid thing. I’ve fought this battle extensively and ultimately decided that rebooting the CPE was the way to go.

Hi, I’m still fighting this particular model because it would be great to be able to modify user credentials from genieacs. I guess it must be possible because the old provisioning system can do it, but I can’t in genieacs.
I was researching the firmware and got the data model where I saw this:

imagen

but now I don’t know why the only options available in genieacs are “UserName” and “UserPwd”.
There is any way to test it with some terminal command or something? Becuase API doesn’t work either.
Thanks.
Regards.