IConnectionService.aidl revision 8190168077aa3ef02a1f5a3a636130d83c4eec1d
1bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad/*
22a46b90222e5c9c73de012382a604a71f9c0c30cSailesh Nepal * Copyright (C) 2014 The Android Open Source Project
3bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad *
4bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * Licensed under the Apache License, Version 2.0 (the "License");
5bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * you may not use this file except in compliance with the License.
6bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * You may obtain a copy of the License at
7bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad *
8bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad *      http://www.apache.org/licenses/LICENSE-2.0
9bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad *
10bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * Unless required by applicable law or agreed to in writing, software
11bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * distributed under the License is distributed on an "AS IS" BASIS,
12bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * See the License for the specific language governing permissions and
14bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad * limitations under the License.
15bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad */
16bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad
17ef9f6f957d897ea0ed82114185b8fa3fefd4917bTyler Gunnpackage com.android.internal.telecom;
18bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad
1974f6bf88eb0247b25caa8be9d170be6ba4cf5d28Evan Charltonimport android.os.Bundle;
204af5935c71f1e31ef1aec27661c4ef60545a0924Yorke Leeimport android.telecom.CallAudioState;
21ef9f6f957d897ea0ed82114185b8fa3fefd4917bTyler Gunnimport android.telecom.ConnectionRequest;
22ef9f6f957d897ea0ed82114185b8fa3fefd4917bTyler Gunnimport android.telecom.PhoneAccountHandle;
23ab5d282dd6f487578ae86b2d53d0d8edc9b71747Sailesh Nepal
24ef9f6f957d897ea0ed82114185b8fa3fefd4917bTyler Gunnimport com.android.internal.telecom.IConnectionServiceAdapter;
25bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad
26bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad/**
272a46b90222e5c9c73de012382a604a71f9c0c30cSailesh Nepal * Internal remote interface for connection services.
28bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad *
29ef9f6f957d897ea0ed82114185b8fa3fefd4917bTyler Gunn * @see android.telecom.ConnectionService
30bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad *
312f23664b4fb9527f3b4e12843926ffe2220ea559Ihab Awad * @hide
32bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad */
332a46b90222e5c9c73de012382a604a71f9c0c30cSailesh Nepaloneway interface IConnectionService {
342a46b90222e5c9c73de012382a604a71f9c0c30cSailesh Nepal    void addConnectionServiceAdapter(in IConnectionServiceAdapter adapter);
35e57944dd55f72aa1b9fc04c6b6bc48992076fdf6Ben Gilad
368aecfedb7b5ac1c909a83f97ef8dad7ca4c68d0fIhab Awad    void removeConnectionServiceAdapter(in IConnectionServiceAdapter adapter);
378aecfedb7b5ac1c909a83f97ef8dad7ca4c68d0fIhab Awad
38f8b69887b438683adee56ad1038d1414cc501ff9Ihab Awad    void createConnection(
39f8b69887b438683adee56ad1038d1414cc501ff9Ihab Awad            in PhoneAccountHandle connectionManagerPhoneAccount,
40b19a0bcdd8a5020c61a0d697f600fdc943c86f59Ihab Awad            String callId,
41f8b69887b438683adee56ad1038d1414cc501ff9Ihab Awad            in ConnectionRequest request,
42c3cf982d18e28fc27126265422f36c5e845808dbYorke Lee            boolean isIncoming,
43c3cf982d18e28fc27126265422f36c5e845808dbYorke Lee            boolean isUnknown);
44bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad
453fadaa923272675d841eda3d46b3e1d9dc08c819Ben Gilad    void abort(String callId);
46bd63f90a789bfb608dbd036d60c4d08f9fd1f2d9Santos Cordon
47be74de0978a7eaa577f6b61902b550a3161aff8bTyler Gunn    void answerVideo(String callId, int videoState);
48be74de0978a7eaa577f6b61902b550a3161aff8bTyler Gunn
49be74de0978a7eaa577f6b61902b550a3161aff8bTyler Gunn    void answer(String callId);
50b340c331bca330e9cb60ce6e398b3c014e1a14c7Santos Cordon
51b340c331bca330e9cb60ce6e398b3c014e1a14c7Santos Cordon    void reject(String callId);
523fadaa923272675d841eda3d46b3e1d9dc08c819Ben Gilad
538190168077aa3ef02a1f5a3a636130d83c4eec1dBryce Lee    void rejectWithMessage(String callId, String message);
548190168077aa3ef02a1f5a3a636130d83c4eec1dBryce Lee
553fadaa923272675d841eda3d46b3e1d9dc08c819Ben Gilad    void disconnect(String callId);
5681ccaaa25cc90c576c7df7c2cccb8a232e8536a1Yorke Lee
5781ccaaa25cc90c576c7df7c2cccb8a232e8536a1Yorke Lee    void hold(String callId);
5881ccaaa25cc90c576c7df7c2cccb8a232e8536a1Yorke Lee
5981ccaaa25cc90c576c7df7c2cccb8a232e8536a1Yorke Lee    void unhold(String callId);
604cff392a2b3702514e78c5419bf15de6e39c59afSailesh Nepal
614af5935c71f1e31ef1aec27661c4ef60545a0924Yorke Lee    void onCallAudioStateChanged(String activeCallId, in CallAudioState callAudioState);
622f23664b4fb9527f3b4e12843926ffe2220ea559Ihab Awad
632f23664b4fb9527f3b4e12843926ffe2220ea559Ihab Awad    void playDtmfTone(String callId, char digit);
642f23664b4fb9527f3b4e12843926ffe2220ea559Ihab Awad
652f23664b4fb9527f3b4e12843926ffe2220ea559Ihab Awad    void stopDtmfTone(String callId);
66980acb9bd6984a9daad5f584bd35e8d503820200Santos Cordon
67b693998fdfdd4498a33c4c69405f2708e4840aa7Santos Cordon    void conference(String conferenceCallId, String callId);
68980acb9bd6984a9daad5f584bd35e8d503820200Santos Cordon
69b693998fdfdd4498a33c4c69405f2708e4840aa7Santos Cordon    void splitFromConference(String callId);
706dea4aceba8f69ee4be346ec356d277a3c153f3dEvan Charlton
71a48680427e022ab6eb73277faac6c57831ee6ff9Santos Cordon    void mergeConference(String conferenceCallId);
72a48680427e022ab6eb73277faac6c57831ee6ff9Santos Cordon
73a48680427e022ab6eb73277faac6c57831ee6ff9Santos Cordon    void swapConference(String conferenceCallId);
74a48680427e022ab6eb73277faac6c57831ee6ff9Santos Cordon
756dea4aceba8f69ee4be346ec356d277a3c153f3dEvan Charlton    void onPostDialContinue(String callId, boolean proceed);
76bb69b0c2d821a9806fb00037284c399cbc78277dBen Gilad}
77