Registering a free version, adding temprary feature support at a later date

Hi,Wyatt - a couple of quick questions if I may:Background: I (will) have three versions of my software, "free", "lite" and "pro".There is a fully functional trial period of 14 days where the user gets the full feature set (pro).After 14 days, they either buy a license for the lite or pro, or carry on using the free (or uninstall).

I want users to register to carry on using the free version. I don't think its unreasonable, and if they have found value in it I'm sure they will do it - I don't ask for any information prior to download of the trial version.I also want to capability to activate premium features on a trial basis for users of the free version. As new features are added, it would be cool to let free users test them - they would be ineligible for a new fully featured trial period as that would already have expired.

What is the best way to go about this? I am thinking along the lines of an automated registration form, which simply sends a license key back by return to their specified email. The easiest way for me to implement this would be to create a single key with a large amount of allowed activations.

Do you see a problem with this approach, and what (if any) is the way to handle the granting of extra features for a set period of time, somewhere down the track.

thanks,Matt

Hey Matt,

What is the best way to go about this? I am thinking along the lines of an automated registration form, which simply sends a license key back by return to their specified email. The easiest way for me to implement this would be to create a single key with a large amount of allowed activations.

You're right about the form asking for an email, but you shouldn't just use a key with a large number of activations. Just create a new key on every new trial request. (You can use the web API to do this).

Do you see a problem with this approach

No, this sounds about right.

and what (if any) is the way to handle the granting of extra features for a set period of time, somewhere down the track.

You can use custom license features (a.k.a license fields) to do that. See the first example on that page.

Tell me if that helps.

Hi Wyatt,thanks for the response. So you favour a single license for each user - any particular reason?I'm cool with license features, and am planning to use them now to discriminate between the three version I have.The specific scenario I have in mind, however, is this:

User downloads trial, uses trial for 14 days, then decides to register for the free version - either by generating a single license unique to him or getting an activation from a bulk license.

Some time later - say 3 months, it doesn't matter - I release a killer new feature that is only available in the paid for versions.

I would like this original user of the free version to be able to trial the new features for another 14 days, or whatever. He can't just go and download the trial version, because he has already exhausted his original trial.

How do I (can I?) activate a feature for a set amount of time retrospectively on his existing license?

I figured if they all shared the same license, I could add a feature to that single license and then - somehow? - the app could become aware of this new trial activation. If I have to activate a feature on many licenses at once, can it be done in bulk?

thanks again,Matt

So you favour a single license for each user - any particular reason?

Because if you don't do that then you don't have the ability to make per-user changes. For instance if you use 1 key for every user, and one user requests a trial extension, then when you modify the feature value to give the user more time you'll be giving *every* user more time.

Every user should have their own key.

How do I (can I?) activate a feature for a set amount of time retrospectively on his existing license?

You can edit the feature value (either manually or using the web API). Then have the user re-activate (that is, have your app call the Activate() function to get the new feature information).

If I have to activate a feature on many licenses at once, can it be done in bulk?

Yes you can edit keys in bulk. To do it from the LimeLM interface just select multiple product keys then click the edit link.