xref: /aosp_15_r20/external/libwebsockets/minimal-examples/dbus-client/minimal-dbus-client/README.md (revision 1c60b9aca93fdbc9b5f19b2d2194c91294b22281)
1*1c60b9acSAndroid Build Coastguard Worker# lws minimal dbus client
2*1c60b9acSAndroid Build Coastguard Worker
3*1c60b9acSAndroid Build Coastguard WorkerThis demonstrates nonblocking, asynchronous dbus method calls as the client.
4*1c60b9acSAndroid Build Coastguard Worker
5*1c60b9acSAndroid Build Coastguard Worker## build
6*1c60b9acSAndroid Build Coastguard Worker
7*1c60b9acSAndroid Build Coastguard WorkerUsing libdbus requires additional non-default include paths setting, same as
8*1c60b9acSAndroid Build Coastguard Workeris necessary for lws build described in ./lib/roles/dbus/README.md
9*1c60b9acSAndroid Build Coastguard Worker
10*1c60b9acSAndroid Build Coastguard WorkerCMake can guess one path and the library name usually, see the README above
11*1c60b9acSAndroid Build Coastguard Workerfor details of how to override for custom libdbus and cross build.
12*1c60b9acSAndroid Build Coastguard Worker
13*1c60b9acSAndroid Build Coastguard WorkerFedora example:
14*1c60b9acSAndroid Build Coastguard Worker```
15*1c60b9acSAndroid Build Coastguard Worker$ cmake .. -DLWS_DBUS_INCLUDE2="/usr/lib64/dbus-1.0/include"
16*1c60b9acSAndroid Build Coastguard Worker$ make
17*1c60b9acSAndroid Build Coastguard Worker```
18*1c60b9acSAndroid Build Coastguard Worker
19*1c60b9acSAndroid Build Coastguard WorkerUbuntu example:
20*1c60b9acSAndroid Build Coastguard Worker```
21*1c60b9acSAndroid Build Coastguard Worker$ cmake .. -DLWS_DBUS_INCLUDE2="/usr/lib/x86_64-linux-gnu/dbus-1.0/include"
22*1c60b9acSAndroid Build Coastguard Worker$ make
23*1c60b9acSAndroid Build Coastguard Worker```
24*1c60b9acSAndroid Build Coastguard Worker
25*1c60b9acSAndroid Build Coastguard Worker## usage
26*1c60b9acSAndroid Build Coastguard Worker
27*1c60b9acSAndroid Build Coastguard WorkerCommandline option|Meaning
28*1c60b9acSAndroid Build Coastguard Worker---|---
29*1c60b9acSAndroid Build Coastguard Worker-d <loglevel>|Debug verbosity in decimal, eg, -d15
30*1c60b9acSAndroid Build Coastguard Worker
31*1c60b9acSAndroid Build Coastguard WorkerThe minimal client connects to the minimal dbus server example, which is
32*1c60b9acSAndroid Build Coastguard Workerexpected to be listening on its default abstract unix domain socket path.
33*1c60b9acSAndroid Build Coastguard Worker
34*1c60b9acSAndroid Build Coastguard WorkerIt call the server Echo method with "Hello!" and returns to the event loop.
35*1c60b9acSAndroid Build Coastguard WorkerWhen the reply comes, it prints the returned message.
36*1c60b9acSAndroid Build Coastguard Worker
37*1c60b9acSAndroid Build Coastguard WorkerAfterwards it just sits there receiving unsolicited messages from the server
38*1c60b9acSAndroid Build Coastguard Workerexample, until closed by the user.
39*1c60b9acSAndroid Build Coastguard Worker
40*1c60b9acSAndroid Build Coastguard Worker```
41*1c60b9acSAndroid Build Coastguard Worker $ ./lws-minimal-dbus-client
42*1c60b9acSAndroid Build Coastguard Workerctx
43*1c60b9acSAndroid Build Coastguard Worker[2018/10/05 06:08:31:4901] NOTICE: pending_call_notify
44*1c60b9acSAndroid Build Coastguard Worker[2018/10/05 06:08:31:4929] USER: pending_call_notify: received 'Hello!'
45*1c60b9acSAndroid Build Coastguard Worker^C[2018/10/05 06:09:22:4409] NOTICE: destroy_dbus_client_conn
46*1c60b9acSAndroid Build Coastguard Worker[2018/10/05 06:09:22:4691] NOTICE: Exiting cleanly
47*1c60b9acSAndroid Build Coastguard Worker...
48*1c60b9acSAndroid Build Coastguard Worker```
49*1c60b9acSAndroid Build Coastguard Worker
50