Patent ID: 8826382

Claim:
A method for determining whether an input received at an electronic device is generated by a user thereof or by an automated software executing thereon, the method comprising: identifying a set of capabilities of the electronic device for detecting a plurality of actions, wherein each action of the plurality of actions is a particular touch input gesture, a software application activation, or a particular movement that the electronic device is capable of identifying; based on the set of capabilities, generating a set of actions to be carried out by the user, wherein each action in the set of actions is associated with an accuracy threshold, and the accuracy threshold is based on an associated capability level of a hardware component that is included in the electronic device and configured to detect each action in the set of actions; causing the electronic device to prompt the user to attempt carrying out each action in the set of actions; receiving, from the electronic device, first input results gathered in response to prompting the user to attempt carrying out the set of actions; establishing, based on the first input results, a subset of actions that includes fewer actions than the set of actions, wherein, for each action in the subset of actions, the accuracy threshold associated with the action is not satisfied; and in response to establishing: reducing the accuracy threshold associated with each action in the subset of actions based on the associated capability level of the hardware component, causing the electronic device to prompt the user to reattempt carrying out each action in the subset of actions, receiving, from the electronic device, second input results gathered in response to prompting the user to reattempt carrying out each action in the subset of actions, and analyzing both the first input results and the second input results to determine whether the set of actions and the subset of actions were carried out by the user or by the automated software.