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- _______________________________________________ ofono mailing list ofono@ofono.org http://lists.ofono.org/listinfo/ofono