def reward_bonus(self, assignment_id, amount, reason): """Reward the Turker with a bonus.""" from psiturk.amt_services import MTurkServices self.amt_services = MTurkServices( self.aws_access_key_id, self.aws_secret_access_key, self.config.getboolean('Shell Parameters', 'launch_in_sandbox_mode')) return self.amt_services.bonus_worker(assignment_id, amount, reason)
def approve_hit(self, assignment_id): """Approve the HIT.""" from psiturk.amt_services import MTurkServices self.amt_services = MTurkServices( self.aws_access_key_id, self.aws_secret_access_key, self.config.getboolean('Shell Parameters', 'launch_in_sandbox_mode')) return self.amt_services.approve_worker(assignment_id)
def open_recruitment(self, n=1): """Open recruitment for the first HIT, unless it's already open.""" from psiturk.amt_services import MTurkServices, RDSServices from psiturk.psiturk_shell import PsiturkNetworkShell from psiturk.psiturk_org_services import PsiturkOrgServices psiturk_access_key_id = os.getenv( "psiturk_access_key_id", self.config.get("psiTurk Access", "psiturk_access_key_id")) psiturk_secret_access_id = os.getenv( "psiturk_secret_access_id", self.config.get("psiTurk Access", "psiturk_secret_access_id")) web_services = PsiturkOrgServices(psiturk_access_key_id, psiturk_secret_access_id) aws_rds_services = RDSServices(self.aws_access_key_id, self.aws_secret_access_key, self.aws_region) self.amt_services = MTurkServices( self.aws_access_key_id, self.aws_secret_access_key, self.config.getboolean('Shell Parameters', 'launch_in_sandbox_mode')) self.shell = PsiturkNetworkShell( self.config, self.amt_services, aws_rds_services, web_services, self.server, self.config.getboolean('Shell Parameters', 'launch_in_sandbox_mode')) try: participants = Participant.query.all() assert (participants) except Exception: # Create the first HIT. self.shell.hit_create( n, self.config.get('HIT Configuration', 'base_payment'), self.config.get('HIT Configuration', 'duration')) else: # HIT was already created, no need to recreate it. print "Reject recruitment reopening: experiment has started."