Files
frameworks_base/telecomm/java/com/android/internal/telecom/IInCallAdapter.aidl
Tyler Gunn 876dbfb476 Add API support for multi-endpoint.
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
2016-03-14 23:26:34 +00:00

69 lines
1.8 KiB
Plaintext

/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.internal.telecom;
import android.os.Bundle;
import android.telecom.PhoneAccountHandle;
/**
* Internal remote callback interface for in-call services.
*
* @see android.telecom.InCallAdapter
*
* {@hide}
*/
oneway interface IInCallAdapter {
void answerCall(String callId, int videoState);
void rejectCall(String callId, boolean rejectWithMessage, String textMessage);
void disconnectCall(String callId);
void holdCall(String callId);
void unholdCall(String callId);
void mute(boolean shouldMute);
void setAudioRoute(int route);
void playDtmfTone(String callId, char digit);
void stopDtmfTone(String callId);
void postDialContinue(String callId, boolean proceed);
void phoneAccountSelected(String callId, in PhoneAccountHandle accountHandle,
boolean setDefault);
void conference(String callId, String otherCallId);
void splitFromConference(String callId);
void mergeConference(String callId);
void swapConference(String callId);
void turnOnProximitySensor();
void turnOffProximitySensor(boolean screenOnImmediately);
void pullExternalCall(String callId);
void sendCallEvent(String callId, String event, in Bundle extras);
}