Skip to main content
Tencent RTC (Real-Time Communication) is an edge transport plugin that replaces the default communication layer in Vision Agents. It connects your agent to Tencent’s global real-time network, optimized for ultra-low latency in mainland China and across Asia.
This plugin is currently in early access and available by invitation. General availability is coming soon. Apply below to get started today.

Why Tencent RTC

  • Low-latency in China — Tencent’s edge network delivers strong performance in China, where other transport providers may face higher latency or connectivity issues.
  • Frontend SDKs — Tencent provides client SDKs for Web, iOS, and Android, so you can build end-user applications that connect to the same RTC room as your agent.
  • Drop-in replacement — The plugin implements the same EdgeTransport interface. Swap edge=tencent.Edge(...) into your Agent and keep your existing LLM, STT, TTS, vision, and avatar plugins unchanged.
  • Audio and video — Supports both audio and video tracks for voice agents, video agents, and multimodal applications.

Get Access

Apply for early access

Click below to open a pre-filled email in your mail app:

Apply for Early Access

Opens your mail app with a pre-filled template
The email includes these fields for you to fill in:
  • Your name and company (or “Independent Developer”)
  • Region
  • GitHub profile URL
  • A brief description of what you’re building (optionally, the expected maximum number of concurrent users and agents)
The Tencent team will review your application and respond.

Receive the SDK

Approved developers receive:
  • The Tencent RTC SDK (a Linux shared library) required by the plugin
  • Deployment instructions for setting up the SDK in a Docker environment
  • An invite to the early access support group for direct technical assistance
If your application is waitlisted, you’ll be contacted when the plugin reaches general availability.

Set up credentials

Create an RTC application in the Tencent RTC Console to obtain your credentials:
VariableDescription
TENCENT_SDKAppIDYour RTC application’s integer App ID
TENCENT_SDKSecretKeySecret key for generating user signatures

Build your agent

All Vision Agents features work out of the box with the Tencent transport. Swap in any LLM, STT, TTS, vision, or avatar plugin, use function calling, tools, and knowledge — everything works the same way as with the default transport.
import os

from vision_agents.core import Agent, Runner, User
from vision_agents.core.agents import AgentLauncher
from vision_agents.plugins import elevenlabs, openai, tencent, cartesia


async def create_agent(**kwargs) -> Agent:
    agent = Agent(
        edge=tencent.Edge(
            sdk_app_id=int(os.environ["TENCENT_SDKAppID"]),
            key=os.environ["TENCENT_SDKSecretKey"],
        ),
        agent_user=User(name="Tencent Voice Agent", id="tencent-voice-agent"),
        instructions="You are a helpful voice assistant. Respond concisely.",
        llm=openai.LLM(),
        tts=cartesia.TTS(),
        stt=elevenlabs.STT(),
    )
    return agent


async def join_call(agent: Agent, call_type: str, call_id: str, **kwargs) -> None:
    await agent.authenticate()
    call = await agent.create_call(call_type, call_id)

    async with agent.join(call):
        await agent.finish()


if __name__ == "__main__":
    Runner(AgentLauncher(create_agent=create_agent, join_call=join_call)).cli()

Parameters

NameTypeDefaultDescription
sdk_app_idintNoneRTC application ID. Falls back to the TENCENT_SDKAppID environment variable if not provided.
keystrNoneSecret key for generating user signatures. Falls back to TENCENT_SDKSecretKey if not provided.
user_sigstrNonePre-computed user signature. If omitted, a signature is generated automatically from key at join time. See the UserSig generation guide.
video_fpsint15 (supported range: 560)Frames per second for outgoing video encoding.

Environment Variables

VariableDefaultDescription
TENCENT_SDKAppIDFallback for sdk_app_id when not passed to the constructor.
TENCENT_SDKSecretKeyFallback for key when not passed to the constructor.
TENCENT_TRTC_SCENEautoRoom scene type. One of auto, videocall, call, or record. auto selects the first available from videocall and call.

Frontend SDKs

Tencent provides client SDKs for joining the same RTC room from end-user applications. Your users connect with a Tencent frontend SDK while your Vision Agent runs server-side with this plugin — both in the same room. See the Tencent RTC documentation for Web, iOS, and Android client SDK guides.

Next Steps

Deploying Agents

Run your agent locally, containerize it, and scale to production.

Create Your Own Plugin

Build a custom plugin to connect additional services.