Sendo um usuário compulsivo de computador, fico na frente o dia todo. Às vezes, perco a noção do tempo quando estou trabalhando no meu comp. Preciso de um serviço de notificação para me alertar sobre a hora atual, seja por uma notificação pop-up ou por um som sendo reproduzido ou ambos.
Para o pop-up, encontrei o padrão de notificação do Free Desktop que usa uma API DBus .
Consegui criar uma notificação usando o DFeet , um explorador gráfico de DBUS. Eu usei os seguintes argumentos:
"wakeup", 1234, "", "The time is", "9PM", [], [], 1
Até agora, funciona bem, mas como posso ir mais longe daqui?
- Como invoco isso na linha de comando?
- Como automatizo este comando?
cron
Ainda é a maneira recomendada de automatizar ações baseadas no tempo? - Como tocar sons junto com o pop-up? Através da API do FreeDesktop ou através de um media player?
Uma solução completa seria apreciada e talvez útil para outras pessoas também.
notification
dbus
HRJ
fonte
fonte
dbus-send
poderia ser o aplicativo a ser usado, e simcron
é o caminho recomendado.dbus-send
não está funcionando porque não suporta alguns parâmetros exigidos por esta API. Eu estou olhandopynotify
.Respostas:
Como não podia usar
dbus-send
, escrevi um script python. O módulo pynotify usa internamente adbus
API. Para chutes extras, adicionei um biscoito da sorte na mensagem. Funciona como um encanto:Eu agendei isso usando
cron
. Acrontab
entrada se parece com:Atualização : Adicionado um método para reproduzir um som usando áudio de pulso
fonte
Você pode usar um script Python simples, como este:
fonte
Você pode enviar mensagens usando o comando dbus-send. Veja man: dbus-send para mais detalhes sobre isso.
fonte
dbus-send
. Infelizmente, ele não funciona neste caso, porquedbus-send
não pode criar um dicionário com variantes que a API requer