NotifyOSD(またはXFCE-Notify)が特定のアプリケーションからの通知を表示しないようにする方法はありますか?
はい。ただし、注意が必要です... killall notify-osd
は積極的です...これを適切に行うには、問題の通知がkillall notify-osd
をトリガーする前に保留中の通知を保存してから、時系列の整合性を維持しながら通知を復元する必要があります。
参照:
notify-osdの閉じるボタン?
次の場合は便利です: org.freedesktop.Notifications.CloseNotification(uint id)をDBus経由でトリガーおよび呼び出すことができますか?
D-Bus
を監視して、選択したアプリケーションから発信された削除の通知を見つけます。このスクリプトをターミナルで、またはバックグラウンドタスクとして実行し、ap_name_to_silence
をスロットリング用に選択したapの名前に変更します。
dbus-monitor "interface = 'org.freedesktop.Notifications'"\ | grep --line-buffered'string "ap_name_to_silence"'\ | sed -u -e' s /.*/ killall notify-osd/g '\ | bash
dbus-monitor "interface='org.freedesktop.Notifications'"
の基本的なNotify
構造は
メソッド呼び出しsender =:1.278-> dest =:1.151 serial = 7 path =/org/freedesktop/Notifications; interface = org.freedesktop.Notifications; member = Notification 文字列 "notify-send" これは app_name uint320これは replaces_id 文字列 ""これは app_icon 文字列「テスト」これは 概要 文字列 ""これは 体 配列[これは 行動 ペアリスト 配列[これは ヒント 辞書 dict entry( string "urgency" バリアントバイト1 ) int32-1これは expire_timeout
"silenced notification"
が存在しないことを示す次のメッセージを使用してサイレンサーをテストします。
notify-「sumairy」「ephemeralcorporatecontent」を送信します。睡眠5; gdbus call --session\ -d org.freedesktop.Notifications\ -o/org/freedesktop/Notifications\ -m org.freedesktop.Notifications.Notify\ ap_name_to_silence \ 42\ gtk-dialog-info\ "ターゲット"\ "無音通知"\ []\ {}\ 5000 notify-「augendairy」「ephemeralcorporatecontent-ie。whitemoojuice\!」 gdbus call --session\ -d org.freedesktop.Notifications\ -o/org/freedesktop/Notifications\ -m org.freedesktop.Notifications.Notify\ my_app_name\ 42\ gtk-dialog-info\ "Summary"\ "しかし今は冬ではなく秋です」\ []\ {}\ 5000