Python:pynotify网络问题
我正在使用pynotify,这是我想让它运行的代码:
#! /usr/bin/python
try:
import pynotify
if pynotify.init("Telebrama Alert"):
n = pynotify.Notification('Message','This is test message')
n.set_urgency(pynotify.URGENCY_CRITICAL)
n.show()
else:
print 'There was a problem in initializing the pynotify module'
except:
print "you don't seem to installed pynotify\n"
在我的电脑上运行得很好。但是我想把一些通知发送到另一个网络。我该怎么做呢?
3 个回答
0
根据你的 DISPLAY 变量,你可以通过以下方式让它工作:
import os
os.environ['DISPLAY'] = ':0.0'
1
首先,你得明白,pynotify和网络没有关系。
pynotify是Python语言用来和libnotify这个库沟通的工具。libnotify主要是用来在桌面上显示本地通知的。它使用的是本地的D-Bus消息总线,也就是说,它不涉及网络。所以,如果你想把通知发送到其他电脑的桌面上,你就得用其他的工具。
2
pynotify
只是一个X客户端。如果你想连接到一个不是本地的X服务器,你需要设置一个叫做DISPLAY的环境变量。要注意的是,你要连接的X服务器必须配置好,能够接受远程连接(可以查看xhost和xauth的手册页了解更多信息)。