DBus binding for Tcl

Hex Artifact Content
Login

Artifact 2137fc3e489d7e23e7c4c387a9f6e609071878e3440f53797af9de6b378cbc37:

Wiki page [Manual page] by schelte 2018-09-28 09:51:19.
0000: 44 20 32 30 31 38 2d 30 39 2d 32 38 54 30 39 3a  D 2018-09-28T09:
0010: 35 31 3a 31 39 2e 30 36 30 0a 4c 20 4d 61 6e 75  51:19.060.L Manu
0020: 61 6c 5c 73 70 61 67 65 0a 50 20 34 66 34 32 61  al\spage.P 4f42a
0030: 37 64 33 66 61 39 35 39 34 38 65 65 64 30 31 30  7d3fa95948eed010
0040: 62 31 33 61 33 38 64 33 36 34 39 34 38 30 61 32  b13a38d3649480a2
0050: 30 65 34 33 61 30 37 32 63 65 32 33 65 36 63 36  0e43a072ce23e6c6
0060: 64 63 62 63 63 33 33 34 63 32 61 0a 55 20 73 63  dcbcc334c2a.U sc
0070: 68 65 6c 74 65 0a 57 20 32 37 36 36 31 0a 3c 68  helte.W 27661.<h
0080: 31 3e 54 63 6c 20 44 42 75 73 20 65 78 74 65 6e  1>Tcl DBus exten
0090: 73 69 6f 6e 3c 2f 68 31 3e 0d 0a 0d 0a 3c 70 3e  sion</h1>....<p>
00a0: 64 62 75 73 20 2d 20 54 63 6c 20 6c 69 62 72 61  dbus - Tcl libra
00b0: 72 79 20 66 6f 72 20 69 6e 74 65 72 61 63 74 69  ry for interacti
00c0: 6e 67 20 77 69 74 68 20 74 68 65 20 44 42 75 73  ng with the DBus
00d0: 0d 0a 0d 0a 3c 68 72 3e 0d 0a 0d 0a 3c 68 32 3e  ....<hr>....<h2>
00e0: 53 79 6e 6f 70 73 69 73 3c 2f 68 32 3e 0d 0a 0d  Synopsis</h2>...
00f0: 0a 3c 70 3e 0d 0a 70 61 63 6b 61 67 65 20 72 65  .<p>..package re
0100: 71 75 69 72 65 20 3c 62 3e 54 63 6c 20 38 2e 35  quire <b>Tcl 8.5
0110: 3c 2f 62 3e 3c 62 72 3e 0d 0a 70 61 63 6b 61 67  </b><br>..packag
0120: 65 20 72 65 71 75 69 72 65 20 3c 62 3e 64 62 75  e require <b>dbu
0130: 73 20 33 2e 30 3c 2f 62 3e 3c 62 72 3e 0d 0a 3c  s 3.0</b><br>..<
0140: 70 3e 0d 0a 5b 23 31 7c 3c 62 3e 64 62 75 73 3c  p>..[#1|<b>dbus<
0150: 2f 62 3e 20 3c 62 3e 63 61 6c 6c 3c 2f 62 3e 20  /b> <b>call</b> 
0160: 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3f  ?<i>busID</i>? ?
0170: 3c 62 3e 2d 61 75 74 6f 73 74 61 72 74 3c 2f 62  <b>-autostart</b
0180: 3e 20 3f 3c 69 3e 62 6f 6f 6c 65 61 6e 3c 2f 69  > ?<i>boolean</i
0190: 3e 3f 3f 20 3f 3c 62 3e 2d 64 65 73 74 3c 2f 62  >?? ?<b>-dest</b
01a0: 3e 20 3c 69 3e 74 61 72 67 65 74 3c 2f 69 3e 3f  > <i>target</i>?
01b0: 20 3f 3c 62 3e 2d 64 65 74 61 69 6c 73 3c 2f 62   ?<b>-details</b
01c0: 3e 20 3f 3c 69 3e 62 6f 6f 6c 65 61 6e 3c 2f 69  > ?<i>boolean</i
01d0: 3e 3f 3f 20 3f 3c 62 3e 2d 68 61 6e 64 6c 65 72  >?? ?<b>-handler
01e0: 3c 2f 62 3e 20 3c 69 3e 73 63 72 69 70 74 3c 2f  </b> <i>script</
01f0: 69 3e 3f 20 3f 3c 62 3e 2d 73 69 67 6e 61 74 75  i>? ?<b>-signatu
0200: 72 65 3c 2f 62 3e 20 3c 69 3e 73 74 72 69 6e 67  re</b> <i>string
0210: 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 74 69 6d 65 6f  </i>? ?<b>-timeo
0220: 75 74 3c 2f 62 3e 20 3c 69 3e 6d 73 3c 2f 69 3e  ut</b> <i>ms</i>
0230: 3f 20 3c 69 3e 70 61 74 68 3c 2f 69 3e 20 3c 69  ? <i>path</i> <i
0240: 3e 69 6e 74 65 72 66 61 63 65 3c 2f 69 3e 20 3c  >interface</i> <
0250: 69 3e 6d 65 74 68 6f 64 3c 2f 69 3e 20 3f 3c 69  i>method</i> ?<i
0260: 3e 61 72 67 3c 2f 69 3e 20 3c 69 3e 2e 2e 2e 3c  >arg</i> <i>...<
0270: 2f 69 3e 3f 5d 3c 62 72 3e 0d 0a 5b 23 32 7c 3c  /i>?]<br>..[#2|<
0280: 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 63 6c  b>dbus</b> <b>cl
0290: 6f 73 65 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49  ose</b> ?<i>busI
02a0: 44 3c 2f 69 3e 3f 5d 3c 62 72 3e 0d 0a 5b 23 33  D</i>?]<br>..[#3
02b0: 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e  |<b>dbus</b> <b>
02c0: 63 6f 6e 6e 65 63 74 3c 2f 62 3e 20 3f 3c 69 3e  connect</b> ?<i>
02d0: 61 64 64 72 65 73 73 3c 2f 69 3e 3f 5d 3c 62 72  address</i>?]<br
02e0: 3e 0d 0a 5b 23 34 7c 3c 62 3e 64 62 75 73 3c 2f  >..[#4|<b>dbus</
02f0: 62 3e 20 3c 62 3e 65 72 72 6f 72 3c 2f 62 3e 20  b> <b>error</b> 
0300: 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3f  ?<i>busID</i>? ?
0310: 3c 62 3e 2d 6e 61 6d 65 3c 2f 62 3e 20 3c 69 3e  <b>-name</b> <i>
0320: 73 74 72 69 6e 67 3c 2f 69 3e 3f 20 3c 69 3e 64  string</i>? <i>d
0330: 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 69 3e 20 3c  estination</i> <
0340: 69 3e 73 65 72 69 61 6c 3c 2f 69 3e 20 3f 6d 65  i>serial</i> ?me
0350: 73 73 61 67 65 3f 5d 3c 62 72 3e 0d 0a 5b 23 35  ssage?]<br>..[#5
0360: 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e  |<b>dbus</b> <b>
0370: 66 69 6c 74 65 72 3c 2f 62 3e 20 3f 3c 69 3e 62  filter</b> ?<i>b
0380: 75 73 49 44 3c 2f 69 3e 3f 20 3c 69 3e 73 75 62  usID</i>? <i>sub
0390: 63 6f 6d 6d 61 6e 64 3c 2f 69 3e 20 3c 62 3e 2d  command</i> <b>-
03a0: 6f 70 74 69 6f 6e 3c 2f 62 3e 20 3c 69 3e 76 61  option</b> <i>va
03b0: 6c 75 65 3c 2f 69 3e 20 3f 3c 69 3e 2e 2e 2e 3c  lue</i> ?<i>...<
03c0: 2f 69 3e 3f 5d 3c 62 72 3e 0d 0a 5b 23 36 7c 3c  /i>?]<br>..[#6|<
03d0: 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 69 6e  b>dbus</b> <b>in
03e0: 66 6f 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49 44  fo</b> ?<i>busID
03f0: 3c 2f 69 3e 3f 20 3c 69 3e 6f 70 74 69 6f 6e 3c  </i>? <i>option<
0400: 2f 69 3e 5d 3c 62 72 3e 0d 0a 5b 23 37 7c 3c 62  /i>]<br>..[#7|<b
0410: 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 6c 69 73  >dbus</b> <b>lis
0420: 74 65 6e 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49  ten</b> ?<i>busI
0430: 44 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 64 65 74 61  D</i>? ?<b>-deta
0440: 69 6c 73 3c 2f 62 3e 3f 20 3f 3c 69 3e 70 61 74  ils</b>? ?<i>pat
0450: 68 3c 2f 69 3e 20 3f 3c 69 3e 6d 65 6d 62 65 72  h</i> ?<i>member
0460: 3c 2f 69 3e 20 3f 3c 69 3e 73 63 72 69 70 74 3c  </i> ?<i>script<
0470: 2f 69 3e 3f 3f 3f 5d 3c 62 72 3e 0d 0a 5b 23 38  /i>???]<br>..[#8
0480: 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e  |<b>dbus</b> <b>
0490: 6d 65 74 68 6f 64 3c 2f 62 3e 20 3f 3c 69 3e 62  method</b> ?<i>b
04a0: 75 73 49 44 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 64  usID</i>? ?<b>-d
04b0: 65 74 61 69 6c 73 3c 2f 62 3e 3f 20 3f 3c 69 3e  etails</b>? ?<i>
04c0: 70 61 74 68 3c 2f 69 3e 20 3f 3c 69 3e 6d 65 6d  path</i> ?<i>mem
04d0: 62 65 72 3c 2f 69 3e 20 3f 3c 69 3e 73 63 72 69  ber</i> ?<i>scri
04e0: 70 74 3c 2f 69 3e 3f 3f 3f 5d 3c 62 72 3e 0d 0a  pt</i>???]<br>..
04f0: 5b 23 39 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20  [#9|<b>dbus</b> 
0500: 3c 62 3e 6d 6f 6e 69 74 6f 72 3c 2f 62 3e 20 3f  <b>monitor</b> ?
0510: 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3f 3c  <i>busID</i>? ?<
0520: 62 3e 2d 64 65 74 61 69 6c 73 3c 2f 62 3e 3f 20  b>-details</b>? 
0530: 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e 5d 3c 62  <i>script</i>]<b
0540: 72 3e 0d 0a 5b 23 31 30 7c 3c 62 3e 64 62 75 73  r>..[#10|<b>dbus
0550: 3c 2f 62 3e 20 3c 62 3e 6e 61 6d 65 3c 2f 62 3e  </b> <b>name</b>
0560: 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20   ?<i>busID</i>? 
0570: 3f 3c 62 3e 2d 6f 70 74 69 6f 6e 3c 2f 62 3e 20  ?<b>-option</b> 
0580: 3c 69 3e 2e 2e 2e 3c 2f 69 3e 3f 20 3c 69 3e 6e  <i>...</i>? <i>n
0590: 61 6d 65 3c 2f 69 3e 5d 3c 62 72 3e 0d 0a 5b 23  ame</i>]<br>..[#
05a0: 31 31 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c  11|<b>dbus</b> <
05b0: 62 3e 72 65 6c 65 61 73 65 3c 2f 62 3e 20 3f 3c  b>release</b> ?<
05c0: 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3c 69 3e  i>busID</i>? <i>
05d0: 6e 61 6d 65 3c 2f 69 3e 5d 3c 62 72 3e 0d 0a 5b  name</i>]<br>..[
05e0: 23 31 32 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20  #12|<b>dbus</b> 
05f0: 3c 62 3e 72 65 74 75 72 6e 3c 2f 62 3e 20 3f 3c  <b>return</b> ?<
0600: 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3f 3c 62  i>busID</i>? ?<b
0610: 3e 2d 73 69 67 6e 61 74 75 72 65 3c 2f 62 3e 20  >-signature</b> 
0620: 3c 69 3e 73 74 72 69 6e 67 3c 2f 69 3e 3f 20 3c  <i>string</i>? <
0630: 69 3e 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 69  i>destination</i
0640: 3e 20 3c 69 3e 73 65 72 69 61 6c 3c 2f 69 3e 20  > <i>serial</i> 
0650: 3f 3c 69 3e 61 72 67 3c 2f 69 3e 20 3c 69 3e 2e  ?<i>arg</i> <i>.
0660: 2e 2e 3c 2f 69 3e 3f 5d 3c 62 72 3e 0d 0a 5b 23  ..</i>?]<br>..[#
0670: 31 33 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c  13|<b>dbus</b> <
0680: 62 3e 73 69 67 6e 61 6c 3c 2f 62 3e 20 3f 3c 69  b>signal</b> ?<i
0690: 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3f 3c 62 3e  >busID</i>? ?<b>
06a0: 2d 73 69 67 6e 61 74 75 72 65 3c 2f 62 3e 20 3c  -signature</b> <
06b0: 69 3e 73 74 72 69 6e 67 3c 2f 69 3e 3f 20 3c 69  i>string</i>? <i
06c0: 3e 6f 62 6a 65 63 74 3c 2f 69 3e 20 3c 69 3e 69  >object</i> <i>i
06d0: 6e 74 65 72 66 61 63 65 3c 2f 69 3e 20 3c 69 3e  nterface</i> <i>
06e0: 6e 61 6d 65 3c 2f 69 3e 20 3f 3c 69 3e 61 72 67  name</i> ?<i>arg
06f0: 3c 2f 69 3e 20 3c 69 3e 2e 2e 2e 3c 2f 69 3e 3f  </i> <i>...</i>?
0700: 5d 3c 62 72 3e 0d 0a 5b 23 31 34 7c 3c 62 3e 64  ]<br>..[#14|<b>d
0710: 62 75 73 3c 2f 62 3e 20 3c 62 3e 75 6e 6b 6e 6f  bus</b> <b>unkno
0720: 77 6e 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49 44  wn</b> ?<i>busID
0730: 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 64 65 74 61 69  </i>? ?<b>-detai
0740: 6c 73 3c 2f 62 3e 3f 20 3f 3c 69 3e 70 61 74 68  ls</b>? ?<i>path
0750: 3c 2f 69 3e 20 3f 3c 69 3e 73 63 72 69 70 74 3c  </i> ?<i>script<
0760: 2f 69 3e 3f 3f 5d 3c 62 72 3e 0d 0a 5b 23 31 35  /i>??]<br>..[#15
0770: 7c 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e  |<b>dbus</b> <b>
0780: 76 61 6c 69 64 61 74 65 3c 2f 62 3e 20 3c 69 3e  validate</b> <i>
0790: 63 6c 61 73 73 3c 2f 69 3e 20 3c 69 3e 73 74 72  class</i> <i>str
07a0: 69 6e 67 3c 2f 69 3e 5d 3c 62 72 3e 0d 0a 0d 0a  ing</i>]<br>....
07b0: 3c 68 72 3e 0d 0a 0d 0a 3c 68 32 3e 44 65 73 63  <hr>....<h2>Desc
07c0: 72 69 70 74 69 6f 6e 3c 2f 68 32 3e 0d 0a 0d 0a  ription</h2>....
07d0: 54 68 65 20 3c 62 3e 64 62 75 73 3c 2f 62 3e 20  The <b>dbus</b> 
07e0: 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 73  package provides
07f0: 20 63 6f 6d 6d 61 6e 64 73 20 74 6f 20 69 6e 74   commands to int
0800: 65 72 61 63 74 20 77 69 74 68 20 44 42 75 73 0d  eract with DBus.
0810: 0a 6d 65 73 73 61 67 65 20 62 75 73 73 65 73 2e  .message busses.
0820: 20 54 68 65 72 65 20 61 72 65 20 74 68 72 65 65   There are three
0830: 20 77 65 6c 6c 2d 6b 6e 6f 77 6e 20 62 75 73 20   well-known bus 
0840: 6e 61 6d 65 73 3a 20 3c 62 20 63 6c 61 73 73 3d  names: <b class=
0850: 22 63 6f 6e 73 74 22 3e 73 65 73 73 69 6f 6e 3c  "const">session<
0860: 2f 62 3e 2c 0d 0a 3c 62 20 63 6c 61 73 73 3d 22  /b>,..<b class="
0870: 63 6f 6e 73 74 22 3e 73 79 73 74 65 6d 3c 2f 62  const">system</b
0880: 3e 2c 20 61 6e 64 20 3c 62 20 63 6c 61 73 73 3d  >, and <b class=
0890: 22 63 6f 6e 73 74 22 3e 73 74 61 72 74 65 72 3c  "const">starter<
08a0: 2f 62 3e 2e 20 54 68 65 20 73 74 61 72 74 65 72  /b>. The starter
08b0: 20 62 75 73 20 6f 6e 6c 79 20 61 70 70 6c 69 65   bus only applie
08c0: 73 20 77 68 65 6e 20 74 68 65 0d 0a 61 70 70 6c  s when the..appl
08d0: 69 63 61 74 69 6f 6e 20 68 61 73 20 62 65 65 6e  ication has been
08e0: 20 73 74 61 72 74 65 64 20 61 73 20 61 20 72 65   started as a re
08f0: 73 75 6c 74 20 6f 66 20 61 20 6d 65 74 68 6f 64  sult of a method
0900: 20 63 61 6c 6c 20 66 72 6f 6d 20 61 6e 6f 74 68   call from anoth
0910: 65 72 0d 0a 61 70 70 6c 69 63 61 74 69 6f 6e 2e  er..application.
0920: 20 41 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f   A connection to
0930: 20 74 68 65 20 73 74 61 72 74 65 72 20 62 75 73   the starter bus
0940: 20 77 69 6c 6c 20 65 66 66 65 63 74 69 76 65 6c   will effectivel
0950: 79 20 62 65 20 61 6e 0d 0a 61 6c 74 65 72 6e 61  y be an..alterna
0960: 74 69 76 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20  tive connection 
0970: 74 6f 20 65 69 74 68 65 72 20 74 68 65 20 73 65  to either the se
0980: 73 73 69 6f 6e 20 6f 72 20 74 68 65 20 73 79 73  ssion or the sys
0990: 74 65 6d 20 62 75 73 2e 0d 0a 0d 0a 3c 70 3e 0d  tem bus.....<p>.
09a0: 0a 0d 0a 4d 6f 73 74 20 73 75 62 63 6f 6d 6d 61  ...Most subcomma
09b0: 6e 64 73 20 74 61 6b 65 20 61 20 3c 69 3e 62 75  nds take a <i>bu
09c0: 73 49 44 3c 2f 69 3e 20 61 72 67 75 6d 65 6e 74  sID</i> argument
09d0: 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 44 42  . This is the DB
09e0: 75 73 20 68 61 6e 64 6c 65 20 61 73 0d 0a 72 65  us handle as..re
09f0: 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 3c 62  turned by the <b
0a00: 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 63 6f 6e  >dbus</b> <b>con
0a10: 6e 65 63 74 3c 2f 62 3e 20 73 75 62 63 6f 6d 6d  nect</b> subcomm
0a20: 61 6e 64 2e 20 46 6f 72 20 74 68 65 0d 0a 77 65  and. For the..we
0a30: 6c 6c 2d 6b 6e 6f 77 6e 20 62 75 73 73 65 73 20  ll-known busses 
0a40: 74 68 65 20 68 61 6e 64 6c 65 20 66 6f 72 20 74  the handle for t
0a50: 68 65 20 66 69 72 73 74 20 63 6f 6e 6e 65 63 74  he first connect
0a60: 69 6f 6e 20 6d 61 74 63 68 65 73 20 74 68 65 20  ion matches the 
0a70: 6e 61 6d 65 20 6f 66 0d 0a 74 68 65 20 62 75 73  name of..the bus
0a80: 2e 20 49 66 20 74 68 65 20 3c 69 3e 62 75 73 49  . If the <i>busI
0a90: 44 3c 2f 69 3e 20 61 72 67 75 6d 65 6e 74 20 69  D</i> argument i
0aa0: 73 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 2c  s not specified,
0ab0: 20 69 74 20 64 65 66 61 75 6c 74 73 20 74 6f 0d   it defaults to.
0ac0: 0a 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74  .<b class="const
0ad0: 22 3e 73 65 73 73 69 6f 6e 3c 2f 62 3e 2e 0d 0a  ">session</b>...
0ae0: 3c 64 6c 3e 0d 0a 3c 64 74 3e 3c 61 20 6e 61 6d  <dl>..<dt><a nam
0af0: 65 3d 22 31 22 3e 3c 2f 61 3e 3c 62 3e 64 62 75  e="1"></a><b>dbu
0b00: 73 3c 2f 62 3e 20 3c 62 3e 63 61 6c 6c 3c 2f 62  s</b> <b>call</b
0b10: 3e 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f  > ?<i>busID</i>?
0b20: 20 3f 3c 62 3e 2d 61 75 74 6f 73 74 61 72 74 3c   ?<b>-autostart<
0b30: 2f 62 3e 20 3f 3c 69 3e 62 6f 6f 6c 65 61 6e 3c  /b> ?<i>boolean<
0b40: 2f 69 3e 3f 3f 20 3f 3c 62 3e 2d 64 65 73 74 3c  /i>?? ?<b>-dest<
0b50: 2f 62 3e 20 3c 69 3e 74 61 72 67 65 74 3c 2f 69  /b> <i>target</i
0b60: 3e 3f 20 3f 3c 62 3e 2d 64 65 74 61 69 6c 73 3c  >? ?<b>-details<
0b70: 2f 62 3e 20 3f 3c 69 3e 62 6f 6f 6c 65 61 6e 3c  /b> ?<i>boolean<
0b80: 2f 69 3e 3f 3f 20 3f 3c 62 3e 2d 68 61 6e 64 6c  /i>?? ?<b>-handl
0b90: 65 72 3c 2f 62 3e 20 3c 69 3e 73 63 72 69 70 74  er</b> <i>script
0ba0: 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 73 69 67 6e 61  </i>? ?<b>-signa
0bb0: 74 75 72 65 3c 2f 62 3e 20 3c 69 3e 73 74 72 69  ture</b> <i>stri
0bc0: 6e 67 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 74 69 6d  ng</i>? ?<b>-tim
0bd0: 65 6f 75 74 3c 2f 62 3e 20 3c 69 3e 6d 73 3c 2f  eout</b> <i>ms</
0be0: 69 3e 3f 20 3c 69 3e 70 61 74 68 3c 2f 69 3e 20  i>? <i>path</i> 
0bf0: 3c 69 3e 69 6e 74 65 72 66 61 63 65 3c 2f 69 3e  <i>interface</i>
0c00: 20 3c 69 3e 6d 65 74 68 6f 64 3c 2f 69 3e 20 3f   <i>method</i> ?
0c10: 3c 69 3e 61 72 67 3c 2f 69 3e 20 3c 69 3e 2e 2e  <i>arg</i> <i>..
0c20: 2e 3c 2f 69 3e 3f 0d 0a 3c 64 64 3e 53 65 6e 64  .</i>?..<dd>Send
0c30: 20 61 20 6d 65 74 68 6f 64 20 63 61 6c 6c 20 6f   a method call o
0c40: 6e 74 6f 20 74 68 65 20 64 62 75 73 20 61 6e 64  nto the dbus and
0c50: 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 77 61 69 74   optionally wait
0c60: 20 66 6f 72 20 61 20 72 65 70 6c 79 2e 0d 0a 0d   for a reply....
0c70: 0a 49 66 20 74 68 65 20 73 69 67 6e 61 74 75 72  .If the signatur
0c80: 65 20 6f 66 20 74 68 65 20 44 42 75 73 20 3c 62  e of the DBus <b
0c90: 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 6d   class="const">m
0ca0: 65 74 68 6f 64 5f 72 65 74 75 72 6e 3c 2f 62 3e  ethod_return</b>
0cb0: 20 72 65 70 6c 79 20 6f 6e 6c 79 20 63 6f 6e 74   reply only cont
0cc0: 61 69 6e 73 20 6f 6e 65 0d 0a 74 6f 70 2d 6c 65  ains one..top-le
0cd0: 76 65 6c 20 65 6c 65 6d 65 6e 74 2c 20 74 68 65  vel element, the
0ce0: 20 61 72 67 75 6d 65 6e 74 73 20 6f 66 20 74 68   arguments of th
0cf0: 65 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73  e <b class="cons
0d00: 74 22 3e 6d 65 74 68 6f 64 5f 72 65 74 75 72 6e  t">method_return
0d10: 3c 2f 62 3e 20 6d 65 73 73 61 67 65 20 61 72 65  </b> message are
0d20: 0d 0a 72 65 74 75 72 6e 65 64 20 61 73 20 61 20  ..returned as a 
0d30: 73 69 6e 67 6c 65 20 76 61 6c 75 65 2e 20 4d 6f  single value. Mo
0d40: 72 65 20 63 6f 6d 70 6c 65 78 20 73 74 72 75 63  re complex struc
0d50: 74 75 72 65 73 20 61 72 65 20 72 65 74 75 72 6e  tures are return
0d60: 65 64 20 61 73 20 61 20 6c 69 73 74 2e 0d 0a 0d  ed as a list....
0d70: 0a 3c 70 3e 0d 0a 0d 0a 49 66 20 74 68 65 20 72  .<p>....If the r
0d80: 65 73 70 6f 6e 73 65 20 74 6f 20 74 68 65 20 44  esponse to the D
0d90: 42 75 73 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f  Bus <b class="co
0da0: 6e 73 74 22 3e 6d 65 74 68 6f 64 5f 63 61 6c 6c  nst">method_call
0db0: 3c 2f 62 3e 20 6d 65 73 73 61 67 65 20 69 73 20  </b> message is 
0dc0: 61 20 44 42 75 73 0d 0a 3c 62 20 63 6c 61 73 73  a DBus..<b class
0dd0: 3d 22 63 6f 6e 73 74 22 3e 65 72 72 6f 72 3c 2f  ="const">error</
0de0: 62 3e 20 6d 65 73 73 61 67 65 2c 20 74 68 65 20  b> message, the 
0df0: 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c 20 70 72 6f  command will pro
0e00: 64 75 63 65 20 61 6e 20 65 72 72 6f 72 2e 20 49  duce an error. I
0e10: 6e 20 74 68 61 74 20 63 61 73 65 20 74 68 65 0d  n that case the.
0e20: 0a 65 72 72 6f 72 43 6f 64 65 20 76 61 72 69 61  .errorCode varia
0e30: 62 6c 65 20 77 69 6c 6c 20 62 65 20 73 65 74 20  ble will be set 
0e40: 74 6f 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e  to <b class="con
0e50: 73 74 22 3e 44 42 55 53 3c 2f 62 3e 20 3c 62 20  st">DBUS</b> <b 
0e60: 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 44 42  class="const">DB
0e70: 55 53 5f 4d 45 53 53 41 47 45 5f 54 59 50 45 5f  US_MESSAGE_TYPE_
0e80: 45 52 52 4f 52 3c 2f 62 3e 2e 0d 0a 0d 0a 3c 70  ERROR</b>.....<p
0e90: 3e 0d 0a 0d 0a 54 68 65 20 3c 62 3e 2d 61 75 74  >....The <b>-aut
0ea0: 6f 73 74 61 72 74 3c 2f 62 3e 20 6f 70 74 69 6f  ostart</b> optio
0eb0: 6e 20 73 70 65 63 69 66 69 65 73 20 77 68 65 74  n specifies whet
0ec0: 68 65 72 20 74 68 65 20 62 75 73 20 73 65 72 76  her the bus serv
0ed0: 65 72 20 73 68 6f 75 6c 64 0d 0a 61 74 74 65 6d  er should..attem
0ee0: 70 74 20 74 6f 20 73 74 61 72 74 20 61 6e 20 61  pt to start an a
0ef0: 73 73 6f 63 69 61 74 65 64 20 61 70 70 6c 69 63  ssociated applic
0f00: 61 74 69 6f 6e 20 69 66 20 74 68 65 20 64 65 73  ation if the des
0f10: 74 69 6e 61 74 69 6f 6e 20 6e 61 6d 65 20 64 6f  tination name do
0f20: 65 73 20 6e 6f 74 0d 0a 63 75 72 72 65 6e 74 6c  es not..currentl
0f30: 79 20 65 78 69 73 74 20 6f 6e 20 74 68 65 20 62  y exist on the b
0f40: 75 73 2e 20 3c 69 3e 42 6f 6f 6c 65 61 6e 3c 2f  us. <i>Boolean</
0f50: 69 3e 20 6d 61 79 20 68 61 76 65 20 61 6e 79 20  i> may have any 
0f60: 70 72 6f 70 65 72 20 62 6f 6f 6c 65 61 6e 20 76  proper boolean v
0f70: 61 6c 75 65 2c 0d 0a 73 75 63 68 20 61 73 20 3c  alue,..such as <
0f80: 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e  b class="const">
0f90: 31 3c 2f 62 3e 20 6f 72 20 3c 62 20 63 6c 61 73  1</b> or <b clas
0fa0: 73 3d 22 63 6f 6e 73 74 22 3e 6e 6f 3c 2f 62 3e  s="const">no</b>
0fb0: 2e 20 44 65 66 61 75 6c 74 73 20 74 6f 20 31 20  . Defaults to 1 
0fc0: 28 74 72 75 65 29 2e 0d 0a 0d 0a 3c 70 3e 0d 0a  (true).....<p>..
0fd0: 0d 0a 54 68 65 20 3c 62 3e 2d 74 69 6d 65 6f 75  ..The <b>-timeou
0fe0: 74 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20 73 70 65  t</b> option spe
0ff0: 63 69 66 69 65 73 20 74 68 65 20 6d 61 78 69 6d  cifies the maxim
1000: 75 6d 20 74 69 6d 65 20 74 6f 20 77 61 69 74 20  um time to wait 
1010: 66 6f 72 20 61 0d 0a 72 65 73 70 6f 6e 73 65 2e  for a..response.
1020: 20 41 20 6e 65 67 61 74 69 76 65 20 74 69 6d 65   A negative time
1030: 6f 75 74 20 69 6e 64 69 63 61 74 65 73 20 74 68  out indicates th
1040: 61 74 20 6e 6f 20 72 65 73 70 6f 6e 73 65 20 73  at no response s
1050: 68 6f 75 6c 64 20 62 65 20 72 65 71 75 65 73 74  hould be request
1060: 65 64 2e 20 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 49  ed. ....<p>....I
1070: 66 20 61 20 73 63 72 69 70 74 20 69 73 20 73 70  f a script is sp
1080: 65 63 69 66 69 65 64 20 77 69 74 68 20 74 68 65  ecified with the
1090: 20 3c 62 3e 2d 68 61 6e 64 6c 65 72 3c 2f 62 3e   <b>-handler</b>
10a0: 20 6f 70 74 69 6f 6e 2c 20 74 68 65 20 63 61 6c   option, the cal
10b0: 6c 20 77 69 6c 6c 20 62 65 0d 0a 61 73 79 6e 63  l will be..async
10c0: 68 72 6f 6e 6f 75 73 2e 20 49 6e 20 74 68 61 74  hronous. In that
10d0: 20 63 61 73 65 20 74 68 65 20 63 6f 6d 6d 61 6e   case the comman
10e0: 64 20 72 65 74 75 72 6e 73 20 74 68 65 20 73 65  d returns the se
10f0: 72 69 61 6c 20 6f 66 20 74 68 65 20 72 65 71 75  rial of the requ
1100: 65 73 74 2e 0d 0a 54 68 65 20 73 63 72 69 70 74  est...The script
1110: 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65   will be execute
1120: 64 20 77 68 65 6e 20 61 20 72 65 73 70 6f 6e 73  d when a respons
1130: 65 20 63 6f 6d 65 73 20 62 61 63 6b 20 6f 72 20  e comes back or 
1140: 77 68 65 6e 20 74 68 65 72 65 20 69 73 20 61 6e  when there is an
1150: 0d 0a 65 72 72 6f 72 2e 0d 0a 0d 0a 3c 70 3e 0d  ..error.....<p>.
1160: 0a 0d 0a 54 68 65 20 3c 62 3e 2d 73 69 67 6e 61  ...The <b>-signa
1170: 74 75 72 65 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20  ture</b> option 
1180: 64 65 66 69 6e 65 73 20 74 68 65 20 74 79 70 65  defines the type
1190: 73 20 6f 66 20 61 72 67 75 6d 65 6e 74 73 20 74  s of arguments t
11a0: 6f 20 62 65 20 73 65 6e 74 20 6f 6e 0d 0a 74 68  o be sent on..th
11b0: 65 20 64 62 75 73 2e 20 53 65 65 20 74 68 65 20  e dbus. See the 
11c0: 3c 62 3e 53 69 67 6e 61 74 75 72 65 73 3c 2f 62  <b>Signatures</b
11d0: 3e 20 73 65 63 74 69 6f 6e 20 66 6f 72 20 6d 6f  > section for mo
11e0: 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0d  re information..
11f0: 0a 49 66 20 6e 6f 20 73 69 67 6e 61 74 75 72 65  .If no signature
1200: 20 69 73 20 73 70 65 63 69 66 69 65 64 2c 20 61   is specified, a
1210: 6c 6c 20 61 72 67 75 6d 65 6e 74 73 20 77 69 6c  ll arguments wil
1220: 6c 20 62 65 20 73 65 6e 74 20 61 73 20 73 74 72  l be sent as str
1230: 69 6e 67 73 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a  ings.....<p>....
1240: 54 68 65 20 3c 62 3e 2d 64 65 74 61 69 6c 73 3c  The <b>-details<
1250: 2f 62 3e 20 6f 70 74 69 6f 6e 20 73 70 65 63 69  /b> option speci
1260: 66 69 65 73 20 68 6f 77 20 76 61 72 69 61 6e 74  fies how variant
1270: 20 61 72 67 75 6d 65 6e 74 73 20 69 6e 20 74 68   arguments in th
1280: 65 20 72 65 74 75 72 6e 0d 0a 76 61 6c 75 65 20  e return..value 
1290: 61 72 65 20 72 65 70 72 65 73 65 6e 74 65 64 2e  are represented.
12a0: 20 57 69 74 68 20 74 68 65 20 64 65 66 61 75 6c   With the defaul
12b0: 74 20 76 61 6c 75 65 20 6f 66 20 46 41 4c 53 45  t value of FALSE
12c0: 2c 20 6f 6e 6c 79 20 74 68 65 20 76 61 6c 75 65  , only the value
12d0: 20 6f 66 20 61 0d 0a 76 61 72 69 61 6e 74 20 61   of a..variant a
12e0: 72 67 75 6d 65 6e 74 20 69 73 20 70 72 6f 76 69  rgument is provi
12f0: 64 65 64 2e 20 42 75 74 20 69 6e 20 73 6f 6d 65  ded. But in some
1300: 20 73 69 74 75 61 74 69 6f 6e 73 20 74 68 65 20   situations the 
1310: 54 63 6c 20 63 6f 64 65 20 6d 61 79 20 6e 65 65  Tcl code may nee
1320: 64 0d 0a 74 6f 20 62 65 20 61 62 6c 65 20 74 6f  d..to be able to
1330: 20 61 6c 73 6f 20 6f 62 74 61 69 6e 20 74 68 65   also obtain the
1340: 20 61 72 67 75 6d 65 6e 74 20 74 79 70 65 2e 20   argument type. 
1350: 57 68 65 6e 20 74 68 69 73 20 6f 70 74 69 6f 6e  When this option
1360: 20 69 73 20 73 65 74 20 74 6f 20 54 52 55 45 2c   is set to TRUE,
1370: 0d 0a 65 61 63 68 20 76 61 72 69 61 6e 74 20 61  ..each variant a
1380: 72 67 75 6d 65 6e 74 20 69 73 20 72 65 70 72 65  rgument is repre
1390: 73 65 6e 74 65 64 20 61 73 20 61 20 6c 69 73 74  sented as a list
13a0: 20 77 69 74 68 20 74 77 6f 20 65 6c 65 6d 65 6e   with two elemen
13b0: 74 73 2e 20 54 68 65 20 66 69 72 73 74 0d 0a 6c  ts. The first..l
13c0: 69 73 74 20 65 6c 65 6d 65 6e 74 20 63 6f 6e 74  ist element cont
13d0: 61 69 6e 73 20 74 68 65 20 73 69 67 6e 61 74 75  ains the signatu
13e0: 72 65 20 6f 66 20 74 68 65 20 61 72 67 75 6d 65  re of the argume
13f0: 6e 74 20 61 6e 64 20 74 68 65 20 73 65 63 6f 6e  nt and the secon
1400: 64 20 6c 69 73 74 0d 0a 65 6c 65 6d 65 6e 74 20  d list..element 
1410: 69 73 20 74 68 65 20 76 61 6c 75 65 2e 0d 0a 0d  is the value....
1420: 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20 6e 61 6d  .<p>..<dt><a nam
1430: 65 3d 22 32 22 3e 3c 2f 61 3e 3c 62 3e 64 62 75  e="2"></a><b>dbu
1440: 73 3c 2f 62 3e 20 3c 62 3e 63 6c 6f 73 65 3c 2f  s</b> <b>close</
1450: 62 3e 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e  b> ?<i>busID</i>
1460: 3f 0d 0a 3c 64 64 3e 43 6c 6f 73 65 20 74 68 65  ?..<dd>Close the
1470: 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 74   connection to t
1480: 68 65 20 44 42 75 73 2e 20 54 68 69 73 20 77 69  he DBus. This wi
1490: 6c 6c 20 63 6c 65 61 6e 75 70 20 61 6c 6c 20 68  ll cleanup all h
14a0: 61 6e 64 6c 65 72 73 2c 20 6c 69 73 74 65 6e 65  andlers, listene
14b0: 72 73 2c 0d 0a 61 6e 64 20 74 68 65 20 6f 70 74  rs,..and the opt
14c0: 69 6f 6e 61 6c 20 6d 6f 6e 69 74 6f 72 20 73 63  ional monitor sc
14d0: 72 69 70 74 20 72 65 67 69 73 74 65 72 65 64 20  ript registered 
14e0: 66 6f 72 20 74 68 65 20 3c 69 3e 62 75 73 49 44  for the <i>busID
14f0: 3c 2f 69 3e 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 3c 64  </i>.....<p>..<d
1500: 74 3e 3c 61 20 6e 61 6d 65 3d 22 33 22 3e 3c 2f  t><a name="3"></
1510: 61 3e 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62  a><b>dbus</b> <b
1520: 3e 63 6f 6e 6e 65 63 74 3c 2f 62 3e 20 3f 3c 69  >connect</b> ?<i
1530: 3e 61 64 64 72 65 73 73 3c 2f 69 3e 3f 0d 0a 3c  >address</i>?..<
1540: 64 64 3e 43 6f 6e 6e 65 63 74 20 74 6f 20 74 68  dd>Connect to th
1550: 65 20 44 42 75 73 2e 20 54 68 65 20 3c 69 3e 61  e DBus. The <i>a
1560: 64 64 72 65 73 73 3c 2f 69 3e 20 61 72 67 75 6d  ddress</i> argum
1570: 65 6e 74 20 73 70 65 63 69 66 69 65 73 20 74 68  ent specifies th
1580: 65 20 62 75 73 20 74 6f 20 63 6f 6e 6e 65 63 74  e bus to connect
1590: 0d 0a 74 6f 2e 20 54 68 69 73 20 63 61 6e 20 62  ..to. This can b
15a0: 65 20 65 69 74 68 65 72 20 6f 6e 65 20 6f 66 20  e either one of 
15b0: 74 68 65 20 77 65 6c 6c 2d 6b 6e 6f 77 6e 20 62  the well-known b
15c0: 75 73 73 65 73 20 28 27 73 65 73 73 69 6f 6e 27  usses ('session'
15d0: 2c 20 27 73 79 73 74 65 6d 27 20 6f 72 0d 0a 27  , 'system' or..'
15e0: 73 74 61 72 74 65 72 27 29 2c 20 6f 72 20 61 20  starter'), or a 
15f0: 74 72 61 6e 73 70 6f 72 74 20 6e 61 6d 65 20 66  transport name f
1600: 6f 6c 6c 6f 77 65 64 20 62 79 20 61 20 63 6f 6c  ollowed by a col
1610: 6f 6e 2c 20 61 6e 64 20 74 68 65 6e 20 61 6e 20  on, and then an 
1620: 6f 70 74 69 6f 6e 61 6c 2c 0d 0a 63 6f 6d 6d 61  optional,..comma
1630: 2d 73 65 70 61 72 61 74 65 64 20 6c 69 73 74 20  -separated list 
1640: 6f 66 20 6b 65 79 73 20 61 6e 64 20 76 61 6c 75  of keys and valu
1650: 65 73 20 69 6e 20 74 68 65 20 66 6f 72 6d 20 6b  es in the form k
1660: 65 79 3d 76 61 6c 75 65 2e 0d 0a 54 68 65 20 63  ey=value...The c
1670: 6f 6d 6d 61 6e 64 20 72 65 74 75 72 6e 73 20 61  ommand returns a
1680: 20 68 61 6e 64 6c 65 20 74 68 61 74 20 63 61 6e   handle that can
1690: 20 62 65 20 75 73 65 64 20 61 73 20 74 68 65 20   be used as the 
16a0: 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 20 61 72 67  <i>busID</i> arg
16b0: 75 6d 65 6e 74 0d 0a 69 6e 20 6f 74 68 65 72 20  ument..in other 
16c0: 64 62 75 73 20 63 6f 6d 6d 61 6e 64 73 2e 0d 0a  dbus commands...
16d0: 0d 0a 3c 70 3e 0d 0a 0d 0a 49 74 20 69 73 20 70  ..<p>....It is p
16e0: 6f 73 73 69 62 6c 65 20 74 6f 20 63 72 65 61 74  ossible to creat
16f0: 65 20 6d 75 6c 74 69 70 6c 65 20 63 6f 6e 6e 65  e multiple conne
1700: 63 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 73 61  ctions to the sa
1710: 6d 65 20 44 42 75 73 2e 20 42 75 74 20 74 68 61  me DBus. But tha
1720: 74 20 73 68 6f 75 6c 64 0d 0a 6e 6f 72 6d 61 6c  t should..normal
1730: 6c 79 20 62 65 20 61 76 6f 69 64 65 64 2c 20 75  ly be avoided, u
1740: 6e 6c 65 73 73 20 74 68 65 72 65 20 69 73 20 61  nless there is a
1750: 20 67 6f 6f 64 20 72 65 61 73 6f 6e 2e 20 4f 6e   good reason. On
1760: 65 20 67 6f 6f 64 20 72 65 61 73 6f 6e 20 77 6f  e good reason wo
1770: 75 6c 64 20 62 65 20 69 66 0d 0a 74 68 65 20 70  uld be if..the p
1780: 72 6f 67 72 61 6d 20 75 73 65 73 20 6e 6f 72 6d  rogram uses norm
1790: 61 6c 20 44 42 75 73 20 6f 70 65 72 61 74 69 6f  al DBus operatio
17a0: 6e 73 2c 20 62 75 74 20 61 6c 73 6f 20 6e 65 65  ns, but also nee
17b0: 64 73 20 74 6f 20 6d 6f 6e 69 74 6f 72 20 74 68  ds to monitor th
17c0: 65 20 74 72 61 66 66 69 63 0d 0a 6f 6e 20 74 68  e traffic..on th
17d0: 65 20 44 42 75 73 20 75 73 69 6e 67 20 74 68 65  e DBus using the
17e0: 20 42 65 63 6f 6d 65 4d 6f 6e 69 74 6f 72 20 6d   BecomeMonitor m
17f0: 65 74 68 6f 64 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 3c  ethod.....<p>..<
1800: 64 74 3e 3c 61 20 6e 61 6d 65 3d 22 34 22 3e 3c  dt><a name="4"><
1810: 2f 61 3e 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c  /a><b>dbus</b> <
1820: 62 3e 65 72 72 6f 72 3c 2f 62 3e 20 3f 3c 69 3e  b>error</b> ?<i>
1830: 62 75 73 49 44 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d  busID</i>? ?<b>-
1840: 6e 61 6d 65 3c 2f 62 3e 20 3c 69 3e 73 74 72 69  name</b> <i>stri
1850: 6e 67 3c 2f 69 3e 3f 20 3c 69 3e 64 65 73 74 69  ng</i>? <i>desti
1860: 6e 61 74 69 6f 6e 3c 2f 69 3e 20 3c 69 3e 73 65  nation</i> <i>se
1870: 72 69 61 6c 3c 2f 69 3e 20 3f 6d 65 73 73 61 67  rial</i> ?messag
1880: 65 3f 0d 0a 3c 64 64 3e 53 65 6e 64 20 61 20 44  e?..<dd>Send a D
1890: 42 75 73 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f  Bus <b class="co
18a0: 6e 73 74 22 3e 65 72 72 6f 72 3c 2f 62 3e 20 6d  nst">error</b> m
18b0: 65 73 73 61 67 65 20 77 69 74 68 20 74 68 65 20  essage with the 
18c0: 73 70 65 63 69 66 69 65 64 20 3c 69 3e 73 65 72  specified <i>ser
18d0: 69 61 6c 3c 2f 69 3e 20 61 6e 64 0d 0a 3c 69 3e  ial</i> and..<i>
18e0: 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 69 3e 2e  destination</i>.
18f0: 20 49 66 20 74 68 65 20 3c 62 3e 2d 6e 61 6d 65   If the <b>-name
1900: 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20 69 73 20 6e  </b> option is n
1910: 6f 74 20 73 70 65 63 69 66 69 65 64 2c 20 69 74  ot specified, it
1920: 0d 0a 64 65 66 61 75 6c 74 73 20 74 6f 20 26 71  ..defaults to &q
1930: 75 6f 74 3b 6f 72 67 2e 66 72 65 65 64 65 73 6b  uot;org.freedesk
1940: 74 6f 70 2e 44 42 75 73 2e 45 72 72 6f 72 2e 46  top.DBus.Error.F
1950: 61 69 6c 65 64 26 71 75 6f 74 3b 2e 0d 0a 0d 0a  ailed&quot;.....
1960: 54 68 65 20 76 61 6c 75 65 73 20 66 6f 72 20 3c  The values for <
1970: 69 3e 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 69  i>destination</i
1980: 3e 20 61 6e 64 20 3c 69 3e 73 65 72 69 61 6c 3c  > and <i>serial<
1990: 2f 69 3e 20 63 61 6e 20 62 65 20 6f 62 74 61 69  /i> can be obtai
19a0: 6e 65 64 20 66 72 6f 6d 20 65 76 65 6e 74 0d 0a  ned from event..
19b0: 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 69 65 6c  information fiel
19c0: 64 73 20 27 73 65 6e 64 65 72 27 20 61 6e 64 20  ds 'sender' and 
19d0: 27 73 65 72 69 61 6c 27 20 63 6f 72 72 65 73 70  'serial' corresp
19e0: 6f 6e 64 69 6e 67 6c 79 2e 0d 0a 53 65 65 20 3c  ondingly...See <
19f0: 62 3e 45 76 65 6e 74 20 48 61 6e 64 6c 65 72 73  b>Event Handlers
1a00: 3c 2f 62 3e 20 62 65 6c 6f 77 20 66 6f 72 20 6d  </b> below for m
1a10: 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e  ore information.
1a20: 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 57 68 65 6e 20  ....<p>....When 
1a30: 65 6d 70 6c 6f 79 69 6e 67 20 74 68 69 73 20 73  employing this s
1a40: 75 62 63 6f 6d 6d 61 6e 64 2c 20 6d 61 6b 65 20  ubcommand, make 
1a50: 73 75 72 65 20 74 68 65 20 72 65 73 75 6c 74 20  sure the result 
1a60: 6f 66 20 74 68 65 0d 0a 3c 62 3e 64 62 75 73 3c  of the..<b>dbus<
1a70: 2f 62 3e 20 3c 62 3e 6d 65 74 68 6f 64 3c 2f 62  /b> <b>method</b
1a80: 3e 20 73 63 72 69 70 74 20 69 73 6e 27 74 20 61  > script isn't a
1a90: 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 74  utomatically ret
1aa0: 75 72 6e 65 64 0d 0a 74 6f 20 74 68 65 20 63 61  urned..to the ca
1ab0: 6c 6c 65 72 20 62 79 20 75 73 69 6e 67 20 74 68  ller by using th
1ac0: 65 20 3c 62 3e 2d 61 73 79 6e 63 3c 2f 62 3e 20  e <b>-async</b> 
1ad0: 6f 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 3c 62  option of the <b
1ae0: 3e 72 65 74 75 72 6e 3c 2f 62 3e 0d 0a 63 6f 6d  >return</b>..com
1af0: 6d 61 6e 64 2e 20 53 65 65 20 3c 62 3e 64 62 75  mand. See <b>dbu
1b00: 73 3c 2f 62 3e 20 3c 62 3e 6d 65 74 68 6f 64 3c  s</b> <b>method<
1b10: 2f 62 3e 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66  /b> for more inf
1b20: 6f 72 6d 61 74 69 6f 6e 2e 0d 0a 0d 0a 3c 70 3e  ormation.....<p>
1b30: 0d 0a 3c 64 74 3e 3c 61 20 6e 61 6d 65 3d 22 35  ..<dt><a name="5
1b40: 22 3e 3c 2f 61 3e 3c 62 3e 64 62 75 73 3c 2f 62  "></a><b>dbus</b
1b50: 3e 20 3c 62 3e 66 69 6c 74 65 72 3c 2f 62 3e 20  > <b>filter</b> 
1b60: 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3c  ?<i>busID</i>? <
1b70: 69 3e 73 75 62 63 6f 6d 6d 61 6e 64 3c 2f 69 3e  i>subcommand</i>
1b80: 20 3c 62 3e 2d 6f 70 74 69 6f 6e 3c 2f 62 3e 20   <b>-option</b> 
1b90: 3c 69 3e 76 61 6c 75 65 3c 2f 69 3e 20 3f 3c 69  <i>value</i> ?<i
1ba0: 3e 2e 2e 2e 3c 2f 69 3e 3f 0d 0a 3c 64 64 3e 54  >...</i>?..<dd>T
1bb0: 68 65 20 3c 62 3e 61 64 64 3c 2f 62 3e 20 73 75  he <b>add</b> su
1bc0: 62 63 6f 6d 6d 61 6e 64 20 61 64 64 73 20 61 20  bcommand adds a 
1bd0: 6d 61 74 63 68 20 72 75 6c 65 20 74 6f 20 6d 61  match rule to ma
1be0: 74 63 68 20 6d 65 73 73 61 67 65 73 20 67 6f 69  tch messages goi
1bf0: 6e 67 20 74 68 72 6f 75 67 68 0d 0a 74 68 65 20  ng through..the 
1c00: 6d 65 73 73 61 67 65 20 62 75 73 2e 20 54 68 65  message bus. The
1c10: 20 3c 62 3e 72 65 6d 6f 76 65 3c 2f 62 3e 20 73   <b>remove</b> s
1c20: 75 62 63 6f 6d 6d 61 6e 64 20 72 65 6d 6f 76 65  ubcommand remove
1c30: 73 20 74 68 65 20 6d 6f 73 74 20 72 65 63 65 6e  s the most recen
1c40: 74 6c 79 0d 0a 61 64 64 65 64 20 72 75 6c 65 20  tly..added rule 
1c50: 74 68 61 74 20 65 78 61 63 74 6c 79 20 6d 61 74  that exactly mat
1c60: 63 68 65 73 20 74 68 65 20 73 70 65 63 69 66 69  ches the specifi
1c70: 65 64 20 6f 70 74 69 6f 6e 20 73 65 74 74 69 6e  ed option settin
1c80: 67 73 2e 20 49 66 20 74 68 65 72 65 20 69 73 20  gs. If there is 
1c90: 6e 6f 0d 0a 6d 61 74 63 68 69 6e 67 20 72 75 6c  no..matching rul
1ca0: 65 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 69  e, the command i
1cb0: 73 20 73 69 6c 65 6e 74 6c 79 20 69 67 6e 6f 72  s silently ignor
1cc0: 65 64 2e 20 41 76 61 69 6c 61 62 6c 65 20 6f 70  ed. Available op
1cd0: 74 69 6f 6e 73 20 61 72 65 3a 0d 0a 3c 62 3e 2d  tions are:..<b>-
1ce0: 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e 2c  destination</b>,
1cf0: 20 3c 62 3e 2d 65 61 76 65 73 64 72 6f 70 3c 2f   <b>-eavesdrop</
1d00: 62 3e 2c 20 3c 62 3e 2d 69 6e 74 65 72 66 61 63  b>, <b>-interfac
1d10: 65 3c 2f 62 3e 2c 0d 0a 3c 62 3e 2d 6d 65 6d 62  e</b>,..<b>-memb
1d20: 65 72 3c 2f 62 3e 2c 20 3c 62 3e 2d 70 61 74 68  er</b>, <b>-path
1d30: 3c 2f 62 3e 2c 20 3c 62 3e 2d 73 65 6e 64 65 72  </b>, <b>-sender
1d40: 3c 2f 62 3e 2c 20 61 6e 64 20 3c 62 3e 2d 74 79  </b>, and <b>-ty
1d50: 70 65 3c 2f 62 3e 2e 0d 0a 54 68 65 20 63 6f 6d  pe</b>...The com
1d60: 6d 61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65  mand returns the
1d70: 20 6d 61 74 63 68 20 72 75 6c 65 20 70 61 73 73   match rule pass
1d80: 65 64 20 74 6f 20 6c 69 62 64 62 75 73 2e 0d 0a  ed to libdbus...
1d90: 0d 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20 6e 61  ..<p>..<dt><a na
1da0: 6d 65 3d 22 36 22 3e 3c 2f 61 3e 3c 62 3e 64 62  me="6"></a><b>db
1db0: 75 73 3c 2f 62 3e 20 3c 62 3e 69 6e 66 6f 3c 2f  us</b> <b>info</
1dc0: 62 3e 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e  b> ?<i>busID</i>
1dd0: 3f 20 3c 69 3e 6f 70 74 69 6f 6e 3c 2f 69 3e 0d  ? <i>option</i>.
1de0: 0a 3c 64 64 3e 54 68 65 20 69 6e 66 6f 20 63 6f  .<dd>The info co
1df0: 6d 6d 61 6e 64 20 63 61 6e 20 62 65 20 75 73 65  mmand can be use
1e00: 64 20 74 6f 20 6f 62 74 61 69 6e 20 69 6e 66 6f  d to obtain info
1e10: 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68  rmation about th
1e20: 65 20 44 42 75 73 2e 0d 0a 41 76 61 69 6c 61 62  e DBus...Availab
1e30: 6c 65 20 3c 62 3e 69 6e 66 6f 3c 2f 62 3e 20 6f  le <b>info</b> o
1e40: 70 74 69 6f 6e 73 20 61 72 65 3a 0d 0a 3c 64 6c  ptions are:..<dl
1e50: 3e 0d 0a 3c 64 74 3e 3c 62 3e 3c 62 3e 63 61 70  >..<dt><b><b>cap
1e60: 61 62 69 6c 69 74 69 65 73 3c 2f 62 3e 3c 2f 62  abilities</b></b
1e70: 3e 0d 0a 3c 64 64 3e 52 65 74 75 72 6e 73 20 61  >..<dd>Returns a
1e80: 20 64 69 63 74 20 64 65 73 63 72 69 62 69 6e 67   dict describing
1e90: 20 74 68 65 20 63 61 70 61 62 69 6c 69 74 69 65   the capabilitie
1ea0: 73 20 6f 66 0d 0a 74 68 65 20 64 62 75 73 20 63  s of..the dbus c
1eb0: 6f 6e 6e 65 63 74 69 6f 6e 2e 20 43 75 72 72 65  onnection. Curre
1ec0: 6e 74 6c 79 20 6f 6e 6c 79 20 6f 6e 65 20 63 61  ntly only one ca
1ed0: 70 61 62 69 6c 69 74 79 20 68 61 73 20 62 65 65  pability has bee
1ee0: 6e 20 64 65 66 69 6e 65 64 3a 20 75 6e 69 78 66  n defined: unixf
1ef0: 64 2c 0d 0a 77 68 69 63 68 20 69 6e 64 69 63 61  d,..which indica
1f00: 74 65 73 20 69 66 20 66 69 6c 65 20 64 65 73 63  tes if file desc
1f10: 72 69 70 74 6f 72 20 70 61 73 73 69 6e 67 20 69  riptor passing i
1f20: 73 20 73 75 70 70 6f 72 74 65 64 20 6f 6e 20 74  s supported on t
1f30: 68 65 20 64 62 75 73 20 63 6f 6e 6e 65 63 74 69  he dbus connecti
1f40: 6f 6e 2e 0d 0a 3c 64 74 3e 3c 62 3e 3c 62 3e 6c  on...<dt><b><b>l
1f50: 6f 63 61 6c 3c 2f 62 3e 3c 2f 62 3e 0d 0a 3c 64  ocal</b></b>..<d
1f60: 64 3e 54 68 65 20 6f 62 6a 65 63 74 20 70 61 74  d>The object pat
1f70: 68 20 75 73 65 64 20 69 6e 20 6c 6f 63 61 6c 2f  h used in local/
1f80: 69 6e 2d 70 72 6f 63 65 73 73 2d 67 65 6e 65 72  in-process-gener
1f90: 61 74 65 64 0d 0a 6d 65 73 73 61 67 65 73 20 28  ated..messages (
1fa0: 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22  <b class="const"
1fb0: 3e 2f 6f 72 67 2f 66 72 65 65 64 65 73 6b 74 6f  >/org/freedeskto
1fc0: 70 2f 44 42 75 73 2f 4c 6f 63 61 6c 3c 2f 62 3e  p/DBus/Local</b>
1fd0: 29 2e 0d 0a 3c 64 74 3e 3c 62 3e 3c 62 3e 6d 61  )...<dt><b><b>ma
1fe0: 63 68 69 6e 65 69 64 3c 2f 62 3e 3c 2f 62 3e 0d  chineid</b></b>.
1ff0: 0a 3c 64 64 3e 47 65 74 20 74 68 65 20 55 55 49  .<dd>Get the UUI
2000: 44 20 6f 66 20 74 68 65 20 6c 6f 63 61 6c 20 6d  D of the local m
2010: 61 63 68 69 6e 65 2e 0d 0a 3c 64 74 3e 3c 62 3e  achine...<dt><b>
2020: 3c 62 3e 6e 61 6d 65 3c 2f 62 3e 3c 2f 62 3e 0d  <b>name</b></b>.
2030: 0a 3c 64 64 3e 47 65 74 20 74 68 65 20 75 6e 69  .<dd>Get the uni
2040: 71 75 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20  que name of the 
2050: 63 6f 6e 6e 65 63 74 69 6f 6e 20 61 73 20 61 73  connection as as
2060: 73 69 67 6e 65 64 20 62 79 0d 0a 74 68 65 20 6d  signed by..the m
2070: 65 73 73 61 67 65 20 62 75 73 2e 0d 0a 3c 64 74  essage bus...<dt
2080: 3e 3c 62 3e 3c 62 3e 70 61 74 68 3c 2f 62 3e 3c  ><b><b>path</b><
2090: 2f 62 3e 0d 0a 3c 64 64 3e 54 68 65 20 6f 62 6a  /b>..<dd>The obj
20a0: 65 63 74 20 70 61 74 68 20 75 73 65 64 20 74 6f  ect path used to
20b0: 20 74 61 6c 6b 20 74 6f 20 74 68 65 20 62 75 73   talk to the bus
20c0: 20 69 74 73 65 6c 66 0d 0a 28 3c 62 20 63 6c 61   itself..(<b cla
20d0: 73 73 3d 22 63 6f 6e 73 74 22 3e 2f 6f 72 67 2f  ss="const">/org/
20e0: 66 72 65 65 64 65 73 6b 74 6f 70 2f 44 42 75 73  freedesktop/DBus
20f0: 3c 2f 62 3e 29 2e 0d 0a 3c 64 74 3e 3c 62 3e 3c  </b>)...<dt><b><
2100: 62 3e 70 65 6e 64 69 6e 67 3c 2f 62 3e 3c 2f 62  b>pending</b></b
2110: 3e 0d 0a 3c 64 64 3e 52 65 70 6f 72 74 20 69 66  >..<dd>Report if
2120: 20 61 6e 79 20 6d 65 73 73 61 67 65 73 20 61 72   any messages ar
2130: 65 20 69 6e 20 74 68 65 20 71 75 65 75 65 20 74  e in the queue t
2140: 6f 20 62 65 20 73 65 6e 74 2e 0d 0a 3c 64 74 3e  o be sent...<dt>
2150: 3c 62 3e 3c 62 3e 73 65 72 76 65 72 69 64 3c 2f  <b><b>serverid</
2160: 62 3e 3c 2f 62 3e 0d 0a 3c 64 64 3e 47 65 74 20  b></b>..<dd>Get 
2170: 74 68 65 20 55 55 49 44 20 6f 66 20 74 68 65 20  the UUID of the 
2180: 73 65 72 76 65 72 20 77 65 20 61 72 65 20 61 75  server we are au
2190: 74 68 65 6e 74 69 63 61 74 65 64 20 74 6f 2e 0d  thenticated to..
21a0: 0a 3c 64 74 3e 3c 62 3e 3c 62 3e 73 65 72 76 69  .<dt><b><b>servi
21b0: 63 65 3c 2f 62 3e 3c 2f 62 3e 0d 0a 3c 64 64 3e  ce</b></b>..<dd>
21c0: 54 68 65 20 62 75 73 20 6e 61 6d 65 20 75 73 65  The bus name use
21d0: 64 20 74 6f 20 74 61 6c 6b 20 74 6f 20 74 68 65  d to talk to the
21e0: 20 62 75 73 20 69 74 73 65 6c 66 0d 0a 28 3c 62   bus itself..(<b
21f0: 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 6f   class="const">o
2200: 72 67 2e 66 72 65 65 64 65 73 6b 74 6f 70 2e 44  rg.freedesktop.D
2210: 42 75 73 3c 2f 62 3e 29 2e 0d 0a 3c 64 74 3e 3c  Bus</b>)...<dt><
2220: 62 3e 3c 62 3e 76 65 72 73 69 6f 6e 3c 2f 62 3e  b><b>version</b>
2230: 3c 2f 62 3e 0d 0a 3c 64 64 3e 52 65 74 75 72 6e  </b>..<dd>Return
2240: 73 20 74 68 65 20 76 65 72 73 69 6f 6e 20 6f 66  s the version of
2250: 20 6c 69 62 64 62 75 73 2e 0d 0a 3c 2f 64 6c 3e   libdbus...</dl>
2260: 0d 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20 6e 61  ..<p>..<dt><a na
2270: 6d 65 3d 22 37 22 3e 3c 2f 61 3e 3c 62 3e 64 62  me="7"></a><b>db
2280: 75 73 3c 2f 62 3e 20 3c 62 3e 6c 69 73 74 65 6e  us</b> <b>listen
2290: 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49 44 3c 2f  </b> ?<i>busID</
22a0: 69 3e 3f 20 3f 3c 62 3e 2d 64 65 74 61 69 6c 73  i>? ?<b>-details
22b0: 3c 2f 62 3e 3f 20 3f 3c 69 3e 70 61 74 68 3c 2f  </b>? ?<i>path</
22c0: 69 3e 20 3f 3c 69 3e 6d 65 6d 62 65 72 3c 2f 69  i> ?<i>member</i
22d0: 3e 20 3f 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e  > ?<i>script</i>
22e0: 3f 3f 3f 0d 0a 3c 64 64 3e 52 65 67 69 73 74 65  ???..<dd>Registe
22f0: 72 20 61 20 3c 69 3e 73 63 72 69 70 74 3c 2f 69  r a <i>script</i
2300: 3e 20 74 6f 20 62 65 20 63 61 6c 6c 65 64 20 77  > to be called w
2310: 68 65 6e 20 74 68 65 20 73 69 67 6e 61 6c 20 6e  hen the signal n
2320: 61 6d 65 64 20 26 71 75 6f 74 3b 3c 69 3e 6d 65  amed &quot;<i>me
2330: 6d 62 65 72 3c 2f 69 3e 26 71 75 6f 74 3b 20 61  mber</i>&quot; a
2340: 74 0d 0a 3c 69 3e 70 61 74 68 3c 2f 69 3e 20 61  t..<i>path</i> a
2350: 70 70 65 61 72 73 20 6f 6e 20 74 68 65 20 44 42  ppears on the DB
2360: 75 73 2e 0d 0a 53 65 65 20 3c 62 3e 45 76 65 6e  us...See <b>Even
2370: 74 20 48 61 6e 64 6c 65 72 73 3c 2f 62 3e 20 62  t Handlers</b> b
2380: 65 6c 6f 77 20 66 6f 72 20 6d 6f 72 65 20 69 6e  elow for more in
2390: 66 6f 72 6d 61 74 69 6f 6e 2e 0d 0a 0d 0a 3c 70  formation.....<p
23a0: 3e 0d 0a 0d 0a 49 66 20 74 68 65 20 3c 69 3e 70  >....If the <i>p
23b0: 61 74 68 3c 2f 69 3e 20 61 72 67 75 6d 65 6e 74  ath</i> argument
23c0: 20 69 73 20 61 6e 20 65 6d 70 74 79 20 73 74 72   is an empty str
23d0: 69 6e 67 2c 20 3c 69 3e 73 63 72 69 70 74 3c 2f  ing, <i>script</
23e0: 69 3e 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75  i> will be execu
23f0: 74 65 64 0d 0a 77 68 65 6e 65 76 65 72 20 61 20  ted..whenever a 
2400: 73 69 67 6e 61 6c 20 6d 65 73 73 61 67 65 20 69  signal message i
2410: 73 20 72 65 63 65 69 76 65 64 20 66 6f 72 20 61  s received for a
2420: 6e 79 20 70 61 74 68 2c 20 75 6e 6c 65 73 73 20  ny path, unless 
2430: 61 20 64 65 64 69 63 61 74 65 64 0d 0a 6c 69 73  a dedicated..lis
2440: 74 65 6e 65 72 20 66 6f 72 20 74 68 65 20 65 78  tener for the ex
2450: 61 63 74 20 70 61 74 68 20 68 61 73 20 62 65 65  act path has bee
2460: 6e 20 64 65 66 69 6e 65 64 2e 0d 0a 54 68 65 20  n defined...The 
2470: 3c 69 3e 6d 65 6d 62 65 72 3c 2f 69 3e 20 61 72  <i>member</i> ar
2480: 67 75 6d 65 6e 74 20 6d 61 79 20 62 65 20 73 70  gument may be sp
2490: 65 63 69 66 69 65 64 20 61 73 20 65 69 74 68 65  ecified as eithe
24a0: 72 20 61 20 73 69 67 6e 61 6c 20 6e 61 6d 65 20  r a signal name 
24b0: 6f 72 20 61 6e 0d 0a 69 6e 74 65 72 66 61 63 65  or an..interface
24c0: 20 61 6e 64 20 73 69 67 6e 61 6c 20 6e 61 6d 65   and signal name
24d0: 20 6a 6f 69 6e 65 64 20 62 79 20 61 20 70 65 72   joined by a per
24e0: 69 6f 64 2e 20 49 66 20 6e 6f 20 69 6e 74 65 72  iod. If no inter
24f0: 66 61 63 65 20 69 73 20 73 70 65 63 69 66 69 65  face is specifie
2500: 64 2c 0d 0a 74 68 65 20 73 63 72 69 70 74 20 77  d,..the script w
2510: 69 6c 6c 20 62 65 20 63 61 6c 6c 65 64 20 66 6f  ill be called fo
2520: 72 20 73 69 67 6e 61 6c 73 20 77 69 74 68 20 61  r signals with a
2530: 6e 79 20 69 6e 74 65 72 66 61 63 65 2e 0d 0a 0d  ny interface....
2540: 0a 3c 70 3e 0d 0a 0d 0a 49 66 20 3c 69 3e 73 63  .<p>....If <i>sc
2550: 72 69 70 74 3c 2f 69 3e 20 69 73 20 61 6e 20 65  ript</i> is an e
2560: 6d 70 74 79 20 73 74 72 69 6e 67 2c 20 74 68 65  mpty string, the
2570: 20 63 75 72 72 65 6e 74 6c 79 20 72 65 67 69 73   currently regis
2580: 74 65 72 65 64 20 63 6f 6d 6d 61 6e 64 20 66 6f  tered command fo
2590: 72 20 74 68 65 0d 0a 73 70 65 63 69 66 69 65 64  r the..specified
25a0: 20 73 69 67 6e 61 6c 20 61 6e 64 20 70 61 74 68   signal and path
25b0: 20 77 69 6c 6c 20 62 65 20 75 6e 72 65 67 69 73   will be unregis
25c0: 74 65 72 65 64 2e 0d 0a 0d 0a 49 66 20 74 68 65  tered.....If the
25d0: 20 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e 20 61   <i>script</i> a
25e0: 72 67 75 6d 65 6e 74 20 69 73 20 6e 6f 74 20 73  rgument is not s
25f0: 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 63 75  pecified, the cu
2600: 72 72 65 6e 74 6c 79 20 72 65 67 69 73 74 65 72  rrently register
2610: 65 64 0d 0a 63 6f 6d 6d 61 6e 64 20 66 6f 72 20  ed..command for 
2620: 74 68 65 20 73 70 65 63 69 66 69 65 64 20 73 69  the specified si
2630: 67 6e 61 6c 20 61 6e 64 20 70 61 74 68 2c 20 69  gnal and path, i
2640: 66 20 61 6e 79 2c 20 69 73 20 72 65 74 75 72 6e  f any, is return
2650: 65 64 2e 0d 0a 49 66 20 6e 6f 20 3c 69 3e 6d 65  ed...If no <i>me
2660: 6d 62 65 72 3c 2f 69 3e 20 61 72 67 75 6d 65 6e  mber</i> argumen
2670: 74 20 69 73 20 73 70 65 63 69 66 69 65 64 20 61  t is specified a
2680: 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 72 65 67   list of all reg
2690: 69 73 74 65 72 65 64 20 73 69 67 6e 61 6c 73 0d  istered signals.
26a0: 0a 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20  .and associated 
26b0: 63 6f 6d 6d 61 6e 64 73 20 61 74 20 74 68 65 20  commands at the 
26c0: 73 70 65 63 69 66 69 65 64 20 70 61 74 68 20 69  specified path i
26d0: 73 20 72 65 74 75 72 6e 65 64 2e 0d 0a 49 66 20  s returned...If 
26e0: 6e 6f 20 3c 69 3e 70 61 74 68 3c 2f 69 3e 20 61  no <i>path</i> a
26f0: 72 67 75 6d 65 6e 74 20 69 73 20 73 70 65 63 69  rgument is speci
2700: 66 69 65 64 20 61 20 6c 69 73 74 20 6f 66 20 61  fied a list of a
2710: 6c 6c 20 70 61 74 68 73 20 61 6e 64 20 74 68 65  ll paths and the
2720: 69 72 0d 0a 72 65 67 69 73 74 65 72 65 64 20 73  ir..registered s
2730: 69 67 6e 61 6c 73 20 61 6e 64 20 61 73 73 6f 63  ignals and assoc
2740: 69 61 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 69  iated commands i
2750: 73 20 72 65 74 75 72 6e 65 64 2e 0d 0a 0d 0a 3c  s returned.....<
2760: 70 3e 0d 0a 0d 0a 54 68 65 20 3c 62 3e 2d 64 65  p>....The <b>-de
2770: 74 61 69 6c 73 3c 2f 62 3e 20 6f 70 74 69 6f 6e  tails</b> option
2780: 20 63 61 75 73 65 73 20 76 61 72 69 61 6e 74 20   causes variant 
2790: 61 72 67 75 6d 65 6e 74 73 20 74 6f 20 62 65 20  arguments to be 
27a0: 72 65 70 72 65 73 65 6e 74 65 64 20 61 73 20 61  represented as a
27b0: 0d 0a 6c 69 73 74 20 77 69 74 68 20 74 77 6f 20  ..list with two 
27c0: 65 6c 65 6d 65 6e 74 73 3a 20 54 68 65 20 66 69  elements: The fi
27d0: 72 73 74 20 6c 69 73 74 20 65 6c 65 6d 65 6e 74  rst list element
27e0: 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 73 69   contains the si
27f0: 67 6e 61 74 75 72 65 20 6f 66 20 74 68 65 0d 0a  gnature of the..
2800: 61 72 67 75 6d 65 6e 74 20 61 6e 64 20 74 68 65  argument and the
2810: 20 73 65 63 6f 6e 64 20 6c 69 73 74 20 65 6c 65   second list ele
2820: 6d 65 6e 74 20 69 73 20 74 68 65 20 76 61 6c 75  ment is the valu
2830: 65 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c  e.....<p>..<dt><
2840: 61 20 6e 61 6d 65 3d 22 38 22 3e 3c 2f 61 3e 3c  a name="8"></a><
2850: 62 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 6d 65  b>dbus</b> <b>me
2860: 74 68 6f 64 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73  thod</b> ?<i>bus
2870: 49 44 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 64 65 74  ID</i>? ?<b>-det
2880: 61 69 6c 73 3c 2f 62 3e 3f 20 3f 3c 69 3e 70 61  ails</b>? ?<i>pa
2890: 74 68 3c 2f 69 3e 20 3f 3c 69 3e 6d 65 6d 62 65  th</i> ?<i>membe
28a0: 72 3c 2f 69 3e 20 3f 3c 69 3e 73 63 72 69 70 74  r</i> ?<i>script
28b0: 3c 2f 69 3e 3f 3f 3f 0d 0a 3c 64 64 3e 52 65 67  </i>???..<dd>Reg
28c0: 69 73 74 65 72 20 61 20 3c 69 3e 73 63 72 69 70  ister a <i>scrip
28d0: 74 3c 2f 69 3e 20 74 6f 20 62 65 20 63 61 6c 6c  t</i> to be call
28e0: 65 64 20 77 68 65 6e 20 6d 65 74 68 6f 64 20 3c  ed when method <
28f0: 69 3e 6d 65 6d 62 65 72 3c 2f 69 3e 20 69 73 20  i>member</i> is 
2900: 69 6e 76 6f 6b 65 64 20 61 74 0d 0a 74 68 65 20  invoked at..the 
2910: 73 70 65 63 69 66 69 65 64 20 3c 69 3e 70 61 74  specified <i>pat
2920: 68 3c 2f 69 3e 2e 0d 0a 53 65 65 20 3c 62 3e 45  h</i>...See <b>E
2930: 76 65 6e 74 20 48 61 6e 64 6c 65 72 73 3c 2f 62  vent Handlers</b
2940: 3e 20 62 65 6c 6f 77 20 66 6f 72 20 6d 6f 72 65  > below for more
2950: 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0d 0a 0d   information....
2960: 0a 3c 70 3e 0d 0a 0d 0a 49 66 20 74 68 65 20 3c  .<p>....If the <
2970: 69 3e 70 61 74 68 3c 2f 69 3e 20 61 72 67 75 6d  i>path</i> argum
2980: 65 6e 74 20 69 73 20 61 6e 20 65 6d 70 74 79 20  ent is an empty 
2990: 73 74 72 69 6e 67 2c 20 3c 69 3e 73 63 72 69 70  string, <i>scrip
29a0: 74 3c 2f 69 3e 20 77 69 6c 6c 20 62 65 20 65 78  t</i> will be ex
29b0: 65 63 75 74 65 64 0d 0a 77 68 65 6e 65 76 65 72  ecuted..whenever
29c0: 20 61 20 6d 65 74 68 6f 64 20 63 61 6c 6c 20 6d   a method call m
29d0: 65 73 73 61 67 65 20 69 73 20 72 65 63 65 69 76  essage is receiv
29e0: 65 64 20 66 6f 72 20 61 6e 79 20 70 61 74 68 2c  ed for any path,
29f0: 20 75 6e 6c 65 73 73 20 61 20 64 65 64 69 63 61   unless a dedica
2a00: 74 65 64 0d 0a 6d 65 74 68 6f 64 20 68 61 6e 64  ted..method hand
2a10: 6c 65 72 20 66 6f 72 20 74 68 65 20 65 78 61 63  ler for the exac
2a20: 74 20 70 61 74 68 20 68 61 73 20 62 65 65 6e 20  t path has been 
2a30: 64 65 66 69 6e 65 64 2e 0d 0a 54 68 65 20 3c 69  defined...The <i
2a40: 3e 6d 65 6d 62 65 72 3c 2f 69 3e 20 61 72 67 75  >member</i> argu
2a50: 6d 65 6e 74 20 6d 61 79 20 62 65 20 73 70 65 63  ment may be spec
2a60: 69 66 69 65 64 20 61 73 20 65 69 74 68 65 72 20  ified as either 
2a70: 61 20 6d 65 74 68 6f 64 20 6e 61 6d 65 20 6f 72  a method name or
2a80: 20 61 6e 0d 0a 69 6e 74 65 72 66 61 63 65 20 61   an..interface a
2a90: 6e 64 20 6d 65 74 68 6f 64 20 6e 61 6d 65 20 6a  nd method name j
2aa0: 6f 69 6e 65 64 20 62 79 20 61 20 70 65 72 69 6f  oined by a perio
2ab0: 64 2e 20 49 66 20 6e 6f 20 69 6e 74 65 72 66 61  d. If no interfa
2ac0: 63 65 20 69 73 20 73 70 65 63 69 66 69 65 64 2c  ce is specified,
2ad0: 0d 0a 74 68 65 20 73 63 72 69 70 74 20 77 69 6c  ..the script wil
2ae0: 6c 20 62 65 20 63 61 6c 6c 65 64 20 66 6f 72 20  l be called for 
2af0: 6d 65 74 68 6f 64 73 20 77 69 74 68 20 61 6e 79  methods with any
2b00: 20 69 6e 74 65 72 66 61 63 65 2c 20 75 6e 6c 65   interface, unle
2b10: 73 73 20 61 6e 6f 74 68 65 72 0d 0a 68 61 6e 64  ss another..hand
2b20: 6c 65 72 20 69 73 20 73 70 65 63 69 66 69 65 64  ler is specified
2b30: 20 66 6f 72 20 74 68 65 20 6d 65 74 68 6f 64 20   for the method 
2b40: 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 69 6e  including the in
2b50: 74 65 72 66 61 63 65 2e 0d 0a 0d 0a 49 66 20 3c  terface.....If <
2b60: 69 3e 73 63 72 69 70 74 3c 2f 69 3e 20 69 73 20  i>script</i> is 
2b70: 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 2c  an empty string,
2b80: 20 74 68 65 20 63 75 72 72 65 6e 74 6c 79 20 72   the currently r
2b90: 65 67 69 73 74 65 72 65 64 20 63 6f 6d 6d 61 6e  egistered comman
2ba0: 64 20 66 6f 72 20 74 68 65 0d 0a 73 70 65 63 69  d for the..speci
2bb0: 66 69 65 64 20 6d 65 74 68 6f 64 20 61 6e 64 20  fied method and 
2bc0: 70 61 74 68 20 77 69 6c 6c 20 62 65 20 75 6e 72  path will be unr
2bd0: 65 67 69 73 74 65 72 65 64 2e 0d 0a 0d 0a 3c 70  egistered.....<p
2be0: 3e 0d 0a 0d 0a 49 66 20 74 68 65 20 3c 69 3e 73  >....If the <i>s
2bf0: 63 72 69 70 74 3c 2f 69 3e 20 61 72 67 75 6d 65  cript</i> argume
2c00: 6e 74 20 69 73 20 6e 6f 74 20 73 70 65 63 69 66  nt is not specif
2c10: 69 65 64 2c 20 74 68 65 20 63 75 72 72 65 6e 74  ied, the current
2c20: 6c 79 20 72 65 67 69 73 74 65 72 65 64 0d 0a 63  ly registered..c
2c30: 6f 6d 6d 61 6e 64 20 66 6f 72 20 74 68 65 20 73  ommand for the s
2c40: 70 65 63 69 66 69 65 64 20 6d 65 74 68 6f 64 20  pecified method 
2c50: 61 6e 64 20 70 61 74 68 2c 20 69 66 20 61 6e 79  and path, if any
2c60: 2c 20 69 73 20 72 65 74 75 72 6e 65 64 2e 20 0d  , is returned. .
2c70: 0a 0d 0a 49 66 20 6e 6f 20 3c 69 3e 6d 65 6d 62  ...If no <i>memb
2c80: 65 72 3c 2f 69 3e 20 61 72 67 75 6d 65 6e 74 20  er</i> argument 
2c90: 69 73 20 73 70 65 63 69 66 69 65 64 20 61 20 6c  is specified a l
2ca0: 69 73 74 20 6f 66 20 61 6c 6c 20 72 65 67 69 73  ist of all regis
2cb0: 74 65 72 65 64 20 6d 65 74 68 6f 64 73 0d 0a 61  tered methods..a
2cc0: 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 63 6f  nd associated co
2cd0: 6d 6d 61 6e 64 73 20 61 74 20 74 68 65 20 73 70  mmands at the sp
2ce0: 65 63 69 66 69 65 64 20 70 61 74 68 20 69 73 20  ecified path is 
2cf0: 72 65 74 75 72 6e 65 64 2e 0d 0a 0d 0a 49 66 20  returned.....If 
2d00: 6e 6f 20 3c 69 3e 70 61 74 68 3c 2f 69 3e 20 61  no <i>path</i> a
2d10: 72 67 75 6d 65 6e 74 20 69 73 20 73 70 65 63 69  rgument is speci
2d20: 66 69 65 64 20 61 20 6c 69 73 74 20 6f 66 20 61  fied a list of a
2d30: 6c 6c 20 70 61 74 68 73 20 61 6e 64 20 74 68 65  ll paths and the
2d40: 69 72 0d 0a 72 65 67 69 73 74 65 72 65 64 20 6d  ir..registered m
2d50: 65 74 68 6f 64 73 20 61 6e 64 20 61 73 73 6f 63  ethods and assoc
2d60: 69 61 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 69  iated commands i
2d70: 73 20 72 65 74 75 72 6e 65 64 2e 0d 0a 0d 0a 3c  s returned.....<
2d80: 70 3e 0d 0a 0d 0a 57 68 65 6e 20 3c 69 3e 73 63  p>....When <i>sc
2d90: 72 69 70 74 3c 2f 69 3e 20 69 73 20 65 76 61 6c  ript</i> is eval
2da0: 75 61 74 65 64 2c 20 74 68 65 20 72 65 74 75 72  uated, the retur
2db0: 6e 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 73  n value of the s
2dc0: 63 72 69 70 74 20 77 69 6c 6c 20 6e 6f 72 6d 61  cript will norma
2dd0: 6c 6c 79 0d 0a 62 65 20 72 65 74 75 72 6e 65 64  lly..be returned
2de0: 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 20 75   to the caller u
2df0: 73 69 6e 67 20 61 20 44 42 75 73 20 3c 62 20 63  sing a DBus <b c
2e00: 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 6d 65 74  lass="const">met
2e10: 68 6f 64 5f 72 65 74 75 72 6e 3c 2f 62 3e 20 6d  hod_return</b> m
2e20: 65 73 73 61 67 65 20 69 6e 20 61 0d 0a 73 74 72  essage in a..str
2e30: 69 6e 67 20 61 72 67 75 6d 65 6e 74 2e 0d 0a 0d  ing argument....
2e40: 0a 49 66 20 74 68 65 20 65 78 65 63 75 74 69 6f  .If the executio
2e50: 6e 20 6f 66 20 3c 69 3e 73 63 72 69 70 74 3c 2f  n of <i>script</
2e60: 69 3e 20 65 6e 64 73 20 77 69 74 68 20 61 6e 20  i> ends with an 
2e70: 65 72 72 6f 72 2c 20 74 68 65 20 65 72 72 6f 72  error, the error
2e80: 20 6d 65 73 73 61 67 65 20 69 73 0d 0a 72 65 74   message is..ret
2e90: 75 72 6e 65 64 20 74 6f 20 74 68 65 20 63 61 6c  urned to the cal
2ea0: 6c 65 72 20 69 6e 20 61 20 44 42 75 73 20 3c 62  ler in a DBus <b
2eb0: 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 65   class="const">e
2ec0: 72 72 6f 72 3c 2f 62 3e 20 6d 65 73 73 61 67 65  rror</b> message
2ed0: 2e 20 41 6e 79 20 44 42 75 73 20 65 72 72 6f 72  . Any DBus error
2ee0: 73 20 74 68 61 74 0d 0a 68 61 70 70 65 6e 20 77  s that..happen w
2ef0: 68 69 6c 65 20 73 65 6e 64 69 6e 67 20 74 68 65  hile sending the
2f00: 73 65 20 6d 65 73 73 61 67 65 73 20 62 61 63 6b  se messages back
2f10: 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 20 61   to the caller a
2f20: 72 65 20 73 69 6c 65 6e 74 6c 79 20 69 67 6e 6f  re silently igno
2f30: 72 65 64 2e 0d 0a 0d 0a 49 66 20 74 68 65 20 63  red.....If the c
2f40: 61 6c 6c 65 72 20 73 70 65 63 69 66 69 65 64 20  aller specified 
2f50: 74 68 65 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f  the <b class="co
2f60: 6e 73 74 22 3e 6e 6f 5f 72 65 70 6c 79 3c 2f 62  nst">no_reply</b
2f70: 3e 20 66 6c 61 67 20 69 6e 20 74 68 65 20 3c 62  > flag in the <b
2f80: 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 6d   class="const">m
2f90: 65 74 68 6f 64 5f 63 61 6c 6c 3c 2f 62 3e 0d 0a  ethod_call</b>..
2fa0: 61 73 20 54 52 55 45 2c 20 6e 6f 20 3c 62 20 63  as TRUE, no <b c
2fb0: 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 6d 65 74  lass="const">met
2fc0: 68 6f 64 5f 72 65 74 75 72 6e 3c 2f 62 3e 20 6f  hod_return</b> o
2fd0: 72 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73  r <b class="cons
2fe0: 74 22 3e 65 72 72 6f 72 3c 2f 62 3e 20 6d 65 73  t">error</b> mes
2ff0: 73 61 67 65 20 77 69 6c 6c 20 62 65 20 72 65 74  sage will be ret
3000: 75 72 6e 65 64 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 0d  urned.....<p>...
3010: 0a 54 68 65 20 73 63 72 69 70 74 20 63 6f 64 65  .The script code
3020: 20 72 65 63 6f 67 6e 69 7a 65 73 20 61 6e 20 61   recognizes an a
3030: 64 64 69 74 69 6f 6e 61 6c 20 3c 62 3e 2d 61 73  dditional <b>-as
3040: 79 6e 63 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20 66  ync</b> option f
3050: 6f 72 20 74 68 65 20 54 63 6c 20 0d 0a 3c 62 3e  or the Tcl ..<b>
3060: 72 65 74 75 72 6e 3c 2f 62 3e 20 63 6f 6d 6d 61  return</b> comma
3070: 6e 64 2e 20 57 68 65 6e 20 74 68 61 74 20 6f 70  nd. When that op
3080: 74 69 6f 6e 20 69 73 20 73 70 65 63 69 66 69 65  tion is specifie
3090: 64 20 77 69 74 68 20 61 20 74 72 75 65 20 62 6f  d with a true bo
30a0: 6f 6c 65 61 6e 20 0d 0a 76 61 6c 75 65 20 28 3c  olean ..value (<
30b0: 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e  b class="const">
30c0: 74 72 75 65 3c 2f 62 3e 2c 20 3c 62 20 63 6c 61  true</b>, <b cla
30d0: 73 73 3d 22 63 6f 6e 73 74 22 3e 79 65 73 3c 2f  ss="const">yes</
30e0: 62 3e 2c 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f  b>, <b class="co
30f0: 6e 73 74 22 3e 31 3c 2f 62 3e 29 2c 20 74 68 65  nst">1</b>), the
3100: 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 66 72   return value fr
3110: 6f 6d 20 74 68 65 20 62 6f 64 79 0d 0a 77 69 6c  om the body..wil
3120: 6c 20 6e 6f 74 20 61 75 74 6f 6d 61 74 69 63 61  l not automatica
3130: 6c 6c 79 20 62 65 20 72 65 74 75 72 6e 65 64 20  lly be returned 
3140: 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 2e 20 41  to the caller. A
3150: 20 72 65 73 70 6f 6e 73 65 20 6d 65 73 73 61 67   response messag
3160: 65 20 73 68 6f 75 6c 64 0d 0a 74 68 65 6e 20 62  e should..then b
3170: 65 20 67 65 6e 65 72 61 74 65 64 20 75 73 69 6e  e generated usin
3180: 67 20 74 68 65 20 3c 62 3e 64 62 75 73 3c 2f 62  g the <b>dbus</b
3190: 3e 20 3c 62 3e 72 65 74 75 72 6e 3c 2f 62 3e 20  > <b>return</b> 
31a0: 6f 72 20 0d 0a 3c 62 3e 64 62 75 73 3c 2f 62 3e  or ..<b>dbus</b>
31b0: 20 3c 62 3e 65 72 72 6f 72 3c 2f 62 3e 20 73 75   <b>error</b> su
31c0: 62 63 6f 6d 6d 61 6e 64 73 2e 0d 0a 0d 0a 3c 70  bcommands.....<p
31d0: 3e 0d 0a 0d 0a 54 68 69 73 20 6d 65 74 68 6f 64  >....This method
31e0: 20 70 72 6f 76 69 64 65 73 20 6d 6f 72 65 20 61   provides more a
31f0: 64 76 61 6e 63 65 64 20 63 6f 6e 74 72 6f 6c 20  dvanced control 
3200: 6f 76 65 72 20 74 68 65 20 72 65 74 75 72 6e 65  over the returne
3210: 64 20 6d 65 73 73 61 67 65 73 2e 20 49 74 0d 0a  d messages. It..
3220: 61 6c 6c 6f 77 73 20 66 6f 72 20 6d 6f 72 65 20  allows for more 
3230: 63 6f 6d 70 6c 65 78 20 64 61 74 61 20 73 74 72  complex data str
3240: 75 63 74 75 72 65 73 20 74 68 61 6e 20 6a 75 73  uctures than jus
3250: 74 20 61 20 73 74 72 69 6e 67 20 74 6f 20 62 65  t a string to be
3260: 20 72 65 74 75 72 6e 65 64 2e 0d 0a 49 74 20 61   returned...It a
3270: 6c 73 6f 20 6d 61 6b 65 73 20 69 74 20 70 6f 73  lso makes it pos
3280: 73 69 62 6c 65 20 74 6f 20 67 65 6e 65 72 61 74  sible to generat
3290: 65 20 61 20 72 65 74 75 72 6e 20 6d 65 73 73 61  e a return messa
32a0: 67 65 20 73 6f 6d 65 20 74 69 6d 65 20 61 66 74  ge some time aft
32b0: 65 72 0d 0a 3c 69 3e 73 63 72 69 70 74 3c 2f 69  er..<i>script</i
32c0: 3e 20 68 61 73 20 61 6c 72 65 61 64 79 20 66 69  > has already fi
32d0: 6e 69 73 68 65 64 2e 20 41 64 64 69 74 69 6f 6e  nished. Addition
32e0: 61 6c 6c 79 2c 20 61 6e 79 20 64 62 75 73 20 65  ally, any dbus e
32f0: 72 72 6f 72 73 20 77 68 69 6c 65 0d 0a 73 65 6e  rrors while..sen
3300: 64 69 6e 67 20 62 61 63 6b 20 74 68 65 20 72 65  ding back the re
3310: 74 75 72 6e 20 6d 65 73 73 61 67 65 20 63 61 6e  turn message can
3320: 20 62 65 20 64 65 74 65 63 74 65 64 20 61 6e 64   be detected and
3330: 20 68 61 6e 64 6c 65 64 2e 0d 0a 0d 0a 3c 70 3e   handled.....<p>
3340: 0d 0a 0d 0a 54 68 65 20 3c 62 3e 2d 64 65 74 61  ....The <b>-deta
3350: 69 6c 73 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20 63  ils</b> option c
3360: 61 75 73 65 73 20 76 61 72 69 61 6e 74 20 61 72  auses variant ar
3370: 67 75 6d 65 6e 74 73 20 74 6f 20 62 65 20 72 65  guments to be re
3380: 70 72 65 73 65 6e 74 65 64 20 61 73 20 61 0d 0a  presented as a..
3390: 6c 69 73 74 20 77 69 74 68 20 74 77 6f 20 65 6c  list with two el
33a0: 65 6d 65 6e 74 73 3a 20 54 68 65 20 66 69 72 73  ements: The firs
33b0: 74 20 6c 69 73 74 20 65 6c 65 6d 65 6e 74 20 63  t list element c
33c0: 6f 6e 74 61 69 6e 73 20 74 68 65 20 73 69 67 6e  ontains the sign
33d0: 61 74 75 72 65 20 6f 66 20 74 68 65 0d 0a 61 72  ature of the..ar
33e0: 67 75 6d 65 6e 74 20 61 6e 64 20 74 68 65 20 73  gument and the s
33f0: 65 63 6f 6e 64 20 6c 69 73 74 20 65 6c 65 6d 65  econd list eleme
3400: 6e 74 20 69 73 20 74 68 65 20 76 61 6c 75 65 2e  nt is the value.
3410: 0d 0a 0d 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20  ....<p>..<dt><a 
3420: 6e 61 6d 65 3d 22 39 22 3e 3c 2f 61 3e 3c 62 3e  name="9"></a><b>
3430: 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 6d 6f 6e 69  dbus</b> <b>moni
3440: 74 6f 72 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49  tor</b> ?<i>busI
3450: 44 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 64 65 74 61  D</i>? ?<b>-deta
3460: 69 6c 73 3c 2f 62 3e 3f 20 3c 69 3e 73 63 72 69  ils</b>? <i>scri
3470: 70 74 3c 2f 69 3e 0d 0a 3c 64 64 3e 52 65 67 69  pt</i>..<dd>Regi
3480: 73 74 65 72 20 61 20 3c 69 3e 73 63 72 69 70 74  ster a <i>script
3490: 3c 2f 69 3e 20 74 6f 20 62 65 20 65 78 65 63 75  </i> to be execu
34a0: 74 65 64 20 77 68 65 6e 20 61 6e 79 20 44 42 75  ted when any DBu
34b0: 73 20 6d 65 73 73 61 67 65 20 69 73 20 72 65 63  s message is rec
34c0: 65 69 76 65 64 2e 0d 0a 0d 0a 53 65 65 20 3c 62  eived.....See <b
34d0: 3e 45 76 65 6e 74 20 48 61 6e 64 6c 65 72 73 3c  >Event Handlers<
34e0: 2f 62 3e 20 62 65 6c 6f 77 20 66 6f 72 20 6d 6f  /b> below for mo
34f0: 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0d  re information..
3500: 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 54 68 69 73 20 63  ...<p>....This c
3510: 61 6e 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72  an be useful for
3520: 20 62 75 69 6c 64 69 6e 67 20 73 70 65 63 69 61   building specia
3530: 6c 20 70 75 72 70 6f 73 65 20 70 72 6f 67 72 61  l purpose progra
3540: 6d 73 20 74 68 61 74 20 6e 65 65 64 20 74 6f 20  ms that need to 
3550: 73 65 65 0d 0a 61 6c 6c 20 61 63 74 69 76 69 74  see..all activit
3560: 79 20 6f 6e 20 74 68 65 20 44 42 75 73 2c 20 66  y on the DBus, f
3570: 6f 72 20 65 78 61 6d 70 6c 65 20 61 20 44 42 75  or example a DBu
3580: 73 20 6d 6f 6e 69 74 6f 72 69 6e 67 20 70 72 6f  s monitoring pro
3590: 67 72 61 6d 2e 20 0d 0a 49 66 20 3c 69 3e 73 63  gram. ..If <i>sc
35a0: 72 69 70 74 3c 2f 69 3e 20 69 73 20 61 6e 20 65  ript</i> is an e
35b0: 6d 70 74 79 20 73 74 72 69 6e 67 2c 20 74 68 65  mpty string, the
35c0: 20 63 75 72 72 65 6e 74 6c 79 20 63 6f 6e 66 69   currently confi
35d0: 67 75 72 65 64 20 6d 6f 6e 69 74 6f 72 20 73 63  gured monitor sc
35e0: 72 69 70 74 0d 0a 77 69 6c 6c 20 62 65 20 72 65  ript..will be re
35f0: 6d 6f 76 65 64 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 0d  moved.....<p>...
3600: 0a 54 68 65 20 3c 62 3e 2d 64 65 74 61 69 6c 73  .The <b>-details
3610: 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20 63 61 75 73  </b> option caus
3620: 65 73 20 76 61 72 69 61 6e 74 20 61 72 67 75 6d  es variant argum
3630: 65 6e 74 73 20 74 6f 20 62 65 20 72 65 70 72 65  ents to be repre
3640: 73 65 6e 74 65 64 20 61 73 20 61 0d 0a 6c 69 73  sented as a..lis
3650: 74 20 77 69 74 68 20 74 77 6f 20 65 6c 65 6d 65  t with two eleme
3660: 6e 74 73 3a 20 54 68 65 20 66 69 72 73 74 20 6c  nts: The first l
3670: 69 73 74 20 65 6c 65 6d 65 6e 74 20 63 6f 6e 74  ist element cont
3680: 61 69 6e 73 20 74 68 65 20 73 69 67 6e 61 74 75  ains the signatu
3690: 72 65 20 6f 66 20 74 68 65 0d 0a 61 72 67 75 6d  re of the..argum
36a0: 65 6e 74 20 61 6e 64 20 74 68 65 20 73 65 63 6f  ent and the seco
36b0: 6e 64 20 6c 69 73 74 20 65 6c 65 6d 65 6e 74 20  nd list element 
36c0: 69 73 20 74 68 65 20 76 61 6c 75 65 2e 0d 0a 0d  is the value....
36d0: 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20 6e 61 6d  .<p>..<dt><a nam
36e0: 65 3d 22 31 30 22 3e 3c 2f 61 3e 3c 62 3e 64 62  e="10"></a><b>db
36f0: 75 73 3c 2f 62 3e 20 3c 62 3e 6e 61 6d 65 3c 2f  us</b> <b>name</
3700: 62 3e 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e  b> ?<i>busID</i>
3710: 3f 20 3f 3c 62 3e 2d 6f 70 74 69 6f 6e 3c 2f 62  ? ?<b>-option</b
3720: 3e 20 3c 69 3e 2e 2e 2e 3c 2f 69 3e 3f 20 3c 69  > <i>...</i>? <i
3730: 3e 6e 61 6d 65 3c 2f 69 3e 0d 0a 3c 64 64 3e 52  >name</i>..<dd>R
3740: 65 71 75 65 73 74 20 74 68 65 20 62 75 73 20 74  equest the bus t
3750: 6f 20 61 73 73 69 67 6e 20 61 20 67 69 76 65 6e  o assign a given
3760: 20 6e 61 6d 65 20 74 6f 20 74 68 65 20 63 6f 6e   name to the con
3770: 6e 65 63 74 69 6f 6e 2e 20 54 68 65 20 63 6f 6d  nection. The com
3780: 6d 61 6e 64 20 77 69 6c 6c 0d 0a 67 65 6e 65 72  mand will..gener
3790: 61 74 65 20 61 6e 20 65 72 72 6f 72 20 69 6e 20  ate an error in 
37a0: 61 6c 6c 20 63 61 73 65 73 20 77 68 65 72 65 20  all cases where 
37b0: 69 74 20 77 61 73 20 75 6e 73 75 63 63 65 73 73  it was unsuccess
37c0: 66 75 6c 20 69 6e 20 6d 61 6b 69 6e 67 20 74 68  ful in making th
37d0: 65 0d 0a 61 70 70 6c 69 63 61 74 69 6f 6e 20 74  e..application t
37e0: 68 65 20 70 72 69 6d 61 72 79 20 6f 77 6e 65 72  he primary owner
37f0: 20 6f 66 20 74 68 65 20 6e 61 6d 65 2e 20 0d 0a   of the name. ..
3800: 0d 0a 3c 70 3e 0d 0a 0d 0a 54 68 65 20 3c 62 3e  ..<p>....The <b>
3810: 2d 79 69 65 6c 64 3c 2f 62 3e 20 6f 70 74 69 6f  -yield</b> optio
3820: 6e 20 73 70 65 63 69 66 69 65 73 20 74 68 61 74  n specifies that
3830: 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e   the application
3840: 20 77 69 6c 6c 20 72 65 6c 65 61 73 65 20 74 68   will release th
3850: 65 0d 0a 72 65 71 75 65 73 74 65 64 20 6e 61 6d  e..requested nam
3860: 65 20 77 68 65 6e 20 73 6f 6d 65 20 6f 74 68 65  e when some othe
3870: 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 72 65  r application re
3880: 71 75 65 73 74 73 20 74 68 65 20 73 61 6d 65 20  quests the same 
3890: 6e 61 6d 65 20 61 6e 64 20 68 61 73 0d 0a 69 6e  name and has..in
38a0: 64 69 63 61 74 65 64 20 74 68 61 74 20 69 74 20  dicated that it 
38b0: 77 61 6e 74 73 20 74 6f 20 74 61 6b 65 20 6f 76  wants to take ov
38c0: 65 72 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20  er ownership of 
38d0: 74 68 65 20 6e 61 6d 65 2e 20 54 68 65 20 61 70  the name. The ap
38e0: 70 6c 69 63 61 74 69 6f 6e 0d 0a 77 69 6c 6c 20  plication..will 
38f0: 62 65 20 69 6e 66 6f 72 6d 65 64 20 62 79 20 61  be informed by a
3900: 20 3c 65 6d 3e 4e 61 6d 65 4c 6f 73 74 3c 2f 65   <em>NameLost</e
3910: 6d 3e 20 73 69 67 6e 61 6c 20 77 68 65 6e 20 69  m> signal when i
3920: 74 20 6c 6f 73 65 73 20 6f 77 6e 65 72 73 68 69  t loses ownershi
3930: 70 20 6f 66 20 74 68 65 0d 0a 6e 61 6d 65 2e 0d  p of the..name..
3940: 0a 0d 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  ...The following
3950: 20 63 6f 6d 6d 61 6e 64 20 63 61 6e 20 62 65 20   command can be 
3960: 75 73 65 64 20 74 6f 20 65 78 69 74 20 74 68 65  used to exit the
3970: 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 68 65   application whe
3980: 6e 20 74 68 65 20 6e 61 6d 65 20 69 73 0d 0a 74  n the name is..t
3990: 61 6b 65 6e 20 6f 76 65 72 20 62 79 20 61 6e 6f  aken over by ano
39a0: 74 68 65 72 20 70 72 6f 63 65 73 73 3a 0d 0a 0d  ther process:...
39b0: 0a 3c 70 72 65 20 63 6c 61 73 73 3d 22 65 78 61  .<pre class="exa
39c0: 6d 70 6c 65 22 3e 0d 0a 64 62 75 73 20 6c 69 73  mple">..dbus lis
39d0: 74 65 6e 20 5b 64 62 75 73 20 69 6e 66 6f 20 70  ten [dbus info p
39e0: 61 74 68 5d 20 5b 64 62 75 73 20 69 6e 66 6f 20  ath] [dbus info 
39f0: 73 65 72 76 69 63 65 5d 2e 4e 61 6d 65 4c 6f 73  service].NameLos
3a00: 74 20 5c 0d 0a 20 20 5b 6c 69 73 74 20 61 70 70  t \..  [list app
3a10: 6c 79 20 7b 7b 6e 61 6d 65 20 69 6e 66 6f 20 73  ly {{name info s
3a20: 74 72 7d 20 7b 69 66 20 7b 24 73 74 72 20 65 71  tr} {if {$str eq
3a30: 20 24 6e 61 6d 65 7d 20 65 78 69 74 7d 7d 20 24   $name} exit}} $
3a40: 6e 61 6d 65 5d 0d 0a 3c 2f 70 72 65 3e 0d 0a 0d  name]..</pre>...
3a50: 0a 54 68 65 20 3c 62 3e 2d 72 65 70 6c 61 63 65  .The <b>-replace
3a60: 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20 69 6e 64 69  </b> option indi
3a70: 63 61 74 65 73 20 74 68 61 74 20 74 68 65 20 61  cates that the a
3a80: 70 70 6c 69 63 61 74 69 6f 6e 20 77 61 6e 74 73  pplication wants
3a90: 20 74 6f 20 74 61 6b 65 0d 0a 6f 76 65 72 20 74   to take..over t
3aa0: 68 65 20 6f 77 6e 65 72 73 68 69 70 20 6f 66 20  he ownership of 
3ab0: 74 68 65 20 6e 61 6d 65 20 66 72 6f 6d 20 74 68  the name from th
3ac0: 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 74 68  e application th
3ad0: 61 74 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20  at is currently 
3ae0: 74 68 65 0d 0a 70 72 69 6d 61 72 79 20 6f 77 6e  the..primary own
3af0: 65 72 2c 20 69 66 20 61 6e 79 2e 20 54 68 69 73  er, if any. This
3b00: 20 72 65 71 75 65 73 74 20 77 69 6c 6c 20 6f 6e   request will on
3b10: 6c 79 20 62 65 20 68 6f 6e 6f 75 72 65 64 20 69  ly be honoured i
3b20: 66 20 74 68 65 20 63 75 72 72 65 6e 74 0d 0a 6f  f the current..o
3b30: 77 6e 65 72 20 68 61 73 20 69 6e 64 69 63 61 74  wner has indicat
3b40: 65 64 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20  ed that it will 
3b50: 72 65 6c 65 61 73 65 20 74 68 65 20 6e 61 6d 65  release the name
3b60: 20 6f 6e 20 72 65 71 75 65 73 74 2e 0d 0a 53 65   on request...Se
3b70: 65 20 61 6c 73 6f 20 74 68 65 20 3c 62 3e 2d 79  e also the <b>-y
3b80: 69 65 6c 64 3c 2f 62 3e 20 6f 70 74 69 6f 6e 2e  ield</b> option.
3b90: 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 49 66 20 74 68  ....<p>....If th
3ba0: 65 20 72 65 71 75 65 73 74 65 64 20 6e 61 6d 65  e requested name
3bb0: 20 69 73 20 63 75 72 72 65 6e 74 6c 79 20 69 6e   is currently in
3bc0: 20 75 73 65 20 61 6e 64 20 74 68 65 20 3c 62 3e   use and the <b>
3bd0: 2d 72 65 70 6c 61 63 65 3c 2f 62 3e 20 6f 70 74  -replace</b> opt
3be0: 69 6f 6e 0d 0a 68 61 73 20 6e 6f 74 20 62 65 65  ion..has not bee
3bf0: 6e 20 73 70 65 63 69 66 69 65 64 2c 20 6f 72 20  n specified, or 
3c00: 74 68 65 20 3c 62 3e 2d 72 65 70 6c 61 63 65 3c  the <b>-replace<
3c10: 2f 62 3e 20 6f 70 74 69 6f 6e 20 77 61 73 20 73  /b> option was s
3c20: 70 65 63 69 66 69 65 64 20 62 75 74 0d 0a 74 68  pecified but..th
3c30: 65 20 63 75 72 72 65 6e 74 20 6f 77 6e 65 72 20  e current owner 
3c40: 69 73 20 75 6e 77 69 6c 6c 69 6e 67 20 74 6f 20  is unwilling to 
3c50: 67 69 76 65 20 75 70 20 69 74 73 20 6f 77 6e 65  give up its owne
3c60: 72 73 68 69 70 2c 20 74 68 65 20 6e 61 6d 65 20  rship, the name 
3c70: 72 65 71 75 65 73 74 0d 0a 77 69 6c 6c 20 6e 6f  request..will no
3c80: 72 6d 61 6c 6c 79 20 62 65 20 71 75 65 75 65 64  rmally be queued
3c90: 2e 20 54 68 65 6e 20 77 68 65 6e 20 74 68 65 20  . Then when the 
3ca0: 6e 61 6d 65 20 69 73 20 72 65 6c 65 61 73 65 64  name is released
3cb0: 20 62 79 20 63 75 72 72 65 6e 74 20 6f 77 6e 65   by current owne
3cc0: 72 20 69 74 0d 0a 69 73 20 61 73 73 69 67 6e 65  r it..is assigne
3cd0: 64 20 74 6f 20 74 68 65 20 6e 65 78 74 20 72 65  d to the next re
3ce0: 71 75 65 73 74 65 72 20 69 6e 20 74 68 65 20 71  quester in the q
3cf0: 75 65 75 65 20 61 6e 64 20 61 20 73 69 67 6e 61  ueue and a signa
3d00: 6c 20 69 73 20 73 65 6e 74 20 74 6f 20 69 6e 66  l is sent to inf
3d10: 6f 72 6d 0d 0a 74 68 61 74 20 72 65 71 75 65 73  orm..that reques
3d20: 74 65 72 20 74 68 61 74 20 69 74 20 69 73 20 6e  ter that it is n
3d30: 6f 77 20 74 68 65 20 70 72 69 6d 61 72 79 20 6f  ow the primary o
3d40: 77 6e 65 72 20 6f 66 20 74 68 65 20 6e 61 6d 65  wner of the name
3d50: 2e 0d 0a 0d 0a 54 68 65 20 3c 62 3e 2d 6e 6f 71  .....The <b>-noq
3d60: 75 65 75 65 3c 2f 62 3e 20 6f 70 74 69 6f 6e 20  ueue</b> option 
3d70: 6d 61 79 20 62 65 20 73 70 65 63 69 66 69 65 64  may be specified
3d80: 20 74 6f 20 69 6e 64 69 63 61 74 65 20 74 68 61   to indicate tha
3d90: 74 20 74 68 65 20 6e 61 6d 65 0d 0a 72 65 71 75  t the name..requ
3da0: 65 73 74 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62  est should not b
3db0: 65 20 71 75 65 75 65 64 2e 0d 0a 0d 0a 3c 70 3e  e queued.....<p>
3dc0: 0d 0a 0d 0a 4e 6f 74 65 20 74 68 61 74 20 65 76  ....Note that ev
3dd0: 65 6e 20 69 66 20 74 68 65 20 72 65 71 75 65 73  en if the reques
3de0: 74 20 68 61 73 20 62 65 65 6e 20 71 75 65 75 65  t has been queue
3df0: 64 2c 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 77  d, the command w
3e00: 69 6c 6c 20 67 65 6e 65 72 61 74 65 20 61 6e 0d  ill generate an.
3e10: 0a 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74  .error because t
3e20: 68 65 20 67 6f 61 6c 20 6f 66 20 62 65 63 6f 6d  he goal of becom
3e30: 69 6e 67 20 74 68 65 20 70 72 69 6d 61 72 79 20  ing the primary 
3e40: 6f 77 6e 65 72 20 6f 66 20 74 68 65 20 6e 61 6d  owner of the nam
3e50: 65 20 68 61 73 20 6e 6f 74 0d 0a 62 65 65 6e 20  e has not..been 
3e60: 61 63 68 69 65 76 65 64 2e 0d 0a 0d 0a 3c 70 3e  achieved.....<p>
3e70: 0d 0a 3c 64 74 3e 3c 61 20 6e 61 6d 65 3d 22 31  ..<dt><a name="1
3e80: 31 22 3e 3c 2f 61 3e 3c 62 3e 64 62 75 73 3c 2f  1"></a><b>dbus</
3e90: 62 3e 20 3c 62 3e 72 65 6c 65 61 73 65 3c 2f 62  b> <b>release</b
3ea0: 3e 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f  > ?<i>busID</i>?
3eb0: 20 3c 69 3e 6e 61 6d 65 3c 2f 69 3e 0d 0a 3c 64   <i>name</i>..<d
3ec0: 64 3e 41 73 6b 73 20 74 68 65 20 62 75 73 20 74  d>Asks the bus t
3ed0: 6f 20 75 6e 61 73 73 69 67 6e 20 74 68 65 20 67  o unassign the g
3ee0: 69 76 65 6e 20 6e 61 6d 65 20 66 72 6f 6d 20 74  iven name from t
3ef0: 68 69 73 20 63 6f 6e 6e 65 63 74 69 6f 6e 2e 0d  his connection..
3f00: 0a 0d 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20 6e  ...<p>..<dt><a n
3f10: 61 6d 65 3d 22 31 32 22 3e 3c 2f 61 3e 3c 62 3e  ame="12"></a><b>
3f20: 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 72 65 74 75  dbus</b> <b>retu
3f30: 72 6e 3c 2f 62 3e 20 3f 3c 69 3e 62 75 73 49 44  rn</b> ?<i>busID
3f40: 3c 2f 69 3e 3f 20 3f 3c 62 3e 2d 73 69 67 6e 61  </i>? ?<b>-signa
3f50: 74 75 72 65 3c 2f 62 3e 20 3c 69 3e 73 74 72 69  ture</b> <i>stri
3f60: 6e 67 3c 2f 69 3e 3f 20 3c 69 3e 64 65 73 74 69  ng</i>? <i>desti
3f70: 6e 61 74 69 6f 6e 3c 2f 69 3e 20 3c 69 3e 73 65  nation</i> <i>se
3f80: 72 69 61 6c 3c 2f 69 3e 20 3f 3c 69 3e 61 72 67  rial</i> ?<i>arg
3f90: 3c 2f 69 3e 20 3c 69 3e 2e 2e 2e 3c 2f 69 3e 3f  </i> <i>...</i>?
3fa0: 0d 0a 3c 64 64 3e 53 65 6e 64 20 61 20 44 42 75  ..<dd>Send a DBu
3fb0: 73 20 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73  s <b class="cons
3fc0: 74 22 3e 6d 65 74 68 6f 64 5f 72 65 74 75 72 6e  t">method_return
3fd0: 3c 2f 62 3e 20 6d 65 73 73 61 67 65 20 77 69 74  </b> message wit
3fe0: 68 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20  h the specified 
3ff0: 3c 69 3e 73 65 72 69 61 6c 3c 2f 69 3e 0d 0a 61  <i>serial</i>..a
4000: 6e 64 20 3c 69 3e 64 65 73 74 69 6e 61 74 69 6f  nd <i>destinatio
4010: 6e 3c 2f 69 3e 2e 20 0d 0a 0d 0a 54 68 65 20 76  n</i>. ....The v
4020: 61 6c 75 65 73 20 66 6f 72 20 3c 69 3e 64 65 73  alues for <i>des
4030: 74 69 6e 61 74 69 6f 6e 3c 2f 69 3e 20 61 6e 64  tination</i> and
4040: 20 3c 69 3e 73 65 72 69 61 6c 3c 2f 69 3e 20 63   <i>serial</i> c
4050: 61 6e 20 62 65 20 6f 62 74 61 69 6e 65 64 20 66  an be obtained f
4060: 72 6f 6d 20 65 76 65 6e 74 0d 0a 69 6e 66 6f 72  rom event..infor
4070: 6d 61 74 69 6f 6e 20 66 69 65 6c 64 73 20 27 73  mation fields 's
4080: 65 6e 64 65 72 27 20 61 6e 64 20 27 73 65 72 69  ender' and 'seri
4090: 61 6c 27 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e  al' correspondin
40a0: 67 6c 79 2e 20 0d 0a 0d 0a 53 65 65 20 3c 62 3e  gly. ....See <b>
40b0: 45 76 65 6e 74 20 48 61 6e 64 6c 65 72 73 3c 2f  Event Handlers</
40c0: 62 3e 20 62 65 6c 6f 77 20 66 6f 72 20 6d 6f 72  b> below for mor
40d0: 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0d 0a  e information...
40e0: 0d 0a 3c 70 3e 0d 0a 0d 0a 57 68 65 6e 20 65 6d  ..<p>....When em
40f0: 70 6c 6f 79 69 6e 67 20 74 68 69 73 20 73 75 62  ploying this sub
4100: 63 6f 6d 6d 61 6e 64 2c 20 6d 61 6b 65 20 73 75  command, make su
4110: 72 65 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66  re the result of
4120: 20 74 68 65 0d 0a 3c 62 3e 64 62 75 73 3c 2f 62   the..<b>dbus</b
4130: 3e 20 3c 62 3e 6d 65 74 68 6f 64 3c 2f 62 3e 20  > <b>method</b> 
4140: 73 63 72 69 70 74 20 69 73 6e 27 74 20 61 75 74  script isn't aut
4150: 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 74 75 72  omatically retur
4160: 6e 65 64 0d 0a 74 6f 20 74 68 65 20 63 61 6c 6c  ned..to the call
4170: 65 72 20 62 79 20 75 73 69 6e 67 20 74 68 65 20  er by using the 
4180: 3c 62 3e 2d 61 73 79 6e 63 3c 2f 62 3e 20 6f 70  <b>-async</b> op
4190: 74 69 6f 6e 20 6f 66 20 74 68 65 20 3c 62 3e 72  tion of the <b>r
41a0: 65 74 75 72 6e 3c 2f 62 3e 0d 0a 63 6f 6d 6d 61  eturn</b>..comma
41b0: 6e 64 2e 20 53 65 65 20 3c 62 3e 64 62 75 73 3c  nd. See <b>dbus<
41c0: 2f 62 3e 20 3c 62 3e 6d 65 74 68 6f 64 3c 2f 62  /b> <b>method</b
41d0: 3e 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72  > for more infor
41e0: 6d 61 74 69 6f 6e 2e 0d 0a 0d 0a 3c 70 3e 0d 0a  mation.....<p>..
41f0: 3c 64 74 3e 3c 61 20 6e 61 6d 65 3d 22 31 33 22  <dt><a name="13"
4200: 3e 3c 2f 61 3e 3c 62 3e 64 62 75 73 3c 2f 62 3e  ></a><b>dbus</b>
4210: 20 3c 62 3e 73 69 67 6e 61 6c 3c 2f 62 3e 20 3f   <b>signal</b> ?
4220: 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20 3f 3c  <i>busID</i>? ?<
4230: 62 3e 2d 73 69 67 6e 61 74 75 72 65 3c 2f 62 3e  b>-signature</b>
4240: 20 3c 69 3e 73 74 72 69 6e 67 3c 2f 69 3e 3f 20   <i>string</i>? 
4250: 3c 69 3e 6f 62 6a 65 63 74 3c 2f 69 3e 20 3c 69  <i>object</i> <i
4260: 3e 69 6e 74 65 72 66 61 63 65 3c 2f 69 3e 20 3c  >interface</i> <
4270: 69 3e 6e 61 6d 65 3c 2f 69 3e 20 3f 3c 69 3e 61  i>name</i> ?<i>a
4280: 72 67 3c 2f 69 3e 20 3c 69 3e 2e 2e 2e 3c 2f 69  rg</i> <i>...</i
4290: 3e 3f 0d 0a 3c 64 64 3e 53 65 6e 64 20 61 20 73  >?..<dd>Send a s
42a0: 69 67 6e 61 6c 20 6f 6e 74 6f 20 74 68 65 20 64  ignal onto the d
42b0: 62 75 73 20 77 69 74 68 20 74 68 65 20 73 70 65  bus with the spe
42c0: 63 69 66 69 65 64 20 74 79 70 65 20 73 69 67 6e  cified type sign
42d0: 61 74 75 72 65 2e 20 49 66 20 6e 6f 0d 0a 3c 62  ature. If no..<b
42e0: 3e 2d 73 69 67 6e 61 74 75 72 65 3c 2f 62 3e 20  >-signature</b> 
42f0: 6f 70 74 69 6f 6e 20 69 73 20 70 72 6f 76 69 64  option is provid
4300: 65 64 2c 20 61 6c 6c 20 3c 69 3e 61 72 67 3c 2f  ed, all <i>arg</
4310: 69 3e 73 20 77 69 6c 6c 20 62 65 20 73 65 6e 74  i>s will be sent
4320: 20 61 73 0d 0a 73 74 72 69 6e 67 73 2e 20 54 68   as..strings. Th
4330: 65 20 63 6f 6d 6d 61 6e 64 20 72 65 74 75 72 6e  e command return
4340: 73 20 74 68 65 20 73 65 72 69 61 6c 20 6e 75 6d  s the serial num
4350: 62 65 72 20 6f 66 20 74 68 65 20 64 62 75 73 20  ber of the dbus 
4360: 6d 65 73 73 61 67 65 2e 0d 0a 0d 0a 3c 70 3e 0d  message.....<p>.
4370: 0a 3c 64 74 3e 3c 61 20 6e 61 6d 65 3d 22 31 34  .<dt><a name="14
4380: 22 3e 3c 2f 61 3e 3c 62 3e 64 62 75 73 3c 2f 62  "></a><b>dbus</b
4390: 3e 20 3c 62 3e 75 6e 6b 6e 6f 77 6e 3c 2f 62 3e  > <b>unknown</b>
43a0: 20 3f 3c 69 3e 62 75 73 49 44 3c 2f 69 3e 3f 20   ?<i>busID</i>? 
43b0: 3f 3c 62 3e 2d 64 65 74 61 69 6c 73 3c 2f 62 3e  ?<b>-details</b>
43c0: 3f 20 3f 3c 69 3e 70 61 74 68 3c 2f 69 3e 20 3f  ? ?<i>path</i> ?
43d0: 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e 3f 3f 0d  <i>script</i>??.
43e0: 0a 3c 64 64 3e 52 65 67 69 73 74 65 72 20 61 20  .<dd>Register a 
43f0: 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e 20 74 6f  <i>script</i> to
4400: 20 62 65 20 63 61 6c 6c 65 64 20 77 68 65 6e 20   be called when 
4410: 61 6e 20 75 6e 6b 6e 6f 77 6e 20 6d 65 74 68 6f  an unknown metho
4420: 64 20 69 73 20 69 6e 76 6f 6b 65 64 20 61 74 0d  d is invoked at.
4430: 0a 74 68 65 20 73 70 65 63 69 66 69 65 64 20 3c  .the specified <
4440: 69 3e 70 61 74 68 3c 2f 69 3e 2e 0d 0a 53 65 65  i>path</i>...See
4450: 20 3c 62 3e 45 76 65 6e 74 20 48 61 6e 64 6c 65   <b>Event Handle
4460: 72 73 3c 2f 62 3e 20 62 65 6c 6f 77 20 66 6f 72  rs</b> below for
4470: 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f   more informatio
4480: 6e 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 49 66 20  n.....<p>....If 
4490: 74 68 65 20 3c 69 3e 70 61 74 68 3c 2f 69 3e 20  the <i>path</i> 
44a0: 61 72 67 75 6d 65 6e 74 20 69 73 20 61 6e 20 65  argument is an e
44b0: 6d 70 74 79 20 73 74 72 69 6e 67 2c 20 3c 69 3e  mpty string, <i>
44c0: 73 63 72 69 70 74 3c 2f 69 3e 20 77 69 6c 6c 20  script</i> will 
44d0: 62 65 20 65 78 65 63 75 74 65 64 0d 0a 77 68 65  be executed..whe
44e0: 6e 65 76 65 72 20 61 6e 20 75 6e 6b 6e 6f 77 6e  never an unknown
44f0: 20 6d 65 74 68 6f 64 20 63 61 6c 6c 20 6d 65 73   method call mes
4500: 73 61 67 65 20 69 73 20 72 65 63 65 69 76 65 64  sage is received
4510: 20 66 6f 72 20 61 6e 79 20 70 61 74 68 2c 20 75   for any path, u
4520: 6e 6c 65 73 73 20 61 0d 0a 64 65 64 69 63 61 74  nless a..dedicat
4530: 65 64 20 75 6e 6b 6e 6f 77 6e 20 68 61 6e 64 6c  ed unknown handl
4540: 65 72 20 66 6f 72 20 74 68 65 20 65 78 61 63 74  er for the exact
4550: 20 70 61 74 68 20 68 61 73 20 62 65 65 6e 20 64   path has been d
4560: 65 66 69 6e 65 64 2e 0d 0a 0d 0a 49 66 20 3c 69  efined.....If <i
4570: 3e 73 63 72 69 70 74 3c 2f 69 3e 20 69 73 20 61  >script</i> is a
4580: 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 2c 20  n empty string, 
4590: 74 68 65 20 63 75 72 72 65 6e 74 6c 79 20 72 65  the currently re
45a0: 67 69 73 74 65 72 65 64 20 63 6f 6d 6d 61 6e 64  gistered command
45b0: 20 66 6f 72 20 74 68 65 0d 0a 73 70 65 63 69 66   for the..specif
45c0: 69 65 64 20 70 61 74 68 20 77 69 6c 6c 20 62 65  ied path will be
45d0: 20 75 6e 72 65 67 69 73 74 65 72 65 64 2e 0d 0a   unregistered...
45e0: 0d 0a 3c 70 3e 0d 0a 0d 0a 49 66 20 74 68 65 20  ..<p>....If the 
45f0: 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e 20 61 72  <i>script</i> ar
4600: 67 75 6d 65 6e 74 20 69 73 20 6e 6f 74 20 73 70  gument is not sp
4610: 65 63 69 66 69 65 64 2c 20 74 68 65 20 63 75 72  ecified, the cur
4620: 72 65 6e 74 6c 79 20 72 65 67 69 73 74 65 72 65  rently registere
4630: 64 0d 0a 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 74  d..command for t
4640: 68 65 20 73 70 65 63 69 66 69 65 64 20 70 61 74  he specified pat
4650: 68 2c 20 69 66 20 61 6e 79 2c 20 69 73 20 72 65  h, if any, is re
4660: 74 75 72 6e 65 64 2e 20 0d 0a 0d 0a 49 66 20 6e  turned. ....If n
4670: 6f 20 3c 69 3e 70 61 74 68 3c 2f 69 3e 20 61 72  o <i>path</i> ar
4680: 67 75 6d 65 6e 74 20 69 73 20 73 70 65 63 69 66  gument is specif
4690: 69 65 64 2c 20 61 20 6c 69 73 74 20 6f 66 20 61  ied, a list of a
46a0: 6c 6c 20 70 61 74 68 73 20 61 6e 64 20 74 68 65  ll paths and the
46b0: 69 72 0d 0a 72 65 67 69 73 74 65 72 65 64 20 75  ir..registered u
46c0: 6e 6b 6e 6f 77 6e 20 68 61 6e 64 6c 65 72 73 20  nknown handlers 
46d0: 69 73 20 72 65 74 75 72 6e 65 64 2e 0d 0a 0d 0a  is returned.....
46e0: 3c 70 3e 0d 0a 0d 0a 41 6e 20 75 6e 6b 6e 6f 77  <p>....An unknow
46f0: 6e 20 68 61 6e 64 6c 65 72 20 77 69 6c 6c 20 75  n handler will u
4700: 73 75 61 6c 6c 79 20 72 65 74 75 72 6e 20 61 6e  sually return an
4710: 20 65 72 72 6f 72 2c 20 62 75 74 20 69 74 20 69   error, but it i
4720: 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20  s also possible 
4730: 74 6f 0d 0a 72 65 74 75 72 6e 20 61 20 6e 6f 6e  to..return a non
4740: 2d 65 72 72 6f 72 20 72 65 73 70 6f 6e 73 65 2e  -error response.
4750: 20 54 68 65 20 3c 62 3e 64 62 75 73 3c 2f 62 3e   The <b>dbus</b>
4760: 20 3c 62 3e 65 72 72 6f 72 3c 2f 62 3e 20 61 6e   <b>error</b> an
4770: 64 0d 0a 3c 62 3e 64 62 75 73 3c 2f 62 3e 20 3c  d..<b>dbus</b> <
4780: 62 3e 72 65 74 75 72 6e 3c 2f 62 3e 20 73 75 62  b>return</b> sub
4790: 63 6f 6d 6d 61 6e 64 73 20 73 68 6f 75 6c 64 20  commands should 
47a0: 62 65 20 75 73 65 64 20 66 6f 72 20 74 68 69 73  be used for this
47b0: 0d 0a 70 75 72 70 6f 73 65 2e 0d 0a 0d 0a 43 6f  ..purpose.....Co
47c0: 6e 74 72 61 72 79 20 74 6f 20 74 68 65 20 3c 62  ntrary to the <b
47d0: 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 6d 65 74  >dbus</b> <b>met
47e0: 68 6f 64 3c 2f 62 3e 20 73 75 62 63 6f 6d 6d 61  hod</b> subcomma
47f0: 6e 64 2c 20 74 68 65 20 72 65 74 75 72 6e 0d 0a  nd, the return..
4800: 76 61 6c 75 65 20 6f 66 20 74 68 65 20 68 61 6e  value of the han
4810: 64 6c 65 72 20 77 69 6c 6c 20 6e 6f 74 20 61 75  dler will not au
4820: 74 6f 6d 61 74 69 63 61 6c 6c 79 20 62 65 20 72  tomatically be r
4830: 65 74 75 72 6e 65 64 20 74 6f 20 74 68 65 20 63  eturned to the c
4840: 61 6c 6c 65 72 2e 0d 0a 0d 0a 41 6e 79 20 75 6e  aller.....Any un
4850: 63 61 75 67 68 74 20 65 72 72 6f 72 20 69 6e 20  caught error in 
4860: 74 68 65 20 65 76 61 6c 75 61 74 69 6f 6e 20 6f  the evaluation o
4870: 66 20 3c 69 3e 73 63 72 69 70 74 3c 2f 69 3e 20  f <i>script</i> 
4880: 77 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64  will be reported
4890: 20 62 61 63 6b 0d 0a 74 6f 20 74 68 65 20 63 61   back..to the ca
48a0: 6c 6c 65 72 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a  ller.....<p>....
48b0: 54 68 65 20 3c 62 3e 2d 64 65 74 61 69 6c 73 3c  The <b>-details<
48c0: 2f 62 3e 20 6f 70 74 69 6f 6e 20 63 61 75 73 65  /b> option cause
48d0: 73 20 76 61 72 69 61 6e 74 20 61 72 67 75 6d 65  s variant argume
48e0: 6e 74 73 20 74 6f 20 62 65 20 72 65 70 72 65 73  nts to be repres
48f0: 65 6e 74 65 64 20 61 73 20 61 0d 0a 6c 69 73 74  ented as a..list
4900: 20 77 69 74 68 20 74 77 6f 20 65 6c 65 6d 65 6e   with two elemen
4910: 74 73 3a 20 54 68 65 20 66 69 72 73 74 20 6c 69  ts: The first li
4920: 73 74 20 65 6c 65 6d 65 6e 74 20 63 6f 6e 74 61  st element conta
4930: 69 6e 73 20 74 68 65 20 73 69 67 6e 61 74 75 72  ins the signatur
4940: 65 20 6f 66 20 74 68 65 0d 0a 61 72 67 75 6d 65  e of the..argume
4950: 6e 74 20 61 6e 64 20 74 68 65 20 73 65 63 6f 6e  nt and the secon
4960: 64 20 6c 69 73 74 20 65 6c 65 6d 65 6e 74 20 69  d list element i
4970: 73 20 74 68 65 20 76 61 6c 75 65 2e 0d 0a 0d 0a  s the value.....
4980: 3c 70 3e 0d 0a 0d 0a 49 74 20 77 69 6c 6c 20 67  <p>....It will g
4990: 65 6e 65 72 61 6c 6c 79 20 6e 6f 74 20 62 65 20  enerally not be 
49a0: 6e 65 63 65 73 73 61 72 79 20 74 6f 20 73 65 74  necessary to set
49b0: 20 75 70 20 75 6e 6b 6e 6f 77 6e 20 68 61 6e 64   up unknown hand
49c0: 6c 65 72 73 2e 20 49 66 20 6e 6f 20 75 6e 6b 6e  lers. If no unkn
49d0: 6f 77 6e 0d 0a 68 61 6e 64 6c 65 72 20 69 73 20  own..handler is 
49e0: 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20 70  specified, the p
49f0: 61 63 6b 61 67 65 20 72 65 74 75 72 6e 73 20 61  ackage returns a
4a00: 6e 0d 0a 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e  n..<b class="con
4a10: 73 74 22 3e 6f 72 67 2e 66 72 65 65 64 65 73 6b  st">org.freedesk
4a20: 74 6f 70 2e 64 62 75 73 2e 65 72 72 6f 72 2e 75  top.dbus.error.u
4a30: 6e 6b 6e 6f 77 6e 6d 65 74 68 6f 64 3c 2f 62 3e  nknownmethod</b>
4a40: 20 65 72 72 6f 72 20 62 61 63 6b 20 74 6f 20 74   error back to t
4a50: 68 65 20 63 61 6c 6c 65 72 20 6f 66 0d 0a 61 6e  he caller of..an
4a60: 20 75 6e 6b 6e 6f 77 6e 20 6d 65 74 68 6f 64 2e   unknown method.
4a70: 0d 0a 0d 0a 3c 70 3e 0d 0a 3c 64 74 3e 3c 61 20  ....<p>..<dt><a 
4a80: 6e 61 6d 65 3d 22 31 35 22 3e 3c 2f 61 3e 3c 62  name="15"></a><b
4a90: 3e 64 62 75 73 3c 2f 62 3e 20 3c 62 3e 76 61 6c  >dbus</b> <b>val
4aa0: 69 64 61 74 65 3c 2f 62 3e 20 3c 69 3e 63 6c 61  idate</b> <i>cla
4ab0: 73 73 3c 2f 69 3e 20 3c 69 3e 73 74 72 69 6e 67  ss</i> <i>string
4ac0: 3c 2f 69 3e 0d 0a 3c 64 64 3e 56 61 6c 69 64 61  </i>..<dd>Valida
4ad0: 74 65 73 20 3c 69 3e 73 74 72 69 6e 67 3c 2f 69  tes <i>string</i
4ae0: 3e 20 61 67 61 69 6e 73 74 20 74 68 65 20 72 75  > against the ru
4af0: 6c 65 73 20 6f 66 20 74 68 65 20 44 2d 42 75 73  les of the D-Bus
4b00: 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 66   specification f
4b10: 6f 72 0d 0a 74 68 65 20 74 79 70 65 20 6f 66 20  or..the type of 
4b20: 76 61 6c 75 65 20 73 70 65 63 69 66 69 65 64 20  value specified 
4b30: 62 79 20 3c 69 3e 63 6c 61 73 73 3c 2f 69 3e 2e  by <i>class</i>.
4b40: 20 52 65 74 75 72 6e 73 20 31 20 69 66 20 76 61   Returns 1 if va
4b50: 6c 69 64 61 74 69 6f 6e 20 70 61 73 73 65 73 2c  lidation passes,
4b60: 0d 0a 6f 74 68 65 72 77 69 73 65 20 72 65 74 75  ..otherwise retu
4b70: 72 6e 73 20 30 2e 20 54 68 65 20 66 6f 6c 6c 6f  rns 0. The follo
4b80: 77 69 6e 67 20 63 6c 61 73 73 65 73 20 61 72 65  wing classes are
4b90: 20 72 65 63 6f 67 6e 69 7a 65 64 20 28 74 68 65   recognized (the
4ba0: 20 63 6c 61 73 73 20 6e 61 6d 65 0d 0a 63 61 6e   class name..can
4bb0: 20 62 65 20 61 62 62 72 65 76 69 61 74 65 64 29   be abbreviated)
4bc0: 3a 0d 0a 3c 64 6c 3e 0d 0a 3c 64 74 3e 3c 62 20  :..<dl>..<dt><b 
4bd0: 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 69 6e  class="const">in
4be0: 74 65 72 66 61 63 65 3c 2f 62 3e 0d 0a 3c 64 64  terface</b>..<dd
4bf0: 3e 54 77 6f 20 6f 72 20 6d 6f 72 65 20 64 6f 74  >Two or more dot
4c00: 2d 73 65 70 61 72 61 74 65 64 20 6e 6f 6e 2d 65  -separated non-e
4c10: 6d 70 74 79 20 65 6c 65 6d 65 6e 74 73 2e 0d 0a  mpty elements...
4c20: 45 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f 6e 6c  Each element onl
4c30: 79 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 41  y contains the A
4c40: 53 43 49 49 20 63 68 61 72 61 63 74 65 72 73 20  SCII characters 
4c50: 0d 0a 26 71 75 6f 74 3b 5b 41 2d 5a 5d 5b 61 2d  ..&quot;[A-Z][a-
4c60: 7a 5d 5b 30 2d 39 5d 5f 26 71 75 6f 74 3b 20 61  z][0-9]_&quot; a
4c70: 6e 64 20 64 6f 65 73 20 6e 6f 74 20 62 65 67 69  nd does not begi
4c80: 6e 20 77 69 74 68 20 61 20 64 69 67 69 74 2e 0d  n with a digit..
4c90: 0a 3c 64 74 3e 3c 62 20 63 6c 61 73 73 3d 22 63  .<dt><b class="c
4ca0: 6f 6e 73 74 22 3e 6d 65 6d 62 65 72 3c 2f 62 3e  onst">member</b>
4cb0: 0d 0a 3c 64 64 3e 41 20 73 74 72 69 6e 67 20 74  ..<dd>A string t
4cc0: 68 61 74 20 6f 6e 6c 79 20 63 6f 6e 74 61 69 6e  hat only contain
4cd0: 73 20 74 68 65 20 41 53 43 49 49 20 63 68 61 72  s the ASCII char
4ce0: 61 63 74 65 72 73 0d 0a 26 71 75 6f 74 3b 5b 41  acters..&quot;[A
4cf0: 2d 5a 5d 5b 61 2d 7a 5d 5b 30 2d 39 5d 5f 26 71  -Z][a-z][0-9]_&q
4d00: 75 6f 74 3b 20 61 6e 64 20 64 6f 65 73 20 6e 6f  uot; and does no
4d10: 74 20 62 65 67 69 6e 20 77 69 74 68 20 61 20 64  t begin with a d
4d20: 69 67 69 74 2e 0d 0a 3c 64 74 3e 3c 62 20 63 6c  igit...<dt><b cl
4d30: 61 73 73 3d 22 63 6f 6e 73 74 22 3e 6e 61 6d 65  ass="const">name
4d40: 3c 2f 62 3e 0d 0a 3c 64 64 3e 45 69 74 68 65 72  </b>..<dd>Either
4d50: 20 61 20 75 6e 69 71 75 65 20 63 6f 6e 6e 65 63   a unique connec
4d60: 74 69 6f 6e 20 6e 61 6d 65 2c 20 6f 72 20 61 20  tion name, or a 
4d70: 77 65 6c 6c 2d 6b 6e 6f 77 6e 0d 0a 63 6f 6e 6e  well-known..conn
4d80: 65 63 74 69 6f 6e 20 6e 61 6d 65 2e 20 55 6e 69  ection name. Uni
4d90: 71 75 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 6e  que connection n
4da0: 61 6d 65 73 20 62 65 67 69 6e 20 77 69 74 68 20  ames begin with 
4db0: 61 20 63 6f 6c 6f 6e 20 61 6e 64 20 63 6f 6e 73  a colon and cons
4dc0: 69 73 74 20 6f 66 0d 0a 61 74 20 6c 65 61 73 74  ist of..at least
4dd0: 20 74 77 6f 20 64 6f 74 2d 73 65 70 61 72 61 74   two dot-separat
4de0: 65 64 20 6e 6f 6e 2d 65 6d 70 74 79 20 65 6c 65  ed non-empty ele
4df0: 6d 65 6e 74 73 2e 20 45 61 63 68 20 65 6c 65 6d  ments. Each elem
4e00: 65 6e 74 20 6f 6e 6c 79 20 63 6f 6e 74 61 69 6e  ent only contain
4e10: 73 0d 0a 74 68 65 20 41 53 43 49 49 20 63 68 61  s..the ASCII cha
4e20: 72 61 63 74 65 72 73 20 26 71 75 6f 74 3b 5b 41  racters &quot;[A
4e30: 2d 5a 5d 5b 61 2d 7a 5d 5b 30 2d 39 5d 5f 26 71  -Z][a-z][0-9]_&q
4e40: 75 6f 74 3b 2e 0d 0a 57 65 6c 6c 2d 6b 6e 6f 77  uot;...Well-know
4e50: 6e 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 6e 61 6d  n connection nam
4e60: 65 73 20 63 6f 6e 73 69 73 74 20 6f 66 20 61 74  es consist of at
4e70: 20 6c 65 61 73 74 20 74 77 6f 20 64 6f 74 2d 73   least two dot-s
4e80: 65 70 61 72 61 74 65 64 0d 0a 6e 6f 6e 2d 65 6d  eparated..non-em
4e90: 70 74 79 20 65 6c 65 6d 65 6e 74 73 2e 20 45 61  pty elements. Ea
4ea0: 63 68 20 65 6c 65 6d 65 6e 74 20 6f 6e 6c 79 20  ch element only 
4eb0: 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 41 53 43  contains the ASC
4ec0: 49 49 20 63 68 61 72 61 63 74 65 72 73 0d 0a 26  II characters..&
4ed0: 71 75 6f 74 3b 5b 41 2d 5a 5d 5b 61 2d 7a 5d 5b  quot;[A-Z][a-z][
4ee0: 30 2d 39 5d 5f 26 71 75 6f 74 3b 20 61 6e 64 20  0-9]_&quot; and 
4ef0: 64 6f 65 73 20 6e 6f 74 20 62 65 67 69 6e 20 77  does not begin w
4f00: 69 74 68 20 61 20 64 69 67 69 74 2e 0d 0a 3c 64  ith a digit...<d
4f10: 74 3e 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73  t><b class="cons
4f20: 74 22 3e 70 61 74 68 3c 2f 62 3e 0d 0a 3c 64 64  t">path</b>..<dd
4f30: 3e 41 20 73 6c 61 73 68 20 66 6f 6c 6c 6f 77 65  >A slash followe
4f40: 64 20 62 79 20 7a 65 72 6f 20 6f 72 20 6d 6f 72  d by zero or mor
4f50: 65 20 73 6c 61 73 68 2d 73 65 70 61 72 61 74 65  e slash-separate
4f60: 64 20 0d 0a 6e 6f 6e 2d 65 6d 70 74 79 20 65 6c  d ..non-empty el
4f70: 65 6d 65 6e 74 73 2e 20 45 61 63 68 20 65 6c 65  ements. Each ele
4f80: 6d 65 6e 74 20 6f 6e 6c 79 20 63 6f 6e 74 61 69  ment only contai
4f90: 6e 73 20 74 68 65 20 41 53 43 49 49 20 63 68 61  ns the ASCII cha
4fa0: 72 61 63 74 65 72 73 0d 0a 26 71 75 6f 74 3b 5b  racters..&quot;[
4fb0: 41 2d 5a 5d 5b 61 2d 7a 5d 5b 30 2d 39 5d 5f 26  A-Z][a-z][0-9]_&
4fc0: 71 75 6f 74 3b 2e 0d 0a 3c 64 74 3e 3c 62 20 63  quot;...<dt><b c
4fd0: 6c 61 73 73 3d 22 63 6f 6e 73 74 22 3e 73 69 67  lass="const">sig
4fe0: 6e 61 74 75 72 65 3c 2f 62 3e 0d 0a 3c 64 64 3e  nature</b>..<dd>
4ff0: 41 20 76 61 6c 69 64 20 44 2d 42 75 73 20 6d 65  A valid D-Bus me
5000: 73 73 61 67 65 20 74 79 70 65 20 73 69 67 6e 61  ssage type signa
5010: 74 75 72 65 2e 20 53 65 65 0d 0a 3c 62 3e 53 69  ture. See..<b>Si
5020: 67 6e 61 74 75 72 65 73 3c 2f 62 3e 20 62 65 6c  gnatures</b> bel
5030: 6f 77 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f  ow for more info
5040: 72 6d 61 74 69 6f 6e 20 6f 6e 20 77 68 61 74 20  rmation on what 
5050: 63 6f 6e 73 74 69 74 75 74 65 73 20 61 0d 0a 76  constitutes a..v
5060: 61 6c 69 64 20 73 69 67 6e 61 74 75 72 65 2e 0d  alid signature..
5070: 0a 3c 2f 64 6c 3e 0d 0a 3c 70 3e 0d 0a 3c 2f 64  .</dl>..<p>..</d
5080: 6c 3e 0d 0a 0d 0a 3c 68 32 3e 45 76 65 6e 74 20  l>....<h2>Event 
5090: 48 61 6e 64 6c 65 72 73 3c 2f 68 32 3e 0d 0a 0d  Handlers</h2>...
50a0: 0a 54 68 65 20 3c 62 3e 63 61 6c 6c 3c 2f 62 3e  .The <b>call</b>
50b0: 2c 20 3c 62 3e 6c 69 73 74 65 6e 3c 2f 62 3e 2c  , <b>listen</b>,
50c0: 20 3c 62 3e 6d 65 74 68 6f 64 3c 2f 62 3e 2c 20   <b>method</b>, 
50d0: 3c 62 3e 6d 6f 6e 69 74 6f 72 3c 2f 62 3e 2c 20  <b>monitor</b>, 
50e0: 61 6e 64 0d 0a 3c 62 3e 75 6e 6b 6e 6f 77 6e 3c  and..<b>unknown<
50f0: 2f 62 3e 20 6d 65 74 68 6f 64 73 20 70 72 6f 76  /b> methods prov
5100: 69 64 65 20 74 68 65 20 61 62 69 6c 69 74 79 20  ide the ability 
5110: 74 6f 20 64 65 66 69 6e 65 20 65 76 65 6e 74 20  to define event 
5120: 68 61 6e 64 6c 65 72 73 2e 20 54 68 65 0d 0a 73  handlers. The..s
5130: 70 65 63 69 66 69 65 64 20 73 63 72 69 70 74 20  pecified script 
5140: 77 69 6c 6c 20 62 65 20 75 73 65 64 20 61 73 20  will be used as 
5150: 74 68 65 20 70 72 65 66 69 78 20 66 6f 72 20 61  the prefix for a
5160: 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 20 77 69   command that wi
5170: 6c 6c 20 62 65 0d 0a 65 76 61 6c 75 61 74 65 64  ll be..evaluated
5180: 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 63 6f   whenever the co
5190: 72 72 65 73 70 6f 6e 64 69 6e 67 20 44 42 75 73  rresponding DBus
51a0: 20 65 76 65 6e 74 20 6f 63 63 75 72 73 2e 20 57   event occurs. W
51b0: 68 65 6e 20 74 68 65 20 44 42 75 73 20 65 76 65  hen the DBus eve
51c0: 6e 74 0d 0a 6f 63 63 75 72 73 2c 20 61 20 54 63  nt..occurs, a Tc
51d0: 6c 20 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c 20 62  l command will b
51e0: 65 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 63  e generated by c
51f0: 6f 6e 63 61 74 65 6e 61 74 69 6e 67 20 74 68 65  oncatenating the
5200: 20 73 63 72 69 70 74 20 77 69 74 68 20 6f 6e 65   script with one
5210: 0d 0a 6f 72 20 6d 6f 72 65 20 61 72 67 75 6d 65  ..or more argume
5220: 6e 74 73 2e 20 54 68 65 20 66 69 72 73 74 20 61  nts. The first a
5230: 72 67 75 6d 65 6e 74 20 69 73 20 61 20 64 69 63  rgument is a dic
5240: 74 20 63 6f 6e 74 61 69 6e 69 6e 67 20 69 6e 66  t containing inf
5250: 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 0d 0a  ormation about..
5260: 74 68 65 20 65 76 65 6e 74 2e 20 49 66 20 74 68  the event. If th
5270: 65 20 44 42 75 73 20 65 76 65 6e 74 20 63 6f 6e  e DBus event con
5280: 74 61 69 6e 65 64 20 61 6e 79 20 61 72 67 75 6d  tained any argum
5290: 65 6e 74 73 20 74 68 65 79 20 77 69 6c 6c 20 62  ents they will b
52a0: 65 20 61 70 70 65 6e 64 65 64 20 74 6f 0d 0a 74  e appended to..t
52b0: 68 65 20 63 6f 6d 6d 61 6e 64 20 61 73 20 73 65  he command as se
52c0: 70 65 72 61 74 65 20 61 72 67 75 6d 65 6e 74 73  perate arguments
52d0: 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 54 68 65 20 64 69  .....<p>..The di
52e0: 63 74 20 77 69 74 68 20 74 68 65 20 65 76 65 6e  ct with the even
52f0: 74 20 64 65 74 61 69 6c 73 20 63 6f 6e 74 61 69  t details contai
5300: 6e 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  ns the following
5310: 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 3a 0d 0a 3c   information:..<
5320: 64 6c 3e 0d 0a 3c 64 74 3e 6d 65 6d 62 65 72 0d  dl>..<dt>member.
5330: 0a 3c 64 64 3e 54 68 65 20 69 6e 74 65 72 66 61  .<dd>The interfa
5340: 63 65 20 6d 65 6d 62 65 72 20 62 65 69 6e 67 20  ce member being 
5350: 69 6e 76 6f 6b 65 64 20 28 66 6f 72 20 6d 65 74  invoked (for met
5360: 68 6f 64 73 29 20 6f 72 20 65 6d 69 74 74 65 64  hods) or emitted
5370: 0d 0a 28 66 6f 72 20 73 69 67 6e 61 6c 73 29 2e  ..(for signals).
5380: 0d 0a 3c 64 74 3e 69 6e 74 65 72 66 61 63 65 0d  ..<dt>interface.
5390: 0a 3c 64 64 3e 54 68 65 20 69 6e 74 65 72 66 61  .<dd>The interfa
53a0: 63 65 20 74 68 69 73 20 6d 65 73 73 61 67 65 20  ce this message 
53b0: 69 73 20 62 65 69 6e 67 20 73 65 6e 74 20 74 6f  is being sent to
53c0: 20 28 66 6f 72 20 6d 65 74 68 6f 64 73 29 0d 0a   (for methods)..
53d0: 6f 72 20 62 65 69 6e 67 20 65 6d 69 74 74 65 64  or being emitted
53e0: 20 66 72 6f 6d 20 28 66 6f 72 20 73 69 67 6e 61   from (for signa
53f0: 6c 73 29 2e 20 54 68 65 20 69 6e 74 65 72 66 61  ls). The interfa
5400: 63 65 20 6e 61 6d 65 20 69 73 20 66 75 6c 6c 79  ce name is fully
5410: 2d 71 75 61 6c 69 66 69 65 64 2e 0d 0a 3c 64 74  -qualified...<dt
5420: 3e 70 61 74 68 0d 0a 3c 64 64 3e 54 68 65 20 6f  >path..<dd>The o
5430: 62 6a 65 63 74 20 70 61 74 68 20 74 68 69 73 20  bject path this 
5440: 6d 65 73 73 61 67 65 20 69 73 20 62 65 69 6e 67  message is being
5450: 20 73 65 6e 74 20 74 6f 20 28 66 6f 72 20 6d 65   sent to (for me
5460: 74 68 6f 64 73 29 20 6f 72 0d 0a 62 65 69 6e 67  thods) or..being
5470: 20 65 6d 69 74 74 65 64 20 66 72 6f 6d 20 28 66   emitted from (f
5480: 6f 72 20 73 69 67 6e 61 6c 73 29 2e 0d 0a 3c 64  or signals)...<d
5490: 74 3e 73 65 6e 64 65 72 0d 0a 3c 64 64 3e 54 68  t>sender..<dd>Th
54a0: 65 20 75 6e 69 71 75 65 20 6e 61 6d 65 20 6f 66  e unique name of
54b0: 20 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20   the connection 
54c0: 77 68 69 63 68 20 6f 72 69 67 69 6e 61 74 65 64  which originated
54d0: 20 74 68 69 73 20 6d 65 73 73 61 67 65 2c 0d 0a   this message,..
54e0: 6f 72 20 74 68 65 20 65 6d 70 74 79 20 73 74 72  or the empty str
54f0: 69 6e 67 20 69 66 20 75 6e 6b 6e 6f 77 6e 20 6f  ing if unknown o
5500: 72 20 69 6e 61 70 70 6c 69 63 61 62 6c 65 2e 20  r inapplicable. 
5510: 54 68 65 20 73 65 6e 64 65 72 20 69 73 20 66 69  The sender is fi
5520: 6c 6c 65 64 20 69 6e 20 62 79 0d 0a 74 68 65 20  lled in by..the 
5530: 6d 65 73 73 61 67 65 20 62 75 73 2e 20 4e 6f 74  message bus. Not
5540: 65 2c 20 74 68 65 20 72 65 74 75 72 6e 65 64 20  e, the returned 
5550: 73 65 6e 64 65 72 20 69 73 20 61 6c 77 61 79 73  sender is always
5560: 20 74 68 65 20 75 6e 69 71 75 65 20 62 75 73 20   the unique bus 
5570: 6e 61 6d 65 2e 0d 0a 43 6f 6e 6e 65 63 74 69 6f  name...Connectio
5580: 6e 73 20 6d 61 79 20 6f 77 6e 20 6d 75 6c 74 69  ns may own multi
5590: 70 6c 65 20 6f 74 68 65 72 20 62 75 73 20 6e 61  ple other bus na
55a0: 6d 65 73 2c 20 62 75 74 20 74 68 6f 73 65 20 61  mes, but those a
55b0: 72 65 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20  re not found in 
55c0: 74 68 65 0d 0a 73 65 6e 64 65 72 20 66 69 65 6c  the..sender fiel
55d0: 64 2e 0d 0a 3c 64 74 3e 64 65 73 74 69 6e 61 74  d...<dt>destinat
55e0: 69 6f 6e 0d 0a 3c 64 64 3e 54 68 65 20 64 65 73  ion..<dd>The des
55f0: 74 69 6e 61 74 69 6f 6e 20 6f 66 20 61 20 6d 65  tination of a me
5600: 73 73 61 67 65 20 6f 72 20 74 68 65 20 65 6d 70  ssage or the emp
5610: 74 79 20 73 74 72 69 6e 67 20 69 66 20 74 68 65  ty string if the
5620: 72 65 0d 0a 69 73 20 6e 6f 6e 65 20 73 65 74 2e  re..is none set.
5630: 0d 0a 3c 64 74 3e 6d 65 73 73 61 67 65 74 79 70  ..<dt>messagetyp
5640: 65 0d 0a 3c 64 64 3e 54 68 65 20 74 79 70 65 20  e..<dd>The type 
5650: 6f 66 20 61 20 6d 65 73 73 61 67 65 2e 20 50 6f  of a message. Po
5660: 73 73 69 62 6c 65 20 76 61 6c 75 65 73 20 61 72  ssible values ar
5670: 65 0d 0a 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e  e..<b class="con
5680: 73 74 22 3e 6d 65 74 68 6f 64 5f 63 61 6c 6c 3c  st">method_call<
5690: 2f 62 3e 2c 20 3c 62 20 63 6c 61 73 73 3d 22 63  /b>, <b class="c
56a0: 6f 6e 73 74 22 3e 6d 65 74 68 6f 64 5f 72 65 74  onst">method_ret
56b0: 75 72 6e 3c 2f 62 3e 2c 20 3c 62 20 63 6c 61 73  urn</b>, <b clas
56c0: 73 3d 22 63 6f 6e 73 74 22 3e 65 72 72 6f 72 3c  s="const">error<
56d0: 2f 62 3e 2c 20 61 6e 64 20 3c 62 20 63 6c 61 73  /b>, and <b clas
56e0: 73 3d 22 63 6f 6e 73 74 22 3e 73 69 67 6e 61 6c  s="const">signal
56f0: 3c 2f 62 3e 2e 0d 0a 3c 64 74 3e 73 69 67 6e 61  </b>...<dt>signa
5700: 74 75 72 65 0d 0a 3c 64 64 3e 54 68 65 20 74 79  ture..<dd>The ty
5710: 70 65 20 73 69 67 6e 61 74 75 72 65 20 6f 66 20  pe signature of 
5720: 74 68 65 20 6d 65 73 73 61 67 65 2c 20 69 2e 65  the message, i.e
5730: 2e 20 74 68 65 20 74 79 70 65 20 73 70 65 63 69  . the type speci
5740: 66 69 63 61 74 69 6f 6e 0d 0a 6f 66 20 74 68 65  fication..of the
5750: 20 61 72 67 75 6d 65 6e 74 73 20 69 6e 20 74 68   arguments in th
5760: 65 20 6d 65 73 73 61 67 65 20 70 61 79 6c 6f 61  e message payloa
5770: 64 2e 20 53 65 65 20 3c 62 3e 53 69 67 6e 61 74  d. See <b>Signat
5780: 75 72 65 73 3c 2f 62 3e 20 62 65 6c 6f 77 20 66  ures</b> below f
5790: 6f 72 0d 0a 6d 6f 72 65 20 69 6e 66 6f 72 6d 61  or..more informa
57a0: 74 69 6f 6e 2e 0d 0a 3c 64 74 3e 73 65 72 69 61  tion...<dt>seria
57b0: 6c 0d 0a 3c 64 64 3e 54 68 65 20 73 65 72 69 61  l..<dd>The seria
57c0: 6c 20 6f 66 20 61 20 6d 65 73 73 61 67 65 20 6f  l of a message o
57d0: 72 20 30 20 69 66 20 6e 6f 6e 65 20 68 61 73 20  r 0 if none has 
57e0: 62 65 65 6e 20 73 70 65 63 69 66 69 65 64 2e 20  been specified. 
57f0: 54 68 65 0d 0a 6d 65 73 73 61 67 65 27 73 20 73  The..message's s
5800: 65 72 69 61 6c 20 6e 75 6d 62 65 72 20 69 73 20  erial number is 
5810: 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 20  provided by the 
5820: 61 70 70 6c 69 63 61 74 69 6f 6e 20 73 65 6e 64  application send
5830: 69 6e 67 20 74 68 65 20 6d 65 73 73 61 67 65 0d  ing the message.
5840: 0a 61 6e 64 20 69 73 20 75 73 65 64 20 74 6f 20  .and is used to 
5850: 69 64 65 6e 74 69 66 79 20 72 65 70 6c 69 65 73  identify replies
5860: 20 74 6f 20 74 68 69 73 20 6d 65 73 73 61 67 65   to this message
5870: 2e 20 41 6c 6c 20 6d 65 73 73 61 67 65 73 20 72  . All messages r
5880: 65 63 65 69 76 65 64 20 6f 6e 20 61 0d 0a 63 6f  eceived on a..co
5890: 6e 6e 65 63 74 69 6f 6e 20 77 69 6c 6c 20 68 61  nnection will ha
58a0: 76 65 20 61 20 73 65 72 69 61 6c 20 70 72 6f 76  ve a serial prov
58b0: 69 64 65 64 20 62 79 20 74 68 65 20 72 65 6d 6f  ided by the remo
58c0: 74 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 20  te application. 
58d0: 57 68 65 6e 0d 0a 73 65 6e 64 69 6e 67 20 6d 65  When..sending me
58e0: 73 73 61 67 65 73 20 61 20 73 65 72 69 61 6c 20  ssages a serial 
58f0: 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c  will automatical
5900: 6c 79 20 62 65 20 61 73 73 69 67 6e 65 64 20 62  ly be assigned b
5910: 79 20 74 68 65 20 64 62 75 73 0d 0a 6c 69 62 72  y the dbus..libr
5920: 61 72 79 2e 0d 0a 3c 64 74 3e 72 65 70 6c 79 73  ary...<dt>replys
5930: 65 72 69 61 6c 0d 0a 3c 64 64 3e 54 68 65 20 73  erial..<dd>The s
5940: 65 72 69 61 6c 20 74 68 61 74 20 74 68 65 20 6d  erial that the m
5950: 65 73 73 61 67 65 20 69 73 20 61 20 72 65 70 6c  essage is a repl
5960: 79 20 74 6f 20 6f 72 20 30 20 69 66 20 6e 6f 6e  y to or 0 if non
5970: 65 2e 0d 0a 3c 64 74 3e 6e 6f 72 65 70 6c 79 0d  e...<dt>noreply.
5980: 0a 3c 64 64 3e 46 6c 61 67 20 69 6e 64 69 63 61  .<dd>Flag indica
5990: 74 69 6e 67 20 69 66 20 74 68 65 20 73 65 6e 64  ting if the send
59a0: 65 72 20 65 78 70 65 63 74 73 20 61 20 72 65 70  er expects a rep
59b0: 6c 79 2e 20 53 65 74 20 74 6f 20 31 20 69 66 20  ly. Set to 1 if 
59c0: 61 0d 0a 72 65 70 6c 79 20 69 73 20 3c 65 6d 3e  a..reply is <em>
59d0: 6e 6f 74 3c 2f 65 6d 3e 20 72 65 71 75 69 72 65  not</em> require
59e0: 64 2e 0d 0a 3c 64 74 3e 61 75 74 6f 73 74 61 72  d...<dt>autostar
59f0: 74 0d 0a 3c 64 64 3e 46 6c 61 67 20 69 6e 64 69  t..<dd>Flag indi
5a00: 63 61 74 69 6e 67 20 69 66 20 74 68 65 20 6d 65  cating if the me
5a10: 73 73 61 67 65 20 77 69 6c 6c 20 63 61 75 73 65  ssage will cause
5a20: 20 61 6e 20 6f 77 6e 65 72 20 66 6f 72 0d 0a 64   an owner for..d
5a30: 65 73 74 69 6e 61 74 69 6f 6e 20 6e 61 6d 65 20  estination name 
5a40: 74 6f 20 62 65 20 61 75 74 6f 2d 73 74 61 72 74  to be auto-start
5a50: 65 64 2e 0d 0a 3c 64 74 3e 65 72 72 6f 72 6e 61  ed...<dt>errorna
5a60: 6d 65 0d 0a 3c 64 64 3e 54 68 65 20 65 72 72 6f  me..<dd>The erro
5a70: 72 20 6e 61 6d 65 20 6f 66 20 61 20 72 65 63 65  r name of a rece
5a80: 69 76 65 64 20 65 72 72 6f 72 20 6d 65 73 73 61  ived error messa
5a90: 67 65 2e 20 41 6e 20 65 6d 70 74 79 20 73 74 72  ge. An empty str
5aa0: 69 6e 67 0d 0a 66 6f 72 20 61 6c 6c 20 6f 74 68  ing..for all oth
5ab0: 65 72 20 6d 65 73 73 61 67 65 20 74 79 70 65 73  er message types
5ac0: 2e 0d 0a 3c 2f 64 6c 3e 0d 0a 0d 0a 54 68 65 20  ...</dl>....The 
5ad0: 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73 20 61  event handlers a
5ae0: 72 65 20 65 78 63 75 74 65 64 20 61 74 20 67 6c  re excuted at gl
5af0: 6f 62 61 6c 20 6c 65 76 65 6c 20 28 6f 75 74 73  obal level (outs
5b00: 69 64 65 20 74 68 65 20 63 6f 6e 74 65 78 74 20  ide the context 
5b10: 6f 66 20 61 6e 79 0d 0a 54 63 6c 20 70 72 6f 63  of any..Tcl proc
5b20: 65 64 75 72 65 29 20 69 6e 20 74 68 65 20 69 6e  edure) in the in
5b30: 74 65 72 70 72 65 74 65 72 20 69 6e 20 77 68 69  terpreter in whi
5b40: 63 68 20 74 68 65 20 65 76 65 6e 74 20 68 61 6e  ch the event han
5b50: 64 6c 65 72 20 77 61 73 20 69 6e 73 74 61 6c 6c  dler was install
5b60: 65 64 2e 0d 0a 0d 0a 3c 68 32 3e 53 69 67 6e 61  ed.....<h2>Signa
5b70: 74 75 72 65 73 3c 2f 68 32 3e 0d 0a 0d 0a 54 68  tures</h2>....Th
5b80: 65 20 44 42 75 73 20 73 70 65 63 69 66 69 63 61  e DBus specifica
5b90: 74 69 6f 6e 20 64 65 66 69 6e 65 73 20 74 79 70  tion defines typ
5ba0: 65 64 20 61 72 67 75 6d 65 6e 74 73 2e 20 54 68  ed arguments. Th
5bb0: 69 73 20 64 6f 65 73 6e 27 74 20 66 69 74 20 77  is doesn't fit w
5bc0: 65 6c 6c 20 77 69 74 68 0d 0a 74 68 65 20 54 63  ell with..the Tc
5bd0: 6c 20 70 68 69 6c 6f 73 6f 70 68 79 20 6f 66 20  l philosophy of 
5be0: 3c 69 20 63 6c 61 73 73 3d 22 74 65 72 6d 22 3e  <i class="term">
5bf0: 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 61 20  everything is a 
5c00: 73 74 72 69 6e 67 3c 2f 69 3e 2e 20 54 6f 20 62  string</i>. To b
5c10: 65 20 61 62 6c 65 20 74 6f 20 63 6c 6f 73 65 6c  e able to closel
5c20: 79 0d 0a 63 6f 6e 74 72 6f 6c 20 74 68 65 20 74  y..control the t
5c30: 79 70 65 20 6f 66 20 74 68 65 20 61 72 67 75 6d  ype of the argum
5c40: 65 6e 74 73 20 74 6f 20 62 65 20 73 65 6e 74 20  ents to be sent 
5c50: 6f 6e 74 6f 20 74 68 65 20 44 42 75 73 20 61 20  onto the DBus a 
5c60: 3c 62 20 63 6c 61 73 73 3d 22 63 6f 6e 73 74 22  <b class="const"
5c70: 3e 73 69 67 6e 61 74 75 72 65 3c 2f 62 3e 0d 0a  >signature</b>..
5c80: 63 61 6e 20 62 65 20 73 75 70 70 6c 69 65 64 2e  can be supplied.
5c90: 20 54 68 65 20 73 69 67 6e 61 74 75 72 65 20 64   The signature d
5ca0: 65 66 69 6e 69 74 69 6f 6e 20 69 73 20 65 78 61  efinition is exa
5cb0: 63 74 6c 79 20 74 68 65 20 73 61 6d 65 20 61 73  ctly the same as
5cc0: 20 69 6e 20 74 68 65 20 44 42 75 73 0d 0a 73 70   in the DBus..sp
5cd0: 65 63 69 66 69 63 61 74 69 6f 6e 2e 20 41 20 73  ecification. A s
5ce0: 69 67 6e 61 74 75 72 65 20 69 73 20 61 20 73 74  ignature is a st
5cf0: 72 69 6e 67 20 77 68 65 72 65 20 61 20 73 69 6e  ring where a sin
5d00: 67 6c 65 20 63 68 61 72 61 63 74 65 72 20 6f 72  gle character or
5d10: 20 67 72 6f 75 70 20 6f 66 0d 0a 63 68 61 72 61   group of..chara
5d20: 63 74 65 72 73 20 73 70 65 63 69 66 69 65 73 20  cters specifies 
5d30: 74 68 65 20 74 79 70 65 20 6f 66 20 61 6e 20 61  the type of an a
5d40: 72 67 75 6d 65 6e 74 2e 20 54 68 65 20 66 6f 6c  rgument. The fol
5d50: 6c 6f 77 69 6e 67 20 74 79 70 65 73 20 65 78 69  lowing types exi
5d60: 73 74 3a 0d 0a 3c 64 6c 3e 0d 0a 3c 64 74 3e 73  st:..<dl>..<dt>s
5d70: 0d 0a 3c 64 64 3e 41 20 55 54 46 2d 38 20 65 6e  ..<dd>A UTF-8 en
5d80: 63 6f 64 65 64 2c 20 6e 75 6c 2d 74 65 72 6d 69  coded, nul-termi
5d90: 6e 61 74 65 64 20 55 6e 69 63 6f 64 65 20 73 74  nated Unicode st
5da0: 72 69 6e 67 2e 0d 0a 3c 64 74 3e 62 0d 0a 3c 64  ring...<dt>b..<d
5db0: 64 3e 41 20 62 6f 6f 6c 65 61 6e 2c 20 46 41 4c  d>A boolean, FAL
5dc0: 53 45 20 28 30 29 2c 20 6f 72 20 54 52 55 45 20  SE (0), or TRUE 
5dd0: 28 31 29 2e 0d 0a 3c 64 74 3e 79 0d 0a 3c 64 64  (1)...<dt>y..<dd
5de0: 3e 41 20 62 79 74 65 20 28 38 2d 62 69 74 20 75  >A byte (8-bit u
5df0: 6e 73 69 67 6e 65 64 20 69 6e 74 65 67 65 72 29  nsigned integer)
5e00: 2e 0d 0a 3c 64 74 3e 6e 0d 0a 3c 64 64 3e 41 20  ...<dt>n..<dd>A 
5e10: 31 36 2d 62 69 74 20 73 69 67 6e 65 64 20 69 6e  16-bit signed in
5e20: 74 65 67 65 72 2e 0d 0a 3c 64 74 3e 71 0d 0a 3c  teger...<dt>q..<
5e30: 64 64 3e 41 20 31 36 2d 62 69 74 20 75 6e 73 69  dd>A 16-bit unsi
5e40: 67 6e 65 64 20 69 6e 74 65 67 65 72 2e 0d 0a 3c  gned integer...<
5e50: 64 74 3e 69 0d 0a 3c 64 64 3e 41 20 33 32 2d 62  dt>i..<dd>A 32-b
5e60: 69 74 20 73 69 67 6e 65 64 20 69 6e 74 65 67 65  it signed intege
5e70: 72 2e 0d 0a 3c 64 74 3e 75 0d 0a 3c 64 64 3e 41  r...<dt>u..<dd>A
5e80: 20 33 32 2d 62 69 74 20 75 6e 73 69 67 6e 65 64   32-bit unsigned
5e90: 20 69 6e 74 65 67 65 72 2e 0d 0a 3c 64 74 3e 78   integer...<dt>x
5ea0: 0d 0a 3c 64 64 3e 41 20 36 34 2d 62 69 74 20 73  ..<dd>A 64-bit s
5eb0: 69 67 6e 65 64 20 69 6e 74 65 67 65 72 2e 0d 0a  igned integer...
5ec0: 3c 64 74 3e 74 0d 0a 3c 64 64 3e 41 20 36 34 2d  <dt>t..<dd>A 64-
5ed0: 62 69 74 20 75 6e 73 69 67 6e 65 64 20 69 6e 74  bit unsigned int
5ee0: 65 67 65 72 2e 0d 0a 3c 64 74 3e 64 0d 0a 3c 64  eger...<dt>d..<d
5ef0: 64 3e 41 6e 20 38 2d 62 79 74 65 20 64 6f 75 62  d>An 8-byte doub
5f00: 6c 65 20 69 6e 20 49 45 45 45 20 37 35 34 20 66  le in IEEE 754 f
5f10: 6f 72 6d 61 74 2e 0d 0a 3c 64 74 3e 68 0d 0a 3c  ormat...<dt>h..<
5f20: 64 64 3e 41 20 66 69 6c 65 20 64 65 73 63 72 69  dd>A file descri
5f30: 70 74 6f 72 2e 0d 0a 3c 64 74 3e 67 0d 0a 3c 64  ptor...<dt>g..<d
5f40: 64 3e 41 20 74 79 70 65 20 73 69 67 6e 61 74 75  d>A type signatu
5f50: 72 65 2e 0d 0a 3c 64 74 3e 6f 0d 0a 3c 64 64 3e  re...<dt>o..<dd>
5f60: 41 6e 20 6f 62 6a 65 63 74 20 70 61 74 68 2e 0d  An object path..
5f70: 0a 3c 64 74 3e 61 23 0d 0a 3c 64 64 3e 41 20 44  .<dt>a#..<dd>A D
5f80: 2d 42 75 73 20 61 72 72 61 79 20 74 79 70 65 2c  -Bus array type,
5f90: 20 77 68 69 63 68 20 69 73 20 73 69 6d 69 6c 61   which is simila
5fa0: 72 20 74 6f 20 61 20 54 63 6c 20 6c 69 73 74 2e  r to a Tcl list.
5fb0: 20 54 68 65 20 23 20 73 70 65 63 69 66 69 65 73   The # specifies
5fc0: 0d 0a 74 68 65 20 74 79 70 65 20 6f 66 20 74 68  ..the type of th
5fd0: 65 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73  e array elements
5fe0: 2e 20 54 68 69 73 20 63 61 6e 20 62 65 20 61 6e  . This can be an
5ff0: 79 20 74 79 70 65 2c 20 69 6e 63 6c 75 64 69 6e  y type, includin
6000: 67 20 61 6e 6f 74 68 65 72 0d 0a 61 72 72 61 79  g another..array
6010: 2c 20 61 20 73 74 72 75 63 74 20 6f 72 20 61 20  , a struct or a 
6020: 64 69 63 74 20 65 6e 74 72 79 2e 0d 0a 3c 64 74  dict entry...<dt
6030: 3e 76 0d 0a 3c 64 64 3e 41 20 44 2d 42 75 73 20  >v..<dd>A D-Bus 
6040: 76 61 72 69 61 6e 74 20 74 79 70 65 2e 20 54 68  variant type. Th
6050: 65 20 70 72 6f 76 69 64 65 64 20 76 61 6c 75 65  e provided value
6060: 20 73 68 6f 75 6c 64 20 62 65 20 61 20 74 77 6f   should be a two
6070: 2d 65 6c 65 6d 65 6e 74 20 6c 69 73 74 2c 0d 0a  -element list,..
6080: 63 6f 6e 74 61 69 6e 69 6e 67 20 61 20 73 69 67  containing a sig
6090: 6e 61 74 75 72 65 20 61 6e 64 20 74 68 65 20 61  nature and the a
60a0: 63 74 75 61 6c 20 76 61 6c 75 65 2e 20 53 65 65  ctual value. See
60b0: 20 3c 62 3e 56 61 72 69 61 6e 74 20 41 72 67 75   <b>Variant Argu
60c0: 6d 65 6e 74 73 3c 2f 62 3e 0d 0a 66 6f 72 20 6d  ments</b>..for m
60d0: 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e  ore information.
60e0: 0d 0a 3c 64 74 3e 28 2e 2e 2e 29 0d 0a 3c 64 64  ..<dt>(...)..<dd
60f0: 3e 41 20 73 74 72 75 63 74 2e 20 54 68 65 20 73  >A struct. The s
6100: 74 72 69 6e 67 20 69 6e 73 69 64 65 20 74 68 65  tring inside the
6110: 20 70 61 72 65 6e 74 68 65 73 65 73 20 64 65 66   parentheses def
6120: 69 6e 65 73 20 74 68 65 20 74 79 70 65 73 20 6f  ines the types o
6130: 66 0d 0a 74 68 65 20 61 72 67 75 6d 65 6e 74 73  f..the arguments
6140: 20 77 69 74 68 69 6e 20 74 68 65 20 73 74 72 75   within the stru
6150: 63 74 2c 20 77 68 69 63 68 20 6d 61 79 20 63 6f  ct, which may co
6160: 6e 73 69 73 74 20 6f 66 20 61 20 63 6f 6d 62 69  nsist of a combi
6170: 6e 61 74 69 6f 6e 20 6f 66 20 61 6e 79 0d 0a 6f  nation of any..o
6180: 66 20 74 68 65 20 65 78 69 73 74 69 6e 67 20 74  f the existing t
6190: 79 70 65 73 2e 0d 0a 3c 64 74 3e 7b 23 23 7d 0d  ypes...<dt>{##}.
61a0: 0a 3c 64 64 3e 41 20 64 69 63 74 20 65 6e 74 72  .<dd>A dict entr
61b0: 79 2e 20 44 69 63 74 20 65 6e 74 72 69 65 73 20  y. Dict entries 
61c0: 6d 61 79 20 6f 6e 6c 79 20 6f 63 63 75 72 20 61  may only occur a
61d0: 73 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73  s array elements
61e0: 2e 20 54 68 65 0d 0a 66 69 72 73 74 20 23 20 73  . The..first # s
61f0: 70 65 63 69 66 69 65 73 20 74 68 65 20 74 79 70  pecifies the typ
6200: 65 20 6f 66 20 74 68 65 20 64 69 63 74 20 6b 65  e of the dict ke
6210: 79 2e 20 54 68 69 73 20 6d 75 73 74 20 62 65 20  y. This must be 
6220: 61 20 62 61 73 69 63 20 74 79 70 65 0d 0a 28 6f  a basic type..(o
6230: 6e 65 20 6f 66 20 27 73 62 79 6e 71 69 75 78 74  ne of 'sbynqiuxt
6240: 64 67 6f 27 29 2e 20 54 68 65 20 73 65 63 6f 6e  dgo'). The secon
6250: 64 20 23 20 73 70 65 63 69 66 69 65 73 20 74 68  d # specifies th
6260: 65 20 74 79 70 65 20 6f 66 20 74 68 65 20 64 69  e type of the di
6270: 63 74 20 76 61 6c 75 65 2e 0d 0a 54 68 69 73 20  ct value...This 
6280: 63 61 6e 20 61 67 61 69 6e 20 62 65 20 61 6e 79  can again be any
6290: 20 65 78 69 73 74 69 6e 67 20 74 79 70 65 2e 0d   existing type..
62a0: 0a 3c 2f 64 6c 3e 0d 0a 3c 65 6d 3e 45 78 61 6d  .</dl>..<em>Exam
62b0: 70 6c 65 3c 2f 65 6d 3e 3a 20 54 68 65 20 73 69  ple</em>: The si
62c0: 67 6e 61 74 75 72 65 20 27 76 61 61 73 28 69 64  gnature 'vaas(id
62d0: 29 61 7b 69 28 73 73 29 7d 27 20 73 70 65 63 69  )a{i(ss)}' speci
62e0: 66 69 65 73 20 66 6f 75 72 20 61 72 67 75 6d 65  fies four argume
62f0: 6e 74 73 20 61 6e 64 0d 0a 74 72 61 6e 73 6c 61  nts and..transla
6300: 74 65 73 20 74 6f 20 54 63 6c 20 74 65 72 6d 69  tes to Tcl termi
6310: 6e 6f 6c 6f 67 79 20 61 73 20 66 6f 6c 6c 6f 77  nology as follow
6320: 73 3a 20 54 68 65 20 74 79 70 65 20 6f 66 20 74  s: The type of t
6330: 68 65 20 66 69 72 73 74 20 61 72 67 75 6d 65 6e  he first argumen
6340: 74 0d 0a 28 27 76 27 29 20 69 73 20 65 78 74 72  t..('v') is extr
6350: 61 63 74 65 64 20 66 72 6f 6d 20 69 74 73 20 76  acted from its v
6360: 61 6c 75 65 2e 20 54 68 65 20 73 65 63 6f 6e 64  alue. The second
6370: 20 61 72 67 75 6d 65 6e 74 20 28 27 61 61 73 27   argument ('aas'
6380: 29 20 69 73 20 61 20 6c 69 73 74 0d 0a 63 6f 6e  ) is a list..con
6390: 74 61 69 6e 69 6e 67 20 6c 69 73 74 73 20 6f 66  taining lists of
63a0: 20 73 74 72 69 6e 67 73 2e 20 54 68 65 20 74 68   strings. The th
63b0: 69 72 64 20 61 72 67 75 6d 65 6e 74 20 28 27 28  ird argument ('(
63c0: 69 64 29 27 29 20 69 73 20 61 20 6c 69 73 74 20  id)') is a list 
63d0: 63 6f 6e 74 61 69 6e 69 6e 67 0d 0a 61 6e 20 69  containing..an i
63e0: 6e 74 65 67 65 72 20 61 6e 64 20 61 20 64 6f 75  nteger and a dou
63f0: 62 6c 65 2e 20 54 68 65 20 6c 61 73 74 20 61 72  ble. The last ar
6400: 67 75 6d 65 6e 74 20 28 27 61 7b 69 28 73 73 29  gument ('a{i(ss)
6410: 7d 27 29 20 69 73 20 61 20 64 69 63 74 20 28 61  }') is a dict (a
6420: 6e 20 61 72 72 61 79 0d 0a 6f 66 20 64 69 63 74  n array..of dict
6430: 20 65 6e 74 72 69 65 73 29 20 77 69 74 68 20 69   entries) with i
6440: 6e 74 65 67 65 72 20 6b 65 79 73 20 61 6e 64 20  nteger keys and 
6450: 65 61 63 68 20 76 61 6c 75 65 20 69 73 20 61 20  each value is a 
6460: 6c 69 73 74 20 6f 66 20 74 77 6f 20 73 74 72 69  list of two stri
6470: 6e 67 73 2e 0d 0a 0d 0a 3c 64 69 76 20 69 64 3d  ngs.....<div id=
6480: 22 73 75 62 73 65 63 74 69 6f 6e 31 22 20 63 6c  "subsection1" cl
6490: 61 73 73 3d 22 73 75 62 73 65 63 74 69 6f 6e 22  ass="subsection"
64a0: 3e 3c 68 33 3e 56 61 72 69 61 6e 74 20 41 72 67  ><h3>Variant Arg
64b0: 75 6d 65 6e 74 73 3c 2f 68 33 3e 0d 0a 0d 0a 57  uments</h3>....W
64c0: 68 65 6e 20 61 20 73 69 67 6e 61 74 75 72 65 20  hen a signature 
64d0: 73 70 65 63 69 66 69 65 73 20 74 68 61 74 20 61  specifies that a
64e0: 6e 20 61 72 67 75 6d 65 6e 74 20 69 73 20 6f 66  n argument is of
64f0: 20 74 79 70 65 20 26 71 75 6f 74 3b 76 61 72 69   type &quot;vari
6500: 61 6e 74 26 71 75 6f 74 3b 2c 20 74 68 65 0d 0a  ant&quot;, the..
6510: 61 72 67 75 6d 65 6e 74 20 63 61 6e 20 73 74 69  argument can sti
6520: 6c 6c 20 62 65 20 61 6c 6d 6f 73 74 20 61 6e 79  ll be almost any
6530: 74 68 69 6e 67 2e 20 41 64 64 69 74 69 6f 6e 61  thing. Additiona
6540: 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6e 65  l information ne
6550: 65 64 73 20 74 6f 20 62 65 0d 0a 6c 6f 63 61 74  eds to be..locat
6560: 65 64 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20  ed to determine 
6570: 68 6f 77 20 74 6f 20 70 61 63 6b 61 67 65 20 74  how to package t
6580: 68 65 20 76 61 6c 75 65 20 66 6f 72 20 74 72 61  he value for tra
6590: 6e 73 6d 69 73 73 69 6f 6e 20 6f 6e 74 6f 20 74  nsmission onto t
65a0: 68 65 0d 0a 64 62 75 73 2e 20 54 68 65 20 70 72  he..dbus. The pr
65b0: 65 66 65 72 72 65 64 20 77 61 79 20 69 73 20 66  eferred way is f
65c0: 6f 72 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20  or the argument 
65d0: 74 6f 20 62 65 20 61 20 74 77 6f 2d 65 6c 65 6d  to be a two-elem
65e0: 65 6e 74 20 6c 69 73 74 20 77 68 65 72 65 0d 0a  ent list where..
65f0: 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e  the first elemen
6600: 74 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20  t specifies the 
6610: 73 69 67 6e 61 74 75 72 65 20 66 6f 72 20 74 68  signature for th
6620: 65 20 76 61 6c 75 65 20 61 6e 64 20 74 68 65 20  e value and the 
6630: 73 65 63 6f 6e 64 0d 0a 65 6c 65 6d 65 6e 74 20  second..element 
6640: 69 73 20 74 68 65 20 61 63 74 75 61 6c 20 76 61  is the actual va
6650: 6c 75 65 2e 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 54  lue.....<p>....T
6660: 68 65 20 73 69 67 6e 61 74 75 72 65 20 66 6f 72  he signature for
6670: 20 61 20 76 61 72 69 61 6e 74 20 61 72 67 75 6d   a variant argum
6680: 65 6e 74 20 68 61 73 20 74 6f 20 73 70 65 63 69  ent has to speci
6690: 66 79 20 61 20 73 69 6e 67 6c 65 20 63 6f 6d 70  fy a single comp
66a0: 6c 65 74 65 20 74 79 70 65 2e 0d 0a 54 68 65 20  lete type...The 
66b0: 76 61 6c 75 65 20 6f 66 20 74 68 65 20 73 65 63  value of the sec
66c0: 6f 6e 64 20 6c 69 73 74 20 65 6c 65 6d 65 6e 74  ond list element
66d0: 20 6d 75 73 74 20 6d 61 74 63 68 20 74 68 65 20   must match the 
66e0: 73 69 67 6e 61 74 75 72 65 2c 20 6f 74 68 65 72  signature, other
66f0: 77 69 73 65 20 61 6e 0d 0a 65 72 72 6f 72 20 77  wise an..error w
6700: 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64 2e  ill be reported.
6710: 0d 0a 0d 0a 3c 70 3e 0d 0a 0d 0a 49 66 20 74 68  ....<p>....If th
6720: 65 20 76 61 6c 75 65 20 70 72 6f 76 69 64 65 64  e value provided
6730: 20 66 6f 72 20 61 20 76 61 72 69 61 6e 74 20 61   for a variant a
6740: 72 67 75 6d 65 6e 74 20 69 73 20 6e 6f 74 20 61  rgument is not a
6750: 20 74 77 6f 2d 65 6c 65 6d 65 6e 74 20 6c 69 73   two-element lis
6760: 74 2c 20 6f 72 0d 0a 74 68 65 20 66 69 72 73 74  t, or..the first
6770: 20 65 6c 65 6d 65 6e 74 20 69 73 20 6e 6f 74 20   element is not 
6780: 61 20 76 61 6c 69 64 20 73 69 67 6e 61 74 75 72  a valid signatur
6790: 65 20 66 6f 72 20 61 20 73 69 6e 67 6c 65 20 63  e for a single c
67a0: 6f 6d 70 6c 65 74 65 20 74 79 70 65 2c 20 74 68  omplete type, th
67b0: 65 0d 0a 63 6f 64 65 20 77 69 6c 6c 20 61 74 74  e..code will att
67c0: 65 6d 70 74 20 74 6f 20 61 75 74 6f 6d 61 74 69  empt to automati
67d0: 63 61 6c 6c 79 20 64 65 74 65 72 6d 69 6e 65 20  cally determine 
67e0: 74 68 65 20 74 79 70 65 20 6f 66 20 74 68 65 20  the type of the 
67f0: 70 72 6f 76 69 64 65 64 20 76 61 6c 75 65 2e 0d  provided value..
6800: 0a 49 74 20 64 6f 65 73 20 74 68 69 73 20 62 79  .It does this by
6810: 20 73 65 6c 65 63 74 69 6e 67 20 61 20 73 69 67   selecting a sig
6820: 6e 61 74 75 72 65 20 62 61 73 65 64 20 6f 6e 20  nature based on 
6830: 74 68 65 20 69 6e 74 65 72 6e 61 6c 20 72 65 70  the internal rep
6840: 72 65 73 65 6e 74 61 74 69 6f 6e 0d 0a 6f 66 20  resentation..of 
6850: 74 68 65 20 76 61 6c 75 65 20 61 63 63 6f 72 64  the value accord
6860: 69 6e 67 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f  ing to the follo
6870: 77 69 6e 67 20 74 61 62 6c 65 3a 0d 0a 3c 64 6c  wing table:..<dl
6880: 3e 0d 0a 3c 64 74 3e 73 74 72 69 6e 67 3a 20 73  >..<dt>string: s
6890: 0d 0a 3c 64 64 3e 0d 0a 3c 64 74 3e 69 6e 74 3a  ..<dd>..<dt>int:
68a0: 20 69 0d 0a 3c 64 64 3e 0d 0a 3c 64 74 3e 77 69   i..<dd>..<dt>wi
68b0: 64 65 49 6e 74 3a 20 78 0d 0a 3c 64 64 3e 0d 0a  deInt: x..<dd>..
68c0: 3c 64 74 3e 64 6f 75 62 6c 65 3a 20 64 0d 0a 3c  <dt>double: d..<
68d0: 64 64 3e 0d 0a 3c 64 74 3e 62 6f 6f 6c 65 61 6e  dd>..<dt>boolean
68e0: 3a 20 62 0d 0a 3c 64 64 3e 0d 0a 3c 64 74 3e 6c  : b..<dd>..<dt>l
68f0: 69 73 74 3a 20 61 73 0d 0a 3c 64 64 3e 0d 0a 3c  ist: as..<dd>..<
6900: 64 74 3e 64 69 63 74 3a 20 61 7b 73 73 7d 0d 0a  dt>dict: a{ss}..
6910: 3c 64 64 3e 0d 0a 3c 64 74 3e 61 6e 79 74 68 69  <dd>..<dt>anythi
6920: 6e 67 20 65 6c 73 65 3a 20 73 0d 0a 3c 64 64 3e  ng else: s..<dd>
6930: 0d 0a 3c 2f 64 6c 3e 0d 0a 0d 0a 3c 2f 64 69 76  ..</dl>....</div
6940: 3e 0d 0a 3c 64 69 76 20 69 64 3d 22 73 75 62 73  >..<div id="subs
6950: 65 63 74 69 6f 6e 32 22 20 63 6c 61 73 73 3d 22  ection2" class="
6960: 73 75 62 73 65 63 74 69 6f 6e 22 3e 3c 68 33 3e  subsection"><h3>
6970: 46 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 73  File descriptors
6980: 3c 2f 68 33 3e 0d 0a 0d 0a 4f 6e 20 6f 75 74 70  </h3>....On outp
6990: 75 74 2c 20 74 68 65 20 76 61 6c 75 65 20 70 72  ut, the value pr
69a0: 6f 76 69 64 65 64 20 66 6f 72 20 61 20 66 69 6c  ovided for a fil
69b0: 65 20 68 61 6e 64 6c 65 72 20 61 72 67 75 6d 65  e handler argume
69c0: 6e 74 20 6d 75 73 74 20 62 65 20 61 6e 20 6f 70  nt must be an op
69d0: 65 6e 20 54 63 6c 0d 0a 63 68 61 6e 6e 65 6c 20  en Tcl..channel 
69e0: 28 73 75 63 68 20 61 73 20 68 61 73 20 62 65 65  (such as has bee
69f0: 6e 20 63 72 65 61 74 65 64 20 77 69 74 68 20 74  n created with t
6a00: 68 65 20 6f 70 65 6e 20 6f 72 20 73 6f 63 6b 65  he open or socke
6a10: 74 20 63 6f 6d 6d 61 6e 64 73 29 2e 20 41 6e 20  t commands). An 
6a20: 65 72 72 6f 72 0d 0a 77 69 6c 6c 20 62 65 20 74  error..will be t
6a30: 68 72 6f 77 6e 20 69 66 20 74 68 65 20 76 61 6c  hrown if the val
6a40: 75 65 20 64 6f 65 73 20 6e 6f 74 20 72 65 70 72  ue does not repr
6a50: 65 73 65 6e 74 20 61 6e 20 6f 70 65 6e 20 63 68  esent an open ch
6a60: 61 6e 6e 65 6c 2c 20 6f 72 20 69 66 20 74 68 65  annel, or if the
6a70: 20 64 62 75 73 0d 0a 63 6f 6e 6e 65 63 74 69 6f   dbus..connectio
6a80: 6e 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f  n does not suppo
6a90: 72 74 20 70 61 73 73 69 6e 67 20 66 69 6c 65 20  rt passing file 
6aa0: 68 61 6e 64 6c 65 72 20 61 72 67 75 6d 65 6e 74  handler argument
6ab0: 73 2e 0d 0a 3c 70 3e 0d 0a 4f 6e 20 69 6e 70 75  s...<p>..On inpu
6ac0: 74 2c 20 61 20 6e 65 77 20 63 68 61 6e 6e 65 6c  t, a new channel
6ad0: 20 77 69 6c 6c 20 62 65 20 63 72 65 61 74 65 64   will be created
6ae0: 20 61 6e 64 20 69 74 73 20 6e 61 6d 65 20 70 61   and its name pa
6af0: 73 73 65 64 20 74 6f 20 74 68 65 20 73 63 72 69  ssed to the scri
6b00: 70 74 2e 20 54 68 65 0d 0a 6e 65 77 20 63 68 61  pt. The..new cha
6b10: 6e 6e 65 6c 20 69 73 20 6f 70 65 6e 65 64 20 66  nnel is opened f
6b20: 6f 72 20 62 6f 74 68 20 72 65 61 64 69 6e 67 20  or both reading 
6b30: 61 6e 64 20 77 72 69 74 69 6e 67 2e 20 49 66 20  and writing. If 
6b40: 74 68 69 73 20 69 73 20 6e 6f 74 20 64 65 73 69  this is not desi
6b50: 72 65 64 2c 0d 0a 65 69 74 68 65 72 20 64 69 72  red,..either dir
6b60: 65 63 74 69 6f 6e 20 6d 61 79 20 62 65 20 63 6c  ection may be cl
6b70: 6f 73 65 64 20 75 73 69 6e 67 20 74 68 65 20 61  osed using the a
6b80: 70 70 72 6f 70 72 69 61 74 65 20 68 61 6c 66 2d  ppropriate half-
6b90: 63 6c 6f 73 65 20 76 65 72 73 69 6f 6e 20 6f 66  close version of
6ba0: 20 74 68 65 0d 0a 63 6c 6f 73 65 20 63 6f 6d 6d   the..close comm
6bb0: 61 6e 64 2e 0d 0a 3c 70 3e 0d 0a 54 68 65 20 63  and...<p>..The c
6bc0: 68 61 6e 6e 65 6c 20 6e 61 6d 65 20 69 73 20 6c  hannel name is l
6bd0: 69 6b 65 6c 79 20 74 6f 20 62 65 20 64 69 66 66  ikely to be diff
6be0: 65 72 65 6e 74 20 69 6e 20 74 68 65 20 74 77 6f  erent in the two
6bf0: 20 69 6e 76 6f 6c 76 65 64 20 61 70 70 6c 69 63   involved applic
6c00: 61 74 69 6f 6e 73 2e 0d 0a 57 68 65 6e 20 66 69  ations...When fi
6c10: 6e 69 73 68 65 64 20 77 69 74 68 20 74 68 65 20  nished with the 
6c20: 63 68 61 6e 6e 65 6c 2c 20 62 6f 74 68 20 70 61  channel, both pa
6c30: 72 74 69 65 73 20 61 72 65 20 72 65 73 70 6f 6e  rties are respon
6c40: 73 69 62 6c 65 20 66 6f 72 20 63 6c 6f 73 69 6e  sible for closin
6c50: 67 20 74 68 65 0d 0a 63 68 61 6e 6e 65 6c 20 75  g the..channel u
6c60: 73 69 6e 67 20 74 68 65 69 72 20 6f 77 6e 20 63  sing their own c
6c70: 68 61 6e 6e 65 6c 20 72 65 66 65 72 65 6e 63 65  hannel reference
6c80: 2e 0d 0a 3c 2f 64 69 76 3e 0d 0a 0a 5a 20 61 39  ...</div>...Z a9
6c90: 63 36 36 36 33 64 63 37 63 63 35 61 32 30 30 33  c6663dc7cc5a2003
6ca0: 36 61 35 30 39 39 66 63 62 66 38 62 33 33 0a     6a5099fcbf8b33.