TVH Voice docs

#Sandbox

The development stack (docker compose up) is the sandbox: the real platform plus

Service Role
sim A FreeSWITCH acting as the phone network / carrier SIP side
fakeprovider Emulated carrier APIs: mock (sandbox carrier), Telnyx and Twilio subsets

#Sandbox carrier (type: "mock")

Supports everything: number search, asynchronous orders, regulatory requirements (NL/DE/BE local numbers), documents, provider webhooks. Settings: authMode = register | credentials | ip_auth. Any apiKey starting with mock_ is accepted.

The simulated carrier works like a real one but progresses only when told to:

curl -X POST http://localhost:4010/_control/advance   # decide reviews, complete orders, send webhooks

Set FAKE_PROVIDER_AUTO_ADVANCE_MS=5000 in .env to advance automatically. A requirement value containing the word reject gets rejected (to test corrections).

#Simulated phone network

#Telnyx and Twilio without accounts

PROVIDER_API_OVERRIDES in .env points the Telnyx and Twilio adapters at the fake APIs and their SIP side at the simulator, so type: "telnyx" (any key starting with KEY) and type: "twilio" (account SID starting with AC) work in the sandbox too. Clear the variable to use real accounts. It is refused when NODE_ENV=production.