Providing Conditional Updates through one wyBuild Project

wyDay Team,

I definitely need to take these first opportunities within a post to mention that things are running great using your wyBuild/wyUpdate products. I don't know how much people get to rave about your products, but I'm loving it. The usability and simplicity within the design has been great to work with. That being said, a recent challenge was presented to me and Im not sure how to solve it.

What I want to do is conditionally allow a user to get an update. In other words, I need updates that are pushed to our server to be receivable only by selected users, before we allow everybody else to receive the same update.

Ive seen your article on using LimeLM to validate a license key before allowing the user to download a specific update and I think that this is how Im going to need to proceed. Here is the link Im referring to: http://wyday.com/wybuild/help/limit-updates.php

Heres my scenario.

Customers 1,2 & 3 are all at version 1 of my product.A hot fix is created because of a reported bug, but I only want customer 1 to get the hotfix. Well call this version 1.1.

What needs to happen is the following:1) When customer 1 checks for update, he will be receiving version 1.12) When customers 2 and 3 check for updates they will receive nothing

Later on, after we decided 1.1 is good and can be sent to everybody, we will somehow allow customers 2 and 3 to download it as well.

So from your article, Id need to create a proxy between the updater download an and pass a license key to my update url.

I can then validate the key using LimeLM or some other licensing manager. And then they go on to get the update. I guess Im a little vague on how to implement the scenario I outlined earlier with regards to licensing. If I create a new version of a product, do I need to generate a new product key? Can I use the old product key? How can I block specific customers from accessing specific updates?

Jim

Hey Jim,

I definitely need to take these first opportunities within a post to mention that things are running great using your wyBuild/wyUpdate products. I don't know how much people get to rave about your products, but I'm loving it.

Thanks, we all truly appreciate it.

I can then validate the key using LimeLM or some other licensing manager. And then they go on to get the update. I guess Im a little vague on how to implement the scenario I outlined earlier with regards to licensing. If I create a new version of a product, do I need to generate a new product key? Can I use the old product key? How can I block specific customers from accessing specific updates?

Well, if you're using LimeLM, then the way to differentiate users is the product key. So how do you know (or, more specifically, how does the script that will be serving the *.wys and *.wyu files know) which users will get the old *.wys file and which users get the new *.wys file (that references the hotpatch)? The answer is custom license features.

So how would this all work?

To start with create a custom license feature for the version, let's call it "update_channel", and when you generate/edit product keys, set it to either "hotpatch" or "regular". Then in the "update downloader script", read the feature value and if it's "hotpatch" then deliver the wyserver.wys file that contains the updates to the lates *.wyu files. Otherwise deliver the "old" *.wys file.

Does that make sense? I know it's a bit much for all at once.

Are you using LimeLM? If so, I'll be able to make this easier for you. Or were you just looking for a broad overview?