1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2018年2月25日 |
---|
#8 in #push-notification
24KB
535 行
apns2-rust
一个用于通过 APNS http/2 API 向 iOS 设备发送推送通知的 Rust 包。
用法
Cargo.toml
[dependencies]
apns2 = "*"
failure = "*"
extern crate apns2;
extern crate failure;
use failure::Error;
fn send(device_token: String, alert: String) -> Result<(), Error> {
let apns = apns2::Apns::with_certificate(
"certs/apns_cert.p12", // Path to p12 certificate + key db file.
Some("passphrase".to_string()), // Passphraase used for the p12 file.
)?;
let notification = NotificationBuilder::new(topic, token)
.title("title")
.body("body")
.sound("somesound.mp3")
.badge(5)
.build();
apns.send(n)?;
Ok(())
}
客户端
遗憾的是,没有足够成熟的本地 http/2 Rust 库可供使用,因此这个包目前通过 cURL 通过 rust-curl 使用。一旦生态系统赶上来,将使用本地的 Rust 解决方案。
待办事项
- 添加 JWT 认证令牌支持
- 使用 tokio-curl 添加异步 tokio 实现
许可证
此库根据 Apache 和 MIT 许可证双重许可。
请查看此存储库中的许可证文件以获取详细信息。
依赖项
~9–17MB
~252K SLoC