【发布时间】:2012-01-23 07:32:51
【问题描述】:
我正在使用GREE Labs' Dbus PHP Extension 尝试创建一个能够创建桌面通知的 PHP 类。
$dbus = $dbus = dbus_bus_get(DBUS_BUS_SESSION);
$message = new \DBusMessage(DBUS_MESSAGE_TYPE_SIGNAL);
$message->setDestination("org.freedesktop.DBus");
$message->setAutoStart(true);
$dbus->sendWithReplyAndBlock($message, 1);
运行我的代码时出现以下错误:
警告:dbus_bus_get() [function.dbus-bus-get]:未能创建 dbus 连接对象 [无法自动启动 dbus-daemon 没有 $DISPLAY for X11] 在 [...COI/GTK/Notify.php 第 39 行
这是我第一次使用与 dbus 相关的任何东西,并且很迷茫。
我的目标是获得类似于在终端中执行以下命令时发生的效果(在 Ubuntu 11.10 上):
/usr/bin/notify-send -t 2000 'title' 'message'
我最初确实使用了notify-send 和exec,但是当我发现 GREE Dbus 扩展时切换了,因为我认为它可以提供更清晰的界面。此外,notify-send 只有在我将我的 apache 用户更改为与我当前登录的用户相同时才能正常工作 - 这不是一个理想的解决方案。
谁能告诉我需要进行哪些修改才能达到我想要的结果,或者告诉我我想要做的事情是否实际上是不可能的?
或者,我应该这样做吗?
【问题讨论】: