#slack #api #web-api #api-request #chat #tokio #client

slack-web-api

为 Rust 提供的 Slack Web API

2 个版本

0.1.1 2024 年 4 月 1 日
0.1.0 2023 年 10 月 23 日

#1565 in Web 编程

Download history 1/week @ 2024-05-20 11/week @ 2024-05-27 5/week @ 2024-06-03

67 每月下载量

MIT 许可证

78KB
2K SLoC

Slack Web API 的简单且易用的 Rust 客户端。

目前处于开发中,将接受优先 API 请求。

特性

  • 使用 tokio 进行异步 API 请求。
  • 轻量级,依赖最少。
  • 支持 Slack 的聊天和文件 API 方法。
  • 易于与现有的 Rust 项目集成。

安装

要使用此库,请将以下内容添加到您的 Cargo.toml 文件中

[dependencies]
slack-web-api = "0.1"

用法

以下是一个简单示例,用于向频道发送消息

#[tokio::main]
async fn main() {
    let token = std::env::var("SLACK_TOKEN_TEST").unwrap();
    let channel = "test-chanel";
    let client = SlackClient::new(token.as_str());
    let ac = SlackAttachmentBuilder::new()
        .color("#ff0000")
        .block(SlackBlockHeader::new_text("Header Block"))
        .block(
            SlackBlockContext::new()
                .element(CompositionObjectText::new("Content1"))
                .element(CompositionObjectText::new("Content2"))
        )
        .block(
            SlackBlockContext::new()
                .element(CompositionObjectText::new("Content3"))
        );

    let res = client.chat_post_message(
        SlackMessageBuilder::new()
            .channel(channel)
            .icon_emoji(":test:")
            .username("test-user")
            .attachments(vec![ac])
    ).await;
}

路线图

API 支持
admin
api
apps
auth
bookmark
bots
calls
chat ️✔️
conversations
dialog
dnd
emoji
files ✔️
functions
oauth
openid
pins
reactions
reminder
rtm
search
star
team
usergroup
users
view
workflow

依赖

~7–19MB
~260K SLoC