SuperAPI AI 工具集

telnyx-seti-javascript

编程与开发

查看项目

更新于 10-16 05:24

技能介绍

用途

Telnyx SETI JavaScript 技能用于在 JavaScript 项目中通过 Telnyx 官方 SDK 访问 SETI(Space Exploration Telecommunications Infrastructure)API。该技能以示例代码的形式,展示如何初始化客户端、调用接口以及处理错误,帮助开发者快速接入相关通信能力。

主要能力

该技能提供的示例覆盖以下内容:

  • 安装与初始化:通过 npm 安装 telnyx 包,并使用 API Key 初始化客户端。
  • 错误处理:演示如何捕获并区分网络错误(APIConnectionError)、速率限制错误(RateLimitError,对应 429)、API 错误(APIError)等,并给出针对 429 的指数退避重试思路。
  • 获取枚举:调用 client.messaging10dlc.getEnum('mno'),对应接口 GET /10dlc/enum/{endpoint}。
  • 检索黑盒测试结果:调用 client.seti.retrieveBlackBoxTestResults(),对应接口 GET /seti/black_box_test_results,返回字段包括 black_box_tests(数组[对象])、product(字符串)、record_type(字符串)。

使用方式

安装命令:

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
});

错误处理示例:

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) {
    // 429: rate limited — wait and retry with exponential backoff
    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');
    }
  }
}

获取枚举示例:

const response = await client.messaging10dlc.getEnum('mno');

console.log(response);

检索黑盒测试结果示例:

const response = await client.seti.retrieveBlackBoxTestResults();

console.log(response.data);

适用场景

适用于需要在 JavaScript/Node.js 应用中集成 Telnyx SETI API 的开发者,尤其是需要调用 10DLC 枚举接口或获取黑盒测试结果的场景。示例中的错误处理模式也可作为生产环境 API 调用的参考。

限制

资料中未提供该技能的收费、价格、平台支持范围、性能效果或完整接口清单等信息。常见错误码说明包括:401 无效 API Key、403 权限不足、404 资源未找到、422 验证错误(检查字段格式)、429 速率限制(使用指数退避重试)。