1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
/*
* 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.net.Uri;
import android.os.Bundle;
import android.os.ParcelFileDescriptor;
import android.telecom.CallAudioState;
import android.telecom.ConnectionRequest;
import android.telecom.Logging.Session;
import android.telecom.PhoneAccountHandle;
import com.android.internal.telecom.IConnectionServiceAdapter;
/**
* Internal remote interface for connection services.
*
* @see android.telecom.ConnectionService
*
* @hide
*/
oneway interface IConnectionService {
void addConnectionServiceAdapter(in IConnectionServiceAdapter adapter,
in Session.Info sessionInfo);
void removeConnectionServiceAdapter(in IConnectionServiceAdapter adapter,
in Session.Info sessionInfo);
void createConnection(
in PhoneAccountHandle connectionManagerPhoneAccount,
String callId,
in ConnectionRequest request,
boolean isIncoming,
boolean isUnknown,
in Session.Info sessionInfo);
void createConnectionComplete(String callId, in Session.Info sessionInfo);
void createConnectionFailed(in PhoneAccountHandle connectionManagerPhoneAccount, String callId,
in ConnectionRequest request, boolean isIncoming, in Session.Info sessionInfo);
void createConference(
in PhoneAccountHandle connectionManagerPhoneAccount,
String callId,
in ConnectionRequest request,
boolean isIncoming,
boolean isUnknown,
in Session.Info sessionInfo);
void createConferenceComplete(String callId, in Session.Info sessionInfo);
void createConferenceFailed(in PhoneAccountHandle connectionManagerPhoneAccount, String callId,
in ConnectionRequest request, boolean isIncoming, in Session.Info sessionInfo);
void abort(String callId, in Session.Info sessionInfo);
void answerVideo(String callId, int videoState, in Session.Info sessionInfo);
void answer(String callId, in Session.Info sessionInfo);
void deflect(String callId, in Uri address, in Session.Info sessionInfo);
void reject(String callId, in Session.Info sessionInfo);
void rejectWithReason(String callId, int rejectReason, in Session.Info sessionInfo);
void rejectWithMessage(String callId, String message, in Session.Info sessionInfo);
void transfer(String callId, in Uri number, boolean isConfirmationRequired,
in Session.Info sessionInfo);
void consultativeTransfer(String callId, String otherCallId, in Session.Info sessionInfo);
void disconnect(String callId, in Session.Info sessionInfo);
void silence(String callId, in Session.Info sessionInfo);
void hold(String callId, in Session.Info sessionInfo);
void unhold(String callId, in Session.Info sessionInfo);
void onCallAudioStateChanged(String activeCallId, in CallAudioState callAudioState,
in Session.Info sessionInfo);
void playDtmfTone(String callId, char digit, in Session.Info sessionInfo);
void stopDtmfTone(String callId, in Session.Info sessionInfo);
void conference(String conferenceCallId, String callId, in Session.Info sessionInfo);
void splitFromConference(String callId, in Session.Info sessionInfo);
void mergeConference(String conferenceCallId, in Session.Info sessionInfo);
void swapConference(String conferenceCallId, in Session.Info sessionInfo);
void addConferenceParticipants(String CallId, in List<Uri> participants,
in Session.Info sessionInfo);
void onPostDialContinue(String callId, boolean proceed, in Session.Info sessionInfo);
void pullExternalCall(String callId, in Session.Info sessionInfo);
void sendCallEvent(String callId, String event, in Bundle extras, in Session.Info sessionInfo);
void onExtrasChanged(String callId, in Bundle extras, in Session.Info sessionInfo);
void startRtt(String callId, in ParcelFileDescriptor fromInCall,
in ParcelFileDescriptor toInCall, in Session.Info sessionInfo);
void stopRtt(String callId, in Session.Info sessionInfo);
void respondToRttUpgradeRequest(String callId, in ParcelFileDescriptor fromInCall,
in ParcelFileDescriptor toInCall, in Session.Info sessionInfo);
void connectionServiceFocusLost(in Session.Info sessionInfo);
void connectionServiceFocusGained(in Session.Info sessionInfo);
void handoverFailed(String callId, in ConnectionRequest request,
int error, in Session.Info sessionInfo);
void handoverComplete(String callId, in Session.Info sessionInfo);
}
|