Я использую расширение Dbus PHP GREE Labs в своих попытках создать класс 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 без
$ DISPLAY для 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 на того же пользователя, на котором я в данный момент вошел - не идеальное решение.
Может ли кто-нибудь сказать мне, какие модификации необходимы для достижения желаемого результата, или же сказать мне, если то, что я хочу сделать, на самом деле невозможно?
Или есть другой способ, которым я должен это делать?