829 Commits

Author SHA1 Message Date
Tyler Gunn
b822f7a956 Merge "Enhance toString on ConferenceParticipant." into nyc-mr1-dev 2016-07-18 20:13:32 +00:00
Hall Liu
9f332c7ffc Add PROPERTY_IS_DOWNGRADED_CONFERENCE
Change-Id: I490876b45dcfb0b0efa9604c9d666db485923391
Fix: 29806833
2016-07-14 15:37:37 -07:00
Brad Ebinger
60bbfacd4e Merge "Add Group Id to PhoneAccount" into nyc-mr1-dev 2016-07-12 16:33:42 +00:00
Tyler Gunn
5de68868b5 Enhance toString on ConferenceParticipant.
In preparation for logging this state more often, add pii obscuring to
critical fields, and add string representation of state.

Bug: 30086285
Change-Id: I6c06f8d46f1524ed7f1e4d01ad37ab67b6d12ed4
2016-07-12 08:28:54 -07:00
Brad Ebinger
7298f3b1f9 Add Group Id to PhoneAccount
Add an api to set a group Id to a PhoneAccount. This functions as
a marker that tells Telecom to replace an old registered PhoneAccount
with a newly registered PhoneAccount if their Group Id is the same. This
allows us to handle transparent PhoneAccount switching in Telecom
without losing user specified enabled settings and user calling account
defaults.

Bug: 28173788
Change-Id: I270e766347d7f817c94f86503db2cdb1f93dafa4
2016-07-11 14:35:10 -07:00
Tyler Gunn
c96b5e0873 Finalize MEP functionality.
1) Finish plumbing of PULLING_CALL state.
2) Add new disconnect cause used when maximum number of calls across
all devices has been reached.
3) Add PII mask for toString of ImsExternalCallState.

Bug: 29522023
Change-Id: I78a0a9f3c3d846cfc58a1c5bcc6f105027602cbc
2016-07-11 10:33:37 -07:00
Hall Liu
7e10bcffc5 Merge "Rename disable add call extra" into nyc-mr1-dev 2016-07-09 01:03:20 +00:00
Hall Liu
ee6e86b2bc Rename disable add call extra
Used to be DISABLE_ADD_CALL_DURING_VIDEO_CALL, now just
DISABLE_ADD_CALL. The meaning has also changed -- having the extra set
means that adding calls should be disabled no matter what.

Bug: 29047863
Change-Id: Icd8966492b264a9c64dc4880080a706032f0759c
2016-07-08 15:14:42 -07:00
Jeff Sharkey
4f73fc7c5b API 25 is frozen, so we can't change API.
Bug: 29239768
Change-Id: Ib7777bcc299a3c1d33e51f3b72374b94842136cb
2016-07-07 13:20:47 -06:00
Hall Liu
bd72c9f62a Add video events to ParcelableCallAnalytics
Adds an isVideoCall boolean and a list of session upgrade/downgrade
requests.

Bug: 29239768
Change-Id: I4386a8fb5efe8fc673ffc904f2ddfa8400dcce38
2016-07-06 16:40:08 -07:00
Tyler Gunn
0babe967be Merge "Telephony multi-endpoint disconnect causes." into nyc-mr1-dev 2016-07-01 20:23:16 +00:00
Tyler Gunn
089e99ee4d Merge "Add missing setPulling() method in Connection." into nyc-mr1-dev 2016-06-30 06:20:42 +00:00
Tyler Gunn
c242ceb406 Add missing setPulling() method in Connection.
Change-Id: I89c720b2fa3d3e1304766ba3779410b233a04c6a
2016-06-29 22:35:45 -07:00
Tyler Gunn
9c0eb0bd46 API cleanups per API review.
1. removing deprecation for setExtras on Connection/Conference as these
have legitimate use-cases going forward.
2. Expanded documentation on Call.Callback class to clarify how it is
expected to be used.
3. Updated Callback#onConnectionEvent callback docs to clarify its usage.
4. Expanded Call#sendCallEvent docs to clarify expected namespacing of
call event keys and extras keys, as well as clarification about backwards
compatibility and expectations of ConnectionServices.
5. Standardized the "invoked" vs "notifies" language in the Conference
docs.
6. Clarified how Connection callbacks from Telecom should be implemented.
7. Added Bundle parameter expectations for pre-defined connection events.
8. Documented capabilities and properties toString methods.
9. Documented expectations for onCallEvent method.
10. Expanded documentation for sendConnectionEvent method to clarify
namespacing, use cases, etc.

Bug: 29759275
Bug: 29759954
Bug: 29759773
Change-Id: Ib8c983af4dbbfee68edb60937b268e2c1a9b5e64
2016-06-29 11:46:40 -07:00
Hall Liu
10208661cd Add disable add call during video call extra and carrier config key
Bug: 29047863

Change-Id: I977041ec72968bdccc69a706e27dd4b5ec336ba7
2016-06-27 17:19:59 -07:00
Tyler Gunn
7d633d3337 Add onConferenceSupportedChanged callback, carrier config.
Used to inform listeners when a connection can or cannot be part of a
conference.  Used to inform the conference controller so that it can
recalculate the conferencable connections.

