summaryrefslogtreecommitdiffstats
path: root/src/voicecall.c
AgeCommit message (Collapse)AuthorFilesLines
2011-10-12voicecall: Make emulator use release_queueDenis Kenzior1-18/+11
2011-10-12voicecall: Fix HangupAll for HFPDenis Kenzior1-5/+38
HFP does not implement HangupAll natively and most AGs do not support releasing held calls by id. Work around this by using hangup active and then dropping all held calls if no waiting calls exist. Otherwise fall back to releasing calls by id.
2011-10-10core: Update copyright informationMarcel Holtmann1-1/+1
2011-08-18voicecall: Relax reqs for hangup of held callsDenis Kenzior1-1/+3
If we have a single held call, then it should be possible to hang it up with 'Hangup' even if active calls exist. Only if multiple held calls or a waiting call exists should we disallow the request due to possible side-effects.
2011-08-18voicecall: Move stuff aroundDenis Kenzior1-48/+48
2011-08-15emulator: fix indicator notificationFrédéric Danis1-11/+0
2011-07-25voicecall: Be more paranoid and null terminateDenis Kenzior1-1/+4
2011-07-25voicecall: Use defined constantsDenis Kenzior1-3/+3
2011-07-25voicecall: api for set/clear alpha and icon idJeevaka Badrappan1-0/+65
2011-07-21voicecall: remove usage of em_atd_numberFrédéric Danis1-10/+9
as emulator atom can only run with a 'ready' SIM, use saved number instead of em_atd_number
2011-07-19voicecall: Free settings when sim gets locked outDenis Kenzior1-1/+2
2011-07-19voicecall: close settings when SIM is removedFrédéric Danis1-0/+3
This also fixes the case where +BLDN uses an invalid number when the SIM is removed.
2011-07-19voicecall: fix callheld indicator for PTSFrédéric Danis1-0/+20
Fix PTS test TP/TWC/BV-03-I [Call Waiting- Hold Active/Retrieve Waiting Call or Held]. PTS test fails after receiving intermediate update of callheld indicator with value 0 (no held call) before it receives update to value 1 (active and held calls). This is due to the non-atomic update of calls status after call swap (moving first call to active state before moving second one to hold state). HFP 1.5 spec specifies that an update of callheld indicator to 1 should be sent after AT+CHLD=2 command. As oFono emulator sends +CIEV only if the indicator value changes, we need to use an intermediate state for callheld indicator (2, all calls on hold). So, in case of multiple active calls, or an active call with an active mutiparty call, force update of callheld indicator to 2.
2011-07-14voicecall: Minor style fixDenis Kenzior1-5/+5
2011-07-14voicecall: dial_request_user_cancel is not safeDenis Kenzior1-14/+8
It is not safe to call dial_request_user_cancel directly. This is because there might be a situation where the SIM requested the calls to be dropped first. If we're still executing the release_all_active request and someone calls hangup -> crash. Instead it is safer to throttle the hangup requests until the call is actually dialing. In similar fashion, we should not allow hanging up a specific call if a dial request is active, unless that call is part of the SIM dial request. Note that by default this is not known until the driver's dial implementation returns and the call is in the dialing (or alerting / connected) state.
2011-07-14voicecall: Send busy to DBus if emulator is pendingDenis Kenzior1-12/+12
2011-07-14voicecall: Don't send response to defunct emulatorDenis Kenzior1-12/+28
2011-07-14voicecall: Throttle emulatorsDenis Kenzior1-35/+45
Make sure that only a single request from (possibly multiple) emulators is ever sent to the voicecall driver. In the beginning it wasn't clear whether this will be necessary, however several command implementations already implemented basic throttling (+CHUP, ATD, CHLD=3, CHLD=2x) and it made sense to make this more formal. The other constraint is the abrupt removal of the emulator atom while an operation is pending. This case must be handled gracefully. See next commit.
2011-07-14voicecall: Minor style fixesDenis Kenzior1-4/+4
2011-07-14voicecall: manage multiparty list in AT+CHLD=2XFrédéric Dalleau1-2/+56
2011-07-14voicecall: manage multiparty list in AT+CHLD=3Frédéric Dalleau1-4/+51
2011-07-14voicecall: Minor style fixDenis Kenzior1-1/+1
2011-06-21voicecall: add ATD> support for HFP emulatorFrédéric Danis1-3/+28
2011-06-16voicecall: add +BLDN support for HFP emulatorFrédéric Danis1-0/+34
2011-06-16voicecall: add ATD support for HFP emulatorFrédéric Danis1-19/+146
2011-06-01voicecall: save last dialed numberFrédéric Danis1-0/+45
2011-06-01voicecall: create generic dial functionFrédéric Danis1-27/+55
split manager_dial between generic and dbus parts
2011-05-24voicecall: remove unnecessary local varFrédéric Dalleau1-5/+1
2011-05-22voicecall: add +VTS support for HFP emulatorFrédéric Dalleau1-0/+52
2011-05-16voicecall: fix CHLD support replyFrédéric Dalleau1-2/+2
2011-05-04voicecall: CHLD support must be enclosed in a listDenis Kenzior1-4/+5
2011-05-04voicecall: Simplify CHLD support generatorDenis Kenzior1-46/+19
In addition, fix ordering and make sure that lower case 'x' is used
2011-05-04voicecall: CHLD call ids start at 1, not 0Denis Kenzior1-2/+2
2011-05-04voicecall: add +CHLD=2X support for HFP emulatorFrédéric Dalleau1-0/+17
2011-05-04voicecall: add +CHLD=1X support for HFP emulatorFrédéric Dalleau1-2/+20
2011-05-04voicecall: add +CHLD=4 support for HFP emulatorFrédéric Dalleau1-0/+14
2011-05-04voicecall: add +CHLD=3 support for HFP emulatorFrédéric Dalleau1-0/+14
2011-05-04voicecall: add +CHLD=0 support for HFP emulatorFrédéric Dalleau1-1/+24
2011-05-04voicecall: add +CHLD support for HFP emulatorFrédéric Dalleau1-0/+70
2011-05-04voicecall: Fix variable initializationFrédéric Dalleau1-0/+1
2011-04-26voicecall: fix waiting calls for HFP emulatorFrédéric Danis1-1/+3
Fix precedence between waiting and dialing so HFP emulator is notified of dialing/alerting even in case of a waiting call pending.
2011-04-26voicecall: Update CLCC buffer size and commentDenis Kenzior1-3/+4
2011-04-26voicecall: Refactor the previous commit slightlyDenis Kenzior1-13/+11
2011-04-26voicecall: add +CLCC support for HFP emulatorFrédéric Dalleau1-0/+58
2011-04-19voicecall: Tweak the behavior of previous commitDenis Kenzior1-17/+11
Use a generic void pointer to remove the need for emulator_release_done function. Use naming a bit more consistent with the rest of the codebase
2011-04-19voicecall: add +CHUP support for HFP emulatorFrédéric Danis1-5/+86
Update multirelease_callback to be used from DBus calls or HFP Emulator. "release done" is configurable by multirelease caller.
2011-04-19voicecall: Don't go over 80 characters per lineDenis Kenzior1-1/+2
2011-04-19voicecall: add ATA support for HFP emulatorFrédéric Danis1-6/+68
2011-04-19voicecall: add API to find call by statusFrédéric Danis1-0/+16
2011-04-11voicecall: fix to sim ecc free logicDenis Kenzior1-4/+7
Correct copy paste mistakes and a slight logic oversight