Blog · Case study

Case Study: Scaling Smart Teleassistance Voice Routing with Edge Compute and Zero-Cold-Start Cascades

How Senior Safe leverages WakeUp Dev's core engine, Cloudflare Workers, and Twilio voice bridges to process critical domestic emergency alerts in milliseconds — covering SRE emergency routing, Cloudflare Workers voice alerts, and voicemail false positive mitigation.

· Enrique Drack

The routing problem is the same as SRE paging

Senior Safe is a Chilean teleassistance product: a domestic SOS must reach a human guardian in seconds. That is the same class of problem SRE teams face when Grafana or UptimeRobot fires — except the blast radius is a household, not a cluster. Push and email are easy to miss. A phone call is harder to ignore, but a naive dialer creates a worse failure mode: voicemail false positives. The machine answers. The cascade stops. Nobody actually heard the alert.

WakeUp Dev is the shared voice engine. Senior Safe consumes it for family emergencies. DevOps teams consume the same Worker for SRE emergency routing. One on-call cascade, two products, zero per-seat tax.

Edge compute: Cloudflare Workers voice alerts without cold starts

Domestic emergencies do not wait for a container to boot. The public ingest lives on Cloudflare Workers at api.wakeupdev.com. Isolates are already warm at the edge. There is no Lambda-style cold start on the first 3 a.m. page. Auth is an x-api-key header; the body is raw text or JSON (capped at 4,000 characters). Credits are consumed atomically in Postgres before the cascade is scheduled — a 202 means a credit is gone and a call is in flight.

That contract is what Senior Safe and a Grafana contact point both speak. See webhook to phone call and the integration toolbox.

curl -X POST https://api.wakeupdev.com/v1/alert \
  -H "x-api-key: wk_your_key" \
  -H "Content-Type: application/json" \
  -d '{"message":"Senior Safe SOS — guardian cascade","severity":"critical"}'

# HTTP 202
# {"accepted":true,"estado":"TRIGGERED","creditos_restantes":4}

Voicemail false positive mitigation: ACK is a digit, not a pickup

Answering machine detection is a hint, not a source of truth. WakeUp Dev treats human acknowledgement as a Twilio Gather on digit 1. If the callee does not confirm, the Worker does not mark the incident acknowledged. The cascade continues: next guardian, next on-call, next attempt. That is the difference between “the carrier connected audio” and “a human heard the alert.”

For Senior Safe, the first hop is a family member. For a DevOps squad, it is whoever is on shift. Same TwiML bridge. Same voicemail-resistant policy. AMD can stay off; the ACK digit still holds the line.

# Conceptual TwiML (Gather + cascade)
<Response>
  <Gather numDigits="1" action="/v1/twilio/ivr-callback">
    <Say language="es-MX">Alerta WakeUp Dev. Presione 1 para confirmar.</Say>
  </Gather>
</Response>
# No digit → status callback → next target in on-call order

Zero-cold-start cascades

After ingest, the Worker does not wait on Groq to accept the alert. HTTP 202 returns immediately. Voice copy is filled asynchronously; Twilio dials from the edge callback origin. Escalation is ordered roster, then weekly shifts, then the account’s verified E.164 fallback. Each hop is another Worker invocation — still no cold start — until ACK or exhaustion.

Credits are FIFO against gift lots when a promo applies, then paid balance. The guardian does not see billing. The SRE does not see a per-seat invoice for adding a fourth engineer. That is the commercial contract Senior Safe needed for households and WakeUp Dev needed for squads: pay per dispatched call, unlimited humans on the graph.

What this architecture taught us

  • Treat voicemail as a failed hop. Pickup is not ACK.
  • Keep ingest on isolates with no boot penalty — Cloudflare Workers voice alerts stay in the millisecond path.
  • Deduct credit before dial. 202 is a promise you already paid for.
  • One cascade engine can serve teleassistance and SRE emergency routing if the contract is HTTP + a human digit.

💬 SRE & DevOps Insights

What are your thoughts on edge-based escalation handlers? How do you manage voicemail false positives in your current infrastructure shifts? This blog is open to architectural debates and feedback!

Write to administrador@wakeupdev.com or continue from the FAQ.