3 from __future__ import absolute_import, print_function, unicode_literals
5 from optparse import OptionParser, make_option
11 import dbus.mainloop.glib
13 from gi.repository import GObject
15 import gobject as GObject
18 class GattProfile(dbus.service.Object):
19 @dbus.service.method("org.bluez.GattProfile1",
20 in_signature="", out_signature="")
25 if __name__ == '__main__':
26 dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
28 bus = dbus.SystemBus()
30 path = bluezutils.find_adapter().object_path
32 manager = dbus.Interface(bus.get_object("org.bluez", path),
33 "org.bluez.GattManager1")
36 make_option("-u", "--uuid", action="store",
37 type="string", dest="uuid",
39 make_option("-p", "--path", action="store",
40 type="string", dest="path",
41 default="/foo/bar/profile"),
44 opts = dbus.Dictionary({ }, signature='sv')
46 parser = OptionParser(option_list=option_list)
48 (options, args) = parser.parse_args()
50 profile = GattProfile(bus, options.path)
52 mainloop = GObject.MainLoop()
55 options.uuid = str(uuid.uuid4())
57 uuids = { options.uuid }
58 manager.RegisterProfile(options.path, uuids, opts)