All of lore.kernel.org
 help / color / mirror / Atom feed
* Ofono CF states not always correct
@ 2011-01-11 10:00 Jarko Poutiainen
  2011-01-11 15:16 ` Denis Kenzior
  0 siblings, 1 reply; 13+ messages in thread
From: Jarko Poutiainen @ 2011-01-11 10:00 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 2125 bytes --]

Hello,

I have been trying out and going through the code concerning Call Forwarding and I found out that if you enable for example CF VoiceBusy and then CF VoiceUnconditional, the VoiceBusy is still according to ofono enabled. This of course as such isn't so bad but by using org.ofono.SupplementaryServices to query the CF states ofono gives different response i.e. now only the VoiceUnconditional is enabled and then I can disable only the VoiceUnconditional by using the org.ofono.SupplementaryServices and when doing so I found out that now ofono thinks that no CF is enabled even though VoiceBusy is actually active.

Now to fix this there exists multiple solutions I believe, here's some that I came up.
1:Ofono could send query to modem/network for all the CF values when ever voice unconditional value is changed. The good side in this is that ofono would definetly be up to date.

2:Have separate status value internally and change that accordingly. E.g<property>  <number to>  <status>  and return<number to>  to client when<status>  == 1. Change any conditional<status>  to 0 if unconditional<status>  == 1 without touching the<number to>  field and when unconditional<status>  is changed to 0 change all conditional<status>  to 1 if respecting<number to>  exists. This would of course be much faster however I'm not sure how tedious this would be to implement.

3:Whenever unconditional value is changed, empty the internal "CF cache" i.e. remove all the conditional values all together or set "cache flag" to 0 and thus forcing the query to be made to modem/network.This should be as good as option 1 except the queries are made only when client needs it. Although the assumption is that client queries the properties after changing them(otherwise the client remains in wrong state). So depending on how the client's been implemented might result on system level to same behavior as option 1.

As I said these are what quickly came to my mind so there might be other solutions as well. So the reason for this posting is to raise discussion on what would be the correct way to fix this?

-Jarko-


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2011-01-26 19:10 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-11 10:00 Ofono CF states not always correct Jarko Poutiainen
2011-01-11 15:16 ` Denis Kenzior
2011-01-14 13:20   ` Jarko Poutiainen
2011-01-14 15:59     ` Denis Kenzior
2011-01-18 12:21       ` Jarko Poutiainen
2011-01-18 15:56         ` Denis Kenzior
2011-01-18 21:08           ` Pekka Pessi
2011-01-18 21:24             ` Denis Kenzior
2011-01-18 21:32               ` Pekka Pessi
2011-01-18 21:50                 ` Denis Kenzior
2011-01-18 22:08                   ` Pekka Pessi
2011-01-26  9:14                   ` Jarko Poutiainen
2011-01-26 19:10                     ` Denis Kenzior

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.