LevSMS Router Go-Live

May 13 2026, 4:20 PM EDT · Private Ops briefing · next step after Twilio connection

Current Snapshot

  • Reported unblocked: Sam says Twilio is connected / LevSMS is OK to work.
  • Not email-verified: connected Gmail did not show a clean A2P approval email.
  • Public compliance surface: https://levsms.com/, /privacy.html, /terms.html.
  • Support: support@levsms.com.
  • Number: (516) 585-2323.
  • Missing live piece: Twilio inbound webhook is not yet connected to a command router in this workspace.

What I Built Locally

  • levsms-router-apps-script/Code.js - Apps Script TwiML router.
  • levsms-router-apps-script/DEPLOY_CHECKLIST.md - exact go-live steps.
  • levsms-router-apps-script/TWILIO_CONSOLE_CAPTURE.md - fields to capture from Twilio.
  • levsms-router-apps-script/sheet-template/ - CSV seed tabs for the backend Sheet.

The router replies directly with a TwiML body, so first inbound replies do not need a Twilio auth token.

Go-Live Sequence

  1. Open Twilio and capture Brand, Campaign, Messaging Service, linked sender, and current webhook fields.
  2. Create Google Sheet: LevSMS Backend - MVP Router.
  3. Create tabs: INBOUND_LOG, OUTBOUND_LOG, CONTACTS, COMMANDS, APPROVED_RESPONSES, SETTINGS.
  4. Paste the matching CSV from levsms-router-apps-script/sheet-template/ into each tab, or let setupLevSmsSheet() seed it.
  5. Open Extensions > Apps Script, paste Code.js, save, run setupLevSmsSheet(), authorize.
  6. Deploy as Web App: execute as Me, access Anyone.
  7. In Twilio Messaging Service, set inbound webhook to the Web App URL using HTTP POST.
  8. Test from Sam's phone: MENU, HELP, MINYAN, ZMANIM, STOP, START, ABCXYZ.

First Test Expectations

TextExpected response
MENUList of commands.
HELPSupport, rates, STOP instructions.
MINYANPlaceholder or approved minyan response from APPROVED_RESPONSES.
STOPUnsubscribe confirmation and CONTACTS status update.
STARTWelcome/rejoin confirmation.
ABCXYZUnknown command response.

Rules That Protect This

No AI in live public SMS path Only Approved rows go live No Twilio tokens in git STOP always honored HELP always works Logs every inbound/outbound

Connector note

I tried to create/upload the Google Sheet directly through the Drive connector. Google returned 403 Forbidden. Reconnect Drive with create/upload permissions before asking Codex to make the Sheet natively.

Apps Script's current ContentService MIME enum includes TEXT but not XML, so this MVP serves the valid TwiML body as text. If Twilio demands strict text/xml, move the same router logic to Cloudflare Workers or Netlify Functions.

Operator Command For Next Agent

Continue LevSMS from levsms-router-apps-script/DEPLOY_CHECKLIST.md. Twilio is reportedly connected. Capture exact Twilio console status, create the LevSMS Backend Sheet, deploy Code.js as Apps Script Web App, set Twilio Messaging Service inbound webhook to POST to the Web App URL, then test MENU/HELP/STOP/START/MINYAN/ZMANIM.