11个版本 (4个重大更改)

0.5.3 2020年6月13日
0.5.2 2020年5月26日
0.4.2 2020年5月24日
0.4.0 2020年4月30日
0.1.0 2020年3月13日

#105 in #async-std

每月29次下载

MIT/Apache

145KB
3K SLoC



用于与Discord API交互的强大异步Rust库

虽然这个库可用,但它仍在开发中,所以请不要在生产环境中使用。

请注意,此库尚未支持discord API的全部功能,例如声音。请参阅 TODO 列表 了解更多信息。

安装

cargo add panda

Cargo.toml

panda = "0.5.3"

配置异步运行时

panda支持 tokioasync-std 运行时,默认使用 tokio,要使用 async-std,请更改 Cargo.toml 中的功能标志。

[dependencies.panda]
version = "0.5.3"
default-features = false
features = ["async-std-runtime"]

示例用法

当机器人准备好时,它将打印机器人名称。

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {

    let mut client = panda::new("your token here").await?;

    client.on_ready(|s, ready| async move {
        println!("Bot {} is ready", ready.user.username);

        Ok(())
    });

    client.start().await?;

    Ok(())
}

所有事件都在 Discord 文档 中,要在客户端使用它,您必须使用 client.on_ 加上蛇形事件的名称。

TODO 列表

  • 完成HTTP请求。
  • 改进panda错误。
  • 添加声音支持。
  • 改进文档。
  • 添加测试。

依赖项

~15–29MB
~515K SLoC