Hi Mikel,

On 08/17/2011 04:58 AM, Mikel Astiz wrote:
> Hi all,
> 
> I'm doing further tests with oFono with a simple UI that handles the
> calls of a certain modem (bluetooth modem in this case).
> 
> I keep track of the existing calls by listening to 'VoiceCallManager'
> signals, 'CallAdded' and 'CallRemoved'. The list is initialized using
> 'VoiceCallManager.GetCalls()' at startup.
> 
> The problem I have found is that some 'CallRemoved' signals are
> apparently never emitted. It is in fact quite easy to reproduce, if a
> modem is powered down while a call is in progress.

By convention oFono interfaces do not emit any signals when they're
being removed (e.g. when the modem is powered down).  In most cases
there isn't a meaningful value we can emit anyway, or doing so would
result in too many redundant signals.

> 
> Having a look at oFono's source code (src/voicecall.c), my feeling is
> that some calls to 'voicecall_dbus_unregister' are not accompanied by a
> call to 'voicecalls_emit_call_removed', inside the function
> 'voicecall_unregister'.
> 
> Could anyone confirm if this is a bug in oFono or suggest any workaround
> for the client app?

The application can track the 'Interfaces' property on the modem object
to figure out when an interface goes live / ceases to exist.  If
VoiceCallManager goes away, you can mark all relevant calls accordingly.

> 
> Regards,
> Mikel

Regards,
-Denis
_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to