Set ConnectionRequestUsername and Password

Hello all!

I’m fairly new to this protocol, but have it up and running in a lab with a couple CPE’s plugged in. But I have a problem setting the following two parameters.

InternetGatewayDevice.ManagementServer.ConnectionRequestUsername
InternetGatewayDevice.ManagementServer.ConnectionRequestPassword

This is the log output

2019-06-24T15:57:43.693Z [INFO] 10.10.0.113 00D09E-homeportal-12141N010625: Inform; cpeRequestId=“1” informEvent=“1 BOOT” informRetryCount=0

2019-06-24T15:57:43.760Z [INFO] 10.10.0.113 00D09E-homeportal-12141N010625: Script: Set Connection Request params

2019-06-24T15:57:43.763Z [INFO] 10.10.0.113 00D09E-homeportal-12141N010625: ACS request; acsRequestId=“16b8a3517870100” acsRequestName=“GetParameterValues”

2019-06-24T15:57:43.871Z [WARN] 10.10.0.113 00D09E-homeportal-12141N010625: CPE fault; acsRequestId=“16b8a3517870100” cpeFaultCode=“9005” cpeFaultString=“GetParameterValues: no entry”

2019-06-24T15:57:43.871Z [WARN] 10.10.0.113 00D09E-homeportal-12141N010625: Channel has faulted; channel=“request_creds” retries=0 faultCode=“cwmp.9005” faultMessage=“GetParameterValues: no entry”

I can SSH into the CPE and manually set these values. Once I do - the script I made to set credentials works perfectly fine. It doesn’t matter what I set the values to, as long as they are set (By default, they are NULL)

It kind of seems like the values don’t exist. I’m unsure how to work around this issue.

Thanks!

hi,
i think you must refresh the node before trying to set them:
declare(“InternetGatewayDevice.ManagementServer.*”, {value: now});

Thanks for the reply! I just tried changing the Provisioning Script for this and still no change.

If I click “refresh” on the two parameters (ConnectionRequest Username/Password) then reboot the CPE - I end up with errors on each of them

FAULTCODE:
9005

FAULTSTRING:
GetParameterValues: no entry

Same error from the CPE itself via the event log

acs CWMD fault: 9005 GetParameterValues: no entry

Starting to think these won’t allow ConnectionRequests without a custom firmware :frowning:

do you see this parameters in genieacs GUI ? they appear as “blank” or no value? you see the Edit link near “Refresh”?
are they InternetGatewayDevice.ManagementServer.ConnectionRequestUsername/Password or are they Device.ManagementServer.ConnectionRequestUsername/Password ?
you should use the correct one in the provision script, based on device SpecVersion.

I do see the parameters after an attempted Set Parameter (which fails) - prior to trying to set only a handful of Parameters show up in the GenieACS GUI.

Once they show up - they appear as
InternetGatewayDevice.ManagementServer.ConnectionRequestUsername
InternetGatewayDevice.ManagementServer.ConnectionRequestPassword

Neither one has a value (It doesn’t show ‘blank’)

Here is the script I have set (Using a “Set” preset for these values was also tried, along with the Edit on the device itself+reboot CPE)

const now = Date.now();

log(‘Set Connection Request params’);
declare(“InternetGatewayDevice.ManagementServer.*”, {value: now});
declare(“InternetGatewayDevice.ManagementServer.ConnectionRequestUsername”, {value: now}, {value: “testuser”});
declare(“InternetGatewayDevice.ManagementServer.ConnectionRequestPassword”, {value: now}, {value: “testpass”});

Thank you!

the script seems ok. Turn on debugging in config.json and have a look at the requests and responses for this device and cwmp-access.log.
Also try to set the same connection request username & password from the device interface (if it’s possible), maybe it has some security constraints (password has to be min 10 chars…etc).

PS: make sure the string delimiters of the paths are standard single or double quotation marks … if you copy-pasted the code from this forum there could be other utf8 characters