Jump to content

[Module] Opensrs - Beta 1.0.8 Relesed :)


PauloV

Recommended Posts

Hi again,

 

I can't get the addon-functionality to work correctly with an OpenSRS package. Has anyone tried this and got it to work?

 

Here's what I did:

 

  1. I created a group called "Webhosting", and an addon group called "Domain Addon". 
  2. I selected the "Webhosting" group as parent of the "Domain Addon" group.
  3. I created 2 packages - one for webhosting which belongs to the "Webhosting" group, and one for domains, using the OpenSRS module, which belongs to the "Domain Addon" group.
  4. I created an order form, with the following parameters:
    1. Type: Domain and Other
    2. Domain Package Group: Webhosting --> I couldnt select the "Domain Addon" group here. Maybe that's the problem?
    3. Assigned Package Group: Webhosting

 

When I visit the order form's "domain availability" page, I don't see the checkboxes below the textfield, where I can usually select the available domain-endings. And whenever I enter a domain, I get a "That domain name is not supported" error message.

 

Did I configure something wrong, or does the module just not work as an addon-packge yet?

Link to comment
Share on other sites

Hi again,

 

I can't get the addon-functionality to work correctly with an OpenSRS package. Has anyone tried this and got it to work?

 

Here's what I did:

 

  1. I created a group called "Webhosting", and an addon group called "Domain Addon". 
  2. I selected the "Webhosting" group as parent of the "Domain Addon" group.
  3. I created 2 packages - one for webhosting which belongs to the "Webhosting" group, and one for domains, using the OpenSRS module, which belongs to the "Domain Addon" group.
  4. I created an order form, with the following parameters:
    1. Type: Domain and Other
    2. Domain Package Group: Webhosting --> I couldnt select the "Domain Addon" group here. Maybe that's the problem?
    3. Assigned Package Group: Webhosting

 

When I visit the order form's "domain availability" page, I don't see the checkboxes below the textfield, where I can usually select the available domain-endings. And whenever I enter a domain, I get a "That domain name is not supported" error message.

 

Did I configure something wrong, or does the module just not work as an addon-packge yet?

 

Don't do an addon package....!

Make an order form... Make it Domain and Other. Select the Domain group via the dropdown box. Then select the hosting packages... That's all you have to do.

Link to comment
Share on other sites

PauloV, I finally made good on my promise and sent a donation your way. I hope you can spend a bit more time on this module as I am finally moving new sales over to Blesta very soon, and then my existing customers soon after that, and I only use OpenSRS for domain registration/transfers.

 

Thanks for all your hard work!

Link to comment
Share on other sites

I also just made a little donation.  You and naja7 are making Blesta work for me. :)

 

The order process of the OpenSRS modue still has some weird behaviour for me however.  I'll be back tomorrow with more questions - time to go to bed now... Hope you don't get tired of me yet.. :)

 

Sorry for the Late Response tynan :(  Many thanks for the Donation :)

 

 

PauloV, I finally made good on my promise and sent a donation your way. I hope you can spend a bit more time on this module as I am finally moving new sales over to Blesta very soon, and then my existing customers soon after that, and I only use OpenSRS for domain registration/transfers.

 

Thanks for all your hard work!

 

 

Many thanks for the Donation cleverhost :)

 

 

Today I have finish all pending work (some blesta plugin maide for Blesta Clients :) ), and now I will continue to update the Modules And Plugins released :P  Tomorow I will start with OpenSRS to add more features like many people has asked me :)

 

Stay tuned! :P

Link to comment
Share on other sites

  • 5 weeks later...
  • 2 weeks later...

Hi PauloV,

 

I succesfully installed your module and it works well! I would like to move over several existing domains into Blesta (100+) and was wondering if you had any suggestions. Is there an easy way to import existing domains at OpenSRS into Blesta?

 

Thanks

--

dmonaldo

Link to comment
Share on other sites

Hi PauloV,

 

I succesfully installed your module and it works well! I would like to move over several existing domains into Blesta (100+) and was wondering if you had any suggestions. Is there an easy way to import existing domains at OpenSRS into Blesta?

 

