dbus-send基本用法

转自:http://blog.163.com/seven_7_one/blog/static/1626064122011621115125626/

最近工作需要,研究了一下dbus-send命令。基本的命令形式是:
dbus-send --system --print-reply --dest=org.bluez /org/bluez/audio org.bluez.audio.Manager.CreateDevice string:'11:11:11:11:11:11'
其中:

--system
将命令发向系统总线,也可使用--session
--print-reply
打印返回结果
--dest=org.bluez
服务名。用户可以用查询命令获得当前系统的所有服务名
/org/bluez/audio
对象名。由服务定义
org.bluez.audio.Manager.CreateDevice
object.interface.Method
string:'11:11:11:11:11'
参数。 类型:值 int32:123

dbus的一些基本服务
查看system bus上面挂载的services


dbus-send --system --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListActivatableNames


查看session bus上面挂载的services


dbus-send --session --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListActivatableNames


dbus的基本服务


dbus-send --system --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.Introspectable.Introspect 


List service??


dbus-send --system --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListNames