All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ilya Rubtsov <lusyaru@gmail.com>
To: Marcel Holtmann <marcel@holtmann.org>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: app doesn't recieve signal DeviceDisappeared
Date: Mon, 19 Jan 2009 00:17:03 +0300	[thread overview]
Message-ID: <49739C4F.10905@gmail.com> (raw)
In-Reply-To: <1232292554.5095.26.camel@californication>

Marcel Holtmann пишет:
> Hi Ilya,
>
>   
>> I need help with using Bluez and dbus. Here is my small program in Python:
>>
>> ------------
>>
>> import dbus
>> import dbus.glib
>> import gobject
>>
>> def device_found(addr, values):
>> 	print 'Found:', addr
>>
>> def device_disapp(addr):    
>> 	print 'Disappeared:', addr
>>
>> bus = dbus.SystemBus()
>> obj = bus.get_object('org.bluez', '/org/bluez/hci0')
>> adapter = dbus.Interface(obj, 'org.bluez.Adapter')
>> adapter.connect_to_signal('DeviceFound', device_found)
>> adapter.connect_to_signal('DeviceDisappeared', device_disapp)
>>
>> adapter.StartDiscovery()
>>
>> gobject.threads_init()
>> dbus.glib.init_threads()
>> main_loop = gobject.MainLoop()
>> main_loop.run()
>>
>>
>> -----------
>>
>> And I have problem with DeviceDisappeared signal. I run program, then it 
>> finds my bluetooth enabled phone and prints it's address every ~10 
>> seconds (periodical discovery). Than I turn off bluetooth in phone, but 
>> Bluez doesn't send signal 'DeviceDisappeared', so program doesn't print 
>> "Disappeared: ...". What's wrong in my program? Do I have 
>> misunderstanding of Bluez Adapter API?
>>     
>
> this might be a bug. Not many applications are actually making full use
> of the DeviceDisappeared signal. Please run dbus-monitor and check if it
> is really not present.
>   
I run 'dbus-monitor --system'. Now I'm sure there are no 
DeviceDisappeared signal.
Besides, I found that the adapter's Discovering property changes to True 
only _right before_ any device is found. If there are no devices in the 
field, this property will be False permanently.

I use BlueZ 4.12. I understand that before reporting any bug I should 
update my system with the lastest versions of packages, so if this bug 
was fixed between 4.12 an current 4.27 version - excuse me and sorry for 
disturbing.
> On another note, you can _NOT_ hardcode /org/bluez/hci0 path in your
> apps. Nowadays they are totally random. Use FindAdapter() instead.
>
>   
Now I use this method instead of hardcoding paths. Thanks!

  reply	other threads:[~2009-01-18 21:17 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-11  3:52 app doesn't recieve signal DeviceDisappeared Ilya Rubtsov
2009-01-18 15:29 ` Marcel Holtmann
2009-01-18 21:17   ` Ilya Rubtsov [this message]
2009-01-19 19:52     ` Tom Patzig
2009-01-23 22:11       ` Luiz Augusto von Dentz
2009-01-26 13:57         ` Tom Patzig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49739C4F.10905@gmail.com \
    --to=lusyaru@gmail.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=marcel@holtmann.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.