Thanks

--

dmonaldo

Small changes on Blesta Import plugin should import that quickly but maybe Paul/Cody/Tyson could help you on that :)

P.S- im a litle late on releasing the OpenSRS update. I will try to release next week. Sorry all :(

Link to comment
Share on other sites

  • 2 weeks later...

sorry guys once again

 

Two weeks ago I was very buisy, and last week I have broke a rib (playing with my son lol), now Im in recovering at wome at least for 3 weeks, so I will try to focus next week on this and finally relase all new funtionality.

 

Sorry all :(

Link to comment
Share on other sites

sorry guys once again

 

Two weeks ago I was very buisy, and last week I have broke a rib (playing with my son lol), now Im in recovering at wome at least for 3 weeks, so I will try to focus next week on this and finally relase all new funtionality.

 

Sorry all :(

 

 

Hi PauloV,

 

It makes 1 week now  :D   How are you going? 

 

I hope you are feeling better!

 

I am available to provide feedback on your module whenever you want.    We need such module.  I encourage you to go ahead on this : there is a lot of peoples waiting such module before they migrate to Blesta!  I worked a little on this on my side, but i am not familiar with Blesta / opensrs api.  When are you going to release your plugin in stable version?  I am asking because it say "while("its FREE")" in your signature, so i assume those are beta plugins/modules?  ...are you going to open a module store or something, and then sell your work?

 

 

Also : should you be available to work on some other projects, please let me know more about your services in pm.  

 

 

Thank you,

 

Carl

Link to comment
Share on other sites

Hello blestars :blesta:

 

Here it is new functionality for OpenSRS :)

 

OpenSRS can now do:

 



Added: [Admin]->[Settings]: Set/Get Registrar Lock
Added: [Admin]->[Settings]: Get EPP Code (Transfer Key)
Added: [Admin]->[Nameservers]: Set/GET Nameservers

Added: [Client]->[Settings]: Set/Get Registrar Lock
Added: [Client]->[Settings]: Get EPP Code (Transfer Key)
Added: [Client]->[Nameservers]: Set/GET Nameservers


Next week I will add:

 

[Admin]->[Whois]: Set/Get Domain Contact Info

[Client]->[Whois]: Set/Get Domain Contact Info

 

Please see first post whow to install/upgrade

 

P.S- Sorry about the late release (the late was due the "cokkie" authentication that OpenSRS needs for some commands, and cant be tested on sandbox and was driving me craizy lol)
Link to comment
Share on other sites

Hi PauloV,

 

I succesfully installed your module and it works well! I would like to move over several existing domains into Blesta (100+) and was wondering if you had any suggestions. Is there an easy way to import existing domains at OpenSRS into Blesta?

 

Thanks

--

dmonaldo

 

 

I guess you need to do this manually, or create an import tool.

 

We used the universal module on our side to migrate, and the Blesta import plugins.  

Link to comment
Share on other sites

Good work :)

 

Please : think about adding a button to get the EPP code.

 

I suggest If the user do not click the button, then it won't don't perform the query to get the EPP in the client area.

 

Also : 

 

what about a feature to add an email adress corresponding to the current domain?  Or maybe you would like create an other module to create an email and update it's password?   :D

 

I think OpenSRS is simply the best provider at this time, and i am happy to see you started back to work on this.

 

Cheers  :blesta:

 

 

 

p.s.: On line 11 of openSRS_loader.php, you forgot i think to remove the comment after testing : 

 //define("OPENSRSURI", dirname(__FILE__));

It seems to work even if it's not commented.  :)

Link to comment
Share on other sites

New Update :blesta:

Optimised in only one core modify file, the patch file for set diferent prices for diferent types:​Domain RegisterDomain TransferDomain Renew
Now it only needs to modify one file, the [blesta-instalation-folder]/plugins/order/lib/order_types/domain/order_type_domain.php

if you apply the patch files before to set diferent prices for diferent types, you can replace the file [blesta-instalation-folder]/app/models/packages.php with an original file and then apply the new patch file in the first post.

Link to comment
Share on other sites

Thank you :)  This is going to be useful for other plugins while Blesta dev. complete their work on the new domain functions :)  Someone know when they are going to release the new domain features?  I thought it was going to be in a next release, or so?

 

