1 /* 2 * Copyright (C) 2021 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 IMS_CALLBACK_PROXY_H 17 #define IMS_CALLBACK_PROXY_H 18 19 #include "iremote_proxy.h" 20 #include "ims_callback.h" 21 #include "telephony_errors.h" 22 #include "call_manager_errors.h" 23 24 namespace OHOS { 25 namespace Telephony { 26 class ImsCallbackProxy : public IRemoteProxy<ImsCallback> { 27 public: 28 explicit ImsCallbackProxy(const sptr<IRemoteObject> &impl); 29 virtual ~ImsCallbackProxy() = default; 30 31 /** 32 * UpdateDialResponse 33 * 34 * @param ImsResponseInfo 35 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 36 */ 37 int32_t UpdateDialResponse(const ImsResponseInfo &info) override; 38 39 /** 40 * UpdateHangUpResponse 41 * 42 * @param ImsResponseInfo 43 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 44 */ 45 int32_t UpdateHangUpResponse(const ImsResponseInfo &info) override; 46 47 /** 48 * UpdateRejectResponse 49 * 50 * @param ImsResponseInfo 51 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 52 */ 53 int32_t UpdateRejectResponse(const ImsResponseInfo &info) override; 54 55 /** 56 * UpdateAnswerResponse 57 * 58 * @param ImsResponseInfo 59 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 60 */ 61 int32_t UpdateAnswerResponse(const ImsResponseInfo &info) override; 62 63 /** 64 * UpdateHoldResponse 65 * 66 * @param ImsResponseInfo 67 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 68 */ 69 int32_t UpdateHoldResponse(const ImsResponseInfo &info) override; 70 71 /** 72 * UpdateUnHoldResponse 73 * 74 * @param ImsResponseInfo 75 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 76 */ 77 int32_t UpdateUnHoldResponse(const ImsResponseInfo &info) override; 78 79 /** 80 * UpdateSwitchResponse 81 * 82 * @param ImsResponseInfo 83 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 84 */ 85 int32_t UpdateSwitchResponse(const ImsResponseInfo &info) override; 86 87 /** 88 * UpdateCombineConferenceResponse 89 * 90 * @param ImsResponseInfo 91 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 92 */ 93 int32_t UpdateCombineConferenceResponse(const ImsResponseInfo &info) override; 94 95 /** 96 * UpdateInviteToConferenceResponse 97 * 98 * @param ImsResponseInfo 99 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 100 */ 101 int32_t UpdateInviteToConferenceResponse(const ImsResponseInfo &info) override; 102 103 /** 104 * UpdateKickOutFromConferenceResponse 105 * 106 * @param ImsResponseInfo 107 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 108 */ 109 int32_t UpdateKickOutFromConferenceResponse(const ImsResponseInfo &info) override; 110 111 /** 112 * UpdateCallMediaModeResponse 113 * 114 * @param ImsResponseInfo 115 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 116 */ 117 int32_t UpdateCallMediaModeResponse(const ImsResponseInfo &info) override; 118 119 /** 120 * UpdateIsEmergencyPhoneNumberResponse 121 * 122 * @param ImsResponseInfo 123 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 124 */ 125 int32_t UpdateIsEmergencyPhoneNumberResponse(const ImsResponseInfo &info) override; 126 127 /** 128 * UpdateIsEmergencyPhoneNumberResponse 129 * 130 * @param bool 131 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 132 */ 133 int32_t UpdateIsEmergencyPhoneNumberResponse(bool value) override; 134 135 /** 136 * UpdateStartDtmfResponse 137 * 138 * @param ImsResponseInfo 139 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 140 */ 141 int32_t UpdateStartDtmfResponse(const ImsResponseInfo &info) override; 142 143 /** 144 * UpdateSendDtmfResponse 145 * 146 * @param ImsResponseInfo 147 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 148 */ 149 int32_t UpdateSendDtmfResponse(const ImsResponseInfo &info) override; 150 151 /** 152 * UpdateStopDtmfResponse 153 * 154 * @param ImsResponseInfo 155 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 156 */ 157 int32_t UpdateStopDtmfResponse(const ImsResponseInfo &info) override; 158 159 /** 160 * UpdateStartRttResponse 161 * 162 * @param ImsResponseInfo 163 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 164 */ 165 int32_t UpdateStartRttResponse(const ImsResponseInfo &info) override; 166 167 /** 168 * UpdateStopRttResponse 169 * 170 * @param ImsResponseInfo 171 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 172 */ 173 int32_t UpdateStopRttResponse(const ImsResponseInfo &info) override; 174 175 /** 176 * UpdateCallStatusResponse 177 * 178 * @param slotId 179 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 180 */ 181 int32_t UpdateCallStatusResponse(int32_t slotId) override; 182 183 /** 184 * UpdateServiceStatusResponse 185 * 186 * @param slotId 187 * @param CallImsServiceStatus 188 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 189 */ 190 int32_t UpdateServiceStatusResponse(int32_t slotId, const CallImsServiceStatus &callImsServiceStatus) override; 191 192 /** 193 * UpdateSetPreModeResponse 194 * 195 * @param slotId 196 * @param ImsResponseInfo 197 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 198 */ 199 int32_t UpdateSetPreModeResponse(int32_t slotId, const ImsResponseInfo &info) override; 200 201 /** 202 * UpdateGetPreModeResponse 203 * 204 * @param ImsResponseInfo 205 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 206 */ 207 int32_t UpdateGetPreModeResponse(const ImsResponseInfo &info) override; 208 209 /** 210 * UpdateGetPreModeResponse 211 * 212 * @param slotId 213 * @param int32_t 214 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 215 */ 216 int32_t UpdateGetPreModeResponse(int32_t slotId, int32_t mode) override; 217 218 /** 219 * UpdateSetImsSwitchResponse 220 * 221 * @param ImsResponseInfo 222 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 223 */ 224 int32_t UpdateSetImsSwitchResponse(const ImsResponseInfo &info) override; 225 226 /** 227 * UpdateGetImsSwitchResponse 228 * 229 * @param ImsResponseInfo 230 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 231 */ 232 int32_t UpdateGetImsSwitchResponse(const ImsResponseInfo &info) override; 233 234 /** 235 * UpdateGetImsSwitchResponse 236 * 237 * @param slotId 238 * @param active 239 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 240 */ 241 int32_t UpdateGetImsSwitchResponse(int32_t slotId, int32_t active) override; 242 243 /** 244 * UpdateImsCallsDataResponse 245 * 246 * @param ImsResponseInfo 247 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 248 */ 249 int32_t UpdateImsCallsDataResponse(const ImsResponseInfo &info) override; 250 251 /** 252 * UpdateImsCallsDataResponse 253 * 254 * @param slotId 255 * @param CallInfoList 256 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 257 */ 258 int32_t UpdateImsCallsDataResponse(int32_t slotId, const CallInfoList &callList) override; 259 260 /** 261 * UpdateSetImsConfigResponse 262 * 263 * @param ImsResponseInfo 264 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 265 */ 266 int32_t UpdateSetImsConfigResponse(const ImsResponseInfo &info) override; 267 268 /** 269 * UpdateGetImsConfigResponse 270 * 271 * @param value 272 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 273 */ 274 int32_t UpdateGetImsConfigResponse(int32_t value) override; 275 276 /** 277 * UpdateGetImsConfigResponse 278 * 279 * @param ImsResponseInfo 280 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 281 */ 282 int32_t UpdateGetImsConfigResponse(const ImsResponseInfo &info) override; 283 284 /** 285 * UpdateSetImsFeatureValueResponse 286 * 287 * @param ImsResponseInfo 288 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 289 */ 290 int32_t UpdateSetImsFeatureValueResponse(const ImsResponseInfo &info) override; 291 292 /** 293 * UpdateGetImsFeatureValueResponse 294 * 295 * @param value 296 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 297 */ 298 int32_t UpdateGetImsFeatureValueResponse(int32_t value) override; 299 300 /** 301 * UpdateGetImsFeatureValueResponse 302 * 303 * @param ImsResponseInfo 304 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 305 */ 306 int32_t UpdateGetImsFeatureValueResponse(const ImsResponseInfo &info) override; 307 308 /** 309 * UpdateSetImsSwitchEnhanceModeResponse 310 * 311 * @param ImsResponseInfo 312 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 313 */ 314 int32_t UpdateSetImsSwitchEnhanceModeResponse(const ImsResponseInfo &info) override; 315 316 /** 317 * UpdateGetImsSwitchEnhanceModeResponse 318 * 319 * @param value 320 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 321 */ 322 int32_t UpdateGetImsSwitchEnhanceModeResponse(int32_t value) override; 323 324 /** 325 * UpdateGetImsSwitchEnhanceModeResponse 326 * 327 * @param ImsResponseInfo 328 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 329 */ 330 int32_t UpdateGetImsSwitchEnhanceModeResponse(const ImsResponseInfo &info) override; 331 332 /** 333 * UpdateCtrlCameraResponse 334 * 335 * @param ImsResponseInfo 336 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 337 */ 338 int32_t UpdateCtrlCameraResponse(const ImsResponseInfo &info) override; 339 340 /** 341 * UpdateSetPreviewWindowResponse 342 * 343 * @param ImsResponseInfo 344 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 345 */ 346 int32_t UpdateSetPreviewWindowResponse(const ImsResponseInfo &info) override; 347 348 /** 349 * UpdateSetDisplayWindowResponse 350 * 351 * @param ImsResponseInfo 352 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 353 */ 354 int32_t UpdateSetDisplayWindowResponse(const ImsResponseInfo &info) override; 355 356 /** 357 * UpdateSetCameraZoomResponse 358 * 359 * @param ImsResponseInfo 360 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 361 */ 362 int32_t UpdateSetCameraZoomResponse(const ImsResponseInfo &info) override; 363 364 /** 365 * UpdateSetPauseImageResponse 366 * 367 * @param ImsResponseInfo 368 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 369 */ 370 int32_t UpdateSetPauseImageResponse(const ImsResponseInfo &info) override; 371 372 /** 373 * UpdateSetDeviceDirectionResponse 374 * 375 * @param ImsResponseInfo 376 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 377 */ 378 int32_t UpdateSetDeviceDirectionResponse(const ImsResponseInfo &info) override; 379 380 /** 381 * UpdateSrvccStateReport 382 * 383 * @param slotId 384 * @param SrvccState 385 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 386 */ 387 int32_t UpdateSrvccStateReport(int32_t slotId, SrvccState srvccState) override; 388 389 /** 390 * UpdateVtWfcReport 391 * 392 * @param slotId 393 * @param TransferState 394 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 395 */ 396 int32_t UpdateVtWfcReport(int32_t slotId, TransferState transferState) override; 397 398 /** 399 * UpdateCallRingBackResponse 400 * 401 * @param RingbackVoice 402 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 403 */ 404 int32_t UpdateCallRingBackResponse(const RingbackVoice &info) override; 405 406 /** 407 * UpdateSetMuteResponse 408 * 409 * @param MuteControlResponse 410 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 411 */ 412 int32_t UpdateSetMuteResponse(const MuteControlResponse &response) override; 413 414 /** 415 * UpdateGetMuteResponse 416 * 417 * @param MuteControlResponse 418 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 419 */ 420 int32_t UpdateGetMuteResponse(const MuteControlResponse &response) override; 421 422 /** 423 * UpdateGetEccCallListResponse 424 * 425 * @param EmergencyInfoList 426 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 427 */ 428 int32_t UpdateGetEccCallListResponse(const EmergencyInfoList &callList) override; 429 430 /** 431 * UpdateCallFailReasonResponse 432 * 433 * @param int32_t 434 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 435 */ 436 int32_t UpdateCallFailReasonResponse(int32_t reason) override; 437 438 /** 439 * UpdateGetClipResponse 440 * 441 * @param ClipResponse 442 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 443 */ 444 int32_t UpdateGetClipResponse(const ClipResponse &response) override; 445 446 /** 447 * UpdateGetClirResponse 448 * 449 * @param ClirResponse 450 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 451 */ 452 int32_t UpdateGetClirResponse(const ClirResponse &response) override; 453 454 /** 455 * UpdateSetClirResponse 456 * 457 * @param HRilErrType 458 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 459 */ 460 int32_t UpdateSetClirResponse(HRilErrType errType) override; 461 462 /** 463 * UpdateGetCallTransferResponse 464 * 465 * @param CallTransferResponse 466 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 467 */ 468 int32_t UpdateGetCallTransferResponse(const CallTransferResponse &response) override; 469 470 /** 471 * UpdateSetCallTransferResponse 472 * 473 * @param HRilErrType 474 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 475 */ 476 int32_t UpdateSetCallTransferResponse(HRilErrType errType) override; 477 478 /** 479 * UpdateGetCallRestrictionResponse 480 * 481 * @param CallRestrictionResponse 482 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 483 */ 484 int32_t UpdateGetCallRestrictionResponse(const CallRestrictionResponse &response) override; 485 486 /** 487 * UpdateSetCallRestrictionResponse 488 * 489 * @param HRilErrType 490 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 491 */ 492 int32_t UpdateSetCallRestrictionResponse(HRilErrType errType) override; 493 494 /** 495 * UpdateGetCallWaitingResponse 496 * 497 * @param CallWaitResponse 498 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 499 */ 500 int32_t UpdateGetCallWaitingResponse(const CallWaitResponse &response) override; 501 502 /** 503 * UpdateSetCallWaitingResponse 504 * 505 * @param HRilErrType 506 * @return Returns TELEPHONY_SUCCESS on success, others on failure. 507 */ 508 int32_t UpdateSetCallWaitingResponse(HRilErrType errType) override; 509 510 private: 511 static inline BrokerDelegator<ImsCallbackProxy> delegator_; 512 }; 513 } // namespace Telephony 514 } // namespace OHOS 515 516 #endif 517