Як надсилати push-сповіщення на робочий стіл у Linux за допомогою Python
Спливні сповіщення на робочому столі, які повідомляють користувача про якусь подію, називають десктопним сповіщенням.
Спливні сповіщення на робочому столі, які повідомляють користувача про якусь подію, називають десктопним сповіщенням. Причини появи таких сповіщень можуть бути найрізноманітнішими, не обов'язково, щоб це було пов'язано з роботою користувача, наприклад, низький заряд батареї, нове повідомлення в мережі, оновлення ПЗ та інше. Щоб отримувати важливу для користувача інформацію миттєво, можна створити спеціальну програму, яка виводить на екран заданий контент.
Як створити програму для надсилання push-сповіщення за допомогою Python
Щоб надсилати такі сповіщення, потрібно знайти мовний пакет для Python notify2. Для його встановлення потрібно ввести: pip install notify2.
Розглянемо створення програми на прикладі створення сповіщень, які виводять дані про курс біткоїна.
Всю процедуру можна умовно розділити на 3 етапи:
- збір потрібної інформації;
- ініціалізація інструменту;
- вивід отриманого контенту у push-сповіщеннях.
Щоб мати можливість надсилати push-сповіщення на робочий стіл, спочатку виконаємо збір інформації щодо курсу біткоїна — її можна отримати з 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 на робочий стіл, звертайтеся до наших фахівців. Використовувати цей принцип створення програми можна для будь-якого важливого для користувача контенту — вся потрібна інформація буде доступна миттєво.