GDBUS - Online Linux Manual PageSection : 1
Updated :
Source : GIO
Note : User Commands

NAMEgdbus − Tool for working with D−Bus objects

SYNOPSISgdbus introspect [−−system | −−session | −−address address] −−dest bus_name −−object−path /path/to/object [−−xml] [−−recurse] [−−only−properties] gdbus monitor [−−system | −−session | −−address address] −−dest bus_name [−−object−path /path/to/object] gdbus call [−−system | −−session | −−address address] −−dest bus_name −−object−path /path/to/object −−method org​.project​.InterfaceName​.MethodName [−−timeout seconds | −−interactive] ARG1 ARG2... gdbus emit [−−system | −−session | −−address address] −−object−path /path/to/object −−signal org​.project​.InterfaceName​.SignalName [−−dest unique_bus_name] ARG1 ARG2... gdbus wait [−−system | −−session | −−address address] −−activate bus_name [−−timeout seconds] bus_name gdbus help

DESCRIPTIONgdbus is a simple tool for working with D−Bus objects​.

COMMANDSintrospect Prints out interfaces and property values for a remote object​. For this to work, the owner of the object needs to implement the org​.freedesktop​.DBus​.Introspectable interface​. If the −−xml option is used, the returned introspection XML is printed, otherwise a parsed pretty representation is printed​. The −−recurse option can be used to introspect children (and their children and so on) and the −−only−properties option can be used to only print the interfaces with properties​. monitor Monitors one or all objects owned by the owner of bus_name​. call Invokes a method on a remote object​. Each argument to pass to the method must be specified as a serialized GVariant except that strings do not need explicit quotes​. The return values are printed out as serialized GVariant values​. emit Emits a signal​. Each argument to include in the signal must be specified as a serialized GVariant except that strings do not need explicit quotes​. wait Waits until bus_name is owned by some process on the bus​. If the −−activate is specified, that bus name will be auto−started first​. It may be the same as the bus name being waited for, or different​. help Prints help and exit​.

BASH COMPLETIONgdbus ships with a bash completion script to complete commands, destinations, bus names, object paths and interface/method names​.

