Per feature council decision, the multi-endpoint APIs will be @hide for
the N release.
Bug: 28196918
Change-Id: Ia80b089bc754ce87ca208382eb79442b5265844d
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
- Per suggestion of API council, moving properties of a Connection from
CAPABILITIES_* to PROPERTIES_*.
Bug: 27458894
Change-Id: Icce921b03cda514a991646ed39a26559c7e91230
This is used by Telephony to let Telecom know when emergency video calls
are supported.
Bug: 27484017
Change-Id: I317070b326e27e74d58afcb247746bdd2552d67b
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
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
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
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
The case block for MSG_SET_EXTRAS was missing its break statement, all
the way back to summer 2015 when that code was originally added.
When the new MSG_ON_CONNECTION_EVENT handler was added, it introduced a
new potential fall-through from MSG_SET_EXTRAS (in addition to the fact it
too was missing a break statement).
Bug: 27338441
Change-Id: I2df2bc78c4ceb32e6245888eed18c2d8834e629b
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
Use a background task to call MessageDigest.getInstance in order to
avoid a possible disk read on initialization.
Bug: 26069217
Change-Id: I0091ce012bcd811dfca0e85c21a12c54913ed919
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
Telecom now guarantees that when sending a conference call to an in-call
service, all children will be sent before any parents. Thus, it is
acceptable for children to temporarily have invalid references to
parent calls, but not vice versa.
Bug: 26818778
Change-Id: Id34e4c3a773e6f7c75be8c85ec2642cf05dabe0a
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
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
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
IMS connection capabilities were not getting
propagated to the upper layers whenever a
capability was added or removed. Adding the
same.
Change-Id: Ic67d76df05c8b2a1b8abaf27f266fe9693764e52
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
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