Skip to content

Latest commit

 

History

History
51 lines (42 loc) · 2.43 KB

File metadata and controls

51 lines (42 loc) · 2.43 KB

Architecture

Native Zoom cloud recording, bridged into Attio Call Intelligence — no bot participant required.

attioom architecture: Zoom webhook to webhook handler to Supabase queue and storage to bridge processor to Attio API, with scheduler and sweep-dedup crons running alongside

Text version of the same flow:

Zoom webhook (recording.completed)
        │
        ▼
┌───────────────────┐
│  Webhook handler  │  verify signature, dedup-claim, enqueue row (< 3s)
└─────────┬─────────┘
          │
          ▼
┌───────────────────┐
│ Supabase Postgres │  zoom_attio_bridge_recordings (resumable queue + leases)
│ Supabase Storage  │  temporary MP4 staging (signed URLs for Attio)
└─────────┬─────────┘
          │
          ▼  cron: process-queue (every 5 min)
┌───────────────────┐
│  Bridge processor │  policy → match Attio meeting → download → stage → push
└─────────┬─────────┘
          │
          ▼
┌───────────────────┐
│   Attio API       │  POST call_recording (video_url) + transcript push
└───────────────────┘

Parallel cron ladder:
  • scheduler (every 10 min) — enable cloud recording on upcoming meetings
  • sweep-dedup (every 5 min) — reclaim stale webhook claim rows

Components

Layer Role
Webhook handler Answers Zoom within 3s: signature verify, dedup claim, enqueue one row per recording
Postgres queue zoom_attio_bridge_recordings — resumable status ladder with lease-based claiming
Storage staging Temporary MP4 in Supabase Storage; signed public URL for Attio to fetch
Bridge processor Policy checks, Attio meeting match/create, download, stage, push video + transcript
Scheduler Enables auto_recording: cloud on upcoming meetings for configured users
Dedup sweep Reclaims stale webhook claim rows

Reference implementation

Deploy the Next.js app in example/nextjs (Vercel or any Node host). See setup.md for credentials and env vars, tuning.md for policy knobs, and api-notes.md for Zoom/Attio gotchas.