Bot#
- class psynet.bot.Bot(*args, **kwargs)[source]#
Bases:
Participant
- assignment_id#
A String, the assignment id of the participant.
- base_pay#
The amount the participant was paid for finishing the experiment.
- bonus#
the amount the participant was paid as a bonus.
- creation_time#
the time at which the Network was created.
- details#
a generic column for storing structured JSON data
- end_time#
The time at which the participant finished.
- entry_information#
column containing structured data from the recruiter
- failed#
boolean indicating whether the Network has failed which prompts Dallinger to ignore it unless specified otherwise. Objects are usually failed to indicate something has gone wrong.
- failed_reason#
an optional reason the object was failed. If the object is failed as part of a cascading failure triggered from another object, the chain of objects will be captured in this field.
- fingerprint_hash#
A String, the fingerprint hash of the participant.
- hit_id#
A String, the id of the hit the participant is working on
- id#
a unique number for every entry. 1, 2, 3 and so on…
- mode#
live, sandbox or debug.
- Type:
A String, the mode in which Dallinger is running
- property1#
a generic column that can be used to store experiment-specific details in String form.
- property2#
a generic column that can be used to store experiment-specific details in String form.
- property3#
a generic column that can be used to store experiment-specific details in String form.
- property4#
a generic column that can be used to store experiment-specific details in String form.
- property5#
a generic column that can be used to store experiment-specific details in String form.
- recruiter_id#
A String, the nickname of the recruiter used by this participant.
- status#
String representing the current status of the participant, can be:
working
- participant is workingoverrecruited
- number of recruited participants exceed number required for the experiment, so this participant will not be usedsubmitted
- participant has submitted their workapproved
- their work has been approved and they have been paidrejected
- their work has been rejectedreturned
- they returned the hit before finishingabandoned
- they ran out of timedid_not_attend
- the participant finished, but failed the attention checkbad_data
- the participant finished, but their data was malformedmissing_notification
- this indicates that Dallinger has inferred that a Mechanical Turk notification corresponding to this participant failed to arrive. This is an uncommon, but potentially serious issue.
- take_experiment(time_factor=0, render_pages=False)[source]#
- Parameters:
time_factor – Determines how long the bot spends on each page. If 0, the bot spends no time on each page. If 1, the bot spends
time_estimate
time on each page.render_page – Whether to run page rendering code (default: False). This is generally only useful for testing.
- time_of_death#
the time at which failing occurred
- type#
a String giving the name of the class. Defaults to “participant”. This allows subclassing.
- unique_id#
A String, a concatenation of
worker_id
andassignment_id
- vars#
- worker_id#
A String, the worker id of the participant.
- class psynet.bot.BotResponse(*, raw_answer=<class 'psynet.utils.NoArgumentProvided'>, answer=<class 'psynet.utils.NoArgumentProvided'>, metadata=<class 'psynet.utils.NoArgumentProvided'>, blobs=<class 'psynet.utils.NoArgumentProvided'>, client_ip_address=<class 'psynet.utils.NoArgumentProvided'>)[source]#
Bases:
object
Defines a bot’s response to a given page.
- Parameters:
raw_answer – The raw_answer returned from the page.
answer – The (formatted) answer, as would ordinarily be computed by
format_answer
.metadata – A dictionary of metadata.
blobs – A dictionary of blobs returned from the front-end.
client_ip_address – The client’s IP address.