How we brought a Covid-19 symptom screening process to scale in hours

Integrating Typeform, Zapier, Twilio, and more to screen for Covid-19 symptoms using QR codes and SMS text messages before kids arrive on campus.

The Process

  1. Parents fill out a form for their camper, asking about symptoms and exposure
  2. Parents of campers who are cleared to come to camp receive a text message with a QR code
  3. Parents and campers arrive on campus, and staff scans the QR codes, granting the campers entry to campus
  4. The scanned data is saved in a Google Spreadsheet
Screening Form
Receiving the QR code

Under the hood — how it all works

The process

Screening Form (Typeform)

  • Allow for as many responses as you anticipate (e.g. if you have 300 participants every weekday for a month, you’ll need a service that allows for at least 9,000 responses per month)
  • Supports conditional logic (in Typeform, this is called Logic Jumps). For example, if a user answers “Yes” to one question, skip to different section.
  • Allows for as many questions as you need to ask (should be obvious, but some do have limits)

Set up an SMS account (Twilio)

Compiling the data and preparing to send (Zapier)

  • Choose App & Event — App: Typeform; Event: New Entry
  • Choose Account — Link your Typeform account
  • Customize Entry — Identify the form you previously created and select it.
  • Find Data — If you filled out the form as a test or sample, the data should appear here as a test. If you didn’t already fill it out, go ahead and do that and then test again to see if the results appear.
  • Choose App & Event — App: Formatter by Zapier; Event: Text
  • Customize Text
    Values:
    Select the “Full name” question from Step 1. In a normal entry, the name would have a space (e.g. “Jared Hasen-Klein”)
    Find: [:space:]
    Replace: %20
  • Send Data — Ensure that the space was replaced in your example (e.g. “Jared Hasen-Klein” → “Jared%20Hasen-Klein”)
  • Choose App & Event — App: Twilio; Event: Send SMS
  • Choose Account — Link your Twilio account and select it
  • Customize SMS — This step writes the actual text message. This is the most important step to get right, so pay careful attention to each part.
    From Number: Select your Twilio number. If you haven’t already picked a number on Twilio, do that first.
    Alphanumeric Sender ID: Leave this blank
    To Number: Select the number from Step 1 where you ask for the cell phone number on the form
    Message: This is the text in your message (not the QR code itself). You can send whatever you want. We choose to send (Sierra Canyon Day Camp) Screening approved for <name> (<Date>). For example, it’ll send (Sierra Canyon Day Camp) Screening approved for Jared Hasen-Klein (6/1/2020). You can pick whatever variables from Step 1 you would like.
    Media URL: You are now generating the QR code. We selected qrickit.com to generate the code because it lets you generate a QR code from the URL without any limits or fees. You will need to add each parameter from the form to the URL.
    We used the following URL:
https://qrickit.com/api/qr.php?d=Name:{{name from step 2}}*contact:{{question1}}*symptoms:{{question2}}*fever:{{question3}}&addtext={{name}}+{{date}}&txtcolor=000000&fgdcolor=34345C&bgdcolor=FFFFFF&qrsize=300&t=p&e=m 
  • Send Data — Test that the information you entered on your sample form sends a QR code to you successfully.

Scanning and saving the data (Scan to Google Sheets/Google Sheets)

  1. Make a new Google Sheet (sheets.google.com). You’ll need a free Google Account.
  2. Copy the URL to the spreadsheet
  3. Paste the URL into the settings page of the app and select the tab you want the data to go to
  4. Scan one code to test
  5. Optionally, configure your spreadsheet to split at the astrisks (for example, if your data is in cells A1:D100, on Sheet1, you should place a formula like =ARRAYFORMULA(SPLIT(A1:D100,"*")) and modify more as needed. Feel free to get as fancy as you’d like once the data is in the spreadsheet.

Having a backup plan

Drawbacks to this plan and alternative methods

  • Use a free form creator instead of Typeform. Google Forms is great, although its apperance is not as professional and its options are not as customizable. It will save you between $30–75/month, though, depending on what Typeform plan you would have picked.
  • Instead of Zapier, code it yourself. This requires you to have much more technical knowledge. You can definitely do it, though, if you’re ambitious. This would eliminate Zapier, which is by far the greatest expense — but clearly also adds the most value.
  • Eliminate the entire QR code process. If you wanted to only collect form responses on something like a Google Forms or Typeform, you could ask campers (or students) for their names and check them against the list of responses as they enter. This is definitely easier and cheaper, but it’s not as scalable and could potentially slow down your line of cars or people waiting to enter. With 300 campers arriving on campus each day, the QR codes definitely simplified it.

Conclusions

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jared Hasen-Klein

Jared Hasen-Klein

Senior Political Science major at Cal Poly Pomona and Programs Director at Sierra Canyon Day Camp.