Apakah ada daftar layanan DBus yang tersedia?
Saya menemukan beberapa (seperti yang disediakan oleh NetworkManager, Rhythmbox, Skype, HAL).
Saya ingin tahu apakah saya dapat menemukan daftar layanan / antarmuka yang disediakan agak lengkap.
65
dbus-send
ataugdbus
?qdbusviewer
adalah teman baikmu; memungkinkan Anda untuk mengirim pesan D-bus juga:sumber
qdbusviewer: could not exec '/usr/lib/i386-linux-gnu/qt4/bin/qdbusviewer': No such file or directory
d-feet
bekerja mulai hari ini.d-feet
sebagai jawaban agar lebih terlihatCara python adalah cara yang indah.
Layanan sistem:
Layanan sesi:
sumber
pip install dbus-python
. Paket python-dbus juga tersedia (saya tidak dapat bekerja dalam 2 menit saya mencoba).gdbus
adalah bagian dari glib2 dan mendukung penyelesaian Bash. Berikut cara menggunakannya (di Fedora):Ini akan menampilkan semua tujuan yang memungkinkan. Untuk mendapatkan daftar antarmuka yang tersedia, DBus mengekspor
org.freedesktop.DBus.ListNames
metode ini. Anda dapat memanggilnya dengan menjalankan:Sayangnya ini menyebabkan output yang tidak dapat dibaca. Untungnya outputnya adalah python yang valid, jadi ini mungkin:
Saya biasanya tidak melakukan ini, tetapi merupakan trik yang bagus untuk tetap bertahan. Saya gunakan
gdbus
untuk mengintrospeksi dan membuktikan konsep sebelum pindah ke kode. Penyelesaian bash menghemat banyak pengetikan dan menghindari kesalahan ketik. Akan menyenangkan untukgdbus
menampilkan output yang lebih bagus.sumber