grayich |
|
Темы:
216
Сообщения:
1984
Участник с: 08 января 2009
|
Есть ли способ закрывать висящие уведомления программно, дабы можно было это на хоткей повесить? уведомления типа notify-send "блабла" -u critical |
Aivar |
|
Темы:
4
Сообщения:
6897
Участник с: 17 февраля 2011
|
От демона нотификаций зависит. В dunst это: ctrl+space. Что к чему в кедах - хз... |
grayich |
|
Темы:
216
Сообщения:
1984
Участник с: 08 января 2009
|
Aivarв настройках уведомлений нет опции закрыть\очистить уведомления или типа того может через dbus можно чего-то послать |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
grayichА не проще указать длительность по времени? Но если уж так хочется, то рекомендую использовать другие приложения, которые поддерживают скрытие уведомлений, а вот notify-send эту функцию не поддерживает. grayichМожно, но с notify-send это всеравно не прокатит ... и лучше тогда вообще отказаться от этих утилит и перейти на чистый D-BUS.
Ошибки не исчезают с опытом - они просто умнеют
|
vs220 |
|
Темы:
22
Сообщения:
8070
Участник с: 16 августа 2009
|
vasekЕсть установка длительности показа, а остальное дело уже самого демона/оболочки уведомлений. В плазме хоткей вроде только на ''не беспокоить'' можно настройками накостылять скрывать уведомления с -u critical |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
vs220Об этом и спрашивал ТС vasekНо если длительность не указана (уведомление висит вечно), то скрыть/удалить его в notify-send не получится - он это не умеет.
Ошибки не исчезают с опытом - они просто умнеют
|
vs220 |
|
Темы:
22
Сообщения:
8070
Участник с: 16 августа 2009
|
vasekЯ к тому что это не его задача, это должна делать оболочка демона уведомлений |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
vs220Повторюсь - при использовании notify-send это сделать не получиться никакими средствами ... Когда то давно интересовался этим и экспериментировал с уведомлениями используя чистый D-BUS, который многое умеет. notify-send - это клиент, который вызывает API-интерфейс уведомлений DBUS. В спецификации API определена команда, которая может скрыть уведомление, но notify-send это не поддерживает.
Ошибки не исчезают с опытом - они просто умнеют
|
vs220 |
|
Темы:
22
Сообщения:
8070
Участник с: 16 августа 2009
|
vasek- Aivar |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
vs220Можешь не верить ....vasek- В части высказывания Aivar - он прав в том, что в dunst такая опция имеется и ее даже можно назначать самому Согласно man dunst Повторюсь, в спецификации API определена команда replace, использую которую можно скрыть/удалить уведомление, созданные разными утилитами, НО notify-send не поддерживает это.Плюс к этому, как пишут - notify-send не возвращает идентификатор уведомления, поэтому вы не можете удалить или заменить уведомление впоследствии. А вот используя чистый D-BUS, без всяких утилит, это можно провернуть - раньше делал это примерно так - отравка уведомлений гдеN - не помню, как называется, но связано с ID уведомлений: если 0 - номера в порядке увеличения; если указать число, непример, 100, то это будет ID посланного уведомления. ID необходим для замены или скрытия/удаления уведомления NAME - тип/категория уведомления, если не нужно, оставить пустое поле message - текст уведомления t - время показ уведомления - скрытие/удаление уведомления Можно, но никогда сам этого не делал, выводить звук и др.PS - если последняя строка отправки выглядит так – "" 0 "" "TEST" "message-test" '[]' '{"urgency": <1>}' 5000то после запуска увидим в консоле - (uint32 32,) - где 32 это и есть порядковый ID уведомдения ... а само уведомление будет таким Если же последнюю строчку записать в виде (ID присвоили сами равным 100) то после запуска увидим в консоле - (uint32 100,) ..... время большое и если сейчас запустить команду то сообщение исчезнет.
Ошибки не исчезают с опытом - они просто умнеют
|