Siendo un usuario compulsivo de la computadora, estoy frente a él todo el día. A veces pierdo la noción del tiempo cuando estoy trabajando en mi comp. Necesito un servicio de notificaciones para alertarme de la hora actual, ya sea mediante una notificación emergente o un sonido que se está reproduciendo o ambos.
Para la ventana emergente, encontré el estándar de notificación Free Desktop que usa una API DBus .
Pude crear una notificación usando DFeet , un explorador gráfico DBUS. Usé los siguientes argumentos:
"wakeup", 1234, "", "The time is", "9PM", [], [], 1
Funciona bien hasta ahora, pero ¿cómo puedo llevarlo más lejos desde aquí?
- ¿Cómo invoco esto desde la línea de comandos?
- ¿Cómo automatizo este comando? ¿
cron
Sigue siendo la forma recomendada de automatizar acciones basadas en el tiempo? - ¿Cómo juego los sonidos junto con la ventana emergente? ¿A través de la API de FreeDesktop o de un reproductor multimedia?
Una solución completa sería apreciada y quizás útil para otros también.
notification
dbus
HRJ
fuente
fuente
dbus-send
podría ser la aplicación a utilizar, y sícron
es la forma recomendada.dbus-send
no funciona porque no admite algunos parámetros requeridos por esta API. Estoy buscando enpynotify
.Respuestas:
Como no podía usar
dbus-send
, escribí un script de Python. El módulo pynotify usa internamente ladbus
API. Para patadas adicionales, agregué una galleta de la fortuna en el mensaje. Funciona de maravilla:Luego programé esto usando
cron
. Lacrontab
entrada se ve así:Actualización : se agregó un método para reproducir un sonido usando audio de pulso
fuente
Puede usar un script Python simple, como este:
fuente
Puede enviar mensajes utilizando el comando dbus-send. Ver man: dbus-send para más detalles sobre eso.
fuente
dbus-send
. Desafortunadamente, no funciona en este caso porquedbus-send
no se puede crear un diccionario con las variantes que requiere la API