746 Commits

Author SHA1 Message Date
Sailesh Nepal
f44607142f Make CallScreening.CallResponse static
A small mistake in my previous CL. The response object
needs to be static.

Change-Id: Idf9bca7a7076275f53475c2531090f406daecab9
2016-01-27 16:53:15 -08:00
Sailesh Nepal
1bef339b88 Add new public API to allow call screening
This CL adds a new service that the default dialer can implement to
screen incoming calls.

If the service is implemented then Telecom uses it to decide if a call
should be shown to the user or rejected.

Note, I initially tried to simply extend InCallService instead of
creating a whole new service. The problem with this approach is that:
  - this breaks some in call services which show UI as soon as they are
    bound to
  - the in call service lifecycle is tightly coupled to adding and
    removing calls. Call screening happens before a call is added which
    makes it a bad fit to in call service
  - call screening is a function of only the default dialer's in call
    service but the existing code also binds to "controller" call
    services

For these reasons it seemed simpler to just create a new optional
service.

BUG: 22857261
Change-Id: I53f2ef93360e0af19b6ce45af21026be6cf3a7f3
2016-01-27 13:54:12 -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
Tyler Gunn
0d3493532b Merge "Add capability to determine if downgrade to audio is denied." 2016-01-26 22:26:43 +00: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
Tyler Gunn
f97a009f76 Add capability to determine if downgrade to audio is denied.
By default we assume downgrade to audio is permitted; this capability
probides a means for a carrier to specifically deny that.

Bug: 22728624

Change-Id: I75e0a5b9e5ad2d970003a4691b6fc0ac0dcfe9e0
2016-01-19 15:59:34 -08:00
Tony Mak
b401a94d84 Make getInstalledDialerApplications to query for specific user
BUG=26634502

Change-Id: I8fe5506589bae85e3babba1aaab3b737cd12543b
2016-01-19 19:39:01 +00: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
Tyler Gunn
f5afe6ab8d Merge "Add KEY_USE_RCS_PRESENCE_BOOL carrier config option." 2016-01-12 03:59:29 +00:00
Tyler Gunn
3e122f76f1 Add KEY_USE_RCS_PRESENCE_BOOL carrier config option.
- New carrier config option is used to determine if presence is used
to determine whether a contact is capable of video calling.
- Also, improve logging for PhoneAccount capabilities.

Bug: 20257833
Change-Id: Ifcc7df95677eb4399f08eb8849c4004892957e90
2016-01-11 19:25:00 -08:00
Tyler Gunn
48d021026a Adding @IntDef checking for Video Quality and Video State values.
Admittedly this isn't going to cause a build breakage for anyone misusing
the values, but it should help make issues more aware at code authoring
time.

See http://goo.gl/zaH4RE for more information.

Change-Id: I3f20dc4bff364dec290d4b647e31f8032d4a13ec
2016-01-08 13:20:25 -08:00
Tony Mak
64ef34bc1a Merge "Add a new property PROPERTY_WORK_CALL" 2016-01-06 12:25:14 +00:00
Sailesh Nepal
c831e36b60 Merge "Fix InCallService permission doc" 2016-01-05 11:56:12 +00:00
Jeff Sharkey
2f3e35376a More work towards triaging missing app behavior.
Many places across the platform query package details without
gracefully handling packages or components that go missing for
various reasons.  This can cause annoying user data loss, such as
resetting back to built-in apps or dropping of accounts, etc.

This change verifies that system callers have thought about these
edge cases by logging if they use default matching behaviors without
explicitly marking themselves as being "triaged."  (The logging is
currently disabled by default.)

Also creates explicit definitions of supported flags for various
incoming PackageManager calls, and defines a clear distinction
between flag types:

-- GET-style flags are used to request additional data that may have
been elided to save wire space.

-- MATCH-style flags are used to include components or packages that
would have otherwise been omitted from a result set by current system
state.

There are a handful of existing GET flags that better fit under the
MATCH definition, so this change clones them to new constants and
marks the old ones as deprecated.

Fixes bug in JobSchedulerService to consider jobs from apps on
external storage.  Revert some dialer behavior back to being
untriaged.

