dograh/api
Sabiha Khan 5ee68f58bb fix: honor telnyxs per-call codec in bidirectional stream
Telnyx's bidirectional stream uses different codecs per direction:
  - Dograh → Telnyx: what we declare via `stream_bidirectional_codec`
  - Telnyx → Dograh: whatever the PSTN leg negotiated (PCMA for UK,
    Europe, India termination; PCMU for US), announced as
    `media_format.encoding` on the WebSocket start message.

We hardcoded both directions on the serializer to PCMU, so any call
whose PSTN leg used PCMA arrived as A-law bytes that we decoded
through a μ-law table → static for the entire call.

`handle_websocket` now extracts `media_format.encoding` from the
start message and threads it through `transport_kwargs`. The
serializer uses it for the Telnyx → Dograh direction; the
Dograh → Telnyx direction stays pinned to PCMU to match the
unchanged `stream_bidirectional_codec` in the dial/answer payloads.

Note: pipecat's `TelnyxFrameSerializer` names its params from the
call's POV, not Dograh's — `inbound_encoding` is what we send into
the call, `outbound_encoding` is what we receive. Easy to mix up.
2026-04-29 19:12:06 +05:30
..
alembic feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
assets feat: telephony call transfer (#155) 2026-02-16 14:33:33 +05:30
db feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
errors Feat/inbound telephony (#113) 2026-01-12 10:10:30 +05:30
mcp_server fix: make trigger paths globally unique 2026-04-25 19:44:44 +05:30
native/rnnoise Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
routes feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
schemas feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
services fix: honor telnyxs per-call codec in bidirectional stream 2026-04-29 19:12:06 +05:30
tasks feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
tests feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
utils feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
.cursorignore Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
.dockerignore Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
.env.example feat: add mcp server to Dograh OSS (#240) 2026-04-16 13:03:29 +05:30
.gitignore Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
__init__.py Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
AGENTS.md feat: refactor telephony to support multiple telephony configurations (#251) 2026-04-29 11:39:57 +05:30
alembic.ini Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
app.py feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
CLAUDE.md Chore/add setup and contributing docs (#90) 2025-12-27 09:25:20 +05:30
conftest.py feat: add posthog signup and signin events, enable backend posthog events for oss version (#249) 2026-04-24 12:02:52 +05:30
constants.py feat: add posthog events (#231) 2026-04-10 17:52:21 +05:30
Dockerfile feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
enums.py feat: add Plivo telephony provider support (#245) 2026-04-25 20:41:46 +05:30
logging_config.py feat: add mcp server to Dograh OSS (#240) 2026-04-16 13:03:29 +05:30
pyproject.toml chore(main): release dograh 1.26.0 (#246) 2026-04-21 18:17:02 +05:30
pytest.ini feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
requirements.dev.txt feat: add create workflow tool in MCP 2026-04-25 17:38:38 +05:30
requirements.txt feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30
sdk_expose.py feat: refactor node spec and add mcp tools (#244) 2026-04-21 07:56:16 +05:30