#通知 #消息 #Discord #Telegram #发送 #管理器

bin+lib rnotify

Rnotify 允许通过命令行将信息消息发送到各种目的地,例如 Discord、Telegram 和邮件

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 次下载

MIT 许可证

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 notification embed

配置文件格式

示例配置格式,将日志记录到文件并将通知发送到 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