105 Commits

Author SHA1 Message Date
Tyler Gunn
27a83fe547 Expose phone account register/unregister intents.
These were previously @SystemApi.  Retaining the existing SystemAPI
behavior which sends the intents to those with a private permission.
Extending to ALSO send these intents to the default dialer app as well
using an explicit intent.

Test: Manual
Bug: 37106957
Merged-In: Ifb72870105be5ba024af196a8c3165a9afb397ab
Change-Id: Ifb72870105be5ba024af196a8c3165a9afb397ab
2017-04-15 04:57:47 +00:00
Tyler Gunn
b6ce026fd1 Add getSelfManagedPhoneAccounts() TelecomManager API.
This is consistent with the existing getCallCapablePhoneAccounts API
which is used to get the phone accounts capable of placing phone calls.

Test: CTS
Bug: 34159263
Merged-In: I1396c63a6882947cd66721528e53b6964a9091e0
Change-Id: I1396c63a6882947cd66721528e53b6964a9091e0
2017-04-10 13:29:21 -07:00
Tyler Gunn
3765356699 Self Managed CS Implementation
- Add API guide for developers giving an overview of what they need
to implement.
- Add @hide setLabel method in PhoneAccount; used when registering a
self-managed CS's phone account; we override it with their app label to
ensure they don't try to give themselves another name.

Test: Unit
Bug: 34159263
Change-Id: I0c890dc2feeb3ee438a80ed425db2aaf1f4c1fdd
2017-03-30 19:00:41 -07:00
Tyler Gunn
5a33057092 Merge "Support for showing self-managed calls in IncallService." 2017-03-01 20:32:56 +00:00
Hall Liu
95d5587d0a Introduce APIs for RTT calls (part 1)
Add signaling methods and data pipes for handling real-time text during
a call.

Change-Id: I876827c448252c5f786d7a4919c47891acb03877
Test: manual, through telecom testapps
2017-02-21 15:27:25 -08:00
Hall Liu
8f613fb4d6 Add extra key for app-specified outgoing call timeout
Bug: 34474757
Test: manual
Change-Id: Ia93d68d6a01308b0b93b88977daf983a0ed3a22c
2017-02-14 18:11:11 -08:00
Tyler Gunn
24e1833617 Support for showing self-managed calls in IncallService.
Also added new isInManagedCall TelecomManager API, used to determine if
there are ongoing managed calls only.

Test: Manual, cts
Bug: 34159263
Change-Id: Ib8020617607ccb433c2eee9b9d5a2c929665214b
2017-02-12 19:33:35 -08:00
Tyler Gunn
44e019140e Self managed CS implementation.
Add required AIDL changes to pass along connection fails.

Test: Manual
Bug: 34159263
Merged-In: I0a24ff786b2867aa4e19ac79959df54a04983251
Change-Id: I0a24ff786b2867aa4e19ac79959df54a04983251
2017-02-06 16:20:12 +00:00
Brad Ebinger
d1ab15a1af Merge "Deprecate old TelecomManager actions" 2017-01-23 19:09:12 +00:00
Tyler Gunn
f50354363c Adding self-managed connection service APIs.
1. Adding new APIs for self-managed connection services.
2. Adding Telecom package-level documentation.

Test: Manual (unit, cts pending; this is just scaffolding for now)
Bug: 34159263
Change-Id: Ic226ec8bfcb2fbcc02fe802b47499e47aab17d0a
2017-01-18 14:44:43 -08:00
Brad Ebinger
23b1c6d061 Deprecate old TelecomManager actions
The ACTION_INCOMING_CALL and ACTION_NEW_UNKNOWN_CALL intents are
not used anymore and have been replaced with methods in
TelecomManager. This change marks them as deprecated.

Test: None
Bug: 33783690
Change-Id: I840b0ac202237cc43a0540fe64c832e119b33aa2
2017-01-12 13:10:40 -08:00
Hall Liu
057def534c Add support for Telecom analytics extensions
Add classes for call events and a field for them in
ParcelableCallAnalytics.
Add classes for timing information on user-visible operations.
Add the TelecomAnalytics class as the top-level object for analytics.
Add log session timing information to the TelecomAnalytics class,
independent of individual calls.