Change-Id: I9b6ab0968241e3479bddbd78de0c51e3b9917318
2016-01-04 13:19:02 -07:00
Tyler Gunn
bd1bf125e4 Merge "Fix capability/property checking methods to handle multi-bit capabilities." 2016-01-04 16:33:37 +00:00
Sailesh Nepal
78f3ba6ea4 Fix InCallService permission doc
Small typo in the docs for InCallService.

Change-Id: I551248858723047d30061d164976fb2e3418ed67
2015-12-28 16:20:56 -08:00
Jeff Sharkey
2a9e3f8e68 Better named encryption flags, start triaging.
Create distinct flags for encryption aware, unaware, and both, and
name them like the other MATCH_ flags.

Start adding logic to help triage all system internal callers to
verify that they've done their homework and thought about how to
handle apps while locked.  Call sites in the system should either
ask for explicit matching behavior, or explicitly use the DEFAULT
match flag to indicate that they've been triaged to use the
default state-based matching.

Bug: 26250295
Change-Id: I86214e5c4f71a6dc72f06930800388713aecd107
2015-12-19 15:00:09 -07:00
Tony Mak
a68dcce8c3 Add a new property PROPERTY_WORK_CALL
In our current design, in-call ui in parent user is used.
We need a way for Telecom to tell in-call ui that is the call a work
call or not show that we can have some UI changes to reflect it.

Bug: 26022174
Change-Id: I5f54371ddac14ffdb50359c2e792b9f24858bcb8
2015-12-19 02:49:27 +00:00
Tyler Gunn
014c711b0d Fix capability/property checking methods to handle multi-bit capabilities.
Some capabilities, such as CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL
are defined in terms of other capabilities; eg:
CAPABILITY_SUPPORTS_VT_LOCAL_RX | CAPABILITY_SUPPORTS_VT_LOCAL_TX

The current capability logic will return TRUE if checking for
CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL and either of the TX or RX bits
is on; which is incorrect.  Yay cts tests for finding this.

Bug: 26272951
Change-Id: I55a5676674ee74e213deb3a07e226b04a37d10ee
2015-12-18 14:33:57 -08:00
Tyler Gunn
e502924ed3 Merge "Remove dependency on android.telecom.Call in VideoCallImpl for testing." 2015-12-17 00:09:55 +00:00
Tyler Gunn
6baa707133 Merge "Add PhoneAccount capability to indicate if VT uses presence." 2015-12-12 00:38:12 +00:00
Tyler Gunn
9a365756b3 Add PhoneAccount capability to indicate if VT uses presence.
Added new PhoneAccount capability used to indicate whether the dialer
should use the presence bit in the contacts provider to determine when
the video call icon is shown or not.

Bug: 20257833
Change-Id: Ifb3cc5b7ff1090d539dfb925dce9f6327de15c46
2015-12-09 15:00:18 -08:00
Hall Liu
70ac616b38 Merge "Add extras tag for analytics support" 2015-12-08 21:53:25 +00:00
Tyler Gunn
584ba6c1d1 Remove dependency on android.telecom.Call in VideoCallImpl for testing.
VideoCallImpl had a depedency on android.telecom.Call, which was used
to get the current video state of a call when the user issues a
session modify request (we need to know what the video state was before
the request was sent).  This proved problematic for unit tests, as
android.telecom.Call is a final class and cannot be mocked.

These changes assume the VideoCallImpl will instead have a video state
property, which is updated by the Call whenever it changes.  This
removes the dependency on the Call, and makes it possible to unit test the
API.

Change-Id: Ie67255d68b23e32aa177b30ac6439632fad5cc27
2015-12-08 10:53:41 -08:00
Tyler Gunn
6e2d208097 Merge commit '73831680cd7e47df103cf60a2230ed411e5d3b93' into tgunn-mncvtdev-to-master-2015-12-04 2015-12-04 21:03:46 -08:00
Neil Fuller
568f4de11a Merge "Fix @code escapes" 2015-12-03 09:44:01 +00:00
Neil Fuller
71fbb81b14 Fix @code escapes
The body of {@code} must not be HTML escaped. This is one of
several changes that fix the source in conjunction with a
doclava fix.

