Liste proximité/détectable par les appareils bluetooth, y compris déjà jumelé, en Python, sur Linux

Je suis en train de répertorier tous à proximité/détectable par les appareils bluetooth, y compris ceux déjà jumelé, à l'aide de Python sous Linux.

Je sais comment lister les services d'un périphérique à l'aide de son adresse, et peut se connecter avec succès:

services = bluetooth.find_service(address='...')

La lecture de la PyBluez docs je m'attends tout à proximité de l'appareil pour afficher si je ne spécifiez pas un de ces critères:

"Si aucun critère n'est spécifié, retourne une liste de tous les services à proximité détecté."

La "seule" chose dont j'ai besoin maintenant est d'être capable de liste déjà des appareils appariés, si ils sont sur on, off, à proximité ou non. Un peu comme la liste, je suis arriver dans Tous les Paramètres --> Bluetooth dans Ubuntu/Unity.

Btw, le suivant ne pas liste déjà des appareils reliés sur ma machine, même s'ils sont sur/à proximité. Probablement parce qu'ils ne sont pas détectables une fois jumelé:

import bluetooth
for d in bluetooth.discover_devices(flush_cache=True):
    print d

Des idées ...?

Edit: j'ai trouvé et installé "bluez-outils".

bt-device --list

... donne-moi l'information dont j'ai besoin, c'est à dire les adresses des périphériques ajoutés.

J'ai vérifié le code source en C, a trouvé que ce serait peut-être pas aussi facile que je le pensais.

Ne sais toujours pas comment le faire en Python ...

Edit: je pense que DBUS peut-être ce que je devrais être à la lecture sur. Semble assez compliqué. Si quelqu'un a un code à part, je serais vraiment heureux. 🙂

Vous pouvez être en mesure de trouver la réponse que vous êtes à la recherche par la recherche à travers l'Blueman du Projet code source.
J'y ai pensé aussi, et commencé à le faire, mais c'est vraiment de l'emballage autour dbus...

OriginalL'auteur Micke | 2013-01-10