Skip to content

feat: wire blaze realtime stt/tts into voice-assistant#2224

Open
trunghlt wants to merge 2 commits into
TEN-framework:mainfrom
trunghlt:feat/blaze-realtime-stt-tts
Open

feat: wire blaze realtime stt/tts into voice-assistant#2224
trunghlt wants to merge 2 commits into
TEN-framework:mainfrom
trunghlt:feat/blaze-realtime-stt-tts

Conversation

@trunghlt

Copy link
Copy Markdown

Summary

  • Turn blaze_stt_python / blaze_tts_python into real TEN addons (ASR base + TTS2 HTTP extension wiring).
  • STT uses Blaze realtime WebSocket (stt-stream-1.5 on /v1/stt/realtime).
  • TTS uses Blaze realtime WebSocket per official docs (2.0-realtime, strategy request, auth handshake) with PCM output for RTC.
  • Add voice-assistant graphs: voice_assistant_blaze_stt, voice_assistant_blaze_tts, voice_assistant_blaze_full.
  • Document Blaze env vars in .env.example and add ai_agents/scripts/smoke_blaze.py for API smoke checks.

Test plan

  • Set BLAZE_API_KEY / BLAZE_STT_API_KEY / BLAZE_TTS_API_KEY and URLs in ai_agents/.env
  • python ai_agents/scripts/smoke_blaze.py against live Blaze API
  • task install + task run for voice-assistant
  • Join playground with graph voice_assistant_blaze_full (Agora + OpenAI keys required)
  • Confirm STT partials/finals and TTS audio with speaker HN-Nu-CSKH-HuongGiang

@trunghlt

Copy link
Copy Markdown
Author

CI / review status update

Hi @halajohn @plutoless — requesting a review and a quick CI unlock.

What is blocked (not code)

Most workflows are in action_required because this is a first-time fork contributor PR. GitHub needs a maintainer to approve workflow runs on the Actions tab for:

  • AI Agents (Build & Test)
  • Lint Commit Messages
  • Lint PR Name
  • Build Docker Image for AI Agents

claude-review failed with: Actor does not have write permissions (fork actor is read only) — not a product-code failure.

What’s in the PR

  • Blaze STT TEN addon: stt-stream-1.5 WebSocket realtime
  • Blaze TTS TEN addon: 2.0-realtime WebSocket per official docs (strategy: request + successful-authentication)
  • Graphs: voice_assistant_blaze_stt / _tts / _full
  • Smoke script + .env.example keys

Please approve the pending workflows when you can, then review. Thanks!

@trunghlt

Copy link
Copy Markdown
Author

Status update (babysit)

CI blocked (not a code failure)

Most workflows are still in action_required because this is a first-time fork contributor PR. GitHub requires a maintainer to approve workflow runs on the Actions tab for jobs such as:

  • AI Agents (Build & Test)
  • Lint Commit Messages
  • Lint PR Name
  • Build Docker Image for AI Agents

claude-review failure is permission-related

claude-review failed with Actor does not have write permissions (fork actor is read only). That is not a product-code failure.

Preemptive code fix pushed

Just pushed fix: address formatting for blaze extensions so Black (--line-length 80) will pass on:

  • blaze_stt_python (config.py, extension.py)
  • blaze_tts_python (config.py, ten_tts_client.py)

Realtime TTS client remains correct per Blaze docs (strategy: request + successful-authentication).

Ask

@halajohn @plutoless — please approve the pending workflows when you can, then review. Thanks!

trunghlt added 2 commits July 18, 2026 15:30
Add TEN addon wrappers for Blaze STT (stt-stream-1.5 websocket) and TTS
(2.0-realtime per official docs), voice-assistant graphs, env example
keys, and a local smoke script for API checks.
@trunghlt
trunghlt force-pushed the feat/blaze-realtime-stt-tts branch from 36817ea to 89f7835 Compare July 18, 2026 08:31
@trunghlt

Copy link
Copy Markdown
Author

Automated fix: rebased onto main and resolved merge conflicts.

@trunghlt

Copy link
Copy Markdown
Author

Gentle reminder

Hi @halajohn @plutoless — still blocked on maintainer actions (no code changes pending):

  1. Approve pending workflow runs (first-time fork PR): AI Agents (Build & Test), Lint Commit Messages, Lint PR Name, Build Docker Image for AI Agents
  2. Review when you have a chance

claude-review red is a fork permissions issue, not product code. PR is mergeable and rebased onto main. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant