用途
telnyx-video-java 是面向 Telnyx Video 的 Java SDK 示例技能,用于创建和管理实时视频通信与会议的视频房间(Video Rooms)。
安装与初始化
通过 Maven 引入依赖:
<dependency>
<groupId>com.telnyx.sdk</groupId>
<artifactId>telnyx</artifactId>
<version>6.89.0</version>
</dependency>
或使用 Gradle:
implementation("com.telnyx.sdk:telnyx:6.89.0")
初始化客户端:
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
文档中的示例均假设 client 已按上述方式初始化。
主要能力
- 房间(Rooms):列出、创建、查看、更新、删除房间。创建与更新可配置 enable_recording、max_participants、unique_name、webhook_event_url、webhook_event_failover_url、webhook_timeout_secs 等可选参数。删除房间会踢出该房间的参与者,参与者无法再加入,也不再对该房间计费。
- 加入令牌:为房间生成 Client Token 以加入房间,返回 refresh_token、refresh_token_expires_at、token、token_expires_at;支持刷新 Client Token。Client Token 在 token_ttl_secs 后过期,Refresh Token 在 refresh_token_ttl_secs 后过期。
- 房间会话(Room Sessions):列出会话、查看会话、结束会话(会踢出当前房间内所有参与者)、踢出参与者、静音参与者、取消静音参与者,以及查看某会话的参与者列表。踢出、静音、取消静音均支持 exclude(数组)与 participants(对象)可选参数。
- 参与者(Room Participants):列出参与者、查看单个参与者。
- 录制(Room Recordings):列出录制、查看录制、删除单个录制、批量删除录制。
- 合成(Room Compositions):列出合成、创建合成(异步)、查看合成、删除合成。
错误处理
所有 API 调用都可能因网络错误、限流(429)、校验错误(422)或认证错误(401)而失败,生产代码中应处理错误:
import com.telnyx.sdk.errors.TelnyxServiceException;
try {
var result = client.messages().send(params);
} catch (TelnyxServiceException e) {
System.err.println("API error " + e.statusCode() + ": " + e.getMessage());
if (e.statusCode() == 422) {
System.err.println("Validation error — check required fields and formats");
} else if (e.statusCode() == 429) {
// Rate limited — wait and retry with exponential backoff
Thread.sleep(1000);
}
}
常见错误码:401 无效 API key、403 权限不足、404 资源未找到、422 校验错误(检查字段格式)、429 触发限流(配合指数退避重试)。
适用场景
适用于需要在 Java 应用中接入 Telnyx 实时视频会议能力的开发者,例如管理视频房间生命周期、控制会话与参与者、处理录制与合成。
限制
资料未提供收费、价格、平台支持范围、并发上限等具体信息;除文档列出的参数与返回字段外,其余能力暂未提供。