1/*
2 * Copyright (C) 2014 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.internal.telecom;
18
19import android.app.PendingIntent;
20import android.net.Uri;
21import android.telecom.ConnectionRequest;
22import android.telecom.DisconnectCause;
23import android.telecom.ParcelableConnection;
24import android.telecom.ParcelableConference;
25import android.telecom.StatusHints;
26
27import com.android.internal.telecom.IVideoProvider;
28import com.android.internal.telecom.RemoteServiceCallback;
29
30/**
31 * Internal remote callback interface for connection services.
32 *
33 * @see android.telecom.ConnectionServiceAdapter
34 *
35 * {@hide}
36 */
37oneway interface IConnectionServiceAdapter {
38    void handleCreateConnectionComplete(
39            String callId,
40            in ConnectionRequest request,
41            in ParcelableConnection connection);
42
43    void setActive(String callId);
44
45    void setRinging(String callId);
46
47    void setDialing(String callId);
48
49    void setDisconnected(String callId, in DisconnectCause disconnectCause);
50
51    void setOnHold(String callId);
52
53    void setRingbackRequested(String callId, boolean ringing);
54
55    void setCallCapabilities(String callId, int callCapabilities);
56
57    void setIsConferenced(String callId, String conferenceCallId);
58
59    void addConferenceCall(String callId, in ParcelableConference conference);
60
61    void removeCall(String callId);
62
63    void onPostDialWait(String callId, String remaining);
64
65    void queryRemoteConnectionServices(RemoteServiceCallback callback);
66
67    void setVideoProvider(String callId, IVideoProvider videoProvider);
68
69    void setVideoState(String callId, int videoState);
70
71    void setIsVoipAudioMode(String callId, boolean isVoip);
72
73    void setStatusHints(String callId, in StatusHints statusHints);
74
75    void setAddress(String callId, in Uri address, int presentation);
76
77    void setCallerDisplayName(String callId, String callerDisplayName, int presentation);
78
79    void setConferenceableConnections(String callId, in List<String> conferenceableCallIds);
80}
81