用途
Telnyx SETI JavaScript 是一个面向 JavaScript 开发者的技能资源,用于通过 Telnyx 官方 Node.js SDK 访问 SETI(Space Exploration Telecommunications Infrastructure,太空探索电信基础设施)API。它提供可直接参考的 JavaScript SDK 示例,帮助开发者快速了解如何初始化客户端并调用相关接口。
主要能力
根据资料,该技能涵盖以下内容:
- SDK 安装与初始化:通过 npm 安装 telnyx 包,并使用 API Key 初始化客户端。
- SETI 接口调用示例:包括检索黑盒测试结果(GET /seti/black_box_test_results),返回 black_box_tests(数组[对象])、product(字符串)、record_type(字符串)等字段。
- 枚举获取示例:GET /10dlc/enum/{endpoint},示例中调用 client.messaging10dlc.getEnum('mno')。
- 错误处理范式:演示如何捕获并区分网络错误(APIConnectionError)、限流错误(RateLimitError,429)、API 错误(APIError)等,并给出针对 422 校验错误的提示。
使用方式
安装命令:
npm install telnyx
初始化示例:
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
调用示例(检索黑盒测试结果):
const response = await client.seti.retrieveBlackBoxTestResults();
console.log(response.data);
调用示例(获取枚举):
const response = await client.messaging10dlc.getEnum('mno');
console.log(response);
错误处理示例:
try {
const result = await client.messages.send({ to: '+13125550001', from: '+13125550002', text: 'Hello' });
} catch (err) {
if (err instanceof Telnyx.APIConnectionError) {
console.error('Network error — check connectivity and retry');
} else if (err instanceof Telnyx.RateLimitError) {
const retryAfter = err.headers?.['retry-after'] || 1;
await new Promise(r => setTimeout(r, retryAfter * 1000));
} else if (err instanceof Telnyx.APIError) {
console.error(`API error ${err.status}: ${err.message}`);
if (err.status === 422) {
console.error('Validation error — check required fields and formats');
}
}
}
资料中列出的常见错误码:401 无效 API Key、403 权限不足、404 资源未找到、422 校验错误(检查字段格式)、429 触发限流(使用指数退避重试)。
适用场景
适用于需要在 JavaScript/Node.js 项目中集成 Telnyx SETI 能力、调用 SETI 相关 API 的开发者,尤其是希望参考官方 SDK 用法与错误处理最佳实践的场景。
限制
资料未提供 SETI 接口的完整端点列表、各接口的详细参数说明、认证配置细节、计费信息或平台兼容性说明,这些内容暂未提供。