
Strategerizer
Retired Forum Member-
Posts
28 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Hotfixes
Everything posted by Strategerizer
-
Using Licensing Addon for desktop app?
Strategerizer replied to Strategerizer's question in Pre-Sales Questions
I did not need to do anything special to use hardware number (or any other variable) instead of the IP/Domain. These are just labels for the variables passed to the server and there is no requirement for any particular value for that variable. So just pass what variable value you want. Your variable will still be labeled IP or Domain on the server (maybe you can change some.tpl template file to change this) but that should not be a big issue; YOU will know what the variables actually are. -
Using Licensing Addon for desktop app?
Strategerizer replied to Strategerizer's question in Pre-Sales Questions
I ended up having to hire a contractor from Elance, with experience in both PHP and C# to convert the sample implementation code provided by WHMCS (available only to customers that actually purchase the licensing addon) from PHP to C#. He said it was pretty simple to do. He also had WHMCS experience but that really was not required to understand the code and convert it to being used by a desktop up. Then, based on my understanding of how the licensing addon works, I had to develop the business logic appropriate for the desktop app and change some variables being used. So instead of tying the license to a domain name and a installation directory, we tie it to username, email and some unique hardware number (like BIOS or HD serial number). Then you'll have to think also about allowing conflicts or not for each of those variables and if you allow the user to reissue their license. It has not been easy to figure out all the various pieces and how they interact with each other (like the various options that you will have in the WHMCS dashboard and how they affect the behavior of the licensing component on the server). But once you put some time into it to understand it, it starts making more sense. We are happy so far, though we have not deployed yet. -
My developer knows C# and had difficulty implementing code corresponding to the PHP sample code. I hired a PHP/C# contractor that had the right experience to do it quite easily. Also Matt has been very helpful through support email in clarifying a number of aspects. I expect to have things working by tomorrow.
-
Licensing Addon Consulting
Strategerizer replied to Strategerizer's topic in Service Offers & Requests
She posted questions below in the forums but she received no reply: while converting WHMCS PHP api to c#.net i m facing some issue like 1. what is replacement of php time() function in c#.net 2. what is replacement of php mt_rand(1000000000,9999999999) function in c#.net 3. what is replacement of php $_SERVER['SERVER_ADDR'] in c#.net windows application. 4. how we convert php function_exists("curl_exec") to c#.net windows application. 5. how we convert php curl_init() to c#.net windows application. 6. what if equivalent of unserialize($strvar) in c#.net windows application. Do you have a suggestion on best way to move forward on this? Thanks! -
Licensing Addon Consulting
Strategerizer replied to Strategerizer's topic in Service Offers & Requests
My C# developer has spent over 2 weeks trying to get this work and was not able. She enlisted the help of some friends with PHP experience and was not able to get it working even with only PHP. So now I need to find someone willing and able to help with this. I am not sure if there is maybe a simple configuration aspect we missed in the WHMCS dashboard and things are not set up correctly on the back end or if there is some other implementation issue. -
Is there anyone here with experience with the Licensing Addon and an understanding of C# and client side? I really could use a bit of assistance. I can pay you for your time. My developer has been spinning her wheels for teh past weeks without any progress. We want to use the licensing module to sell a Windows desktop app. We plan to use other values instead of Domain and IP (email and a computer hardware number). But so far, even when trying to use the sample PHP code, we couldn't get it to talk to WHMCS and generate licenses... let alone do it in C# on the client machine. Part of the challenge is the lack of PHP experience on our side. Having said that, the documentation provided is too skimpy, even for people with a reasonable level of PHP experience. Help please, could you?
-
I want to know this too. And a lot more... the "documentation" (a bit of commented sample code) is not enough for my developer to be able to implement the Licensing Addon.
-
Did you get your issue resolved? I am trying to implement the licensing addon and have been spinning my wheels trying to get it to work...
-
Anyone? Will multiple domains be recorded somewhere? Or better yet, how can one best check for abuse? Will I get notified if there is a flood of different IPs or domains or do I have to manually check each account periodically to see how if any license has an unusual number of values? Thanks.
-
Eugenevdm - thanks for the feedback. Those questions were niggling in the back of my head too and I appreciate your sample input.
-
Also, I understand the 'Single Page' is now obsolete (based on release notes for latest WHMCS release v.4.3.1) and replaced by the Ajax form. But I see I can still select and use the old Single Page, rather that have it trigger the new Ajax version, so not sure how the Ajax order is called except linking directly to it at http://domain.com/whmcs/order/... The "Default" option for the order template seems to be most usable, with the nice progression labels on the left... what do you think?
-
New with WHMCS. For the following customization options: Admin area --> General Settings --> General--> Template ... Choices are: Default, Portal Pro/Cons? Would you mind mentioning which one you use and why? I was told that Portal is better but I find the sidebar with all the links to be distracting. Also, the new Ajax order form does not display correctly in that template (the Totals box gets chopped off)
-
The new Ajax order form is cut off... fix?
Strategerizer replied to Strategerizer's topic in Using WHMCS
I am using 'Portal' in: Admin area --> General Settings --> Template --> Portal (the other option is "default"). I think that introduces the sidebar on all screens. I looked at your layout and like it better without a sidebar. Someone recommended us to use Portal, not sure of the reasons. I think we'll switch to Default to get rid of the sidebar. Would you be integrating the new Ajax order form? Basically would you need to direct-link to it from your main site? Thanks -
See at http://komotion.com/secure/order/ This brings to mind some other related questions: - The Quick Navigation bar always shows up. But would it not be better to only have it show for clients that are logged in? Or better yet, at least when someone is on the order form, the sidebar to never display and distract the customer. That would probably provide enough breathing room for the Ajax form. - I assume there is a template .TPL file associated with the new AJAX form but the sidebar I think is rendered by the Footer.tpl, so if indeed it would be good to remove sidebar from Ajax form and only that order page, how would I do it?? - Why is the Ajax form at /order/ URL, so clicking on the Order button in the sidebar will not show the Ajax form? Instead it will show http://komotion.com/secure/cart.php. I would have expected the new order form to be available as an option from the Admin area: Admin area --> General Settings --> Ordering --> Default Order Form Template ... [Cart, Default, Web20Cart, Single Page, Boxes] - Related to above, is there one of the above options clearly a favorite among most users? Not clear which one is the latest and greatest one... Thanks
-
Using Licensing Addon for desktop app?
Strategerizer replied to Strategerizer's question in Pre-Sales Questions
Since this can be a sensitive topic, I just sent you a private message/reply. -
Logicsurge, would you share any information at all on how you went about implementing the licensing module in your .NET/C# apps? Much appreciated...
-
Was the demo for the Licensing Addon been pulled out? Can't find it anywhere... This page empty besides the title: http://demo.whmcs.com/admin/addonmodules.php?module=licenses_manager&action=edit&id=1
-
Would you mind sharing on the internal logic you used? I am very interested in using Licensing Addon to protect our .NET 4/C# desktop gallery generator. How do you prevent a valid license from being given to others? Do you use a hardware number or some other number generated upon installation? I just posted a new thread with a lot of details on the internal logic I think we'll need. To not duplicate, please see: http://forum.whmcs.com/showthread.php?t=30939
-
I understand that for a server-side product, abuse prevention is easily accomplished by controlling Domain and IP, which are arguably unique for the customer. But this would not work for a client-side product. Is there something else I can use instead? I guess our desktop app can generate a unique random number and have validation locked to it. In that case, we would need to, at the very least, control that field label and string type (or add a new field besides Domain, IP or Directory. Here are some thoughts on how I think the licensing needs to be adapted for desktop app protection… LICENSE TO REQUIRE UNIQUE SW/HW IDENTIFIER NUMBER As mentioned above, locking to an IP or domain would not work for a desktop app, to prevent activating multiple product instances on one license purchase. There will need to be something else, that is unique for a specific installation, and that can be checked against. Like a hardware fingerprint from their computer hardware or maybe a randomly generated number from the app itself, generated upon installation. So customer would need to provide that IDENTIFIER and the KEY would then be generated on the server, specifically for that identifier number. LICENSE TO REQUIRE CUSTOMER NAME Licensing to require not only a key but also the name used at time of purchase. So customer will need to enter key and name for license verification. So customers that want to share license with others, will also need to provide their name and that may make them think twice about it. Also, if we detect abuses of a specific license, we will also have the name associated with it. I guess this is not critical but will make someone think twice about sharing the key if their name will need to be explicitly associated with it for validation. Situations to be accounted for are: • System to prevent validation from happening if a customer passes their key to someone else • System to disable expired validations (i.e. when subscription term ends) • Us to be able to disable validation if abusive behavior noted • Customer than needs new validation (new computer or installation) to be able to do it themselves, without requiring to contact us for support • System to invalidate old keys when new keys generated • Minimize loopholes (e.g. prevent a customer with valid license from generating new keys for others’ unique identifier number, allowing a continuous reset of the grace period… can this be prevented??) • Dashboard for us to monitor patterns and detect customer abuse (this may be able to address point above) Activation workflow would be as follows: 1. Customer purchases desktop app from our website, through WHMCS portal 2. WHMCS provides download link for app 3. Customer installs app and unique IDENTIFIER number is generated/displayed for them 4. Customer logs into their account from WHMCS and enters unique number from above (I guess they would enter this instead of entering a domain name or IP address so all we may need to tweak on your functionality is to be able to re-label that field!) 5. WHMCS generates license key 6. Customer enters, in desktop app, NAME and KEY. This will: a) Activate app, and b) Tell app to which account to connect on the server to verify license in future 7. App gets activated for a defined period (e.g. 30 days) When app starts, it tries to connect to server and see if Name/Key/Identifier are still valid: • If validated by server, app continues (validation would require NAME/IDENTIFIER/KEY to be correct and payment to be current) • If denied by server, app stops (and notes that key as invalid) • If cannot connect to server, a grace period starts (e.g. 30 days + 3 additional app usages) and tracked by app • If cannot connect to server -and- grace period ended, app stops (and notes that key as invalid) So, IF [server denies validation] -OR- [app cannot connect to validate and grace period expires] THEN app notes key as invalid and it cannot be used to activate the program again. Customer with a valid subscription can log into the server and generate a new key (steps #4-6 from above). Note this means that the server should be able to generate a NEW (different) key, even if NAME and IDENTIFIER remain the same. (Otherwise I guess the program may need to generate a new identifier once app fails validation. User (or us) should be able to log into the server and do following operations: • Change email address or password associated with account • Enter new IDENTIFIER (New KEY can then be generated, Older KEY will then be marked as invalid, and Changes emailed to customer) • Find a log of IDENTIFIERS/KEYS/DATES, requests (including IP address of requester) and possibly other changes to their account (email/passwords) to help identify abusive patterns Is the above business model/workflow supported? OR at least could it be implemented this way using the Licensing Addon?
-
WPCDN - at some point could you provide some guidance to your integration so we may be able to achieve the same and avoid the pitfalls? I initially found your post as I was looking into how I can integrate WHMCS pages with a WordPress website. Your site is the first succesful integration - particularly after your recent fixes - that I've seen. Also, which WordPress theme did you use and would switching themes preserve the integrity of your integration? Greta job!
-
Just want to subscribe to thread - don't see a way to do it without posting again...
-
How did you achieve this level of integration? I see two issues: Minor - Shopping Cart page title is duplicated Major - Page layout fails miserably in IE because of a popup alerting user that some content is HTTPS and some not and if user clicks YES (I want to view only content delivered securely), it breaks apart...