summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/ConnectionService.java
AgeCommit message (Collapse)Author
2020-04-08Add new @hide API to pass call direction changes through TelecomBrad Ebinger
Bug: 153277327 Test: atest TelecomUnitTests Change-Id: Icad12c4144bf185c24ee80bcbdd1aec29550bf4e
2020-03-25Hide adhoc conference APIs.Tyler Gunn
Most of this was previously hidden; these last stragglers were missed. Test: make update-api ; verify hidden Fixes: 152394802 Change-Id: I41bda5b8ad368e1c88e4dd9e45d978a111a22e53
2020-02-14IMS: Add support for IMS Explicit call transferRavi Paluri
Test: Manual Bug: 62170207 Change-Id: I06a256adb0e1910d40809c91bcdd42c56a142842
2020-02-13Merge "API Review cleanups."Tyler Gunn
2020-02-13API Review cleanups.Tyler Gunn
- New @SystemApis on Conference and PhoneAccount were missing the required permissions annotations. - Rename PROPERTY_ASSISTED_DIALING_USED to PROPERTY_ASSISTED_DIALING - Standardize get/setConnectionStartElapsedRealtimeMillis method naming across Connection and Conference classes. - Clarify Conference#sendConferenceEvent API documentation to match the docs present for similar method in Connection; include some examples of valid event/extras combinations. - Update TelecomManager#getDefaultdialerPackage to use UserHandle instead of userId. - Move Conference#getConnectionStartElapsedRealtimeMillis to public API since the setter is already part of the public API. Test: Run Telecom and Telephony CTS tests. Test: Run Telephony unit tests. Test: Perform manual single-party-conference regression test to confirm that conference behavior does not regress. Bug: 147301297 Bug: 148286830 Bug: 148284863 Bug: 148284843 Bug: 148287068 Bug: 148285484 Bug: 148285560 Change-Id: I1f446d81859fa109d74af3661a42a0bd224de5aa Merged-In: I1f446d81859fa109d74af3661a42a0bd224de5aa
2020-02-11Ims: Add support to add participants to existing callRavi Paluri
Supports initiation of a conference call by directly adding participants to existing call Test: Manual Bug: 62151032 Change-Id: I4e60efafab4761ae65a460fdc6c4cacc3e233220
2020-01-23Add support for rejecting Telecom call with a specified reason.Tyler Gunn
Adding a new Call API which supports passing a user-specified call rejection reason down to the lower layers for reporting to the network. Part of the VERSTAT spec involves support for this type of signaling, so it makes sense to also support it here as well. There are two potential types of reject reason: declined - user declined the call because they want it to go to voicemail or don't want to talk to the caller right now. unwanted - this is a nuisance call and the user never wanted to receive it. Bug: 135929421 Test: Added new CTS test to validate API pathways. Test: Ran existing telecom and telephony unit tests. Test: Modified test dialer app to use the new reject API and verified that the reject reason signals down to the modem and translates to the correct reject cause. Change-Id: I6f25fafa2b2620e2839e5d3a9fb986f1130fa165
2020-01-22Ims: Add support for Adhoc Conference callsRavi Paluri
Add support for Adhoc Conference calls Test: Manual Bug: 62151032 Change-Id: Id50d235595d2133f867848ffdebdfe11e2f1c896
2019-12-02Add Verstat fields to Telecom call/connection classes.Tyler Gunn
Test: Added new CTS tests to verify operation. Bug: 135929421 Change-Id: I42360dad677060e03ecec865f31145b1760cf46a
2019-11-08More telephony updates for mainline.Tyler Gunn
Add new TelecomManager#getDefaultDialerPackage which is multiuse aware; this is used when showing the voicemail notification. Remove some @hide methods from Conference; push these inline. Move ConferenceParticipantConnection into frameworks/opt/net/ims since it is just an IMS implementation detail. Bug: 141576016 Test: Manual smoke test. Test: Run unit tests. Test: Run CTS tests. Change-Id: I39b6955cb14cc1ca68b05c620c3d09a2cdfe30c9 Merged-In: I39b6955cb14cc1ca68b05c620c3d09a2cdfe30c9
2019-09-17Expose ConnectionService Handler to remove flaky testsBrad Ebinger
Test: atest TelecomUnitTests Change-Id: Ibb80b5739083ad9f85ee06f4d9f0017f4cb605bd
2019-06-25Support indicating call direction on existing connections.Tyler Gunn
This is important for ensuring the original call direction for existing connections added from Conference Event Packages matches the call direction of the original calls merged into the conference. Also moved a utility function into ConferenceParticipant from ConferenceParticipantConnection to make it generically usable inside Telephony. Test: Run all unit tests. Test: Manual testing using VoLTE conference calls with mix of MO and MT calls; verify call logging is appropriate. Bug: 134471046 Change-Id: Iab09397b811782ab0f876aac02070e3447d81f09
2019-05-31Enhancements to conference for non-conference host scenarios.Tyler Gunn
When a device A creates a conference call containing device B and C, both B and C can receive IMS signaling to indicate that they are in a conference call. This occurs on most domestic carriers; the Telephony framework uses the "multiparty" indicator on the IMS call to switch the call to a conference call. We made some changes to how conference calls are logged in Q which improves the accuracy of the call durations. We used to log calls as they're merged into a conference. In the case of a participant in a remotely hosted conference call, we'd log the call as soon as they are remotely added to the conference. This is unfortunate as the call durations are grossly under-reported. The conference call logging changes now assume we'll log the conference event package children in the conference instead of the participants which merge into the conference itself. On domestic carriers, since the call on B (or C) becomes a conference, we would then no longer log the call. This is FURTHER complicated because on some carriers, B and C will ALSO receive a conference event package from the network showing all the participants in the conference. So if B hangs up on the conference, they will have entries in their call log for A and C, which is really strange because a call to C was never originated on their device. In Telecom we need to ensure we do not log remotely hosted conference participants, and we need to ensure that we DO log a remotely hosted conference as if its just a single party call. To accomplish this we need: 1. the address and name display information associated with the call from A-B / A-C prior to the call turning into a remotely hosted conference. We need this to log to the call log 2. the remotely hosted conference and participants need to be marked in a manner that Telecom can identify them. Test: Manual test. Test: Add unit test to cover this logging scenario. Bug: 132325382 Change-Id: I65e713f68d1695a48d96dacbf7faa4476cd8d815
2019-05-17Make queryRemoteConnectionServices DSDS aware.Tyler Gunn
The method queryRemoteConnectionServices had the issue that it assumes there is a single connection manager for the device. This assumption does not work on a multisim device. Since the ConnectionManager is associated with a particular carrier, this means that the connection mgr for one carrier could try to impact calls destined for another carrier. This change ensures that the calling package is passed into Telecom so that we can determine which RemoteConnectionServices which are available to the calling connection manager. Test: Manual test on DSDS with a connection mgr carrier and another carrier. Bug: 131856987 Change-Id: I46d80dc68adaab7fd4374f023d7ba4242804c253
2019-04-16Make connection events work for conferencesHall Liu
Pipe through the onConnectionEvent call between the conference host connection and the android.telecom.Conference object. Fixes: 130404376 Test: manual Change-Id: Ifad3e59dc9764aa2efb2b9766271e18853bf1c76
2019-01-22Merge "Support for treating single party IMS conference as a standalone ↵Tyler Gunn
call." am: 89e53d81ce am: 955c9adb36 am: 4fd8e1b376 Change-Id: I7ab00c1b82858014fb3135474a64a9fa44d8283b
2019-01-22Merge "Support for treating single party IMS conference as a standalone ↵Tyler Gunn
call." am: 89e53d81ce am: 955c9adb36 Change-Id: I5af4c4591cd825adfeab8be56d7c60d29905f1c4
2019-01-19Support for treating single party IMS conference as a standalone call.Tyler Gunn
Adding @hide APIs which Telephony can use to make a conference call with a single participant look like its a standalone call. Test: Manual testing Bug: 75975913 Change-Id: Id8532234ab295785fc749b120898f43911e12637
2018-10-08Merge "docs: fixing 'mange' instead of 'manage'" into pi-dev am: 14aa42cfdakopriva
am: 57adb99451 Change-Id: I477a610e0602e464847c1a1ccb13b21644ee1ae8
2018-10-08Merge "docs: fixing 'mange' instead of 'manage'" into pi-devkopriva
am: 14aa42cfda Change-Id: Id461e2430301c62be5ee76f5046370069cb1a34c
2018-10-08docs: fixing 'mange' instead of 'manage'kopriva
Test: make ds-docs Bug: 117449040 Change-Id: I282a2e960bbf722bf3a72dd932e3bf685abb74e5 Exempt-From-Owner-Approval: Docs-only change
2018-08-01Merge "Telecom: Reset the duration after the CDMA call is accepted" am: ↵Hall Liu
2cbf44dc2f am: e784d5e5ca am: a4c0632746 am: 47dceea7d8 Change-Id: I28e69d1b32e71b467dded2d90118a46f9ef3fffc
2018-08-01Merge "Telecom: Reset the duration after the CDMA call is accepted"Hall Liu
am: 2cbf44dc2f Change-Id: I823efd5765b77fcf55f4c38a6091d980530abae8
2018-07-31Telecom: Reset the duration after the CDMA call is acceptedMengjun Leng
In android original design, the duration of CDMA MO call is started from the dial command sent, so it is not the real duration of the active time. In this patch, a new message is registered to listen the event of the call accepted, and then reset the duration when the event happens. Change-Id: Icc447012030ae243f200ec2c83b7d5210af9b31c
2018-06-06Merge "Merge "Ensure self-managed calls use voip audio mode." am: b62aa315d1 ↵Tyler Gunn
am: fd3e10b1bc" into pi-dev-plus-aosp am: 6823c8a822 Change-Id: I1352a44cbb55fdeeb79771b27055a70b83a3cbb8
2018-06-06Merge "Ensure self-managed calls use voip audio mode." am: b62aa315d1Tyler Gunn
am: fd3e10b1bc Change-Id: I8f7842fa84fcce91a292b32189cd827b4a125fb0
2018-05-24Ensure self-managed calls use voip audio mode.Tyler Gunn
Although Telecom ensures that new calls use voip audio mode, the default value from a Connection would override the Telecom default. Bug: 76362663 Test: Modify test app to ensure it does not set voip audio mode, ensure Telecom uses voip audio mode for new calls. Change-Id: Ie6477659cf6dabd08f371d4958ece1d258cd3106
2018-03-07API Documentation and Constant cleanup.Tyler Gunn
1. Update handover API docs for clarity. 2. Added an unknown value per API review comments. 3. Renamed HANDOVER_FAILURE_DEST_USER_REJECTED to HANDOVER_FAILURE_USER_REJECTED 3. Removed the HANDOVER_FAILURE_DEST_INVALID_PERM constant since it isn't used (methods which deal with permissions throw security exceptions). Test: Make doc and verify documentation. Fixes: 73751004 Fixes: 73750515 Fixes: 73750817 Merged-In: I7860fcd813f25adaaccf632f2c61dd4138a0a889 Change-Id: I7860fcd813f25adaaccf632f2c61dd4138a0a889 (cherry picked from commit c7a86b14a8e50d979b6b1c9e3dffe94748e2bc93)
2018-03-07Merge "API Documentation and Constant cleanup." am: 8882c55b21 am: 8917fc21ccTyler Gunn
am: 168a77237f Change-Id: I7860fcd813f25adaaccf632f2c61dd4138a0a889
2018-03-07Merge "API Documentation and Constant cleanup." am: 8882c55b21Tyler Gunn
am: 8917fc21cc Change-Id: Ic4a159b838c952594b0860ded69fc07c74180961
2018-03-07Merge "API Documentation and Constant cleanup."Treehugger Robot
2018-03-05Update ConnectionService API commentPengquan Meng
Bug: 73750116 Test: current telecom test Change-Id: I74e9636c305b164bf01c3136c53e9a432101945b
2018-03-02API Documentation and Constant cleanup.Tyler Gunn
1. Update handover API docs for clarity. 2. Added an unknown value per API review comments. 3. Renamed HANDOVER_FAILURE_DEST_USER_REJECTED to HANDOVER_FAILURE_USER_REJECTED 3. Removed the HANDOVER_FAILURE_DEST_INVALID_PERM constant since it isn't used (methods which deal with permissions throw security exceptions). Test: Make doc and verify documentation. Change-Id: Id21d6b4c83d5c773ab38d78eb6b1886a1ac4dadf Fixes: 73751004 Fixes: 73750515 Fixes: 73750817
2018-02-22RTT bugfixes, part 5Hall Liu
* Add a new API to allow Telecom to inform ConnectionServices when the RTT text stream changes * No longer set the RTT property from ConnectionService. Client apps should be setting properties themselves. * Add Dialer-side RTT property in order to remove the dependence on checking the RTT streams, which have a complex lifecycle Bug: 72951201 Bug: 72648661 Test: manual, with real RTT calls and Dialer's SimulatorConnection, also cts Change-Id: Ic4c7d883d2dc6baf8e8c0eaa4df58d7de8762b9e Merged-In: Ic4c7d883d2dc6baf8e8c0eaa4df58d7de8762b9e
2018-02-15Merge "RTT bugfixes, part 5"Hall Liu
2018-02-14RTT bugfixes, part 5Hall Liu
* Add a new API to allow Telecom to inform ConnectionServices when the RTT text stream changes * No longer set the RTT property from ConnectionService. Client apps should be setting properties themselves. * Add Dialer-side RTT property in order to remove the dependence on checking the RTT streams, which have a complex lifecycle Bug: 72951201 Bug: 72648661 Test: manual, with real RTT calls and Dialer's SimulatorConnection, also cts Change-Id: Ic4c7d883d2dc6baf8e8c0eaa4df58d7de8762b9e
2018-02-14Merge "Rename Conference#setConnectionElapsedTime to clarity." am: ↵Tyler Gunn
d1134525fc am: a0b41a82ce am: 4c09901931 Change-Id: I493ade2029398983a76fd41fcf9f080ee2f06b95
2018-02-13Merge "Rename Conference#setConnectionElapsedTime to clarity."Treehugger Robot
2018-02-12Rename Conference#setConnectionElapsedTime to clarity.Tyler Gunn
Change name of conference connection elapsed time method to make it more clear what it is for. Updated documentation of this method and its companion to make it more clear what they are for. Test: Compile - this is a docs and naming change only. Bug: 70639525 Change-Id: I02662cb0331cba0d1fe2d4353438a68f334f9192
2018-02-08Merge "IMS: Add support in frameworks for call deflection feature" am: ↵Pooja Jain
ba0f9d2973 am: f39bef4801 am: ac48eed9c0 Change-Id: I4695aca7d886f37341672ea5815770e3ccdf7a51
2018-02-07IMS: Add support in frameworks for call deflection featurePooja Jain
Call deflection feature is useful to deflect MT call to another number. Test: Manual Bug: 62170348 Change-Id: Idfbcc175a856aa0bb9476f8c73d7a614a3af0700
2018-01-25Add handover permission, fill in some missing API gaps.Tyler Gunn
Adding the ACCEPT_HANDOVER runtime permission which an app must have in order to accept handovers (this is per design). Adding missing onHandoverComplete method in the android.telecom.Connection API (per design). Finishing plumbing for android.telecom.Call#onHandoverComplete API. Fix issue where the new handover API methods would never get called; the legacy handover extra was being used in this case when it should not have been. Bug: 65415068 Test: Verified using new CTS tests Change-Id: If1558f6a23911862c02ac5b18fb62d86911ed7e2 Merged-In: If1558f6a23911862c02ac5b18fb62d86911ed7e2
2018-01-24Add handover permission, fill in some missing API gaps.Tyler Gunn
Adding the ACCEPT_HANDOVER runtime permission which an app must have in order to accept handovers (this is per design). Adding missing onHandoverComplete method in the android.telecom.Connection API (per design). Finishing plumbing for android.telecom.Call#onHandoverComplete API. Fix issue where the new handover API methods would never get called; the legacy handover extra was being used in this case when it should not have been. Bug: 65415068 Test: Verified using new CTS tests Change-Id: If1558f6a23911862c02ac5b18fb62d86911ed7e2
2018-01-09Add connection serivce focus api interfacePengquan Meng
This add new api interface to ConnectionService to support the connection service focus api. Bug: 69651192 Test: manually Change-Id: Iea49d95b086d32a0ebaf8e9f34fe4556953a0fd5 Merged-In: Iea49d95b086d32a0ebaf8e9f34fe4556953a0fd5
2017-12-21Merge "Add logging and disconnect reason for null connections." am: ↵Tyler Gunn
7661e81f85 am: c840efcf7e am: 5d7c823e16 Change-Id: I57395d052d284ca3b8071b71dc762c1147d1107a
2017-12-21Merge "Add logging and disconnect reason for null connections."Tyler Gunn
2017-12-20Receiving side Call handover API implementation.Sanket Padawe
Bug: 65415068 Test: Manual Design doc: https://docs.google.com/document/d/1qY3oAzjff_4A1ttYb_CGrE_OwTRmXMG_KGsIuPT1ey8/edit#Bug: Change-Id: Ic0c4af19098252389648007628affc19a44f89dd Merged-in: Ic0c4af19098252389648007628affc19a44f89dd
2017-12-19Implement Call handover initiation side APIs.Sanket Padawe
Bug: 65415068 Test: Manual Design doc: https://docs.google.com/document/d/1qY3oAzjff_4A1ttYb_CGrE_OwTRmXMG_KGsIuPT1ey8/edit# Change-Id: I692bb14fba66733154378c2dda525aa85c471a38 Merged-in: I692bb14fba66733154378c2dda525aa85c471a38
2017-12-19Add logging and disconnect reason for null connections.Tyler Gunn
When a ConnectionService implementation returns a null connection, log this and also set a unique disconnect reason to indicate in the telecom dumpsys what happened. Test: Manual Bug: 70385625 Change-Id: Iff9846d434d400c4cf036e9ac46167cfb6f6b58c
2017-12-11Receiving side Call handover API implementation.Sanket Padawe
Bug: 65415068 Test: Manual Design doc: https://docs.google.com/document/d/1qY3oAzjff_4A1ttYb_CGrE_OwTRmXMG_KGsIuPT1ey8/edit#Bug: Change-Id: Ic0c4af19098252389648007628affc19a44f89dd