Jump to content

Fao Tyson - Domain Customer-Id Field And Yearly Bug.


Michael

Recommended Posts

As I've told Paul I'd do and just got round to it, here is the video.. please excuse the dashboard it's because I'm developing a theme for boostrap so broken on here.

 

It also shows the error for the yearly issue. Register it from 2013 - 2014 and it shows 2014 - 2015.

 

http://screencast.com/t/7x4Y8EIsbG60

Link to comment
Share on other sites

Could someone that experiences this issue send me the Module Log data associated with Logicboxes when this "customer-id" error occurs? You can omit sensitive information in the data and post screenshots here or PM them to me.

My steps to create this error are slightly different but here are my logs:

I was trying to attach them but they're too big.  Here's a manual edit:

 

Input:

https://httpapi.com/api/contacts/add.json

a:15:{s:4:"name";s:10:"xxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxx";s:14:"address-line-1";s:11:"xxxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:4:"type";s:7:"Contact";s:11:"customer-id";N;s:11:"auth-userid";s:6:"xxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}

 

Output:

https://httpapi.com/api/contacts/add.json

{"status":"ERROR","message":"Required parameter missing: customer-id"}

 

Input:

https://httpapi.com/api/customers/search.json

a:5:{s:8:"username";s:16:"xxxxxxx";s:13:"no-of-records";i:10;s:7:"page-no";i:1;s:11:"auth-userid";s:6:"xxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}

 

Output:

https://httpapi.com/api/customers/search.json

{"status":"ERROR","message":"Method Not Allowed. Use GET"}

Link to comment
Share on other sites

My steps to create this error are slightly different but here are my logs:

I was trying to attach them but they're too big.  Here's a manual edit:

 

Input:

https://httpapi.com/api/contacts/add.json

a:15:{s:4:"name";s:10:"xxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxx";s:14:"address-line-1";s:11:"xxxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:4:"type";s:7:"Contact";s:11:"customer-id";N;s:11:"auth-userid";s:6:"xxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}

 

Thanks for the info. Were there any logs that came before this one? Seeing all Input/Output in sequence for the entire transaction when attempting to add a service, whether successful or not, would be ideal.

Link to comment
Share on other sites

Thanks for the info. Were there any logs that came before this one? Seeing all Input/Output in sequence for the entire transaction when attempting to add a service, whether successful or not, would be ideal.

Here's my first set of logs (think my last response was from the 2nd log):

 

Input:

https://httpapi.com/api/customers/search.json

a:5:{s:8:"username";s:16:"xxxxxxxx";s:13:"no-of-records";i:10;s:7:"page-no";i:1;s:11:"auth-userid";s:6:"xxxxxxxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";} (SUCCESS)

 

Output:

https://httpapi.com/api/customers/search.json

{"status":"ERROR","message":"Method Not Allowed. Use GET"}    (ERROR)

 

Input:

https://httpapi.com/api/customers/signup.json

a:16:{s:4:"name";s:10:"xxxxxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxxxxx";s:14:"address-line-1";s:11:"PO Box xxxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:8:"username";s:16:"xxxxxxxx";s:6:"passwd";s:15:"xxxxxxxxxxxxx";s:9:"lang-pref";s:2:"en";s:11:"auth-userid";s:6:"xxxxxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}    (SUCCESS)

 

Output:

https://httpapi.com/api/customers/signup.json

10067263 (SUCCESS)

 

Input:

https://httpapi.com/api/contacts/add.json

a:15:{s:4:"name";s:10:"xxxxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxxxx";s:14:"address-line-1";s:11:"xxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:4:"type";s:7:"Contact";s:11:"customer-id";N;s:11:"auth-userid";s:6:"xxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}   (SUCCESS)

 

Output:

https://httpapi.com/api/contacts/add.json

{"status":"ERROR","message":"Required parameter missing: customer-id"}  (ERROR)  (The logs repeated this message 6 times)

 

I created this by having an existing customer and going Client -->> Browse -->> Select Customer -->> Add Service -->> Choose Package (Domain Registration) -->> Then selected do not invoice, do not provision using logic boxes module and do not send email to customer and I selected 1 year term.  Also selected Status "Active" and entered the domain name and proper nameservers along with the term.

 

This domain is already registered, so I was trying to get it added to the customers account (just a test account for now) so it shows up there and it produces the errors after I run the cron job to sync.

Link to comment
Share on other sites

I might need to open another thread in a different section for this but I'm also curious about the following:

 

If I make a mistake or just want to remove a service all together from a clients account, is this only accomplished by cancelling it?  I'd like to just delete it all together if possible.  Also, is there a way to move a product / service from one client to another?

Link to comment
Share on other sites

I might need to open another thread in a different section for this but I'm also curious about the following:

 

If I make a mistake or just want to remove a service all together from a clients account, is this only accomplished by cancelling it?  I'd like to just delete it all together if possible.  Also, is there a way to move a product / service from one client to another?

 

You can delete if it's pending. But if it's active you will need to void it I believe.

Link to comment
Share on other sites

Here's my first set of logs (think my last response was from the 2nd log):

 

Input:

https://httpapi.com/api/customers/search.json

a:5:{s:8:"username";s:16:"xxxxxxxx";s:13:"no-of-records";i:10;s:7:"page-no";i:1;s:11:"auth-userid";s:6:"xxxxxxxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";} (SUCCESS)

 

Output:

https://httpapi.com/api/customers/search.json

{"status":"ERROR","message":"Method Not Allowed. Use GET"}    (ERROR)

 

Input:

https://httpapi.com/api/customers/signup.json

a:16:{s:4:"name";s:10:"xxxxxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxxxxx";s:14:"address-line-1";s:11:"PO Box xxxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:8:"username";s:16:"xxxxxxxx";s:6:"passwd";s:15:"xxxxxxxxxxxxx";s:9:"lang-pref";s:2:"en";s:11:"auth-userid";s:6:"xxxxxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}    (SUCCESS)

 

Output:

https://httpapi.com/api/customers/signup.json

10067263 (SUCCESS)

 

Input:

https://httpapi.com/api/contacts/add.json

a:15:{s:4:"name";s:10:"xxxxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxxxx";s:14:"address-line-1";s:11:"xxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:4:"type";s:7:"Contact";s:11:"customer-id";N;s:11:"auth-userid";s:6:"xxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}   (SUCCESS)

 

Output:

https://httpapi.com/api/contacts/add.json

{"status":"ERROR","message":"Required parameter missing: customer-id"}  (ERROR)  (The logs repeated this message 6 times)

 

It sounds like there may be 2 or 3 things going on here. The first error that says to use GET finally clicked with me. We had a similar issue in v2 a couple years ago because the live and test APIs behave differently. This is why some of you experienced a problem, while we couldn't duplicate it in our test environment. I believe the solution to this problem is the following:

 

Update /components/modules/logicboxes/apis/commands/logicboxes_customers.php (line 177)

return $this->api->submit("customers/search", $vars);

change to:

return $this->api->submit("customers/search", $vars, "GET");

Then try creating another service and let me know what happens.

 

 

I created this by having an existing customer and going Client -->> Browse -->> Select Customer -->> Add Service -->> Choose Package (Domain Registration) -->> Then selected do not invoice, do not provision using logic boxes module and do not send email to customer and I selected 1 year term.  Also selected Status "Active" and entered the domain name and proper nameservers along with the term.

 

This domain is already registered, so I was trying to get it added to the customers account (just a test account for now) so it shows up there and it produces the errors after I run the cron job to sync.

 

You unchecked the "Use Module" checkbox when you added the service? And it still attempted to add it using the module? That doesn't sound right.

Link to comment
Share on other sites

It sounds like there may be 2 or 3 things going on here. The first error that says to use GET finally clicked with me. We had a similar issue in v2 a couple years ago because the live and test APIs behave differently. This is why some of you experienced a problem, while we couldn't duplicate it in our test environment. I believe the solution to this problem is the following:

 

Update /components/modules/logicboxes/apis/commands/logicboxes_customers.php (line 177)

return $this->api->submit("customers/search", $vars);

change to:

return $this->api->submit("customers/search", $vars, "GET");

Then try creating another service and let me know what happens.

 

 I'll give this a try over the weekend and I imagine cubicwebs will too

 

You unchecked the "Use Module" checkbox when you added the service? And it still attempted to add it using the module? That doesn't sound right.

When I initially added the product to the clients account, yes and the domain showed up in the account, minus the details (registrant info, nameservers, etc). It's been over a month since I did this so I'd have to go through the process again but I'm pretty sure the errors appeared in the log after I ran the cron job to update those missing details.

Link to comment
Share on other sites

It sounds like there may be 2 or 3 things going on here. The first error that says to use GET finally clicked with me. We had a similar issue in v2 a couple years ago because the live and test APIs behave differently. This is why some of you experienced a problem, while we couldn't duplicate it in our test environment. I believe the solution to this problem is the following:

 

Update /components/modules/logicboxes/apis/commands/logicboxes_customers.php (line 177)

return $this->api->submit("customers/search", $vars);

change to:

return $this->api->submit("customers/search", $vars, "GET");

Then try creating another service and let me know what happens.

 

 

 

You unchecked the "Use Module" checkbox when you added the service? And it still attempted to add it using the module? That doesn't sound right.

OK. I left the service already entered for the client, updated the file you mentioned and ran the cron job again.  It wouldn't sync any of the whois or nameserver info and there isn't anything new in the error log.

 

After that, I added the service again which works fine but after running the cron job, I've still got no updated whois and nameserver information and no error log generated.

Link to comment
Share on other sites

Does the fix I provided above resolve these issues?

 

Input:

https://httpapi.com/api/customers/search.json
a:5:{s:8:"username";s:16:"xxxxxxxx";s:13:"no-of-records";i:10;s:7:"page-no";i:1;s:11:"auth-userid";s:6:"xxxxxxxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";} (SUCCESS)

 

Output:

https://httpapi.com/api/customers/search.json
{"status":"ERROR","message":"Method Not Allowed. Use GET"}    (ERROR)

 


Input:

https://httpapi.com/api/contacts/add.json
a:15:{s:4:"name";s:10:"xxxxxxx";s:7:"company";s:14:"Not Applicable";s:5:"email";s:16:"xxxxxxx";s:14:"address-line-1";s:11:"xxxx";s:14:"address-line-2";s:0:"";s:4:"city";s:6:"xxxx";s:5:"state";s:2:"xx";s:7:"zipcode";s:5:"xxxxx";s:7:"country";s:2:"US";s:8:"phone-cc";s:1:"1";s:5:"phone";s:7:"1111111";s:4:"type";s:7:"Contact";s:11:"customer-id";N;s:11:"auth-userid";s:6:"xxxxxx";s:7:"api-key";s:32:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";}   (SUCCESS)

 

Output:

https://httpapi.com/api/contacts/add.json
{"status":"ERROR","message":"Required parameter missing: customer-id"}  (ERROR)  (The logs repeated this message 6 times)

 

I'd like some input from those that this issue affects before I mark this resolved.

 

 

OK. I left the service already entered for the client, updated the file you mentioned and ran the cron job again.  It wouldn't sync any of the whois or nameserver info and there isn't anything new in the error log.

 

After that, I added the service again which works fine but after running the cron job, I've still got no updated whois and nameserver information and no error log generated.

 

Blesta requests the whois/nameserver information, but it may not be immediately available from the server. If you give it some time to setup, does it appear later?

Link to comment
Share on other sites

Does the fix I provided above resolve these issues?

 

 

I'd like some input from those that this issue affects before I mark this resolved.

 

 

 

Blesta requests the whois/nameserver information, but it may not be immediately available from the server. If you give it some time to setup, does it appear later?

 

Is there a way mate to get the domains showing again under services? At the moment none of my clients nor me can see the domains on their services. Just says Active (2) 

 

Reseller Two - Domain - Etc 

 

But no .com - domain etc

Link to comment
Share on other sites

Is there a way mate to get the domains showing again under services? At the moment none of my clients nor me can see the domains on their services. Just says Active (2) 

 

Reseller Two - Domain - Etc 

 

But no .com - domain etc

 

I'm not aware of a problem with service listings. Can you create a new thread about that issue? I'd like to keep this topic focused on the "customer-id" issue.

Link to comment
Share on other sites

Does the fix I provided above resolve these issues?

 

 

I'd like some input from those that this issue affects before I mark this resolved.

 

 

 

Blesta requests the whois/nameserver information, but it may not be immediately available from the server. If you give it some time to setup, does it appear later?

 

Nothing has changed in my system.  I can and always have been able to add the service (domain name) but nothing ever syncs to update domain expiration dates, whois info and nameservers..  I can give you access to my install if you want or keep trying to provide you with more detail.  I haven't switched over yet so this is just tesing the various functions so I can get use to Blesta, there's no sensitive customer data on my install.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...