私はDBusでHALイベントを監視しており、ACアダプターが取り外された/接続されたときを監視しています。
dbus-montiorを介して、2つのイベントはまったく同じように見えます。
イベントのプラグを抜く
signal sender=:1.85 -> dest=(null destination) serial=3698 path=/org/freedesktop/Hal/devices/computer_power_supply_ac_adapter_AC0; interface=org.freedesktop.Hal.Device; member=PropertyModified
int32 1
array [
struct {
string "ac_adapter.present"
boolean false
boolean false
}
]
プラグインイベント
signal sender=:1.85 -> dest=(null destination) serial=3701 path=/org/freedesktop/Hal/devices/computer_power_supply_ac_adapter_AC0; interface=org.freedesktop.Hal.Device; member=PropertyModified
int32 1
array [
struct {
string "ac_adapter.present"
boolean false
boolean false
}
]
ただし、org.freedesktop.Halのac_adapter.presentプロパティを明示的にクエリすると、デバイスの状態が正しく返されます。
質問: PropertyModifiedイベントで送信されるブール値は何ですか?フィルターできるイベントがあり、アダプターの存在に関する情報が含まれていますか、それとも、よりあいまいな「何かが起こった」メッセージを受信した後に明示的に照会する必要がありますか?
HAL DBusのドキュメントは特に役に立ちませんでした。または、間違った場所を探しています。