summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/ConnectionService.java
AgeCommit message (Collapse)Author
2021-10-04DSDA Framework changesSukanya Rajkhowa
- Add new event for RESUME fail case - Make certain ConnectionService methods protected Change-Id: Ib2a7cc13f6256fa3eef7d5dc77a6f66baa19e7ca CRs-Fixed: 3041636
2021-05-13Merge SP1A.210510.001Brian Orr
Change-Id: Ia86f3e18206beabe334e3081cedbaf5b3274f78e
2021-04-16[automerger] IMS: Fix issue with answering call for some 3rd party apps am: ↵Muhammed Siju
3d24e82f45 Change-Id: I69e7658cc70d6ccdc9aca92caa744c90ea6ba032
2021-04-16IMS: Fix issue with answering call for some 3rd party appsMuhammed Siju
Some 3rd party call manager apps, implement only onAnswer() method for answering calls. So make sure onAnswer() is invoked when answer call is requested without videostate. Change-Id: I033279e4bd17fa291ca2cb8f149e33264446d24a CRs-Fixed: 2921144
2021-04-06Add unit test init method.Tyler Gunn
When trying to write some connectionservice unit tests, it became clear that the mAreAccountsInitialized precondition adds a LOT of overhead and test scaffolding. It was easier to just be able to bypass that in the unit tests. Test: Added as part of unit test. Bug: 178649879 Change-Id: Ibed3e69215dad59b252193f701508c18f43b59a2
2021-04-02Merge SP1A.210329.001Scott Lobdell
Change-Id: I1e21c5890b5b2e2f2855f09960bc8eec8aa922bf
2021-03-24Merge SP1A.210311.001Scott Lobdell
Change-Id: Id1a205bf3f0609c0b13e4bea377056c3b06299fa
2021-03-12Merge "Annotation and doc improvement for adhoc conference APIs." am: ↵Grace Jia
0251d617a5 am: e4bc4e9ca5 am: 3e96c1328c Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1412812 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: Ie849bba0805a1a43a841ae204337c12d3f5d9791
2021-03-11Merge "Annotation and doc improvement for adhoc conference APIs."Grace Jia
2021-03-10Merge "Add onBindClient for testing" am: 53252b14e5 am: 40a22b24b0 am: ↵Hall Liu
8c022a831a Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1625243 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: I2e05f57f4ec6b01082c0e1eac97a2a23ce677cbd
2021-03-09Add onBindClient for testingHall Liu
Add an overrideable method in ConnectionService that gets called when telecom binds, since onBind is final and it's unsafe to make not-final. Bug: 181057509 Test: atest CtsTelecomTestCases Change-Id: I80088185402789fec499b8659ca8b74bcec05748
2021-03-01Merge SP1A.210222.001Scott Lobdell
Change-Id: If3509f3a660e820f4c8c0b29e007faa868e1f089
2021-02-18User arg object in onCallFilteringCompletedHall Liu
In Connection#onCallFilteringCompleted, use a single data class argument instead of making a hodgepodge of args. Fixes: 180616846 Test: atest CtsTelecomTestCases Change-Id: I33e80e3f59418c5d87799661c0764da029cc9f62
2021-02-17Merge changes from topics "call-screening-refactor", ↵Hall Liu
"composer-call-screening" into sc-dev * changes: Add APIs to support call composer filtering Refactor CallScreeningService's internal structure
2021-02-17Merge SP1A.210208.001Daniel Norman
Change-Id: I7d4929024872b369444e276a60ded06e37b1fefb
2021-02-12Refactor CallScreeningService's internal structureHall Liu
Use a single AIDL method and perform logic in Telecom instead of slicing up the call response on the client side. Also pass through the call response to the connection service. Bug: 179412110 Test: atest ConnectionServiceTest CallScreeningServiceTest Change-Id: I878c0ce34142da104dc0e2795487b03a6bdacb5f
2021-02-11Merge "Set default value of EXTRA_ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE ↵Grace Jia
true." am: f67a99fe60 am: a8cafc65ff am: b609dab7b7 Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1571460 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: I5cb615dd3bceee20b3fb43977a6792abc14302b4
2021-02-02Set default value of EXTRA_ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICEGrace Jia
true. Self-managed connections need to bind to special in-call service in order to expose itself to bluetooth stack. Bug: 178679937 Test: Manually use duo to make self-managed calls and make sure it's audible on BT Change-Id: I7c3c56e9c65d43f598645aee5842e97fd73d300e
2021-02-02Fix faulty log statementHall Liu
Bug: 177613111 Test: manual Change-Id: I95830d4af1542671e6a06596e2661d41f124838e
2021-02-01Add relative APIs for InCallService that can support self-managedGrace Jia
connections that want to expose itself. Add PhoneAccount#EXTRA_ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE and Connection#onInCallServiceTrackingChanged. Bug: 161144815 Test: CtsTelecomTestCases Change-Id: I0a42ea79a1cd46aa9df3399c4fa2e9396321778a Merged-In: I0a42ea79a1cd46aa9df3399c4fa2e9396321778a
2021-01-26Merge SP1A.210122.003Scott Lobdell
Bug: 178561525 Change-Id: Ifb7c4a1c94e1f4cab710826d57282b981a46e990
2021-01-22Merge SP1A.210105.001Scott Lobdell
Change-Id: Iebfaf27bb339a99d9303a53e6c2c397b0001c814
2021-01-20Annotation and doc improvement for adhoc conference APIs.Grace Jia
Annotate Conference#onAnswer with @VideoState Mark parameters of adhoc conference APIs with @NonNull. Document the distinction between returning null and returning a failed conference. Bug: 165801368 Test: make Change-Id: Ic0bd1a1e431ca0dec52afc8a28996929684236ba
2021-01-19Add relative APIs for InCallService that can support self-managedGrace Jia
connections that want to expose itself. Add PhoneAccount#EXTRA_ADD_SELF_MANAGED_CALLS_TO_INCALLSERVICE and Connection#onInCallServiceTrackingChanged. Bug: 161144815 Test: CtsTelecomTestCases Change-Id: I0a42ea79a1cd46aa9df3399c4fa2e9396321778a
2021-01-15Add API to inform Telephony that call filtering is completeHall Liu
Add an API that gets called once call filtering finishes. Meant to trigger download of call composer images. Bug: 177613111 Test: atest ConnectionServiceTest Change-Id: I4e06f19c859022ddb933f697dde13e459a3d354e
2020-10-19Use phoneAccountHandle based on connectionSungjae
After triggering dial, phoneAccountHandle can be changed. In this case, the stack to which dial is requested and the stack to be displayed on the UI can be different. So, modified to use phoneAccountHandle which base on connection, not request. Bug: 168681491 Test: manual Signed-off-by: Sungjae <sung_jae.kim@samsung.com> Change-Id: I56ac5b2d4f1b5e8d78741a43a332b025af7e4d54
2020-10-09Merge SP1A.200921.001Scott Lobdell
Change-Id: I6a8d7215f874fed05e9fec71b17c8a3d1e2c94e0
2020-08-31Merge Android R (rvc-dev-plus-aosp-without-vendor@6692709)Xin Li
Bug: 166295507 Merged-In: I3d92a6de21a938f6b352ec26dc23420c0fe02b27 Change-Id: Ifdb80563ef042738778ebb8a7581a97c4e3d96e2
2020-08-13Merge "Add adhoc conference APIs to RemoteConnection and ↵Grace Jia
RemoteConnectionService." am: 329c6ff777 am: e40cfa60de Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1388908 Change-Id: I49034d851b111792fa54b3d2f236d56513bb00f9
2020-08-13Merge "Add adhoc conference APIs to RemoteConnection and ↵Grace Jia
RemoteConnectionService."
2020-08-12Merge "Improve remote connection logging."Tyler Gunn
2020-08-11Add adhoc conference APIs to RemoteConnection andGrace Jia
RemoteConnectionService. Plumb through the adhoc conference APIs via these new APIs. Bug: 159944852 Test: atest CtsTelecomTestCases:RemoteConnectionTest Change-Id: Icfa27e0616dd35ba350f7a491e5c95337a286b9d
2020-08-05Improve remote connection logging.Tyler Gunn
This CL improves traceability of calls initiated via a remote connection service. For regular incoming/outgoing calls, when initiating a request to create a remote connection in RemoteConnectionService, we set EXTRA_REQUESTING_PACKAGE_NAME in the parcelled request to the package name of the connection manager. In ConnectionService this serves as an indicator that the incoming request is via a connection manager and is used to trigger setting of EXTRA_REMOTE_PHONE_ACCOUNT_HANDLE with the phone account handle the remote connection service uses to place the call. For conferences and existing connections, the initial request is from the remote connection service to the connection manager so we can just set the EXTRA_REMOTE_PHONE_ACCOUNT handle there directly. Also cleaned up logging in the telecom session logging to remove the assumption that the ownerInfo is an incall service. Test: Manual testing with connection manager to verify logging. Bug: 154353494 Fixes: 155097158 Merged-In: I916750e0f558db1eb9e581bab7a9fbc71f781709 Change-Id: Iee1b5cfd3334a5de08d7b04022b7c6d5af6a4b04
2020-07-30Merge "Update language to comply with Android's inclusive language guidance" ↵Tyler Gunn
am: a005cb30ed am: 3772a5b3fd Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1377136 Change-Id: I2f838a951cec8f6e7af82a0cd08d99d6045f3952
2020-07-30Merge "Update language to comply with Android's inclusive language guidance"Tyler Gunn
2020-07-29Update language to comply with Android's inclusive language guidanceTyler Gunn
See https://source.android.com/setup/contribute/respectful-code for reference Test: Presubmit Bug: 161896447 Change-Id: I4142f4819f5ed3e2ffddf471b90923985e72523a
2020-07-28Merge "Expose adhoc conference calling API as public." am: 8ebbe3c038 am: ↵Treehugger Robot
fb8f41f0c2 Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1368819 Change-Id: Ia5e17f2dbbfbb539f2415348e1ddb960354d3662
2020-07-27Expose adhoc conference calling API as public.Grace Jia
Bug: 159944852 Test: make Change-Id: I2cf39a6fd8a02ca4f2d0c83c484ab12bb13f74c3
2020-07-15IMS: Add doAnswer APIAshit Sood
- Added doAnswer API to implement Pseudo DSDA logic in telephony. Change-Id: I16c12dff9de45a019e0b507a871edda193186ea2 CRs-Fixed: 2718074
2020-05-11Ensure conference state is posted to Telecom for new conferences.Tyler Gunn
There is an edge-case where an IMS conference fails to merge two participants into a conference, AND the conference event package comes in before the ImsCall indicates it is multiparty. In this case, the CEP will have a single participant which means we'll treat the call as a standalone call. ImsConference correctly sets the conference state, but this was previously just passed along the ConnectionService adapter to Telecom. In this case the conference isn't even added to Telecom so the method call in effect does nothing. Changed to cache the conference state and ensure when adding the conference to Telecom that we call the setConferenceState method (yeah, could have put this in the ParcelableConference, but this is an edge case). Test: Wrote unit test to verify property is set. Bug: 134047008 Fixes: 155097934 Merged-In: I203880c593f6bac471a06eb9dcbb529d0bb75ba5 Change-Id: Ib48437abb1295d147e227727ce4ff2996f28b5de
2020-05-05Improve connection manager logging.Tyler Gunn
1. In ConnectionService, upping the incoming log level to info from debug; this ensures we can better trace whether methods are actually called. 2. Added the ability in the logging class to get a new external session which supplies the owner info which will be passed in to the recipient of the external session. This allows Telecom or a connection manager to pass in a package abbreviation which will form the calling owner info when the receiver continues the external session. 3. Add owner info to the Session.Info class so it can be passed about. 4. Ensure owner info is copied when getting Session.Info; subsessions were not showing the owner info in the past; this corrects that. 5. When retrieving the external session info, creating a "package call stack" with the owner info. This lets us see the hierarchy of where calls originated. Example: cad/cast/ccme Shows that com.android.dialer send a message to com.android.server.telecom which relayed a message to com.connection.manager.example. 6. Start sessions in RemoteConnection API methods and pass along external session info. This bridges session tracing across a connection manager so we can now trace a method call all the way from dialer, through telecom, through the connection manager, and finally into telephony. Test: Manual call testing with connection manager to verify log behavior. Bug: 153899641 Change-Id: I4518a50550203818374b4e0b52eccb84ffd561dc
2020-04-23Merge "Add a new call direction parameter to conferences for multiparty"Brad Ebinger
2020-04-22Merge "Hide adhoc conference APIs."Tyler Gunn
2020-04-22Hide adhoc conference APIs.Tyler Gunn
Most of this was previously hidden; these last stragglers were missed. Test: make update-api ; verify hidden Bug: 152394802 Fixes: 153376610 Merged-In: I90e05379d3c779bdc6b64e3ff68513bb3f302456 Change-Id: I41bda5b8ad368e1c88e4dd9e45d978a111a22e53
2020-04-20Add a new call direction parameter to conferences for multipartyBrad Ebinger
1) Refactor ParcelableConference - too many optional params 2) Add a new call direction parameter for external multiparty call scenarios, where a conference is assigned a direction. Bug: 153595501 Fixes: 154246448 Test: atest TelecomUnitTests TeleServiceTests Merged-In: Icb576a07b9a7a81e228babfea53474be83da7593 Change-Id: Icb576a07b9a7a81e228babfea53474be83da7593
2020-04-20Add new @hide API to pass call direction changes through TelecomBrad Ebinger
Bug: 153277327 Fixes: 154245581 Test: atest TelecomUnitTests Merged-In: Icad12c4144bf185c24ee80bcbdd1aec29550bf4e Change-Id: Icad12c4144bf185c24ee80bcbdd1aec29550bf4e
2020-04-17Improve remote connection logging.Tyler Gunn
This CL improves traceability of calls initiated via a remote connection service. For regular incoming/outgoing calls, when initiating a request to create a remote connection in RemoteConnectionService, we set EXTRA_REQUESTING_PACKAGE_NAME in the parcelled request to the package name of the connection manager. In ConnectionService this serves as an indicator that the incoming request is via a connection manager and is used to trigger setting of EXTRA_REMOTE_PHONE_ACCOUNT_HANDLE with the phone account handle the remote connection service uses to place the call. For conferences and existing connections, the initial request is from the remote connection service to the connection manager so we can just set the EXTRA_REMOTE_PHONE_ACCOUNT handle there directly. Also cleaned up logging in the telecom session logging to remove the assumption that the ownerInfo is an incall service. Test: Manual testing with connection manager to verify logging. Fixes: 154353494 Change-Id: Iee1b5cfd3334a5de08d7b04022b7c6d5af6a4b04
2020-04-14Merge "Ensure conference state is posted to Telecom for new conferences." ↵Tyler Gunn
into rvc-dev
2020-04-10Ensure conference state is posted to Telecom for new conferences.Tyler Gunn
There is an edge-case where an IMS conference fails to merge two participants into a conference, AND the conference event package comes in before the ImsCall indicates it is multiparty. In this case, the CEP will have a single participant which means we'll treat the call as a standalone call. ImsConference correctly sets the conference state, but this was previously just passed along the ConnectionService adapter to Telecom. In this case the conference isn't even added to Telecom so the method call in effect does nothing. Changed to cache the conference state and ensure when adding the conference to Telecom that we call the setConferenceState method (yeah, could have put this in the ParcelableConference, but this is an edge case). Test: Wrote unit test to verify property is set. Fixes: 134047008 Change-Id: Ib48437abb1295d147e227727ce4ff2996f28b5de
2020-04-09Add a new call direction parameter to conferences for multipartyBrad Ebinger
1) Refactor ParcelableConference - too many optional params 2) Add a new call direction parameter for external multiparty call scenarios, where a conference is assigned a direction. Bug: 153595501 Test: atest TelecomUnitTests TeleServiceTests Change-Id: Icb576a07b9a7a81e228babfea53474be83da7593