Bug: 28623064
Change-Id: Ifee5fdf6b6b341869ff0ff26c4388d357e3d9922
2016-06-14 16:37:10 -07:00
Tyler Gunn
2cbe2b5816 Un-@hide multi-endpoint APIs.
Bug: 28621640
This reverts commit 1bf206b766654ea9c4e9bc7a703a9d5f1d30ab72.
Change-Id: If8c85e4adeb017eec2b7e8199010deae2a920c6a
2016-05-06 03:07:45 +00:00
Sailesh Nepal
b05e4851d0 Merge "[Call Timing] Add constants for call timing extras" into nyc-dev 2016-04-18 22:36:40 +00:00
Tyler Gunn
1bf206b766 Hide multi-endpoint APIs.
Per feature council decision, the multi-endpoint APIs will be @hide for
the N release.

Bug: 28196918
Change-Id: Ia80b089bc754ce87ca208382eb79442b5265844d
2016-04-15 11:28:44 -07:00
Sailesh Nepal
da6bb3883f [Call Timing] Add constants for call timing extras
This CL defines new extras that can be set in a call's intent extras.
These extras track the following:
    CALL_CREATED_TIME_MILLIS - the time when the call was created by
	telephony (or another connection service)
    CALL_TELECOM_ROUTING_START_TIME_MILLIS - the time when telecom
	started processing the call
    CALL_TELECOM_ROUTING_END_TIME_MILLIS - the time when telecom
	finished processing things like call blocking and was ready to
	connect to the UI

These extras can be used by the dialer to track how long it takes for
calls to be shown to the user.

Bug: 28202119
Change-Id: I8fca259d449adedaeb4ff91d35bf59a7409be866
2016-04-15 02:23:59 -07:00
Abhijith Shastry
9bacdabf3e Remove deprecated API launchManageBlockedNumbersActivity
BUG: 27364137
Change-Id: Ie608c3f75d5fe353a1ba127b0da763c421401eb8
2016-04-04 10:46:11 -07:00
Tyler Gunn
876dbfb476 Add API support for multi-endpoint.
This CL includes changes required to support multi-endpoint (see the
design doc linked off the bug).

Main changes include:
- support for indicating if a call/connection is "external" to the device.
- support for indicating if an external call can be pulled from the
remote device to the local device.
- API used to initiate a pull of a call external to the current device to
the current device.
- Made the "connection event" API public (was previously @hide); this will
be used to support passing some error events involving pulling calls to
the incall ui.
- Added new InCallService metadata which will be used to determine if an
InCallService wants to be informed of external calls.
- New disconnect causes which will be used to expose the fact that a
multi-endpoint call was answered elsewhere and that a call ended because
it was pulled to another device.
- New call log call types to indicate if calls were answered elsewhere
or pulled to another device.

Bug: 27458894
Change-Id: I423f64ff965b5e50194635a51868c327782db2a1
2016-03-14 23:26:34 +00:00
Abhijith Shastry
ec30d2fd12 Tweak createManageBlockedNumbersIntent API documentation.
BUG: 27364137
Change-Id: I82b9802b3108f4d9d405fc55fefa766dbcddd537
2016-03-04 16:47:23 -08:00
Abhijith Shastry
6701be428c Add deprecated annotation to launchManageBlockedNumbersActivity API.
BUG: 27364137
Change-Id: I0c5c05042e6bc05a605613bde7ba3c579c1858ed
2016-02-29 16:31:12 -08:00
Abhijith Shastry
a26fe99b1e Add new API to create an intent to manage blocked numbers.
This replaces the launchManageBlockedNumbersActivity API.

BUG: 27364137

Change-Id: I5d5a20d25f0dea8b8e0e998b51f80658ff404e2c
2016-02-29 11:53:43 -08:00
Hall Liu
e362e501ee Initialize MD5 in logging in background
Use a background task to call MessageDigest.getInstance in order to
avoid a possible disk read on initialization.

