in lambda/src/check_survey_completion.py [0:0]
def lambda_handler(event, context):
user_id = event['UserId']
date = event['Date']
entry = get_survey_completion_entry(user_id, date)
if SURVEY_TBC_COL not in entry or len(entry[SURVEY_TBC_COL]) == 0:
logger.info(f'{user_id} completed all surveys for {date}')
return {
'completed': True
}
# survey not completed. determine next step and wait time
outreach_status = OutreachStatus(entry.get('Outreach_Status', 'None'))
logger.info(f'outreach status: {outreach_status}')
next_step = outreach_map[outreach_status]
if not next_step.nextStep:
event['completed'] = True
return event
event['completed'] = False
event['outreach'] = next_step.nextStep
event['wait'] = {
'mode': 'SECONDS',
'seconds': next_step.waitTimeAfterNextStep
}
return event