On our side, this was a problem while migrating to Blesta : we were using different prices for renewals, transfer, etc...   We ended up by setting a unique price for all our domains, and we are using coupon codes added in the url to provide discounts.  It will be much easier if we can get different pricing.  

 

...but in the meantime, it's just more clear for the customer : unique prices.

Link to comment
Share on other sites

Hi PauloV,

 

We are testing this and saw a problem while changing the dns for a domain.

 

If the domain is locked then OpenSRS will deny any DNS changes.  You require to unlock the domain to change the dns settings.

 

But, if you update the dns through the Blesta module it does not return an error while updating the dns if the domain is locked, in the client and admin areas.

 

You need to go to the logs, to see this error : 

 

:"Registry error, domain's nameservers not updated [Object status prohibits operation Reason:clientUpdateProhibited]"

 

I suggest to add a message saying something like "This domain must be unlocked to perform dns operations" on the tabClientNameservers if the domain is locked + to return the API error to the customer and the admin. 

 

Thank you,

Carl 

Link to comment
Share on other sites

  • 2 weeks later...

Hi Paulov,

 

please note i do not define myself as a developer (i'm a system administrator).

 

..but i think i saw a couple of problems with the code.  Should may want to take a look at this page : http://www-01.ibm.com/support/knowledgecenter/SSUS3D/com.ibm.wbpm.mon.admin.doc/sec/entitlement_system_sample_interface.html?lang=en you will see it seems like you should be using 

 

/**  
* TODO Create an Event to change the Type from domain to domainrenew $package->module_id
* OpenSRS 100% completed
* Adds the service to the remote server. Sets Input errors on failure,
* preventing the service from being added.
*
* @param stdClass $package A stdClass object representing the selected package
* @param array $vars An array of user supplied info to satisfy the request
* @param stdClass $parent_package A stdClass object representing the parent service's selected package (if the current service is an addon service)
* @param stdClass $parent_service A stdClass object representing the parent service of the service being added (if the current service is an addon service and parent service has already been provisioned)
* @param string $status The status of the service being added. These include:
* - active
* - canceled
* - pending
* - suspended

 

 

...what i can see in the opensrs.php file is : 

 

/**TODO Create an Event to change the Type from domain to domainrenew $package->module_id
* OpenSRS 100% completed
* Adds the service to the remote server. Sets Input errors on failure,
* preventing the service from being added.
*
* @param stdClass $package A stdClass object representing the selected package
* @param array $vars An array of user supplied info to satisfy the request
* @param stdClass $parent_package A stdClass object representing the parent service's selected package (if the current service is an addon service)
* @param stdClass $parent_service A stdClass object representing the parent service of the service being added (if the current service is an addon service and parent service has already been provisioned)
* @param string $status The status of the service being added. These include:
* - active
* - canceled
* - pending
* - suspended

 

Does the @params are still evaluated by php if the recommended @params format is not in place?  The IBM documentation (as well as phpdoc) seems clear on the fact this may expose your plugin to a security vulnerability.  I see this for many functions in the opensrs.php file...  

 

***Also, it seems like the spyc.php version and a couple other libraries that seems to come from the opensrs dev kit and the whmcs module are not up to date with their latest versions.  I would suggest to find another way to do things other than by modifying the libraries, so it will make things easier for everyone to upgrade them 

 

I see you also commented our a line that seems to secure the opensrs loader file : 

 

 On line 11 of openSRS_loader.php, i may seems like you forgot i think to remove the comment after testing : 

 //define("OPENSRSURI", dirname(__FILE__));

You module is working fine even if this security is enabled.  I saw no problem on this side.

 

I see  /api/commands file are modified : 

 

public function __construct ($formatString, $dataObject) {
parent::__construct($dataObject);

Is there any other better way to do this?  

 

Another question : do you have an official git where we can push improvements on your plugin?  Will you accept those requests?

 

Cheers and thank you for providing us with the module .

 

 

Carl

 

Link to comment
Share on other sites

 

Hi Paulov,

 

please note i do not define myself as a developer (i'm a system administrator).

 

..but i think i saw a couple of problems with the code.  Should may want to take a look at this page : http://www-01.ibm.com/support/knowledgecenter/SSUS3D/com.ibm.wbpm.mon.admin.doc/sec/entitlement_system_sample_interface.html?lang=en you will see it seems like you should be using 

 

 

/**  

* TODO Create an Event to change the Type from domain to domainrenew $package->module_id

* OpenSRS 100% completed

* Adds the service to the remote server. Sets Input errors on failure,

* preventing the service from being added.

*

* @param stdClass $package A stdClass object representing the selected package

* @param array $vars An array of user supplied info to satisfy the request

* @param stdClass $parent_package A stdClass object representing the parent service's selected package (if the current service is an addon service)

* @param stdClass $parent_service A stdClass object representing the parent service of the service being added (if the current service is an addon service and parent service has already been provisioned)

* @param string $status The status of the service being added. These include:

* - active

* - canceled

* - pending

* - suspended

 

 

 

...what i can see in the opensrs module is : 

 

 

/**TODO Create an Event to change the Type from domain to domainrenew $package->module_id

* OpenSRS 100% completed

* Adds the service to the remote server. Sets Input errors on failure,

* preventing the service from being added.

*

* @param stdClass $package A stdClass object representing the selected package

* @param array $vars An array of user supplied info to satisfy the request

* @param stdClass $parent_package A stdClass object representing the parent service's selected package (if the current service is an addon service)

* @param stdClass $parent_service A stdClass object representing the parent service of the service being added (if the current service is an addon service and parent service has already been provisioned)

* @param string $status The status of the service being added. These include:

* - active

* - canceled

* - pending

* - suspended

 

Does the @params are still evaluated by php if the recommended @params format is not in place?  The IBM documentation (as well as phpdoc) seems clear on the fact this may expose your plugin to a security vulnerability.  I see this for many functions in the opensrs.php file...  

 

***Also, it seems like the spyc.php version and a couple other libraries that seems to come from the opensrs dev kit and the whmcs module are not up to date with their latest versions.  I would suggest to find another way to do this other than by modifying the libraries, so it will make things easier for everyone to upgrade them :)

 

I see you also commented our a line that seems to secure the opensrs loader file : 

 

 On line 11 of openSRS_loader.php, you forgot i think to remove the comment after testing : 

 

 //define("OPENSRSURI", dirname(__FILE__));

 

You module is working fine even if this security is enabled.  I saw no problem on this side.

 

 

Another question : do you have an official git where we can push improvements on your plugin?  Will you accept those requests?

 

Cheers and thank you for providing us with the module :)

 

 

Carl

 

 

 

 

I have to clean the code, the code is not vleaned because is in Alpha :)

 

Dont tale in count the comments in the code because is based on enom and internebs module so the text comments are iqual ;)

 

Im finishing the Whois Contacts fileds change to relase in 2/3 days :blesta:

Link to comment
Share on other sites

Hi PauloV,

 

Seems like you may have also forgot about the global variables.  ...or is it only for the Alpha?

 

...for example : 

 

public function validateConnection($key, $user, $sandbox) {
    global $connectData;
   

Seems dangerous!

 

If the goal of using global variables in simply to log the module requests, then i invite you to check on the Namecheap and eNom modules : they don't seems to log every requests this way, so i do not think it's absolutely required to leave them in place.

 

Otherwise,  opensrs allow us to see the API requests, so there is no need to keep this into Blesta. ;)

 

...maybe for debugging purpose in Alpha, it's a good idea, but i don't like to have a global for this.

 

I would definitely work on this before the beta version :)

 

cheers and thank you for your help

 

Carl

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...