A falta de una documentación de pynotify, explicaré en esta receta cómo usar el binding de python para libnotify, para poder crear notificaciones de eventos en tus aplicaciones.

Ingredientes

    python-notify

Notificando

Lo primero, obviamente es importar el paquete pynotify, y luego hay que inicializar la librería. Por alguna razón, este método recibe un argumento de entrada, tipo string, aunque no sé para qué sirve. Para notificar algo, debemos crear un objeto de tipo Notification. El constructor admite 4 parámetros:
  1. summary: El título de la notificación (obligatorio)
  2. message: El cuerpo del mensaje, por si hay que dar más datos
  3. icon: Un iconcillo, para hacerla más amena. Se pasa como un string, indicando el nombre de cualquiera de los iconos de stock (gtk-info, gtk-cancel, back...)
  4. attach: Éste todavía lo estoy investigando
Para mostrar nuestra notificación, invocamos el método .show(). Veamos todo esto en un ejemplo:
import pynotify
pynotify.init("Mi aplicacion")
nota = pynotify.Notification("¡Enhorabuena!", message="Esta notificación se ha mostrado con éxito", icon="emblem-debian")
nota.show()

Opciones

Las notificaciones se pueden configurar un poco, para adaptarlas al contexto, con algunas opciones y métodos:
  • nota.set_timeout(milisegundos) - Permite cambiar el tiempo que la nota permanecerá visible
  • nosa.set_urgency(nivel) - Permite cambiar el nivel de aviso de la notificación. nivel debe ser uno de los siguientes valores:
    • pynotify.URGENCY_CRITICAL
    • pynotify.URGENCY_NORMAL
    • pynotify.URGENCY_LOW
    También se pueden definir niveles de urgencia personalizados, heredando de la clase pynotify.Urgency
  • nota.set_icon_from_pixbuf(fichero) - Por si quieres que tu nota tenga un icono que tienes en un fichero.
Hay más, pero todavía no las he destripado.


blog comments powered by Disqus