IImsServiceController.aidl revision 15708a316bcfafc93aa1795fae65e83035270d88
1/* 2 * Copyright (c) 2017 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 17package com.android.ims.internal; 18 19import android.app.PendingIntent; 20 21import com.android.ims.ImsCallProfile; 22import com.android.ims.internal.IImsCallSession; 23import com.android.ims.internal.IImsCallSessionListener; 24import com.android.ims.internal.IImsConfig; 25import com.android.ims.internal.IImsEcbm; 26import com.android.ims.internal.IImsFeatureStatusCallback; 27import com.android.ims.internal.IImsMultiEndpoint; 28import com.android.ims.internal.IImsRegistrationListener; 29import com.android.ims.internal.IImsUt; 30 31import android.os.Message; 32 33/** 34 * See ImsService and IMMTelFeature for more information. 35 * {@hide} 36 */ 37interface IImsServiceController { 38 // ImsService Control 39 void createImsFeature(int slotId, int feature, IImsFeatureStatusCallback c); 40 void removeImsFeature(int slotId, int feature); 41 // MMTel Feature 42 int startSession(int slotId, int featureType, in PendingIntent incomingCallIntent, 43 in IImsRegistrationListener listener); 44 void endSession(int slotId, int featureType, int sessionId); 45 boolean isConnected(int slotId, int featureType, int sessionId, int callSessionType, int callType); 46 boolean isOpened(int slotId, int featureType, int sessionId); 47 int getFeatureStatus(int slotId, int featureType); 48 void addRegistrationListener(int slotId, int featureType, int sessionId, 49 in IImsRegistrationListener listener); 50 void removeRegistrationListener(int slotId, int featureType, int sessionId, 51 in IImsRegistrationListener listener); 52 ImsCallProfile createCallProfile(int slotId, int featureType, int sessionId, int callSessionType, int callType); 53 IImsCallSession createCallSession(int slotId, int featureType, int sessionId, 54 in ImsCallProfile profile, IImsCallSessionListener listener); 55 IImsCallSession getPendingCallSession(int slotId, int featureType, int sessionId, 56 String callId); 57 IImsUt getUtInterface(int slotId, int featureType, int sessionId); 58 IImsConfig getConfigInterface(int slotId, int featureType, int sessionId); 59 void turnOnIms(int slotId, int featureType, int sessionId); 60 void turnOffIms(int slotId, int featureType, int sessionId); 61 IImsEcbm getEcbmInterface(int slotId, int featureType, int sessionId); 62 void setUiTTYMode(int slotId, int featureType, int sessionId, int uiTtyMode, 63 in Message onComplete); 64 IImsMultiEndpoint getMultiEndpointInterface(int slotId, int featureType, int sessionId); 65} 66