Bug: 25757239
Change-Id: Ib38a0fa2dd2a3d68e467f78a812071e763d7e881
2015-12-02 14:24:11 +00:00
Bryce Lee
842ec9c407 Merge "Add callback for connections to be notified when the ringer is silenced." into cw-e-dev am: 52bdf11583 am: b241487c16 am: 64e41590d2
am: 0ca7de9031

* commit '0ca7de90310034d118f21343a69a38ebc02dd0bc':
  Add callback for connections to be notified when the ringer is silenced.
2015-11-30 19:17:53 +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
Bryce Lee
cac50775b2 Add callback for connections to be notified when the ringer is silenced.
Bug: 25644529
Change-Id: Ie7dc9028cf6243d98b2d87ca4c8b3ffcd31e3676
2015-11-17 15:13:29 -08:00
Tyler Gunn
5da678f71b Merge "Add extras keys for instant lettering." 2015-10-21 21:26:09 +00:00
Bryce Lee
38f0119b09 am adf38ccb: am b70426b1: am 4c9fcd54: Merge "Add capability to identify phone accounts that are emergency only." into cw-e-dev
* commit 'adf38ccb6ea0a3b406273061d1fc01f61bc6abb6':
  Add capability to identify phone accounts that are emergency only.
2015-10-16 22:42:43 +00:00
Tyler Gunn
d666a8d959 Merge "Move position of bundle parceling for PA extras." 2015-10-15 22:20:15 +00:00
Bryce Lee
b96d89cd34 Add capability to identify phone accounts that are emergency only.
Bug: 24756957
Change-Id: Id26eaa7f6632674f7122b4cd658cbe2bf9b04594
2015-10-14 16:48:40 -07:00
Tyler Gunn
d426b20cd8 Add extras keys for instant lettering.
- Also fix bug where copy-builder for PA was not copying over the extras.

Bug: 22806380
Change-Id: If25a1299bdd0a48340e9d13857f982a90d728af6
2015-10-13 13:33:53 -07: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
Tyler Gunn
ef829ece3c Move position of bundle parceling for PA extras.
Bug: 22806380
Change-Id: I9797ee0f6c9b5143ccd3417cfd5a7b631a4db480
2015-10-08 09:46:23 -07:00
Tyler Gunn
25ed2d7aec Add "Extras" to PhoneAccount.
- Add extras to PhoneAccount, and associated builder.

Bug: 22806380
Change-Id: I90f4c1a9b022eef7e6d2829d82851ac307ceafdf
2015-10-05 14:14:38 -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
Tyler Gunn
6b3db37f3c Merge "Support for Telecom Call IDs." 2015-09-17 17:00:04 +00:00
Tyler Gunn
f0500bd635 Support for Telecom Call IDs.
Add support for caching telecom call ID in connection and conference
classes.

Enhance connection service call ID generation:
For "existing calls", the connection service will try to use a call ID
of the format ClassName@ID
Where ClassName is the ComponentName of the connection service, and ID
is a unique incrementing ID for the connection service.

Bug: 23357902
Change-Id: I2284b018465e2b330fc8a3b556758e9f34a2daba
2015-09-01 10:59:48 -07:00
Bryce Lee
5a0b7e9800 am 8bfa215a: am 3ef68803: am ad9a0efc: Merge "Add capability for a connection hand rejection text response." into cw-e-dev
* commit '8bfa215ab1ea29cc51ad38fbf4728542c8cb0aae':
  Add capability for a connection hand rejection text response.
2015-09-01 16:07:25 +00:00
Bryce Lee
8190168077 Add capability for a connection hand rejection text response.
Change-Id: Id90417736bed7ab8750144ccaf3c7b449ec832b8
2015-08-28 16:38:02 -07:00
Tyler Gunn
10397d377d am 393a93ab: am 7d4cf23f: am 9e191aa6: am a6562603: am 1e9bfc64: Fix incorrect android.telecom.Call.Details equality check.
* commit '393a93abaf8eb14a6b7efebcd7665484558161f8':
  Fix incorrect android.telecom.Call.Details equality check.
2015-08-19 23:13:40 +00:00
Tyler Gunn
9e191aa634 am a6562603: am 1e9bfc64: Fix incorrect android.telecom.Call.Details equality check.
* commit 'a65626031017517331fd402541b5e8f072c46a34':
  Fix incorrect android.telecom.Call.Details equality check.
2015-08-19 22:41:14 +00:00