уведомить-отправить только если еще не - PullRequest
2 голосов
/ 12 февраля 2012

Я использую Linux Mint 12 (базовый пакет - Ubuntu Oneiric). По сути, я хочу, чтобы каждую минуту или около того запускался сценарий, который что-то делает и дает мне значение true или false. Если это правда, я хочу всплывающее уведомление. Я подумываю об уведомлении-отправке, так как это, кажется, делает то, что я хочу, приятным ненавязчивым способом. Однако я столкнулся с несколькими проблемами.

Я не хочу, чтобы уведомления складывались. Если он возвращает true, а я не обращаю на него внимания, он вернет true в следующий раз, и текущий вызовет суммирование уведомлений. Есть ли способ проверить, было ли уже отправлено уведомление, и, таким образом, не отправлять еще одно (возможно, отправьте уведомление снова через 10 минут, если я не заметил его в первый раз). В настоящее время задание настроено как cronjob, но я могу подумать о «хакерском» способе получить эту функциональность, если бы я должен был постоянно запускать скрипт и использовать sleep, но я бы предпочел избежать этого корня.

Кроме того, как я могу сделать так, чтобы при нажатии на уведомление запускалось приложение / скрипт по моему выбору? Это представляется возможным, так как Dropbox и т. Д. Выдают уведомления, которые ведут себя в этом поместье, но я не уверен, делается ли это с помощью уведомления-отправки или нет.

Все, что укажет мне правильное направление, было бы замечательно. Спасибо.

1 Ответ

0 голосов
/ 12 февраля 2012

Из быстрого ознакомления с libnotify API не видно, что демон возвращает клиенту что-либо, идентифицирующее ожидающее уведомление. Другими словами, это API «запускай и забывай» - как только вы отправите запрос на отображение всплывающего окна, у вас нет способа определить, есть ли всплывающее окно еще там. Боюсь, вам не повезло, по крайней мере с уведомлением-отправкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...