EXAMPLES
  This shows how to introspect an object − note that the value of each
  property is displayed: $ gdbus introspect −−system \ −−dest org​.freedesktop​.NetworkManager \ −−object−path /org/freedesktop/NetworkManager/Devices/0 node /org/freedesktop/NetworkManager/Devices/0 { interface org​.freedesktop​.DBus​.Introspectable { methods: Introspect(out s data); }; interface org​.freedesktop​.DBus​.Properties { methods: Get(in s interface, in s propname, out v value); Set(in s interface, in s propname, in v value); GetAll(in s interface, out a{sv} props); }; interface org​.freedesktop​.NetworkManager​.Device​.Wired { signals: PropertiesChanged(a{sv} arg_0); properties: readonly b Carrier = false; readonly u Speed = 0; readonly s HwAddress = '00:1D:72:88:BE:97'; }; interface org​.freedesktop​.NetworkManager​.Device { methods: Disconnect(); signals: StateChanged(u arg_0, u arg_1, u arg_2); properties: readonly u DeviceType = 1; readonly b Managed = true; readwrite o Ip6Config = '/'; readwrite o Dhcp4Config = '/'; readwrite o Ip4Config = '/'; readonly u State = 2; readwrite u Ip4Address = 0; readonly u Capabilities = 3; readonly s Driver = 'e1000e'; readwrite s Interface = 'eth0'; readonly s Udi = '/sys/devices/pci0000:00/0000:00:19​.0/net/eth0'; }; };The −−recurse and −−only−properties options can be useful when wanting to inspect all objects owned by a particular process: $ gdbus introspect −−system −−dest org​.freedesktop​.UPower −−object−path / −−recurse −−only−properties node / { node /org { node /org/freedesktop { node /org/freedesktop/UPower { interface org​.freedesktop​.UPower { properties: readonly b IsDocked = true; readonly b LidForceSleep = false; readonly b LidIsPresent = false; readonly b LidIsClosed = false; readonly b OnLowBattery = false; readonly b OnBattery = false; readonly b CanHibernate = true; readonly b CanSuspend = true; readonly s DaemonVersion = '0​.9​.10'; }; node /org/freedesktop/UPower/Policy { }; node /org/freedesktop/UPower/Wakeups { interface org​.freedesktop​.UPower​.Wakeups { properties: readonly b HasCapability = true; }; }; }; }; }; };In a similar fashion, the introspect command can be used to learn details about the Notify method: [​.​.​.] interface org​.freedesktop​.Notifications { methods: GetServerInformation(out s return_name, out s return_vendor, out s return_version, out s return_spec_version); GetCapabilities(out as return_caps); CloseNotification(in u id); Notify(in s app_name, in u id, in s icon, in s summary, in s body, in as actions, in a{sv} hints, in i timeout, out u return_id); }; [​.​.​.]With this information, it's easy to use the call command to display a notification $ gdbus call −−session \ −−dest org​.freedesktop​.Notifications \ −−object−path /org/freedesktop/Notifications \ −−method org​.freedesktop​.Notifications​.Notify \ my_app_name \ 42 \ gtk−dialog−info \ "The Summary" \ "Here's the body of the notification" \ [] \ {} \ 5000 (uint32 12,)Call a method with file handle argument: $ gdbus call −−session \ −−dest org​.example​.foo \ −−object−path /org/example/foo \ −−method SendFDs \ 1 \ 10 \ 10<file​.fooMonitoring all objects on a service: $ gdbus monitor −−system −−dest org​.freedesktop​.ConsoleKit Monitoring signals from all objects owned by org​.freedesktop​.ConsoleKit The name org​.freedesktop​.ConsoleKit is owned by :1​.15 /org/freedesktop/ConsoleKit/Session2: org​.freedesktop​.ConsoleKit​.Session​.ActiveChanged (false,) /org/freedesktop/ConsoleKit/Seat1: org​.freedesktop​.ConsoleKit​.Seat​.ActiveSessionChanged ('',) /org/freedesktop/ConsoleKit/Session2: org​.freedesktop​.ConsoleKit​.Session​.ActiveChanged (true,) /org/freedesktop/ConsoleKit/Seat1: org​.freedesktop​.ConsoleKit​.Seat​.ActiveSessionChanged ('/org/freedesktop/ConsoleKit/Session2',)Monitoring a single object on a service: $ gdbus monitor −−system −−dest org​.freedesktop​.NetworkManager −−object−path /org/freedesktop/NetworkManager/AccessPoint/4141 Monitoring signals on object /org/freedesktop/NetworkManager/AccessPoint/4141 owned by org​.freedesktop​.NetworkManager The name org​.freedesktop​.NetworkManager is owned by :1​.5 /org/freedesktop/NetworkManager/AccessPoint/4141: org​.freedesktop​.NetworkManager​.AccessPoint​.PropertiesChanged ({'Strength': <byte 0x5c>},) /org/freedesktop/NetworkManager/AccessPoint/4141: org​.freedesktop​.NetworkManager​.AccessPoint​.PropertiesChanged ({'Strength': <byte 0x64>},) /org/freedesktop/NetworkManager/AccessPoint/4141: org​.freedesktop​.NetworkManager​.AccessPoint​.PropertiesChanged ({'Strength': <byte 0x5e>},) /org/freedesktop/NetworkManager/AccessPoint/4141: org​.freedesktop​.NetworkManager​.AccessPoint​.PropertiesChanged ({'Strength': <byte 0x64>},)Emitting a signal: $ gdbus emit −−session −−object−path /foo −−signal org​.bar​.Foo "['foo', 'bar', 'baz']"Emitting a signal to a specific process: $ gdbus emit −−session −−object−path /bar −−signal org​.bar​.Bar someString −−dest :1​.42Waiting for a well−known name to be owned on the bus; this will not auto−start the service: $ gdbus wait −−session org​.bar​.SomeNameAuto−starting then waiting for a well−known name to be owned on the bus: $ gdbus wait −−session −−activate org​.bar​.SomeNameAuto−starting a different service, then waiting for a well−known name to be owned on the bus​. This is useful in situations where SomeName is not directly activatable: $ gdbus wait −−session −−activate org​.bar​.PrerequisiteName org​.bar​.SomeNameWaiting for a well−known name and giving up after 30 seconds​. By default, the timeout is disabled; or set −−timeout to 0 to disable it: $ gdbus wait −−session −−timeout 30 org​.bar​.SomeName

BUGSPlease send bug reports to either the distribution bug tracker or the upstream bug tracker at ­https://gitlab.gnome.org/GNOME/glib/issues/new​.

SEE ALSOdbus-send(1)
0
Johanes Gumabo
Data Size   :   27,321 byte
man-gdbus.1Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   3 / 165,145
Visitor ID   :     :  
Visitor IP   :   3.15.34.105   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.