IPresenceListener.aidl revision 7ed3044ed1c4777650d38775a5f26cb3396fab09
1/* 2 * Copyright (c) 2016 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.uce.presence; 18 19import com.android.ims.internal.uce.common.StatusCode; 20import com.android.ims.internal.uce.presence.PresPublishTriggerType; 21import com.android.ims.internal.uce.presence.PresCmdStatus; 22import com.android.ims.internal.uce.presence.PresCapInfo; 23import com.android.ims.internal.uce.presence.PresSipResponse; 24import com.android.ims.internal.uce.presence.PresTupleInfo; 25import com.android.ims.internal.uce.presence.PresResInstanceInfo; 26import com.android.ims.internal.uce.presence.PresResInfo; 27import com.android.ims.internal.uce.presence.PresRlmiInfo; 28 29 30/** 31 * IPresenceListener 32 * {@hide} */ 33interface IPresenceListener 34{ 35 /** 36 * Gets the version of the presence listener implementation. 37 * @param version, version information. 38 */ 39 void getVersionCb(in String version ); 40 41 /** 42 * Callback function to be invoked by the Presence service to notify the listener of service 43 * availability. 44 * @param statusCode, UCE_SUCCESS as service availability. 45 */ 46 void serviceAvailable(in StatusCode statusCode); 47 48 /** 49 * Callback function to be invoked by the Presence service to notify the listener of service 50 * unavailability. 51 * @param statusCode, UCE_SUCCESS as service unAvailability. 52 */ 53 void serviceUnAvailable(in StatusCode statusCode); 54 55 /** 56 * Callback function to be invoked by the Presence service to notify the listener to send a 57 * publish request. 58 * @param publishTrigger, Publish trigger for the network being supported. 59 */ 60 void publishTriggering(in PresPublishTriggerType publishTrigger); 61 62 /** 63 * Callback function to be invoked to inform the client of the status of an asynchronous call. 64 * @param cmdStatus, command status of the request placed. 65 */ 66 void cmdStatus( in PresCmdStatus cmdStatus); 67 68 /** 69 * Callback function to be invoked to inform the client when the response for a SIP message, 70 * such as PUBLISH or SUBSCRIBE, has been received. 71 * @param sipResponse, network response received for the request placed. 72 */ 73 void sipResponseReceived(in PresSipResponse sipResponse); 74 75 /** 76 * Callback function to be invoked to inform the client when the NOTIFY message carrying a 77 * single contact's capabilities information is received. 78 * @param presentityURI, URI of the remote entity the request was placed. 79 * @param tupleInfo, array of capability information remote entity supports. 80 */ 81 void capInfoReceived(in String presentityURI, 82 in PresTupleInfo [] tupleInfo); 83 84 /** 85 * Callback function to be invoked to inform the client when the NOTIFY message carrying 86 * contact's capabilities information is received. 87 * @param rlmiInfo, resource infomation received from network. 88 * @param resInfo, array of capabilities received from network for the list of remore URI. 89 */ 90 void listCapInfoReceived(in PresRlmiInfo rlmiInfo, 91 in PresResInfo [] resInfo); 92}