sinfo / cannon-api

:bomb: Only a few know what it shoots.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Send surveys by email and check if survey was submitted

carlosfaria94 opened this issue · comments

Actual flow:

  1. Attendee scans the QRCode on the paper for a given session
  2. Attendee is redirected to sinfo-webapp GET /redeem/{QRCodeID}
  3. Attendee fills the survey associated to a given session
  4. Attendee submits the response to the cannon-api POST /surveys/{redeemCode}
  5. Attendee wins the points and an achievements

Desired flow:

(There are 40 attendees waiting in line)

  1. SINFO team member (Bob) reads each attendee profile QRCode
  2. Bob's app is saving (on the device) all the attendees profiles
  3. When Bob finishes scanning all attendees on the waiting line, Bob's app sends a request to the cannon-api with a batch of all attendees profiles
  4. cannon-api sends an email to all attendees on the batch with the URL to the survey
  5. Attendee fills and submits the survey to the cannon-api POST /surveys/{redeemCode}
  6. Attendee wins the points and an achievements

Tasks:

  • Create an endpoint to receive a batch/array of attendee/user IDs (Proposal: POST /sessions/{sessionId}/check-in
  • Create a redeem code for each attendee
  • Send /r/{redeemCode} (link to the survey) to the attendee email (surveys are obtained from users here)

Client-side: sinfo/ng-sinfo-webapp#9

commented

Looks good!

@johnytiago We need to create an endpoint to receive a batch/array of attendee/user IDs, my proposal:

POST /sessions/{sessionId}/check-in
body: An array of users IDs
scope/permission: team, admin

Do you think this will conflict with #63 ?