Urgent.News

What's breaking now, across thousands of outlets.

Tech

Event Notification Fallback — Delayed Email-to-SMS Status Polling and Timeout Recovery

A property-management signup flow can deliver a verification link by email, wait for a bounded polling window, and then send SMS when the email outcome is still uncertain. The least complex correct design is a scheduled worker backed by a small state machine. It is not an instant email-to-SMS chain: without webhooks on either channel, fallback timing is approximate. TL;DR: Pick one timeout based…

When a property management system needs to send a verification link via email, it waits for a set time before sending a text message (SMS) if the email delivery is still uncertain. To keep the design simple, a scheduled worker using a small state machine is recommended. This approach involves selecting a timeout based on user experience, polling with backoff, and making the SMS transition atomic. If the email result is unknown, the system treats it as unknown, not failed.

Teams can choose between different integration options. One option is to use Twilio SendGrid for email and Twilio Messaging for SMS, which is suitable if communications are already within the Twilio ecosystem. Another option is to use Amazon SES for email and Amazon SNS for SMS, which is ideal for teams already operating within AWS and utilizing IAM, regional deployment, and operational conventions.

A third option is to use Resend paired with another SMS provider, which allows for a clear separation of operational ownership with two credentials, bills, and status vocabularies. The unified alternative reduces the number of vendors and credentials, but it may be unnecessary for a small product backend.

Regardless of the chosen integration, the system should have three application states: EMAIL_PENDING, EMAIL_CONFIRMED, and SMS_REQUESTED. A durable worker should manage the state transitions, handling retries and timeouts. The timeout is a product decision, not a provider fact, and can be set based on the specific signup screen. The worker should be recoverable, state-neutral, and own time, concurrency, and policy.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

More from Friday 9 October →