1 /* 2 * Copyright (C) 2021-2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef I_CALL_STATUS_CALLBACK_H 17 #define I_CALL_STATUS_CALLBACK_H 18 19 #include "iremote_broker.h" 20 #include "call_manager_inner_type.h" 21 22 namespace OHOS { 23 namespace Telephony { 24 class ICallStatusCallback : public IRemoteBroker { 25 public: 26 virtual ~ICallStatusCallback() = default; 27 28 virtual int32_t UpdateCallReportInfo(const CallReportInfo &info) = 0; 29 virtual int32_t UpdateCallsReportInfo(const CallsReportInfo &info) = 0; 30 virtual int32_t UpdateDisconnectedCause(const DisconnectedDetails &details) = 0; 31 virtual int32_t UpdateEventResultInfo(const CellularCallEventInfo &info) = 0; 32 virtual int32_t UpdateRBTPlayInfo(const RBTPlayInfo info) = 0; 33 virtual int32_t UpdateGetWaitingResult(const CallWaitResponse &callWaitResponse) = 0; 34 virtual int32_t UpdateSetWaitingResult(const int32_t result) = 0; 35 virtual int32_t UpdateGetRestrictionResult(const CallRestrictionResponse &callRestrictionResult) = 0; 36 virtual int32_t UpdateSetRestrictionResult(int32_t result) = 0; 37 virtual int32_t UpdateGetTransferResult(const CallTransferResponse &callTransferResponse) = 0; 38 virtual int32_t UpdateSetTransferResult(const int32_t result) = 0; 39 virtual int32_t UpdateGetCallClipResult(const ClipResponse &clipResponse) = 0; 40 virtual int32_t UpdateGetCallClirResult(const ClirResponse &clirResponse) = 0; 41 virtual int32_t UpdateSetCallClirResult(const int32_t result) = 0; 42 virtual int32_t StartRttResult(const int32_t result) = 0; 43 virtual int32_t StopRttResult(const int32_t result) = 0; 44 virtual int32_t GetImsConfigResult(const GetImsConfigResponse &response) = 0; 45 virtual int32_t SetImsConfigResult(const int32_t result) = 0; 46 virtual int32_t GetImsFeatureValueResult(const GetImsFeatureValueResponse &response) = 0; 47 virtual int32_t SetImsFeatureValueResult(const int32_t result) = 0; 48 virtual int32_t ReceiveUpdateCallMediaModeResponse(const CallMediaModeResponse &response) = 0; 49 virtual int32_t InviteToConferenceResult(const int32_t result) = 0; 50 virtual int32_t StartDtmfResult(const int32_t result) = 0; 51 virtual int32_t StopDtmfResult(const int32_t result) = 0; 52 virtual int32_t SendUssdResult(const int32_t result) = 0; 53 virtual int32_t GetImsCallDataResult(const int32_t result) = 0; 54 virtual int32_t SendMmiCodeResult(const MmiCodeInfo &info) = 0; 55 56 enum CallManagerCallStatusCode { 57 UPDATE_CALL_INFO = 0, 58 UPDATE_CALLS_INFO, 59 UPDATE_DISCONNECTED_CAUSE, 60 UPDATE_EVENT_RESULT_INFO, 61 UPDATE_RBT_PLAY_INFO, 62 UPDATE_GET_WAITING, 63 UPDATE_SET_WAITING, 64 UPDATE_GET_RESTRICTION, 65 UPDATE_SET_RESTRICTION, 66 UPDATE_GET_TRANSFER, 67 UPDATE_SET_TRANSFER, 68 UPDATE_GET_CALL_CLIP, 69 UPDATE_GET_CALL_CLIR, 70 UPDATE_SET_CALL_CLIR, 71 GET_IMS_SWITCH_STATUS, 72 SET_IMS_SWITCH_STATUS, 73 UPDATE_STARTRTT_STATUS, 74 UPDATE_STOPRTT_STATUS, 75 GET_IMS_CONFIG, 76 SET_IMS_CONFIG, 77 GET_IMS_FEATURE_VALUE, 78 SET_IMS_FEATURE_VALUE, 79 GET_LTE_ENHANCE_MODE, 80 SET_LTE_ENHANCE_MODE, 81 RECEIVE_UPDATE_MEDIA_MODE_RESPONSE, 82 INVITE_TO_CONFERENCE, 83 START_DTMF, 84 STOP_DTMF, 85 SEND_USSD, 86 GET_IMS_CALL_DATA, 87 MMI_CODE_INFO_RESPONSE, 88 }; 89 90 public: 91 DECLARE_INTERFACE_DESCRIPTOR(u"OHOS.Telephony.ICallStatusCallback"); 92 }; 93 } // namespace Telephony 94 } // namespace OHOS 95 96 #endif 97