Bug: 26069217
Change-Id: I0091ce012bcd811dfca0e85c21a12c54913ed919
2016-02-11 10:39:40 -08:00
Brad Ebinger
ec0d33490a Update TelecomManager docs regarding PhoneAccounts
Updates the docs for addNewIncomingCall to mention that if the
PhoneAccountHandle representing a PhoneAccount is not registered or not
enabled, a SecurityException will be thrown (as of b/26864502). Also
notifies the user that PhoneAccounts are stored in DE storage
in registerPhoneAccount.

Bug: 26874536
Bug: 26780305
Change-Id: I2dae932cfa3404d7d5060dad840a75227793603e
2016-02-08 19:07:08 +00:00
Abhijith Shastry
1908cb84a5 Add API in TelecomManager to launch the UI to manage blocked numbers.
BUG: 26917087
Change-Id: Ide328d250561577f652e3a1ee093b37ad19084d8
2016-02-02 14:55:15 -08:00
Sailesh Nepal
9c2618b17f Expose a meta-data value to allow dialer ringing
This CL exposes a new meta-data, IN_CALL_SERVICE_RINGING. If this is set
to true then ringing is played by the dialer instead of Telecom.

This CL also adds a new silenceRinger() API to InCallService. This is
needed to implement ringer silence on volume key down.

BUG: 22857261
Change-Id: I498538282eddbb727104f5b879f25adbef4e6cf6
2016-01-26 17:06:06 -08:00
Sailesh Nepal
9c4b82cf95 Merge "Make missed call action public" 2016-01-23 18:28:31 +00:00
Sailesh Nepal
be15ad9b79 Make missed call action public
This CL makes the missed call notification action public. This will be
used by the dialer app to show it's own missed call UI.

See ag/850080 for more info.

BUG: 22857261

Change-Id: Ifae82d3036a278e5619edc8c766a1d0781296e72
2016-01-22 17:33:55 -08:00
Santos Cordon
888815501b Add metadata for car-mode in-call.
Change-Id: Ic2d55889e0ab65195bee549837b51c581ce5076a
2016-01-21 14:09:09 -08:00
Hall Liu
0464b9ba16 Add method to dump Telecom analytics
Add dumpAnalytics in TelecomManager to allow the connectivity stats
service to access Telecom analytics for uploading.

Change-Id: I197d6af340fac7f38b28bb44a476b5e694db4dba
2016-01-15 12:43:27 -08:00
Hall Liu
70ac616b38 Merge "Add extras tag for analytics support" 2015-12-08 21:53:25 +00:00
Tyler Gunn
6676bb5da5 Add "acceptRingingCall()" API which accepts a videoState.
- Added acceptRingingCall API which accepts a videostate to complement the
existing API.

Bug: 20159300
Change-Id: I2a9d53fd4dbbb0be49d95416f7e26d3ec61774cd
2015-11-24 15:43:20 -08:00
Hall Liu
90f62907b6 Add extras tag for analytics support
Change-Id: I174de505cb96206f90d3cc5ba8fcca7ed9908b7f
2015-11-19 16:19:24 -08:00
Hall Liu
e1bc2ec710 Add TelecomManager constructor for passing in TelecomServiceImpl
override

Bug: 24618535
Change-Id: I2dafcc9ab496de94eb6a6894916030ed4e7556f8
2015-10-09 16:31:10 -07:00
Bryce Lee
5821983253 am 18b76bf6: am 861559d3: am 24e5efda: Merge "Add additional broadcast for when a phone account is unregistered." into cw-e-dev
* commit '18b76bf6755b4e3469b17f6f898a40bb1fe70a63':
  Add additional broadcast for when a phone account is unregistered.
