我已经检查过此链接:How to handle properties of a dbus interface with python。但是,这只列出了一个API ...但我不知道该API的来源。
我刚开始使用dbus(对此非常兴奋,说实话^ __ ^对我发现的文档不太满意)在python上,我想知道我是否可以获得一些示例代码。
我正专门为Rhythmbox使用MPRIS,尽管它应该对所有人都一样。
我知道我可以通过以下方式访问并获得乐趣:
import dbus
bus = dbus.SessionBus()
proxy = bus.get_object('org.mpris.MediaPlayer2.rhythmbox','/org/mpris/MediaPlayer2')
player = dbus.Interface(proxy, 'org.mpris.MediaPlayer2.Player')
playlists = dbus.Interface(proxy, 'org.mpris.MediaPlayer2.Playlists')
tracklist = dbus.Interface(proxy, 'org.mpris.MediaPlayer2.TrackList')
但是,我想了解一下属性。一些示例代码就足够了:)谢谢!
答案 0 :(得分:19)
找到了。
proxy = bus.get_object('org.mpris.MediaPlayer2.rhythmbox','/org/mpris/MediaPlayer2')
properties_manager = dbus.Interface(proxy, 'org.freedesktop.DBus.Properties')
properties_manager.Set('org.mpris.MediaPlayer2.Player', 'Volume', 100.0)
curr_volume = properties_manager.Get('org.mpris.MediaPlayer2.Player', 'Volume')
非常简单:)我认为这样很简单。