... ma sembra un sacco di lavoro ...
Non è poi così male, almeno per una soluzione generica rozza.
Ecco una copia dei dettagli dalla mia risposta al post dell'anno scorso (settembre 2012) in
Come disabilitare la notifica dal gestore della rete .
dbus-monitor "interface='org.freedesktop.Notifications'" \
| grep --line-buffered 'string "NetworkManager"' \
| sed -u -e 's/.*/killall notify-osd/g' \
| bash
Sostituire string "NetworkManager"
con l'IR desiderato per determinare il blocco.
Per avere un'idea di quale modello RE corrisponda alla ricerca di run:
dbus-monitor "interface='org.freedesktop.Notifications'"
e guarda l'output mentre le notifiche stanno spuntando.
vale a dire. per rimuovere notify-send
anche i messaggi, utilizzare grep
invece questa riga:
| grep --line-buffered 'string "NetworkManager"\|string "notify-send"' \
Caveat :
killall notify-osd
è non discriminante e completamente pulisce lo stack notifica di messaggi in sospeso Indipendentemente dal fatto che NetworkManager
o notify-send
è l'agente di notifica.
Una soluzione "onesta" deve tenere conto delle possibili condizioni di gara quando tra la determinazione di una cancellazione della notifica è necessaria e poi farlo, arriva un'altra notifica che dovrebbe apparire e non essere eliminata con il resto.
Inoltre, se le notifiche sono in sospeso quando arriva l'autore del reato da bloccare, verranno tutte eliminate. Questa situazione può almeno essere risolta facendo una copia delle dbus
notifiche in sospeso e quindi riemettere quelle desiderate con notify-send
dopo l'eliminazione.
Questo è un po 'di lavoro manuale ad alta intensità di lavoro!
Idealmente, l'uso diretto del dbus di
method void org.freedesktop.Notifications.CloseNotification(uint id) [1]
mirare specificamente solo alle notifiche desiderate, purtroppo non è ovvio ... tuttavia ...
Un'altra risposta:
org.freedesktop.Notifications.CloseNotification (uint id) può essere attivato e richiamato tramite DBus?
mostra come utilizzare [1]
, almeno con notify-send
, ma purtroppo non per le aps di notifica arbitrarie. anche se alcune aps. hanno interfacce personalizzate per controllare le notifiche pop-up.
riferimenti incrociati: