本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
GetIceServerConfig
注意:在使用此 API 之前,您必须调用 GetSignalingChannelEndpoint
API 来请求 HTTPS 终端节点。然后,您可以在 GetIceServerConfig
API 请求中指定终端节点和区域。
获取交互式连接机构 (ICE) 服务器配置信息,包括可用于配置 WebRTC 连接的 URI、用户名和密码。ICE 组件使用此配置信息来设置 WebRTC 连接,包括使用 NAT(TURN)中继服务器周围的中继遍历进行身份验证。
TURN 是一种用于改善 peer-to-peer应用程序连接性的协议。通过提供基于云的中继服务,TURN 可确保即使一个或多个对等体无法直接 peer-to-peer连接,也可以建立连接。有关更多信息,请参阅用于访问 TURN 服务的 REST API
您可以调用此 API 来建立回退机制,以防任何一个对等体无法通过信令通道建立直接 peer-to-peer 连接。要调用此 API,您必须指定信令通道的 Amazon 资源名称 (ARN)。
请求语法
POST /v1/get-ice-server-config HTTP/1.1
Content-type: application/json
{
"ChannelARN": "string
",
"ClientId": "string
",
"Service": "string
",
"Username": "string
"
}
URI 请求参数
该请求不使用任何 URI 参数。
请求体
请求接受采用 JSON 格式的以下数据。
- ChannelARN
-
用于在已配置的对等体之间进行 peer-to-peer 连接的信令信道的 ARN。
类型:字符串
长度限制:长度下限为 1。长度上限为 1024。
模式:
arn:[a-z\d-]+:kinesisvideo:[a-z0-9-]+:[0-9]+:[a-z]+/[a-zA-Z0-9_.-]+/[0-9]+
必需:是
- ClientId
-
查看者的唯一标识符。在信令信道内必须是唯一的。
类型:字符串
长度限制:最小长度为 1。最大长度为 256。
模式:
[a-zA-Z0-9_.-]+
必需:否
- Service
-
指定所需的服务。当前,
TURN
是唯一的有效值。类型:字符串
有效值:
TURN
必需:否
- Username
-
要与凭证关联的可选用户 ID。
类型:字符串
长度限制:最小长度为 1。最大长度为 256。
模式:
[a-zA-Z0-9_.-]+
必需:否
响应语法
HTTP/1.1 200
Content-type: application/json
{
"IceServerList": [
{
"Password": "string",
"Ttl": number,
"Uris": [ "string" ],
"Username": "string"
}
]
}
响应元素
如果此操作成功,则该服务将会发送回 HTTP 200 响应。
服务以 JSON 格式返回以下数据。
- IceServerList
-
ICE 服务器信息对象列表。
类型:IceServer 对象数组
错误
有关所有操作的常见错误信息,请参阅常见错误。
- ClientLimitExceededException
-
您的请求已被限制,因为您已超过允许的客户端呼叫上限。稍后再尝试拨打电话。
HTTP 状态代码:400
- InvalidArgumentException
-
此输入参数的值无效。
HTTP 状态代码:400
- InvalidClientException
-
指定的客户机无效。
HTTP 状态代码:400
- NotAuthorizedException
-
呼叫者无权执行此操作。
HTTP 状态代码:401
- ResourceNotFoundException
-
未找到指定的资源。
HTTP 状态代码:404
- SessionExpiredException
-
如果客户端会话已过期。客户端连接后,会话的有效期为 45 分钟。客户端应重新连接到频道才能继续发送/接收消息。
HTTP 状态代码:400
另请参阅
有关在特定语言的 Amazon SDK 中使用此 API 的更多信息,请参阅以下内容: