test-manager 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/usr/bin/python
  2. # SPDX-License-Identifier: LGPL-2.1-or-later
  3. from __future__ import absolute_import, print_function, unicode_literals
  4. import dbus
  5. import dbus.mainloop.glib
  6. try:
  7. from gi.repository import GObject
  8. except ImportError:
  9. import gobject as GObject
  10. import bluezutils
  11. def interfaces_added(path, interfaces):
  12. if interfaces.get("org.bluez.Adapter1") != None:
  13. print("Adapter with path %s added" % (path))
  14. def interfaces_removed(path, interfaces):
  15. if "org.bluez.Adapter1" in interfaces:
  16. print("Adapter with path %s removed" % (path))
  17. if __name__ == "__main__":
  18. dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
  19. bus = dbus.SystemBus()
  20. bus.add_signal_receiver(interfaces_added, bus_name="org.bluez",
  21. dbus_interface="org.freedesktop.DBus.ObjectManager",
  22. signal_name="InterfacesAdded")
  23. bus.add_signal_receiver(interfaces_removed, bus_name="org.bluez",
  24. dbus_interface="org.freedesktop.DBus.ObjectManager",
  25. signal_name="InterfacesRemoved")
  26. try:
  27. path = bluezutils.find_adapter().object_path
  28. print("Adapter found at path %s" % (path))
  29. except:
  30. print("No adapter found")
  31. mainloop = GObject.MainLoop()
  32. mainloop.run()