انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: G99057G1HGEQ در 01 خرداد 1389، 10:57 ق‌ظ

عنوان: پایتون - dbus - interface - Method
ارسال شده توسط: G99057G1HGEQ در 01 خرداد 1389، 10:57 ق‌ظ
سلام،
در پایتون وقتی می‌خوام از طریق dbus با NetworkManager ارتباط برقرار کنم، با خطا روبه‌رو می‌شم. به نظر میاد که هیچ Methodی را نمی‌توانم فراخوانی کنم.

برنامه:

import dbus
bus = dbus.SystemBus()
eth0 = bus.get_object('org.freedesktop.NetworkManager',
                      '/org/freedesktop/NetworkManager/Devices/eth0')
props = eth0.getProperties(dbus_interface='org.freedesktop.NetworkManager.Devices')

نتیجه‌ی اجرای برنامه:

Traceback (most recent call last):
  File "autoNetManDB.py", line 5, in <module>
    props = eth0.getProperties(dbus_interface='org.freedesktop.NetworkManager.Devices')
  File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 68, in __call__
    return self._proxy_method(*args, **keywords)
  File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 140, in __call__
    **keywords)
  File "/usr/lib/pymodules/python2.6/dbus/connection.py", line 620, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.UnknownMethod: Method "getProperties" with signature "" on interface "org.freedesktop.NetworkManager.Devices" doesn't exist

کسی می‌دونه مشکل چیه؟

(توضیح بیشتر اینکه من تازه دارم یاد میگیرم چطوری با dbus کار کنم، و این برنامه رو هم عینا از اینجا (http://en.wikibooks.org/wiki/Python_Programming/Dbus) کپی کردم)