70个版本 (41个稳定版)
新 1.40.0 | 2024年8月16日 |
---|---|
1.36.0 | 2024年7月22日 |
1.18.0 | 2024年3月26日 |
1.9.0 | 2023年12月21日 |
0.16.0 | 2022年7月22日 |
#2359 in 网络编程
每月499次下载
1.5MB
20K SLoC
aws-sdk-ivschat
简介
Amazon IVS Chat控制平面API允许您创建和管理Amazon IVS Chat资源。您还需要集成Amazon IVS Chat Messaging API,以使用户能够实时与聊天室进行交互。
该API是AWS区域服务。有关受支持区域和Amazon IVS Chat HTTPS服务端点的列表,请参阅《AWS通用参考》中的Amazon IVS页面上的Amazon IVS Chat信息。
本文档描述了HTTP操作。用于管理Chat资源的单独的消息 API;请参阅Amazon IVS Chat Messaging API参考。
术语说明
- 您使用Amazon IVS Chat API创建服务应用程序。我们将其称为应用程序。
- 您使用Amazon IVS Chat Messaging API创建前端客户端应用程序(浏览器和Android/iOS应用程序)。我们将其称为客户端。
资源
以下资源是Amazon IVS Chat的一部分
- LoggingConfiguration — 允许客户在聊天室中存储和记录发送消息的配置。有关更多信息,请参阅日志配置端点。
- Room — 客户端连接到并交换聊天消息的中心Amazon IVS Chat资源。有关更多信息,请参阅Room端点。
标签
标签是一个您分配给AWS资源的元数据标签。标签由您设置的键和值组成。例如,您可能设置一个标签为topic:nature以标记特定的视频类别。有关更多信息,包括标签的适用限制和“标签命名限制和要求”,请参阅标记AWS资源。Amazon IVS Chat没有超出此处记录的服务特定约束。
标签可以帮助您识别和组织您的AWS资源。例如,您可以使用相同的标签来指明不同资源之间的关联性。您还可以使用标签来管理访问权限(请参阅访问标签)。
Amazon IVS Chat API具有以下与标签相关的端点:TagResource、UntagResource和ListTagsForResource。以下资源支持标签:房间。
一个资源最多可以应用50个标签。
API访问安全
您的Amazon IVS Chat应用程序(服务应用程序和客户端)必须经过身份验证和授权才能访问Amazon IVS Chat资源。请注意这些概念之间的区别
- 身份验证涉及验证身份。对Amazon IVS Chat API的请求必须签名以验证您的身份。
- 授权涉及授予权限。您的IAM角色需要对Amazon IVS Chat API请求具有权限。
用户(观众)使用通过AWS SDK的CreateChatToken端点创建的安全访问令牌连接到房间。您必须为每个用户的聊天会话调用CreateChatToken,并传递有关用户身份和授权信息。
签名API请求
HTTP API请求必须使用您的AWS安全凭证的AWS SigV4签名进行签名。AWS命令行界面(CLI)和AWS SDKs会为您处理底层API调用的签名。但是,如果您的应用程序直接调用Amazon IVS Chat HTTP API,则必须由您负责签名请求。
您将使用具有执行所请求操作权限的IAM角色的有效AWS凭证生成签名。例如,必须使用具有ivschat:DeleteMessage权限的IAM角色发出DeleteMessage请求。
更多信息
- 身份验证和生成签名 - 请参阅《Amazon Web Services General Reference》中的身份验证请求(Amazon Web Services Signature Version 4)。
- 管理Amazon IVS权限 - 请参阅《Amazon IVS User Guide》安全页面上的身份和访问管理。
Amazon资源名称(ARNs)
ARNs唯一标识AWS资源。在您需要明确指定AWS中的资源时,例如在IAM策略和API调用中,需要ARN。有关更多信息,请参阅《AWS General Reference》中的Amazon资源名称。
入门
许多服务和操作都有示例,请查看GitHub上的示例文件夹。
SDK为每个AWS服务提供一个新的crate。您必须在Rust项目中添加Tokio作为依赖项来执行异步代码。要将aws-sdk-ivschat
添加到您的项目中,请将以下内容添加到您的Cargo.toml
文件中
[dependencies]
aws-config = { version = "1.1.7", features = ["behavior-version-latest"] }
aws-sdk-ivschat = "1.40.0"
tokio = { version = "1", features = ["full"] }
然后在代码中,可以使用以下方式创建客户端
use aws_sdk_ivschat as ivschat;
#[::tokio::main]
async fn main() -> Result<(), ivschat::Error> {
let config = aws_config::load_from_env().await;
let client = aws_sdk_ivschat::Client::new(&config);
// ... make some calls with the client
Ok(())
}
有关可以执行哪些调用以及每个调用的输入和输出的信息,请参阅客户端文档。
使用SDK
在SDK发布之前,我们将把有关使用SDK的信息添加到《开发者指南》。您可以提出有关指南的建议,请通过打开一个问题并描述您要执行的操作来提出。
寻求帮助
- GitHub讨论 - 对于想法、RFC和一般问题
- GitHub问题 - 对于错误报告和功能请求
- 生成的文档(最新版本)
- 使用示例
许可协议
本项目的许可协议为Apache-2.0许可。
依赖项
~8–20MB
~282K SLoC