dbus続き

  • 1. DBUSから、サービス名(org.freedesktop.Avahiとか)とパス("/")を指定してproxy objectを取得する
  • 2. proxy objectにIntrospect(dbus_interface)をかけるとそのproxy objectができるメソッドの一覧が出てくる
  • 3. proxy objectに対してメソッド一覧のとおりにメソッドを呼び出してやる
    • 引数とか重要

つまり、WSDLみたいなものがIntrospectとしてあるので、それを見ながら呼び出してやれ、ということですな。

メソッドの他にもsignalもあるのでcallbackを登録しておいてなにか状態が変化したら呼び出してくれる、ということもできるみたいだ。

メソッドのtypeの読み方

"o"
ObjectPath
"b"
Boolean
"y"
byte
"n"
16-bit signed integer
"i"
32-bit signed integer
"x"
64-bit signed integer
"q"
16-bit unsigned integer
"u"
32-bit unsigned integer
"t"
64-bit unsigned integer
"d"
double-precision float
"g"
signature
"s"
string