Daily RingCentral SMS reminders for tomorrow's appointments

By General Input

Every morning at 7am, we text tomorrow's customers their appointment time from your own business number, so fewer slots get lost to no-shows.

Integrations

  • RingCentral
  • Google Calendar

Type

Deterministic Code

Categories

  • Operations
  • Customer Support

Every morning at 7am, text tomorrow's customers an appointment reminder so we stop losing slots to no-shows. Build this as a deterministic code workflow on a cron trigger. Every step is a fixed lookup and a formatted send, so no agent reasoning is needed anywhere in the chain.

Start with Google Calendar List Events against a specific booking calendar whose calendar ID I will configure. It is not necessarily my primary calendar, so make the calendar ID an input rather than hardcoding 'primary'. Scope the window to the whole of tomorrow in the business timezone, from 00:00:00 to 23:59:59. Set singleEvents to true so recurring appointments expand into individual instances, and order by start time so reminders go out in appointment order. Page through results if there are more than one page of events.

Filter the events before sending anything. Skip all-day events, which come back with a date field instead of a dateTime on start. Skip anything already cancelled, meaning the event status is cancelled, or the title carries an obvious cancelled marker. Skip internal meetings, which for this workflow means any event where no customer mobile number can be found.

For each remaining event, pull the customer's mobile number from the event description or the location field. Accept the common ways people type numbers, strip spaces, dashes and parentheses, and normalize to E.164 using a default country code I configure. If no valid number parses out, skip that event rather than guessing or sending to a partial number. Take the customer's name from the event summary or the attendee display name, and use just the first name in the message.

Send each reminder with RingCentral Send SMS. The message is templated and includes three things: the customer's first name, the appointment date and time rendered in the customer's local timezone, and a short closing line telling them how to reply if they need to reschedule. For the timezone, use the event's own start timeZone and fall back to the calendar's default timezone. Keep the message inside a single SMS segment where possible. Something like: 'Hi Dana, reminder: your appointment is Tue Aug 12 at 2:30 PM. Reply RESCHEDULE and we will find you a new time.'

Two RingCentral constraints to build around. First, RingCentral sends SMS from the connected extension's own phone number, and even an admin cannot send on behalf of another user's extension, so this must run on the credential for the extension whose number I want customers to see and reply to. Second, if this calendar runs a high daily volume, the A2P SMS scope is the one that covers application-to-person sending at volume, as opposed to casual person-to-person texting.

Make the run resilient. Send one message per appointment, and if a single send fails, log it and keep going rather than aborting the whole run. Pace the sends so we stay inside RingCentral's per-minute rate limits instead of firing everything at once, and honor Retry-After if we get throttled. Log one line per event recording either sent, or skipped with the reason: all-day, cancelled, or no phone number. Finish by returning a count of reminders sent and reminders skipped by reason.

Related prompts

Explore more prompts
Front desk appointment confirmation board for the next 3 daysAppointment confirmation board built on WhatsApp repliesPlan a field sales day around drive time and neglected accountsShort-term rental turnover console for Home AssistantRun your HoneyBook booking season from one calendarA keep in touch board built on your Google ContactsSee who actually joined your recurring Google Meet callsSee which of your recurring meetings are one person talkingHiring debrief room where every rating shows its evidenceSee which meetings are wrecking your sleep and recovery