How to select a random user from a list of users that have flagged a content? I'm trying to make some kind of contest site, in which users can publish random old stuff, which will be raffled later between the users that have marked that content.
I crated a specific content type for this, let's call it "kiwi", with a winner field.
Then created a flag for that content, so, every content created has the button saying "I want this", when you click, you are kind of "subscribed" to that content.
I want to create a rule, which chooses a random user from the list of user that have flagged the content.

I've been struggling with this for a lot of time, I don't have any more ideas on how to solve this.

Thank you very much
Well I finally did it. The modules used were:


Rules
Flags
Views
Views rules (This one was the key, allows to execute a view inside a rule, even as loops.)


Two thins were done, first, a component which would be executed every hour, and second, inside that component, every hour, a winner would be chosen for every content that had a contest date matching the hour.

Creating scheduled component


Create a rule set component, which receives a parameter of type date.

Add a rule action schedule component evaluation, in this component created, and set as the value, the component you are editing, this will program this component to be executed one hour after it is executed.
Save everything, and go to Settings > Rules > Components and press "execute", with the value "now".
Component now is being executed every hour.


Selecting random winner


Install all the modules listed above.
Create a simple component that receives a user, and a node as parameters, then add the conditions you need, and finally add an action which sets the winner field inside the node as the user given.
Create a view and add a "Rule" display, this will be like the first query.
Lets call it "Select content programmed for now", and filter it by a given date, then add the fields that will display, "nid" is the most important.
Change the section "edit field info", inside "Rules settings", setting the type of the output, choose "Node" type for the nid (this gives the reference to the node instead of a number).
Create another view, called "choose random winner", make it receive a "nid" and return the list of flagged user "uid", sort it with a global random criteria, and set max results with 1.
Repeat 4 for this view, but with "User" type.
Go to the component which executes every hour, add a view loop action in your rule.
Select the view that filters the content for the current date.
Add a view loop inside that loop, with the new rule.
Add an action containing the component created at the beginning with the parameters you now have available.