チャンネルが/queryメッセージを受信または強調表示するたびに通知を受け取りたいです。この通知はバブルオンスクリーンディスプレイ(OSD)形式でなければなりません。
irssi
LinuxがOSDを実装していない場合は、インスタンスを含むターミナルウィンドウをウィンドウスタックの上部に配置し、ステータスバーにウィンドウ名を点滅させることに満足しています。
答え1
次のコマンドを使用すると簡単に設定できます。fnotifyスクリプト。に設定する自動ロード次に、目的のファイルに印刷するようにカスタマイズします。
sub filewrite {
my ($text) = @_;
# FIXME: there is probably a better way to get the irssi-dir...
open(FILE,">>$ENV{HOME}/path/to/your/fnotified");
print FILE $text . "\n";
close (FILE);
}
その後、使用inotifywait
このディレクトリまたはファイルを観察し、新しい行が作成されたらメッセージをトリガーします。
#!/usr/bin/env bash
# script to push IRC highlight notifications
dir="$HOME/path/to/your/"
while inotifywait -qqre attrib "$dir" >/dev/null 2>&1; do
echo "IRC:" "You have been pinged..." | notify-send IRC "You have been pinged…" \
-i /usr/share/icons/gnome/48x48/status/dialog-warning.png
done
私はirssi
ヘッドレスサーバー上で動作しているので、監視されているディレクトリを私が使用している他のすべてのコンピュータに同期します。パルス(以前の同期)その後、inotify
そのローカルコンピュータでスクリプトを実行すると、ログイン位置に関係なくpingが鳴ると通知されます。
ログイン時に使用または起動するには、inotify
サービスファイルからスクリプトを実行できます。systemd
notify-send
使いたくない場合ライン目立たない通知アプリのための優れた選択です。