问题标签 [pynotify]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
267 浏览

python - 是否可以更改通知的标题?

是否可以更改 pynotify.Notification 的标题?如果是这样,要使用的方法调用是什么?

此外,可以使用 合并通知set_hint_string('append', '')。是否可以更改标题并将它们合并。

我希望发生类似以下的事情(不是真正的代码,只是对效果的描述):

0 投票
1 回答
223 浏览

python - 如何从 pynotify.Notification 中读取标题、文本和图标名称?

如果我有一个 pynotify.Notification 对象,例如:

如何阅读标题(给出“标题”)、正文(给出“内容”)和图标(给出“图标”)?

0 投票
1 回答
820 浏览

python - Pynotify 以交互方式运行良好,但以编程方式运行时崩溃(在 Fedora 13 上)

我正在尝试将 pynotify 用于一个小项目,但在我的 Fedora 13 机器上遇到了一个奇怪的问题。看来,当 pynotify 以编程方式运行时,它在show()被调用时会崩溃 -但是,如果我自己键入该行,它运行良好!我也在我的 Ubuntu 机器上测试过它,它运行得非常好。

我的测试代码是:

运行结果如下:

那么,有没有人有任何想法可能导致这种行为?不幸的是,Fedora 环境是我几乎无法控制的环境,因此任何需要 root 访问/etc 的解决方案都不会真正起作用。但是,如果需要,我可以尝试在本地安装 pynotify。谢谢你的帮助。

0 投票
1 回答
1399 浏览

python - 如何删除过时的 pynotify 通知?

我刚开始使用 python,并为自己编写了一个不错的小脚本,它通过 pynotify 使用 gnome-notifications,如下所示:

这很好用,但问题是,当我连续两次执行脚本时,第一个通知需要一段时间才能消失。之后显示第二个。由于当我第二次执行脚本时第一个已过时,我想在显示第二个(或替换它)之前以编程方式删除第一个。这是可能的,如果是的话,怎么做?

了解我为什么需要这个的一些上下文:由于我经常将鼠标从左手切换到右手,反之亦然,我想要一个脚本来反转这个偏好并在通知中告诉我“切换到左手-手”和“切换到右手”。

0 投票
2 回答
961 浏览

python - 在 KDE 中使用 sudo 运行时,python 脚本中的 pynotify 出错

我只想在 KDE 环境中显示通知。所以我尝试了 pynotifytest.py

然后我运行sudo python pynotifytest.py,我得到的错误是:

然后我试图放弃特权 pynotifytest.py

我仍然只在 KDE 中遇到同样的错误。在 gnome-shell 中,通知按预期显示。我有一个 python 程序必须以 root 权限运行,所以我不能留下 sudo。1000 是我用户登录 X 的 uid。

我的 Linux 发行版是 Arch。谢谢

0 投票
2 回答
1852 浏览

python - pynotify:“关闭”信号回调从未触发

我正在尝试使用 pynotify(libnotify 的 Python 绑定)编写程序。我想在某个时候提出一个关键通知,并随着信息的变化每隔几秒钟更新一次,直到用户点击它为止。除了处理用户关闭它时发生的事情之外,这一切都有效。

为了更新通知,我需要Notification.showNotification.update. 这很好,但这意味着我需要跟踪用户是否关闭了通知,否则它会再次弹出。

这应该可以通过我能想到的两种方法来实现:

  1. 检测通知是否可见。我还没有找到任何方法来解决这个问题。
  2. 在通知关闭时存储一些变量,然后在更新和Notification.show再次调用之前检查它。

第二种方法应该是可行的。我发现的示例代码(似乎没有任何适当的 pynotify 文档)导致我调用Notification.connect"closed"信号连接到回调。我试图这样做,但从未触发回调。

我用谷歌搜索和调试了很长时间,但没有任何进展。最终我找到了一些 pynotify 附带的示例脚本。其中一个将处理程序附加到"closed"信号:test-xy-stress.py

其内容如下:

我运行了这个,发现这里的回调也永远不会触发。

这可能只是我的系统,还是 pynotify 或 libnotify 某处存在错误?如果现在这无济于事,那么上面的选项 1 怎么样 - 有没有办法做到这一点?

我似乎有 libnotify 0.4.5 和 pynotify 0.1.1。

0 投票
1 回答
2003 浏览

python - 回调和 gtk 主循环

我正在尝试制作一个简单的 Unix 桌面应用程序,它使用 pynotify 通知系统向用户显示一些警报,并允许他们从放置在警报上的按钮启动相关应用程序。

这是相关的简化代码:

这工作正常(它显示一个带有“操作”按钮的通知弹出窗口,该按钮在激活时触发 ls /),直到我实际尝试将通知部分放入循环中(我需要定期轮询服务器以获取通知然后显示) .

我试过这个:

但由于某种原因,单击“操作”按钮时不再调用“action_callback”函数。

看来这是我使用 Gtk 主循环的方式的问题。做这样的事情会使函数实际被触发:

但当然这不是正确的解决方案,我很快就得到了“超出最大递归深度”的 Python RuntimeError。然而,它表明改变 gtk.main() 调用的位置是有发生的。

我试图查看有关主循环的 Gtk 和 Pygtk 文档,但最终没有找到解决方案。

所以我的问题是:什么是正确的做法,它背后的逻辑是什么?

TL;DR:如果我不将 gtk.main() 放在显示通知的同一函数中,则不会触发 action_callback 函数。由于这个函数需要放在 gtk 主循环中,所以我坚持让 gtk 主循环调用自身或不触发 action_callback 函数。

在此先感谢您的帮助;)

0 投票
1 回答
2857 浏览

python - Pynotify 搞砸了日期时间,为什么?

问题

这段代码

生产

删除import pynotify,

删除错误。

为什么?!!?!

蟒蛇版本

Python 2.7.2+(默认,2011 年 10 月 4 日,20:06:09)[GCC 4.6.1] on linux2

pynotify。文件

我添加了打印调用pynotify.__file__datetime.__file__

数据库

似乎'%d/%m/%y %H:%M %p'没有捕获所有“5/1/12 1:15 PM”

0 投票
1 回答
256 浏览

python - Pynotify 不工作 Jython

我正在尝试构建一个连接到 Oracle 数据库并显示通知的 Python 应用程序。现在循环,一切正常,但访问 Oracle 数据库似乎是不可能的。

我研究并发现有两种方法可以通过 Python 连接到 Oracle。如果我们使用本机 python,我们必须使用 Oracle 即时客户端。我想忽略这条路径并使用下一条。另一种方法是使用 jython 并使用 Oracle JDBC 驱动程序访问 Oracle。

我设法将 Oracle JDBC 导入到 jython

现在当我尝试导入 Pynotify 时出现问题。

错误

0 投票
1 回答
4842 浏览

python - Is there a python-notify module for python3.2?

I have put together a simple time difference python script with whatever I know and it works fine with Python 2.7.3. The script finds the time difference and then sends a desktop notification in Ubuntu using python-notify.

However, it seems to fail if I run it with Python 3.2.3. It seems like there is no python-notify module for Python 3.2.

Is it possible to use python-notify with Python3 somehow or am I going to have to stick with Python 2.7 until the bindings are ported for Python 3.2?

I found a mailing list dated April 2010 which suggests that pynotify may not be Python3 compatible. Has there been improvements on that regard at least?