1 /*
2  * Copyright (C) 2007 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.internal.telephony;
18 
19 import android.content.Intent;
20 import android.net.LinkProperties;
21 import android.net.NetworkCapabilities;
22 import android.os.Bundle;
23 import android.telephony.CellInfo;
24 import android.telephony.ServiceState;
25 import android.telephony.SignalStrength;
26 import android.telephony.CellInfo;
27 import android.telephony.VoLteServiceState;
28 import com.android.internal.telephony.IPhoneStateListener;
29 import com.android.internal.telephony.IOnSubscriptionsChangedListener;
30 
31 interface ITelephonyRegistry {
addOnSubscriptionsChangedListener(String pkg, IOnSubscriptionsChangedListener callback)32     void addOnSubscriptionsChangedListener(String pkg,
33             IOnSubscriptionsChangedListener callback);
removeOnSubscriptionsChangedListener(String pkg, IOnSubscriptionsChangedListener callback)34     void removeOnSubscriptionsChangedListener(String pkg,
35             IOnSubscriptionsChangedListener callback);
listen(String pkg, IPhoneStateListener callback, int events, boolean notifyNow)36     void listen(String pkg, IPhoneStateListener callback, int events, boolean notifyNow);
listenForSubscriber(in int subId, String pkg, IPhoneStateListener callback, int events, boolean notifyNow)37     void listenForSubscriber(in int subId, String pkg, IPhoneStateListener callback, int events,
38             boolean notifyNow);
notifyCallState(int state, String incomingNumber)39     void notifyCallState(int state, String incomingNumber);
notifyCallStateForPhoneId(in int phoneId, in int subId, int state, String incomingNumber)40     void notifyCallStateForPhoneId(in int phoneId, in int subId, int state, String incomingNumber);
notifyServiceStateForPhoneId(in int phoneId, in int subId, in ServiceState state)41     void notifyServiceStateForPhoneId(in int phoneId, in int subId, in ServiceState state);
notifySignalStrengthForPhoneId(in int phoneId, in int subId, in SignalStrength signalStrength)42     void notifySignalStrengthForPhoneId(in int phoneId, in int subId,
43             in SignalStrength signalStrength);
notifyMessageWaitingChangedForPhoneId(in int phoneId, in int subId, in boolean mwi)44     void notifyMessageWaitingChangedForPhoneId(in int phoneId, in int subId, in boolean mwi);
notifyCallForwardingChanged(boolean cfi)45     void notifyCallForwardingChanged(boolean cfi);
notifyCallForwardingChangedForSubscriber(in int subId, boolean cfi)46     void notifyCallForwardingChangedForSubscriber(in int subId, boolean cfi);
notifyDataActivity(int state)47     void notifyDataActivity(int state);
notifyDataActivityForSubscriber(in int subId, int state)48     void notifyDataActivityForSubscriber(in int subId, int state);
notifyDataConnection(int state, boolean isDataConnectivityPossible, String reason, String apn, String apnType, in LinkProperties linkProperties, in NetworkCapabilities networkCapabilities, int networkType, boolean roaming)49     void notifyDataConnection(int state, boolean isDataConnectivityPossible,
50             String reason, String apn, String apnType, in LinkProperties linkProperties,
51             in NetworkCapabilities networkCapabilities, int networkType, boolean roaming);
notifyDataConnectionForSubscriber(int subId, int state, boolean isDataConnectivityPossible, String reason, String apn, String apnType, in LinkProperties linkProperties, in NetworkCapabilities networkCapabilities, int networkType, boolean roaming)52     void notifyDataConnectionForSubscriber(int subId, int state, boolean isDataConnectivityPossible,
53             String reason, String apn, String apnType, in LinkProperties linkProperties,
54             in NetworkCapabilities networkCapabilities, int networkType, boolean roaming);
notifyDataConnectionFailed(String reason, String apnType)55     void notifyDataConnectionFailed(String reason, String apnType);
notifyDataConnectionFailedForSubscriber(int subId, String reason, String apnType)56     void notifyDataConnectionFailedForSubscriber(int subId, String reason, String apnType);
notifyCellLocation(in Bundle cellLocation)57     void notifyCellLocation(in Bundle cellLocation);
notifyCellLocationForSubscriber(in int subId, in Bundle cellLocation)58     void notifyCellLocationForSubscriber(in int subId, in Bundle cellLocation);
notifyOtaspChanged(in int otaspMode)59     void notifyOtaspChanged(in int otaspMode);
notifyCellInfo(in List<CellInfo> cellInfo)60     void notifyCellInfo(in List<CellInfo> cellInfo);
notifyPreciseCallState(int ringingCallState, int foregroundCallState, int backgroundCallState)61     void notifyPreciseCallState(int ringingCallState, int foregroundCallState,
62             int backgroundCallState);
notifyDisconnectCause(int disconnectCause, int preciseDisconnectCause)63     void notifyDisconnectCause(int disconnectCause, int preciseDisconnectCause);
notifyPreciseDataConnectionFailed(String reason, String apnType, String apn, String failCause)64     void notifyPreciseDataConnectionFailed(String reason, String apnType, String apn,
65             String failCause);
notifyCellInfoForSubscriber(in int subId, in List<CellInfo> cellInfo)66     void notifyCellInfoForSubscriber(in int subId, in List<CellInfo> cellInfo);
notifyVoLteServiceStateChanged(in VoLteServiceState lteState)67     void notifyVoLteServiceStateChanged(in VoLteServiceState lteState);
notifyOemHookRawEventForSubscriber(in int subId, in byte[] rawData)68     void notifyOemHookRawEventForSubscriber(in int subId, in byte[] rawData);
notifySubscriptionInfoChanged()69     void notifySubscriptionInfoChanged();
notifyCarrierNetworkChange(in boolean active)70     void notifyCarrierNetworkChange(in boolean active);
71 }
72