6 个版本
0.2.0 | 2023年2月22日 |
---|---|
0.1.4 | 2023年2月4日 |
0.1.2 | 2022年10月30日 |
0.1.1 | 2022年9月6日 |
#2257 在 命令行工具
每月 31 次下载
87KB
2K SLoC
Rnotify - 用 Rust 编写的通知管理器
Rnotify 向各种平台发送通知,例如 Discord 和 Telegram。
Rnotify 读取家目录中的配置文件 .config/rnotify.toml
,使用 toml 配置格式。
安装
Rnotify 可以通过 cargo 安装
cargo install rnotify --all-features
默认情况下,仅包含一些目的地,使用 --all-features 标志包括所有目的地,如上所示。
更新
要更新 rnotify,只需重新运行
cargo install rnotify --all-features
基本用法
向所有配置的目的地发送 (info) 通知
rnotify -m "Message to send"
发送带有标题和级别的通知
rnotify -t "Title" -l warn -m "Message to send"
使用 stdin 作为消息发送错误通知
echo "hi" | rnotify -t "Title" -l error
高级用法
为了更详细的通知,我们可以使用格式化选项 -f
。这允许解析按行格式化的部分,例如 #<Section Name>#
echo 中的变量使用简单的 shell 命令创建
echo "
#<Uptime>#
Uptime: $uptime
Today is: $today
#<Services>#
- Check scraper service: $checkerservicestatus
#<Disk Usage>#
\`\`\`$diskspace\`\`\`" | rnotify -t "Daily hello" -a "cron/dailyhello.sh" -f
使用 rnotify 的格式化选项,我们可以创建类似这样:
配置文件格式
示例配置格式,将日志记录到文件并将通知发送到 Discord。
[[destinations]]
root = true
type = "File"
path = "/var/log/rnotify.log"
[[destinations]]
type = "Discord"
url = "https://discord.com/api/webhooks/.../..."
[[destinations.notify]]
min_level = "Warn"
notify = "<@309009265732091904>" # Notify this user, if the notification level is above a warning.
依赖项
~2–33MB
~511K SLoC