Google Apps Script that turns Regal Cinemas ticket emails into Google Calendar events
Files
README.md

Regal2Cal #

your movie tickets, on your calendar

Regal2Cal is a Google Apps Script that watches Gmail for Regal Cinemas ticket emails and adds each showing to Google Calendar with the theater, address, auditorium, seats and ticket types.

Regal's emails only have the showtime and theater in the ticket image, not the text. The script reads the image with Google Drive's built-in OCR (no AI), looks up the theater's address with Google Maps and the movie's runtime on Wikidata, and creates the event with a popup reminder 10 minutes before the showtime. It checks every 15 minutes and labels each email regal-calendar once it's handled, or regal-calendar-failed if it couldn't read it.

Setup #

  1. Create a new project at script.google.com and paste in Code.js and appsscript.json (show appsscript.json under Project Settings > Show "appsscript.json" manifest file in editor).
  2. Run debugLatestOcr() to grant permissions and check that your latest ticket email reads correctly in the log.
  3. Run install() to start checking every 15 minutes.

Limitations #

  • If Wikidata doesn't have the runtime yet (common for brand-new releases), the event is 120 minutes.
  • Titles like "IMAX: Dune: Part Three" or "Wildwood 3D" keep their format markers in the event name.
  • If the address lookup picks the wrong theater, set a Script Property named addr:<theater name> to the right address.
  • Failed emails aren't retried until you remove the regal-calendar-failed label.
  • So far it's been tested against one theater's tickets.