Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ddf570e8 authored by Shriram Ganesh's avatar Shriram Ganesh Committed by Etan Cohen
Browse files

MWI,phantom call,Suppl services, error codes

1. IMS MWI Feature
- Add new API to update waiting
voice message count, for UI
propagation based on RFC 3842

2. phantom call support

Supplementary services

3. IMS : Incoming Call Barring
- Modified existing API to support
   request like registration,activation,
   deactivation,erasure,interogation.

4.Unsol supplementary service notification
- send unsol supplementary notification to UI
- add call history info

Miscellaneous
5. Ims: Originate conference call in DIALING state

6. IMS: Addition of Extras to ImsCallProfile
- Add EXTRA string definitions to ImsCallProfile

7. IMS: Definition of error code
- answered elsewhere
- FDN call failure

8.
- Propagate IMS supplementary services to telephony framework
- Introduce call forwarding history info.

Bug: 21725750
Squash of 2 earlier CLs:
         Change-Id: I52a64e9a5df3479189f62921a01655a50fb386fc
         Change-Id: Idc3a433785e84a3d683cbcfc7fb90f0b89dced12

Change-Id: I428ce3c6a043e43b86dea41622e0a828d8b45e53
parent b304fc0a
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -968,7 +968,6 @@ public final class Call {
        unregisterCallback(listener);
    }


    /** {@hide} */
    Call(Phone phone, String telecomCallId, InCallAdapter inCallAdapter) {
        mPhone = phone;
@@ -977,6 +976,14 @@ public final class Call {
        mState = STATE_NEW;
    }

    /** {@hide} */
    Call(Phone phone, String telecomCallId, InCallAdapter inCallAdapter, int state) {
        mPhone = phone;
        mTelecomCallId = telecomCallId;
        mInCallAdapter = inCallAdapter;
        mState = state;
    }

    /** {@hide} */
    final String internalGetCallId() {
        return mTelecomCallId;
+7 −0
Original line number Diff line number Diff line
@@ -252,6 +252,13 @@ public abstract class Connection extends Conferenceable {
    // Next CAPABILITY value: 0x00400000
    //**********************************************************************************************

    /**
     * Call extras key to pack/unpack call history info.
     * The value for this key should be an ArrayList of Strings.
     * @hide
     */
    public static final String EXTRA_CALL_HISTORY_INFO = "EXTRA_CALL_HISTORY_INFO";

    // Flag controlling whether PII is emitted into the logs
    private static final boolean PII_DEBUG = Log.isLoggable(android.util.Log.DEBUG);

+2 −1
Original line number Diff line number Diff line
@@ -122,7 +122,8 @@ public final class Phone {
    }

    final void internalAddCall(ParcelableCall parcelableCall) {
        Call call = new Call(this, parcelableCall.getId(), mInCallAdapter);
        Call call = new Call(this, parcelableCall.getId(), mInCallAdapter,
                parcelableCall.getState());
        mCallByTelecomCallId.put(parcelableCall.getId(), call);
        mCalls.add(call);
        checkCallTree(parcelableCall);
+8 −0
Original line number Diff line number Diff line
@@ -174,11 +174,19 @@ public class ImsCallProfile implements Parcelable {
     *  cna : Calling name
     *  ussd : For network-initiated USSD, MT only
     *  remote_uri : Connected user identity (it can be used for the conference)
     *  ChildNum: Child number info.
     *  Codec: Codec info.
     *  DisplayText: Display text for the call.
     *  AdditionalCallInfo: Additional call info.
     */
    public static final String EXTRA_OI = "oi";
    public static final String EXTRA_CNA = "cna";
    public static final String EXTRA_USSD = "ussd";
    public static final String EXTRA_REMOTE_URI = "remote_uri";
    public static final String EXTRA_CHILD_NUMBER = "ChildNum";
    public static final String EXTRA_CODEC = "Codec";
    public static final String EXTRA_DISPLAY_TEXT = "DisplayText";
    public static final String EXTRA_ADDITIONAL_CALL_INFO = "AdditionalCallInfo";

    public int mServiceType;
    public int mCallType;
+9 −0
Original line number Diff line number Diff line
@@ -99,6 +99,9 @@ public class ImsReasonInfo implements Parcelable {
    // MT : No action from user after alerting the call
    public static final int CODE_TIMEOUT_NO_ANSWER_CALL_UPDATE = 203;

    //Call failures for FDN
    public static final int CODE_FDN_BLOCKED = 241;

    /**
     * STATUSCODE (SIP response code) (IMS -> Telephony)
     */
@@ -226,6 +229,12 @@ public class ImsReasonInfo implements Parcelable {
     */
    public static final int CODE_CALL_DROP_IWLAN_TO_LTE_UNAVAILABLE = 1100;

    /**
     * MT call has ended due to a release from the network
     * because the call was answered elsewhere
     */
    public static final int CODE_ANSWERED_ELSEWHERE = 1014;

    /**
     * Network string error messages.
     * mExtraMessage may have these values.
Loading