... tapi sepertinya banyak pekerjaan ...
Ini tidak terlalu buruk, setidaknya untuk solusi generik kasar.
Berikut adalah salinan detail dari jawaban saya untuk pos tahun lalu (September 2012) di
Cara menonaktifkan pemberitahuan dari manajer jaringan .
dbus-monitor "interface='org.freedesktop.Notifications'" \
| grep --line-buffered 'string "NetworkManager"' \
| sed -u -e 's/.*/killall notify-osd/g' \
| bash
Ganti string "NetworkManager"dengan RE yang diinginkan untuk menentukan pemblokiran.
Untuk mendapatkan gambaran tentang pola RE yang cocok untuk dijalankan:
dbus-monitor "interface='org.freedesktop.Notifications'"
dan lihat output ketika notifikasi muncul.
yaitu. untuk menghapus notify-sendpesan juga, gunakan grepbaris ini sebagai gantinya:
| grep --line-buffered 'string "NetworkManager"\|string "notify-send"' \
Peringatan :
killall notify-osdtidak diskriminatif dan sepenuhnya menghapus tumpukan pemberitahuan dari semua pesan yang tertunda terlepas dari apakah agen pemberi tahu NetworkManageratau notify-sendbukan.
Solusi "jujur" perlu memperhitungkan kemungkinan kondisi balapan ketika antara menentukan pembersihan pemberitahuan diperlukan dan kemudian melakukan melakukannya, pemberitahuan lain masuk yang harus muncul dan tidak dibersihkan dengan yang lain.
Juga, jika notifikasi tertunda ketika salah satu yang diblokir masuk, mereka semua akan dibersihkan. Situasi ini setidaknya dapat diselesaikan dengan membuat salinan dbuspemberitahuan yang tertunda dan kemudian menerbitkan kembali yang diinginkan dengan notify-sendsetelah pembersihan.
Ini sedikit kerja padat karya secara manual!
Idealnya, penggunaan dbus langsung dari
method void org.freedesktop.Notifications.CloseNotification(uint id) [1]
khusus menargetkan hanya pemberitahuan yang diinginkan, sayangnya tidak jelas ... namun ...
Jawaban lain
Bisakah org.freedesktop.Notifications.CloseNotification (uint id) dipicu dan dipanggil melalui DBus?
menunjukkan cara menggunakan [1], paling tidak dengan notify-send, tetapi sayangnya tidak untuk pemberitahuan sembarang aps. meskipun beberapa aps. memiliki antarmuka khusus untuk mengontrol notifikasi pop-up.
referensi silang .: