当前位置: 首页 > 工具软件 > monitor-man > 使用案例 >

dbus-send以及dbus-monitor工具的使用方法示例

琴宾鸿
2023-12-01

dbus-send以及dbus-monitor工具的使用方法示例。


   dbus-send的详细用法可以参阅手册($man dbus-send或者$dbus-send --help)。


   调用远程方法的一般形式是:
$ dbus-send [--system | --session] --type=method_call --print-reply --dest=连接名 对象路径 接口名.方法名 参数类型:参数值 参数类型:参数值
dbus-send支持的参数类型包括:string, int32, uint32, double, byte, boolean。

   下面是一些调用示例:
(1)调用org.freedesktop.DBus.Introspectable.Introspect方法查看消息总线对象支持的接口。
 $ dbus-send --session --type=method_call --print-reply --dest=org.freedesktop.DBus / org.freedesktop.DBu s.Introspectable.Introspect

(2)You can get the number of seconds the screensaver has been active by running the following:
dbus-send --session \ --dest=org.gnome.ScreenSaver \ --type=method_call \ --print-reply \ --reply-timeout=20000 \ /org/gnome/ScreenSaver \ org.gnome.ScreenSaver.GetSessionIdleTime 

(3)You can activate the screensaver like so:

dbus-send --session \ --dest=org.gnome.ScreenSaver \ --type=method_call \ --print-reply \ --reply-timeout=20000 \ /org/gnome/ScreenSaver \ org.gnome.ScreenSaver.SetActive \ boolean:true 


 dbus-monitor的详细用法可以参阅手册($man dbus-monitor或者$dbus-monitor --help)

 

    下面是一些调用示例:
 (1)You can monitor screensaver changes:
dbus-monitor --session \ "type='signal',interface='org.gnome.ScreenSaver'" 

 (2)Or watch for a specific screensaver signal:
dbus-monitor --session \ "type='signal',interface='org.gnome.ScreenSaver',member='SessionIdleChanged'"

(来自于fmddlmyy的专栏dbus实例讲解(二上):消息和消息总线 http://blog.csdn.net/fmddlmyy/article/details/3640847 和 GNOME Screensaver 2.15.3 Documentation:http://people.gnome.org/~mccann/gnome-screensaver/docs/gnome-screensaver.html#gs-examples)
 类似资料: