Skip to main content

telephony-integration

Add or modify telephony providers in assistant-api with transport-aware streamer/webhook implementations, factory wiring, and codec/resampling compatibility.

Source facts

Repository
rapidaai/voice-ai
Last source activity
September 26, 2026 at 18:58
Detected SKILL.md language
English
Stars
744
Forks
123

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
6 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
telephony-integration
description
Add or modify telephony providers in assistant-api with transport-aware streamer/webhook implementations, factory wiring, and codec/resampling compatibility.
# Telephony Integration Skill ## Mission Integrate telephony providers safely across webhook payloads, media streams, callbacks, and cleanup paths. ## Inputs expected from user 1. Transport type: WebSocket, SIP, AudioSocket, or mixed. 2. Inbound/outbound requirements. 3. Codec and sample-rate constraints. If missing: - Use nearest baseline (`twilio`, `exotel`, `vonage`, `asterisk`, `sip`). - Preserve internal LINEAR16 16k and base resampler usage. ## Hard boundaries In scope: - `api/assistant-api/internal/channel/telephony/internal/<provider>/...` - `api/assistant-api/internal/channel/telephony/telephony.go` - optional: `inbound.go`, `outbound.go`, `type/telephony.go`, `type/streamer.go` - UI telephony registry/component wiring Out of scope: - STT/TTS provider internals - EOS/VAD internals - integration-api LLM caller logic ## Runtime flow checklist 1. `ReceiveCall` maps webhook payload to `CallInfo`. 2. `InboundCall` returns provider connect handshake. 3. Streamer `Recv/Send` handles codec and buffer lifecycle. 4. `StatusCallback` maps provider events. 5. Disconnect and directive paths cleanly terminate sessions. ## Lifecycle integration - `development-lifecycle` owns tier selection and the repository-level change contract. - Use `change-analysis` when ownership, consumers, or blast radius is not already proven. - This skill owns its domain evidence and boundaries; `developing-change` owns implementation discipline. - Use `debugging` for unexplained failures and `writing-documentation` for documentation changes. - Use `reviewing-change` for independent review and `responding-to-review` for its findings. - Use `preparing-delivery` only when the user explicitly requests a delivery action. ## Governed lifecycle - Classify work as Fast, Standard, or Governed using `DEVELOPMENT_PROCESS.md`; use the full gated lifecycle only for Governed work. - This skill operates only in its assigned phase and path ownership; it may not approve its own plan or code review. - Governed implementation starts only from a coordinator-attested approved plan; Fast and Standard work follows its lighter documented lifecycle. - Return changed-file and verification evidence to the coordinator, then route the complete verified diff to the read-only `code-reviewer`. ## Validation commands - `go test ./api/assistant-api/internal/channel/telephony/...` - `go test ./api/assistant-api/internal/adapters/internal/...` - `cd ui && yarn test providers` - `./.codex/skills/telephony-integration/scripts/validate.sh --check-diff --provider <provider>` ## References - `references/checklist.md` - `references/telephony-provider-checklist.md` - `examples/sample.md`
View on GitHub