Adding carrier config for carrier requirement.

Bug: 29059073
Change-Id: Iab028fd44d87c8dc2bbbe8bba7ba9ccdc223fe51
2016-06-27 10:49:04 -07:00
Tyler Gunn
4b6614e576 Add support for dropping fg video call on answer of audio call.
Adding two new carrier config options:
1. treat_downgraded_video_calls_as_video_calls_bool - when there is an ongoing
call which was previously a video call (or is currently video call), some
carriers require that this is treated as if it is a video call for
telephony logic such as in (2).
2. drop_video_call_when_answering_audio_call_bool - if the user is in an
active video call (see (1)) over wifi, and an incoming audio call comes in,
when this carrier config option is "TRUE", the video call will be dropped
when the audio call is answered.

Adding new connection extra to indicate to the dialer app that answering
a ringing call will cause the current active video call to drop.

Bug: 29275420
Change-Id: Ied5dbabc8ff09045ba41c5eba2136adad10db80e
2016-06-23 12:48:43 -07:00
Brad Ebinger
e93c91edc2 Merge \"Handle Concurrency issues in Connection\" into nyc-dev
am: df41725e53

Change-Id: I0332df9dc96086a3094dc4ab53573b5cf57f8730
2016-06-15 22:48:06 +00:00
Brad Ebinger
4fa6a01898 Handle Concurrency issues in Connection
Currently, there is a possibility of concurrent thread operations to the
Extras bundle in Conference/Connection. This can cause unexpected
behavior. We have added a lock on the Extras to prevent that from
occuring.

Bug: 29330310
Change-Id: Id63a9797c2f748120a3df8e3ce06c4ce3891c651
2016-06-15 20:53:25 +00: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
Brad Ebinger
a3d4baf43b Merge "Add EVENT_CALL_MERGE_FAILED Connection Event" into nyc-mr1-dev 2016-06-13 17:39:19 +00:00
Tyler Gunn
2a3f997b02 Telephony multi-endpoint disconnect causes.
A few disconnect cause mappings were missing for the multi-endpoint
disconnect causes.  Adding them here.

Bug: 29236416
Change-Id: I669bd72290c0e823c54eb6062ebd658743882852
2016-06-09 08:25:32 -07:00
Brad Ebinger
15847070b5 Adds CDMA Voice Privacy Property to Call
Adds the CDMA Enhanced Voice Privacy Property to a Call when it has been
enabled for the call by the network.

Bug: 26931679
Change-Id: I1f5b4a4fb22fe6aaaf0c424ef11925c6058c6e82
2016-06-03 13:34:07 -07:00
Brad Ebinger
2c1c164578 Add EVENT_CALL_MERGE_FAILED Connection Event
Currently, if a call merge failure occurs, we can not try again because
the merge button "gets stuck". This change adds a new Connection Event
that notifies the InCall UI to enable the merge button so that the user
can try again.

Bug: 28847375
Change-Id: I376f6ee446e135577a54aa36ff1dfc77af87261a
2016-05-31 11:09:02 -07:00
Tony Mak
23642330a7 Merge "Remove PROPERTY_WORK_CALL" into nyc-dev
am: 5ee420c0d5

* commit '5ee420c0d562e9ff55fe9bf03c746bc76fd40d5e':
  Remove PROPERTY_WORK_CALL

Change-Id: I17d204d01b2fc356fa6b70d4c5cd73f4b0a10d6c
2016-05-23 17:26:45 +00:00
Tony Mak
9ece303402 Remove PROPERTY_WORK_CALL
Bug: 28842878
Change-Id: I7fb28ec3b121f4546ea60d6b170c2c6d98ffcb8c
2016-05-20 19:56:08 +00:00
Tony Mak
2a63190228 Rename PROPERTY_WORK_CALL to PROPERTY_ENTERPRISE_CALL based on API review
am: 53b5df43b4

* commit '53b5df43b49b191e442c4d2c7b9a9cba3ebdcf92':
  Rename PROPERTY_WORK_CALL to PROPERTY_ENTERPRISE_CALL based on API review

Change-Id: I24a866a5947a20127f3b79e2e75ba0cf534b450c
2016-05-20 16:01:00 +00:00
Tony Mak
53b5df43b4 Rename PROPERTY_WORK_CALL to PROPERTY_ENTERPRISE_CALL based on API review
TODO: After updating all places that use the SDK, remove/hide the old API

Bug: 28842878

Change-Id: I131be644439080dd0507cd10d8bd6618246ee7ad
2016-05-20 15:39:38 +00:00
Chenjie Luo
8462d63c23 Add null pointer check in removeConnection am: e370b538eb am: 58642e6545
am: 7e745ec49c

* commit '7e745ec49c0458f92af65bf370770417dcc7075d':
  Add null pointer check in removeConnection