2015-09-27 15:11:29 +00:00
Bryce Lee
30b0aa04dc Add additional broadcast for when a phone account is unregistered.
Change-Id: Ia14a4206ea50af11c6151e11a95851e5ffa2cd99
2015-09-23 21:53:53 -07:00
Yorke Lee
c61d1366ff Add permission annotations to TelecomManager
Change-Id: I1394429d2e183165ba0e4c63da4952837d0a63e3
2015-09-21 17:25:25 -07:00
Bryce Lee
8d41d1d4fd add call back intents for clearing missed calls and calling back.
Change-Id: Ib81fecc21c5491f975fa7c44f4e5984a4b3f8e7f
2015-08-10 15:06:59 +00:00
Bryce Lee
5e4dd3e199 Add action for notifying custom components of missed calls.
Change-Id: I09797e323dda7a5316f42c2a1c20fadbc60f2c6f
2015-08-03 16:59:10 -07:00
Tyler Gunn
335ff2ec7a Add telecom extra keys required for DMR release.
Bug: 22848290
Change-Id: I3328234e3f07d83d0dbe5b61b959344b6cc5cc3f
2015-07-30 14:18:33 -07:00
Sailesh Nepal
cf85562bc9 Default permissions for sim call manager
This CL adds the following permissions by default to the
SIM call manager:
 - microphone
 - phone

BUG: 22790160
Change-Id: Icaf1db6c6943b3ddbd16a946a81d1bfb734d761f
2015-07-28 22:16:25 -07:00
Santos Cordon
895d4b8f63 Telecom API council changes.
- adding more javadocs.
- fixing javadoc on isEnabled
- renaming to CONFIGURE_PHONE_ACCOUNT

Bug: 21573551
Change-Id: Ice035b8573a08ea18181a73c9e9a462520a934f1
2015-06-29 16:17:47 -07:00
Santos Cordon
f2600eb5ac InCallService meta-data [2/4]
Bug: 21816241

Change-Id: I9af91a1287f652247ef590878759aa277bd925e5
2015-06-23 15:13:39 -07:00
Santos Cordon
7a060d5e2b Additional javadoc.
Change-Id: Iba7f9315521314d066a166ba884ac71c3a9c2496
2015-06-22 10:38:30 -07:00
Santos Cordon
2c27b9a9fa Clean up SIM CallManager APIs.
Bug: 21499476
Change-Id: Iaded74c6b885b0745dfa85d0b7733bdad75d615a
2015-06-18 16:13:54 -07:00
Yorke Lee
107c4ce2ac Send broadcast when default dialer changes
Add hidden TelecomManager.setDefaultDialer for system apps
to set the default dialer and trigger the broadcast

Bug: 21846308
Change-Id: Ifdd30cd1323ab0157edf7fd966173b6c52df6ba0
2015-06-15 12:36:09 -07:00
Yorke Lee
02fb5bc52b Rename TelecomManager.EXTRA_INCOMING_CALL_ADDRESS
Bug: 19696065
Change-Id: Ibe253c8cd66938ea1cd560d443008026eb1005d9
2015-06-09 12:28:06 -07:00
Yorke Lee
04ea7d3b7c Add telecom extra to specify handle for incoming call
Bug: 19696065
Change-Id: Ie7c9e3f982808abd4944cfa7bd3c754b93479f84
2015-06-05 16:00:12 -07:00
Yorke Lee
db6da48621 Allow default dialer changes and phone account enable/disable via ADB
Add commands accessible via adb shell that can be used for CTS tests
without the need for adb root
*set-phone-account-enabled
*set-phone-account-disabled
*set-default-dialer
*get-default-dialer

Modify enablePhoneAccount/setDefaultDialer to indicate success.

Remove now unused functionality in ProtectedEnableAccountPreferenceActivity
and ProtectedChangeDefaultDialerActivity.

Bug: 21583012
Change-Id: I542d145cc969334c004b8344fbbb01f278256f9d
2015-06-02 14:23:21 -07:00
Yorke Lee
5cf2dde3f7 Add ability to modify default dialer via ADB
Add hidden action to TelecomManager

Change-Id: I698c0154f438cdaf78926f12a261cbc0eb807cd0
2015-05-29 14:56:32 -07:00
Yorke Lee
656eeb0402 Make ACTION_CONNECTION_SERVICE_CONFIGURE public
Bug: 21499146
Change-Id: I3b931231807eec0aed91832013c7c055005fc9ad
2015-05-28 16:12:46 -07:00