小さな通知デーモンを作成しようとしています
pynotify はメイン スレッドで動作しますが、pynotify はデーモンの実行サイクルでは動作しません。メソッド プログラムを表示した後、ここでデーモン サンプルを取得しました 。
私のデーモン:
import pynotify
import sys, time
from daemon import Daemon
class NotifyDaemon(Daemon):
def run(self):
i = 9
while True:
pynotify.init('icon-summary-body')
n = pynotify.Notification('Test', 'text ')
print 'Test from stdout'# OK but only one message
n.show() # not OK
time.sleep(1)
if __name__ == "__main__":
if not pynotify.init('icon-summary-body'):
print 'PyNotify init failed!'
exit(2)
daemon = NotifyDaemon('/tmp/reminderdaemon.pid', stdout='/dev/stdout')
if len(sys.argv) == 2:
if 'start' == sys.argv[1]:
n = pynotify.Notification('Daemon starts!')#this message is ok
n.show()# OK
daemon.start()
elif 'stop' == sys.argv[1]:
daemon.stop()
elif 'restart' == sys.argv[1]:
daemon.restart()
else:
print "Unknown command"
sys.exit(2)
sys.exit(0)
else:
print "usage: %s start|stop|restart" % sys.argv[0]
sys.exit(2)
OS:Ubuntu WM:素晴らしい
抜け道はありますか?PS私の書き間違いをお詫びします。私の母国語ではない英語