The discussion revolves around implementing a feature in Discourse to send unique license keys to users, either manually or automatically, to reduce abuse and ensure keys go to real people. Stephen explains their current workflow involves distributing 10–10,000 keys via third-party tools like Godankey, but publishers now require in-house documentation and verification. He suggests importing keys via CSV or text, then targeting eligible users via a query (similar to badge criteria), optionally sending private messages or populating custom fields. codinghorror asks for clarification on the workflow, prompting Stephen to elaborate that the system should allow immediate user targeting and key distribution, possibly with manual approval or automation. He notes a recent competition saw up to 10% abuse, highlighting the urgency. codinghorror mentions @techapj may have relevant experience. fefrei notes that pasting from rich-text editors (like OneNote) can cause formatting issues, as demonstrated by garbled text in their post. The core need is a secure, auditable, and scalable method to distribute keys directly through Discourse.
We’re looking for a method to send keys to our users, ideally via Discourse.
At the moment we receive anything from 10 to 10,000 keys, which we give away to our readers either first-come-first-served or at random. In the past we’ve used stuff like Godankey to do this, but many publishers now require that we do this on our own site and document the methods employed to reduce abuse and ensure keys to go to real people. Some of our previous competitions had up to 90% abuse rates, these keys can be sold on eBay for anything between $10-$100 depending on the game in question.
There has been a suggestion for some time now that we look at ways to distribute keys via Discourse, either through an automated private message, or by adding a custom field to a user that only they can see. Neither looks to be straightforward, has anyone done anything similar, or has similar requirements?
It depends if others have other similar use cases really.
All we really need is the means to feed license keys into Discourse, which could be as simple as a CSV import or text field with one line per key, and the ability to specify a query to identify eligible users. That could be similar to how we identify users for badges today. It would be desirable to run the query there and then to identify the eligible users, issuing license keys could be automatic or approved per-user. Approvals can either happen first-come first-served, or at a specified time, it all depends on what Blizzard/Ubisoft or whichever publisher we’re working with has asked for.
The interesting and I guess tricky bit is whether Discourse would either let us bulk send PMs with one unique license key per message, or create private fields that only the user can see on their account. That seems like the gap right now.
Just to come back to this, we kicked off a new competition this week appear to be seeing a fairly high abuse rate for the first time.
Up to 10% of entrants have submitted images of text, rather than a text response. Before I bring the hammer down on them I should probably check, is there anything within Discourse that could do this?
In some cases, pasting stuff from rich-text editors can do this. What you see below the line is text I wrote in OneNote, copied and pasted to Discourse: