pixel fb

Как отправить push-уведомления на рабочий стол в Linux с помощью Python

Linux Как отправить push-уведомления на рабочий стол в Linux с помощью Python

Всплывающие на рабочем столе уведомления, которые сообщает пользователю о каком-либо событии, называют дескопным уведомлением. Причины появления таких уведомлений могут быть самыми разными, необязательно, чтобы это было связано с работой пользователя, например, низкий заряд батареи, новое сообщение на сети, обновление ПО и другое. Чтобы получать важную для пользователя информацию мгновенно, можно создать специальную программу, выводящую на экран заданный контент.

Как создать программу для отправки push-уведомления с помощью Python

Чтобы отправлять такие уведомления, необходимо найти языковой пакет для Python notify2. Для его установки нужно задаем: pip install notify2.

Рассмотрим создание программы на примере создания уведомлений, выводящих данные о курсе биткоин.

Всю процедуру можно условно разделить на 3 этапа:

  • сбор нужной информации;
  • инициализация инструмента;
  • вывод полученного контента в пуш уведомлениях.

Чтобы иметь возможность отправить пуш уведомления на рабочий стол, для начала выполним сбор информации относительно курса биткоин — их можно извлечь из CoinGecko. Данный веб-ресурс не дает данных API-интерфейса, поэтому извлекать нужную информацию следует из HTML, в частности из BeautifulSoup, найти нужную информация следует в тегах <table> и <tr>.

Получаем следующую структуру:

 

Следующий шаг — создание rates.py, файла, куда нужно поместить код:

 

Таким образом задается функция, формирующая курс биткоин в виде списка, что станет возможно после того как нужные данные будут извлечены из CoinGecko. Если вас интересует, как создать программу для получения другой информации или нужна разработка и создание сайта «под ключ», обращайтесь к специалистам компании Nomax.

Как выполняется инициализация инструмента

Получив необходимую информацию, следующим шагом выполняем инициализацию, необходимую для отправки push-уведомления на рабочий стол в Linux.

Делаем это следующим образом.

 

Перед тем, как начать отправлять push-уведомления на рабочий стол, следует активизировать соединение D-Bus. Это механизм, отвечающий за взаимодействия между программами, используемыми в Linux, для обмена данными между процессами. Для отображения push-уведомления, программу нужно подключить к процессу, отвечающему за системный интерфейс, что позволит оформить передачу ему уведомлений. В нашу задачу входит вызов функции notify2.init() в которой определяется имя созданной программы. Благодаря этому notify2 получает возможность установить и выполнить ее подключение в D-Bus:

notify2.init("Средство уведомления о курсе криптовалют")

Следующий шаг — создание объекта уведомлений

n = notify2.Notification("Crypto Notifier", icon = ICON_PATH)

Затем формируем структуру, общую для объекта уведомлений:

notify2.Notification(summary, message='body text', icon=ICON_PATH)

Чтобы отправка push уведомлений выполнялась срочно, данный параметр можно задать, используя set_urgency:

n.set_urgency(notify2.URGENCY_NORMAL)

Также нам доступны константы: notify2.URGENCY_LOW, notify2.URGENCY_CRITICAL.

Для определения временного интервала между отправкой push уведомлений устанавливаем:

n.set_timeout(1000)

Как будет отображаться контент

После окончания инициализации, нужно выполнить отображение уведомления.

Последовательность действий во фрагменте кода:

 

Следующим шагом выполняем анализ кода:

  • сформируем контент, который будет отображен в виде списка, для этого применим функцию fetch_bitcoin;
  • полученный контент передается инструменту, которым выполняется отправка push уведомлений;
  • для их показа используется n.show().

Результат проделанной работы будет выглядеть на экране так:

 

Если у вас остались вопросы относительно того, как отправить push-уведомления с помощью Python на рабочий стол, обращайтесь нашим специалистам. Использовать данный принцип создания программы можно для любого важного для пользователя контента — вся нужна информация будет доступна мгновенно.

 

ПОХОЖИЕ СТАТЬИ