8个不稳定版本 (3个重大更改)
使用旧的Rust 2015
0.4.0 | 2015年7月13日 |
---|---|
0.3.3 | 2015年7月13日 |
0.3.0 | 2015年5月17日 |
0.2.1 | 2015年5月16日 |
0.1.2 | 2015年3月30日 |
#33 in #irc
33每月下载次数
72KB
1K SLoC
dazeus-rs
DaZeus的Rust绑定
文档
可以通过在项目根目录中运行 cargo doc
来生成文档。它也可以在这里在线阅读[链接]。
入门
这些绑定需要Rust来编译。编译的二进制文件只需要libc。
要使用这些绑定创建一个新插件,只需运行
cargo new [plugin-name] --bin
然后在你的 Cargo.toml
中添加
[dependencies.dazeus]
git = "https://github.com/dazeus/dazeus-rs.git"
对于解析命令行选项,我建议你也使用类似docopt的工具,要在你的 Cargo.toml
中使用它,请添加以下内容
[dependencies]
docopt = "0.6"
然后在你的 main.rs
中使用这个基本的骨架应用程序
extern crate dazeus;
extern crate docopt;
use dazeus::{DaZeus, DaZeusClient, EventType, Connection};
use docopt::Docopt;
// Write the Docopt usage string.
static USAGE: &'static str = "
A DaZeus plugin.
Usage:
dazeus-plugin [options]
Options:
-h, --help Show this help message
-s SOCKET, --socket=SOCKET Specify the socket DaZeus is listening to, use
`unix:/path/to/socket` or `tcp:host:port`
[default: unix:/tmp/dazeus.sock]
";
fn main() {
let args = Docopt::new(USAGE).and_then(|d| d.parse()).unwrap_or_else(|e| e.exit());
let socket = args.get_str("--socket");
let dazeus = DaZeus::new(Connection::from_str(socket).unwrap());
dazeus.subscribe(EventType::PrivMsg, |evt, dazeus| {
// reply requires an event, and a message (the third event
// parameter is the message sent to us)
dazeus.reply(&evt, &evt[3], true);
});
// We unwrap the result, which we will retrieve when listening has failed
dazeus.listen().unwrap();
}
一旦你设置了依赖并创建了此主文件,你应该可以使用 cargo run
运行,Cargo 应该安装所有依赖项,编译你的项目并执行结果。如果你没有在你的本地机器上运行 DaZeus,或者默认的套接字位置不是你想要的,只需使用 cargo run -- --socket=[your socket]
依赖项
~490KB
~10K SLoC