~bluetooth/bluez/vivid-phone-overlay

« back to all changes in this revision

Viewing changes to test/test-oob

  • Committer: Simon Fels
  • Date: 2015-09-11 09:01:46 UTC
  • Revision ID: morphis@gravedo.de-20150911090146-4c0ln9s7ec3xf0nx
Import package bluez_4.101-0ubuntu25.1~overlay4 from stable phone overlay PPA

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/python3
 
2
 
 
3
import gobject
 
4
 
 
5
import dbus.mainloop.glib
 
6
 
 
7
def create_device_reply(device):
 
8
        print("Pairing succeed!")
 
9
        mainloop.quit()
 
10
 
 
11
def create_device_error(error):
 
12
        print("Pairing failed.")
 
13
        mainloop.quit()
 
14
 
 
15
if __name__ == '__main__':
 
16
        dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
 
17
 
 
18
        mainloop = gobject.MainLoop()
 
19
 
 
20
        bus = dbus.SystemBus()
 
21
        manager = dbus.Interface(bus.get_object("org.bluez", "/"),
 
22
                                                        "org.bluez.Manager")
 
23
 
 
24
        adapter0_path = manager.FindAdapter("hci0")
 
25
        adapter1_path = manager.FindAdapter("hci1")
 
26
 
 
27
        adapter0 = dbus.Interface(bus.get_object("org.bluez", adapter0_path),
 
28
                                                        "org.bluez.Adapter")
 
29
        adapter1 = dbus.Interface(bus.get_object("org.bluez", adapter1_path),
 
30
                                                        "org.bluez.Adapter")
 
31
 
 
32
        adapter0_address = adapter0.GetProperties()["Address"]
 
33
        adapter1_address = adapter1.GetProperties()["Address"]
 
34
        print("Adapters:")
 
35
        print("    hci0: " + adapter0_address)
 
36
        print("    hci1: " + adapter1_address)
 
37
        print()
 
38
 
 
39
        print("Removing any existing bond...")
 
40
 
 
41
        try:
 
42
                device = adapter0.FindDevice(adapter1_address)
 
43
                adapter0.RemoveDevice(device)
 
44
        except:
 
45
                pass
 
46
 
 
47
        try:
 
48
                device = adapter1.FindDevice(adapter0_address)
 
49
                adapter1.RemoveDevice(device)
 
50
        except:
 
51
                pass
 
52
 
 
53
        print("Done.")
 
54
        print()
 
55
        print("Reading local Out of Band data...")
 
56
 
 
57
        oob_adapter0 = dbus.Interface(bus.get_object("org.bluez",
 
58
                                        adapter0_path), "org.bluez.OutOfBand")
 
59
        oob_adapter1 = dbus.Interface(bus.get_object("org.bluez",
 
60
                                        adapter1_path), "org.bluez.OutOfBand")
 
61
 
 
62
        oob0 = oob_adapter0.ReadLocalData()
 
63
        oob1 = oob_adapter1.ReadLocalData()
 
64
 
 
65
        print("Done.")
 
66
        print()
 
67
        print("Exchanging Out of Band data...")
 
68
 
 
69
        oob_adapter0.AddRemoteData(adapter1_address, oob1[0], oob1[1])
 
70
        oob_adapter1.AddRemoteData(adapter0_address, oob0[0], oob0[1])
 
71
 
 
72
        print("Done.")
 
73
        print()
 
74
        print("Starting to pair.")
 
75
        adapter1.CreatePairedDevice(adapter0_address, "/test/agent_oob",
 
76
                                        "DisplayYesNo",
 
77
                                        reply_handler=create_device_reply,
 
78
                                        error_handler=create_device_error)
 
79
 
 
80
        mainloop.run()