15个版本 (稳定)
5.0.1 | 2023年8月29日 |
---|---|
5.0.0 | 2022年10月4日 |
4.1.0 | 2022年9月20日 |
4.0.0 | 2022年3月9日 |
0.3.0 |
|
#3 in #twitch
1,449 每月下载量
在 3 crates 中使用
350KB
5.5K SLoC
twitch-irc-rs
这是一个用于与Twitch聊天接口的客户端库。
此库是异步的,并使用tokio
运行时运行。
示例用法(这是simple_listener
示例,请参阅examples/simple_listener.rs
并使用cargo run --example simple_listener
运行)
use twitch_irc::login::StaticLoginCredentials;
use twitch_irc::TwitchIRCClient;
use twitch_irc::{ClientConfig, SecureTCPTransport};
#[tokio::main]
pub async fn main() {
// default configuration is to join chat as anonymous.
let config = ClientConfig::default();
let (mut incoming_messages, client) =
TwitchIRCClient::<SecureTCPTransport, StaticLoginCredentials>::new(config);
// first thing you should do: start consuming incoming messages,
// otherwise they will back up.
let join_handle = tokio::spawn(async move {
while let Some(message) = incoming_messages.recv().await {
println!("Received message: {:?}", message);
}
});
// join a channel
// This function only returns an error if the passed channel login name is malformed,
// so in this simple case where the channel name is hardcoded we can ignore the potential
// error with `unwrap`.
client.join("sodapoppin".to_owned()).unwrap();
// keep the tokio executor alive.
// If you return instead of waiting the background task will exit.
join_handle.await.unwrap();
}
有关更多详细信息,请参阅docs.rs
上的文档。
依赖项
~4–19MB
~290K SLoC