Skip to main content

Sends notifications using DBus

Project description

DBus Notification

PyPI Python versions License

This library provides a simple interface for creating and displaying desktop notifications with custom buttons. Please note that some features might have varying levels of support across different Linux distributions.

Features:

  • Send notifications with custom titles, messages, and images
  • Include clickable buttons for user interaction
  • Control notification urgency, timeout, and sound Note: Some features might have limited support depending on your desktop environment.

Requirements

DBus Notification has minimal system dependencies:

  • Python 3.7 or later
  • dasdbus library

Installation

Install the library using pip:

pip install dbus-notification

Usage

This library offers two primary usage approaches:

Command-Line Interaction

If you prefer a quick way to view information or control playback, you can potentially execute the dbus-notification script directly, though this doesn't support button actions. For more extensive programmatic control, I would recommend using the library within your Python code.

Programmatic Control

Import the DBusNotification class from your Python code:

import time
from dbus_notification import DBusNotification

def callback(notification_type, notification):
    if notification_type == "closed":
        print(f"Notification {notification["id"]} has closed.")
    elif notification_type == "button":
        print(f"Notification {notification["id"]} has clicked on the button {notification["button"]}.")

DBusNotification(appname="dbus_notification", callback=callback).send(
    title="test",
    message="this is a test message",
    logo="logo.png",
    image="myimage.png",
    sound="message-new-instant",
    actions=["Test Button"],
    urgency=1,
    timeout=100,
)

# Keep the app running
while True:
    time.sleep(1)

Future Features

  • Support for notification categories
  • Resident or transient notification options
  • Ability to specify notification position on the screen

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dbus_notification-2024.7.2.tar.gz (4.4 kB view details)

Uploaded Source

Built Distribution

dbus_notification-2024.7.2-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file dbus_notification-2024.7.2.tar.gz.

File metadata

  • Download URL: dbus_notification-2024.7.2.tar.gz
  • Upload date:
  • Size: 4.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for dbus_notification-2024.7.2.tar.gz
Algorithm Hash digest
SHA256 083f2ea855e224743761936117dc66070a084e2163685136d9f56ec21f32a721
MD5 56474f2d4d80eb124b150a4f7611ab05
BLAKE2b-256 6fe4e32cf99eead0d9edae62580928f5e35c4e2bcbd0bfcb805a4158e015b15d

See more details on using hashes here.

File details

Details for the file dbus_notification-2024.7.2-py3-none-any.whl.

File metadata

File hashes

Hashes for dbus_notification-2024.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0111043f00b660970f54ddea7bcdd560c0e21462e7cf89fbfeb9a30baec07513
MD5 2fc1fef8ba27ea5adffc65e5c9f107bc
BLAKE2b-256 db457cc6153d10e1c3dc519afc14f25eda1b4f642ee226e6ad85059e3f55ce47

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page