summaryrefslogtreecommitdiff
path: root/lisp/notifications.el
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2012-11-07 17:55:39 +0100
committerMichael Albinus <michael.albinus@gmx.de>2012-11-07 17:55:39 +0100
commit499a0f7a985e28139433a3028f8edd7eca445d2c (patch)
tree11215673c2d4d86b1935ecfb088b7cd15e504940 /lisp/notifications.el
parenteb147960b1b4a42737f31afe1c0e70c6216812b6 (diff)
downloademacs-499a0f7a985e28139433a3028f8edd7eca445d2c.tar.gz
* notifications.el (notifications-get-server-information-method):
New defconst. (notifications-get-capabilities): Fix docstring. (notifications-get-server-information): New defun.
Diffstat (limited to 'lisp/notifications.el')
-rw-r--r--lisp/notifications.el33
1 files changed, 29 insertions, 4 deletions
diff --git a/lisp/notifications.el b/lisp/notifications.el
index 792298c26b7..6f477eb4cdd 100644
--- a/lisp/notifications.el
+++ b/lisp/notifications.el
@@ -66,6 +66,9 @@
(defconst notifications-get-capabilities-method "GetCapabilities"
"D-Bus notifications get capabilities method.")
+(defconst notifications-get-server-information-method "GetServerInformation"
+ "D-Bus notifications get server information method.")
+
(defconst notifications-action-signal "ActionInvoked"
"D-Bus notifications action signal.")
@@ -349,7 +352,7 @@ BUS can be a string denoting a D-Bus connection, the default is `:session'."
(defvar dbus-debug) ; used in the macroexpansion of dbus-ignore-errors
(defun notifications-get-capabilities (&optional bus)
- "Return the capabilities of the notification server, a list of strings.
+ "Return the capabilities of the notification server, a list of symbols.
BUS can be a string denoting a D-Bus connection, the default is `:session'.
The following capabilities can be expected:
@@ -371,12 +374,34 @@ The following capabilities can be expected:
Further vendor-specific caps start with `:x-vendor', like `:x-gnome-foo-cap'."
(dbus-ignore-errors
- (mapcar
- (lambda (x) (intern (concat ":" x)))
+ (mapcar
+ (lambda (x) (intern (concat ":" x)))
+ (dbus-call-method (or bus :session)
+ notifications-service
+ notifications-path
+ notifications-interface
+ notifications-get-capabilities-method))))
+
+(defun notifications-get-server-information (&optional bus)
+ "Return information on the notification server, a list of strings.
+BUS can be a string denoting a D-Bus connection, the default is `:session'.
+The returned list is (NAME VENDOR VERSION SPEC-VERSION).
+
+ NAME The product name of the server.
+ VENDOR The vendor name. For example, \"KDE\", \"GNOME\".
+ VERSION The server's version number.
+ SPEC-VERSION The specification version the server is compliant with.
+
+If SPEC_VERSION is missing, the server supports a specification
+prior to \"1.0\".
+
+See `notifications-specification-version' for the specification
+version this library is compliant with."
+ (dbus-ignore-errors
(dbus-call-method (or bus :session)
notifications-service
notifications-path
notifications-interface
- notifications-get-capabilities-method))))
+ notifications-get-server-information-method)))
(provide 'notifications)