Change-Id: Iba29d78be4b3cae05144e6c0b68cce5357114ddd
2016-05-18 20:41:10 +00:00
Chenjie Luo
7e745ec49c Add null pointer check in removeConnection am: e370b538eb
am: 58642e6545

* commit '58642e65455ee9456993a2f6386402fbcec68ab8':
  Add null pointer check in removeConnection

Change-Id: Ia4d14a664c9869d1065313db6795ac4e72dee59d
2016-05-18 20:35:51 +00:00
Chenjie Luo
58642e6545 Add null pointer check in removeConnection
am: e370b538eb

* commit 'e370b538ebb6ca1072f270aee3003faaa0d1deb2':
  Add null pointer check in removeConnection

Change-Id: I7b615a8f7c7a89617c4f748ad74007ec73db6784
2016-05-18 20:29:17 +00:00
Chenjie Luo
e370b538eb Add null pointer check in removeConnection
Bug: 28607777
Change-Id: I199ed75740796540d243ad9f507ab2511c9ed3c1
2016-05-12 17:00:27 -07:00
Tyler Gunn
071be6f42b Add removeExtras(String...) prototype per API review.
Per API review, adding a convenience prototype of the removeExtras method.

Bug: 28295516
Change-Id: Icc0e040516c06205540c5683bde16882a73a89d6
2016-05-10 14:52:33 -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
53c76457e4 Merge "Add hidden capability to indicate account supports emergency video calls." into nyc-dev 2016-04-01 15:36:08 +00:00
Tyler Gunn
53befa2e0b Merge "Add missing null checks on Conference and Connection." into nyc-dev 2016-03-29 19:02:08 +00:00
Tyler Gunn
a8fb8aba7c Add missing null checks on Conference and Connection.
Also add missing bundle passing for Connection Events.

Bug: 27850430
Change-Id: I0f79635929cbe5da18b528b6c1119c7ce4d8e32b
2016-03-29 10:24:22 -07:00
Tyler Gunn
720c664401 Add connection properties to Connections.
- Per suggestion of API council, moving properties of a Connection from
CAPABILITIES_* to PROPERTIES_*.

Bug: 27458894
Change-Id: Icce921b03cda514a991646ed39a26559c7e91230
2016-03-24 20:20:11 -07:00
Tyler Gunn
cee9ea62b0 Add hidden capability to indicate account supports emergency video calls.
This is used by Telephony to let Telecom know when emergency video calls
are supported.

Bug: 27484017
Change-Id: I317070b326e27e74d58afcb247746bdd2552d67b
2016-03-24 11:45:43 -07:00
Tyler Gunn
dee56a8a79 Expand call/connection extras API.
Currently, connection extras are propagated up to Telecom as an
entire bundle.  This is not ideal, as any time a change is made to
the extras, the bundle needs to be fetched, changed, and then re-set on
the connection, where it is parceled to Telecom as a whole.

Using how extras on an Intent as inspiration, this CL adds separate
putExtras, putExtra, and removeExtra methods to allow manipulation of
the extras bundle without operating on it in its entirety.

This Cl also adds support for Calls modifying the extras bundle, with
changes propagated back down to ConnectionServices.

Bug: 27458894
Change-Id: I152340a3bca2dc03f170b06b172a6823410fb961
2016-03-23 16:06:34 -07:00
Jeff Sharkey
f0ec2e0050 Mark even more Bundles as defusable.
Bug: 27766193
Change-Id: Ib027ac7b40c7a575a76f289faabde9655338865e
2016-03-21 12:37:57 -06:00
Brad Ebinger
9bc6ba9746 Merge "Update docs to better document PhoneAccountHandle" into nyc-dev 2016-03-18 22:36:24 +00:00
Tyler Gunn
7904a972e1 DO NOT MERGE Add new ConnectionEvent API (hide) to send a notification to Telecom
Connection event used to inform Telecom that it should play or stop
the on hold tone. This is used to play or stop a tone when the peer
puts the current call on hold.

BUG=25357778
Change-Id: I2669f8f5062449784a712b9dd28e576326fcc679
2016-03-17 18:34:27 -07:00
Brad Ebinger
428cec9056 Update docs to better document PhoneAccountHandle
Warns developers to not create PhoneAccountHandles with null
arguments. If they do, a log warning is printed, reminding them that the
APIs should not be used in this manner.

Bug: 26684527
Change-Id: I03895cac9d732ee618649d38176d48620f705a1b
2016-03-17 15:22:06 -07:00
Hall Liu
792ad96eea Prevent multi-threaded access to digest object
Bug: 27717431
Change-Id: I3ebd1dda7386c35078c0624df1446e64c3fb0aa0
2016-03-17 11:27:55 -07:00
Hall Liu
712acbe13c Un-hide Connection#onReject(String) and its associated capability
The capability is CAPABILITY_CAN_SEND_RESPONSE_VIA_CONNECTION

Bug: 27501686
Change-Id: Id73bb99650ca8440a9f4e87bfe533a97c4d19778
2016-03-15 10:19:40 -07:00