• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 CALL_MANAGER_SERVICE_PROXY_H
17 #define CALL_MANAGER_SERVICE_PROXY_H
18 
19 #include <cfloat>
20 #include <cstdio>
21 #include <string>
22 #include <vector>
23 
24 #include "iremote_broker.h"
25 #include "iremote_proxy.h"
26 #include "pac_map.h"
27 
28 #include "call_ability_callback_ipc_interface_code.h"
29 #include "call_manager_inner_type.h"
30 #include "call_manager_service_ipc_interface_code.h"
31 #include "i_call_manager_service.h"
32 #include "telephony_log_wrapper.h"
33 
34 namespace OHOS {
35 namespace Telephony {
36 class CallManagerServiceProxy : public IRemoteProxy<ICallManagerService> {
37 public:
38     /**
39      * CallManagerServiceProxy
40      *
41      * @param impl
42      */
43     explicit CallManagerServiceProxy(const sptr<IRemoteObject> &impl);
44     virtual ~CallManagerServiceProxy() = default;
45 
46     /**
47      * RegisterCallBack
48      *
49      * @brief Register callback
50      * @param callback[in], callback function pointer
51      * @return Returns 0 on success, others on failure.
52      */
53     int32_t RegisterCallBack(const sptr<ICallAbilityCallback> &callback) override;
54 
55     /**
56      * UnRegisterCallBack
57      *
58      * @brief unregister callback
59      * @return Returns 0 on success, others on failure.
60      */
61     int32_t UnRegisterCallBack() override;
62 
63     /**
64      * ObserverOnCallDetailsChange
65      *
66      * @brief execute when observe OnCallDetailsChange
67      * @return Returns 0 on success, others on failure.
68      */
69     int32_t ObserverOnCallDetailsChange() override;
70 
71     /**
72      * DialCall
73      *
74      * @brief Dial a phone call
75      * @param number[in], dial param.
76      * @param extras[in], extras date.
77      * @return Returns callId when the value is greater than zero, others on failure.
78      */
79     int32_t DialCall(std::u16string number, AppExecFwk::PacMap &extras) override;
80 
81     /**
82      * MakeCall
83      *
84      * @brief Make a phone call
85      * @param number[in], call param.
86      * @return Returns 0 on success, others on failure.
87      */
88     int32_t MakeCall(std::string number) override;
89 
90     /**
91      * AnswerCall
92      *
93      * @brief Answer a phone call
94      * @param callId[in], call id
95      * @param videoState[in], 0: audio, 1: video
96      * @return Returns 0 on success, others on failure.
97      */
98     int32_t AnswerCall(int32_t callId, int32_t videoState) override;
99 
100     /**
101      * RejectCall
102      *
103      * @brief Reject a phone call
104      * @param callId[in], call id
105      * @param rejectWithMessage[in], Whether to enter the reason for rejection,true:yes false:no
106      * @param textMessage[in], The reason you reject the call
107      * @return Returns 0 on success, others on failure.
108      */
109     int32_t RejectCall(int32_t callId, bool rejectWithMessage, std::u16string textMessage) override;
110 
111     /**
112      * HangUpCall
113      *
114      * @brief Hang up the phone
115      * @param callId[in], call id
116      * @return Returns 0 on success, others on failure.
117      */
118     int32_t HangUpCall(int32_t callId) override;
119 
120     /**
121      * GetCallState
122      *
123      * @brief Obtain the call status of the device
124      * @return Returns call state.
125      */
126     int32_t GetCallState() override;
127 
128     /**
129      * HoldCall
130      *
131      * @brief Park a phone call
132      * @param callId[in], call id
133      * @return Returns 0 on success, others on failure.
134      */
135     int32_t HoldCall(int32_t callId) override;
136 
137     /**
138      * UnHoldCall
139      *
140      * @brief Activate a phone call
141      * @param callId[in], call id
142      * @return Returns 0 on success, others on failure.
143      */
144     int32_t UnHoldCall(int32_t callId) override;
145 
146     /**
147      * SwitchCall
148      *
149      * @brief Switch the phone
150      * @param callId[in], call id
151      * @return Returns 0 on success, others on failure.
152      */
153     int32_t SwitchCall(int32_t callId) override;
154 
155     /**
156      * HasCall
157      *
158      * @brief Is there Call
159      * @param isInCludeVoipCall[in], include voip call or not
160      * @return Returns true on has call, others on there is no call.
161      */
162     bool HasCall(const bool isInCludeVoipCall = true) override;
163 
164     /**
165      * IsNewCallAllowed
166      *
167      * @brief Can I initiate a call
168      * @param enabled[out], whether allow new calls
169      * @return Returns interface processing results.
170      */
171     int32_t IsNewCallAllowed(bool &enabled) override;
172 
173     /**
174      * SetMuted
175      *
176      * @brief Mute the Microphone
177      * @param isMute[in], mute state
178      * @return Returns 0 on success, others on failure.
179      */
180     int32_t SetMuted(bool isMute) override;
181 
182     /**
183      * MuteRinger
184      *
185      * @brief Call mute
186      * @return Returns 0 on success, others on failure.
187      */
188     int32_t MuteRinger() override;
189 
190     /**
191      * SetAudioDevice
192      *
193      * @brief Setting the Audio Channel
194      * @param audioDevice[in], contain audioDeviceType and address
195      * @return Returns 0 on success, others on failure.
196      */
197     int32_t SetAudioDevice(const AudioDevice &audioDevice) override;
198 
199     /**
200      * IsRinging
201      *
202      * @brief Whether the ringing
203      * @param enabled[out], true on ringing, false on there is no ringing
204      * @return Returns interface processing results.
205      */
206     int32_t IsRinging(bool &enabled) override;
207 
208     /**
209      * IsInEmergencyCall
210      *
211      * @brief Is there an emergency call
212      * @param enabled[out], true on emergency call, false on no emergency call
213      * @return Returns interface processing results.
214      */
215     int32_t IsInEmergencyCall(bool &enabled) override;
216 
217     /**
218      * StartDtmf
219      *
220      * @brief Enable and send DTMF
221      * @param callId[in], call id
222      * @param str[in], Characters sent
223      * @return Returns 0 on success, others on failure.
224      */
225     int32_t StartDtmf(int32_t callId, char str) override;
226 
227     /**
228      * StopDtmf
229      *
230      * @brief Stop the DTMF
231      * @param callId[in], call id
232      * @return Returns 0 on success, others on failure.
233      */
234     int32_t StopDtmf(int32_t callId) override;
235 
236     int32_t PostDialProceed(int32_t callId, bool proceed) override;
237 
238     /**
239      * GetCallWaiting
240      *
241      * @brief Gets whether the call waiting service of the current account is enabled
242      * @param slotId[in], The slot id
243      * @return Returns 0 on success, others on failure.
244      */
245     int32_t GetCallWaiting(int32_t slotId) override;
246 
247     /**
248      * SetCallWaiting
249      *
250      * @brief Set the call waiting function for the current account
251      * @param slotId[in], The slot id
252      * @param activate[in], Activation of switch
253      * @return Returns 0 on success, others on failure.
254      */
255     int32_t SetCallWaiting(int32_t slotId, bool activate) override;
256 
257     /**
258      * GetCallRestriction
259      *
260      * @brief Gets the call restriction information of the specified account
261      * @param slotId[in], The slot id
262      * @param type[in], Call Restriction type
263      * @return Returns 0 on success, others on failure.
264      */
265     int32_t GetCallRestriction(int32_t slotId, CallRestrictionType type) override;
266 
267     /**
268      * SetCallRestriction
269      *
270      * @brief Set the call restriction function for the current account
271      * @param slotId[in], The slot id
272      * @param info[in], Call restriction information
273      * @return Returns 0 on success, others on failure.
274      */
275     int32_t SetCallRestriction(int32_t slotId, CallRestrictionInfo &info) override;
276 
277     /**
278      * SetCallRestrictionPassword
279      *
280      * @brief Set the call restriction password function for the current account
281      * @param slotId[in], The slot id
282      * @param fac[in], Call restriction type
283      * @param oldPassword[in], Old password of call restriction type
284      * @param newPassword[in], New password of call restriction type
285      * @return Returns 0 on success, others on failure.
286      */
287     int32_t SetCallRestrictionPassword(
288         int32_t slotId, CallRestrictionType fac, const char *oldPassword, const char *newPassword) override;
289 
290     /**
291      * GetCallTransferInfo
292      *
293      * @brief Gets the call transfer information of the current account
294      * @param slotId[in], The slot id
295      * @param type[in], Call Transfer Type
296      * @return Returns 0 on success, others on failure.
297      */
298     int32_t GetCallTransferInfo(int32_t slotId, CallTransferType type) override;
299 
300     /**
301      * SetCallTransferInfo
302      *
303      * @brief Set the call transfer function for the current account
304      * @param slotId[in], The slot id
305      * @param info[in], Call Transfer Information
306      * @return Returns 0 on success, others on failure.
307      */
308     int32_t SetCallTransferInfo(int32_t slotId, CallTransferInfo &info) override;
309 
310     /**
311      * CanSetCallTransferTime
312      *
313      * @brief confirm whether IMS can set call transfer time.
314      * @param slotId[in], The slot id
315      * @param result[out], The result of can set or not
316      * @return Returns true on can set, others on can not set.
317      */
318     int32_t CanSetCallTransferTime(int32_t slotId, bool &result) override;
319 
320     /**
321      * CombineConference
322      *
323      * @brief Merge calls to form a conference
324      * @param callId[in], call id
325      * @return Returns 0 on success, others on failure.
326      */
327     int32_t CombineConference(int32_t mainCallId) override;
328 
329     /**
330      * SeparateConference
331      *
332      * @brief Separates a specified call from a conference call
333      * @param callId[in], call id
334      * @return Returns 0 on success, others on failure.
335      */
336     int32_t SeparateConference(int32_t callId) override;
337 
338     /**
339      * KickOutFromConference
340      *
341      * @brief Hangup a specified call from a conference call
342      * @param callId[in], call id
343      * @return Returns 0 on success, others on failure.
344      */
345     int32_t KickOutFromConference(int32_t callId) override;
346 
347     /**
348      * JoinConference
349      *
350      * @brief Bring someone into a meeting
351      * @param callId[in], The call id
352      * @param numberList[in], List of calls to join the conference
353      * @return Returns 0 on success, others on failure.
354      */
355     int32_t JoinConference(int32_t callId, std::vector<std::u16string> &numberList) override;
356 
357     /**
358      * SetCallPreferenceMode
359      *
360      * @brief Setting the Call Type
361      * @param slotId[in], The slot id
362      * @param mode[in], Preference Mode
363      * @return Returns 0 on success, others on failure.
364      */
365     int32_t SetCallPreferenceMode(int32_t slotId, int32_t mode) override;
366 
367     /**
368      * ControlCamera
369      *
370      * @brief Open or close camera
371      * @param callId[in], The call id
372      * @param cameraId[in], The camera id
373      * @return Returns 0 on success, others on failure.
374      */
375     int32_t ControlCamera(int32_t callId, std::u16string &cameraId) override;
376 
377     /**
378      * SetPreviewWindow
379      *
380      * @brief Set the location and size of the preview window for videos captured by the local camera.
381      * @param callId[in], The call id
382      * @param surfaceId[in], Window information
383      * @param surface[in], Window information
384      * @return Returns 0 on success, others on failure.
385      */
386     int32_t SetPreviewWindow(int32_t callId, std::string &surfaceId, sptr<Surface> surface) override;
387 
388     /**
389      * SetDisplayWindow
390      *
391      * @brief Sets the location and size of the remote video window.
392      * @param callId[in], The call id
393      * @param surfaceId[in], Window information
394      * @param surface[in], Window information
395      * @return Returns 0 on success, others on failure.
396      */
397     int32_t SetDisplayWindow(int32_t callId, std::string &surfaceId, sptr<Surface> surface) override;
398 
399     /**
400      * SetCameraZoom
401      *
402      * @brief Sets the local camera zoom scale
403      * @param zoomRatio[in], Camera scale
404      * @return Returns 0 on success, others on failure.
405      */
406     int32_t SetCameraZoom(float zoomRatio) override;
407 
408     /**
409      * SetPausePicture
410      *
411      * @brief APP sets the screen of the remote video freeze immediately.
412      * If the APP does not call this interface when making a video call,
413      * the last frame before the remote video freeze is displayed by default
414      * @param callId[in], The call id
415      * @param path[in], Local Picture address
416      * @return Returns 0 on success, others on failure.
417      */
418     int32_t SetPausePicture(int32_t callId, std::u16string &path) override;
419 
420     /**
421      * SetDeviceDirection
422      *
423      * @brief Set the rotation Angle of the local device. The default value is 0
424      * @param callId[in], The call id
425      * @param rotation[in], Rotation Angle
426      * @return Returns 0 on success, others on failure.
427      */
428     int32_t SetDeviceDirection(int32_t callId, int32_t rotation) override;
429 
430     /**
431      * IsEmergencyPhoneNumber
432      *
433      * @brief Is it an emergency call
434      * @param number[in], Phone number to be formatted
435      * @param slotId[in], The slot id
436      * @param enabled[out] result of is it an emergency call
437      * @return Returns 0 on success, others on failure.
438      */
439     int32_t IsEmergencyPhoneNumber(std::u16string &number, int32_t slotId, bool &enabled) override;
440 
441     /**
442      * FormatPhoneNumber
443      *
444      * @brief Formatting a phone number
445      * @param number[in], Phone number to be formatted
446      * @param countryCode[in], Country code of the phone number
447      * @param formatNumber[out] Formatting a phone number
448      * @return Returns 0 on success, others on failure.
449      */
450     int32_t FormatPhoneNumber(
451         std::u16string &number, std::u16string &countryCode, std::u16string &formatNumber) override;
452 
453     /**
454      * FormatPhoneNumberToE164
455      *
456      * @brief Formatting a phone number
457      * @param number[in]. Phone number to be formatted
458      * @param countryCode[in], Country code of the phone number
459      * @param formatNumber[out] Formatting a phone number
460      * @return Returns 0 on success, others on failure.
461      */
462     int32_t FormatPhoneNumberToE164(
463         std::u16string &number, std::u16string &countryCode, std::u16string &formatNumber) override;
464 
465     /**
466      * GetMainCallId
467      *
468      * @brief Obtain the ID of the primary call in a conference
469      * @param callId[in], Id of a call in a conference
470      * @return Returns main call id, -1 on not call id.
471      */
472     int32_t GetMainCallId(int32_t callId, int32_t &mainCallId) override;
473 
474     /**
475      * GetSubCallIdList
476      *
477      * @brief Obtain the list of neutron call ids
478      * @param callId[in], Id of a call in a conference
479      * @param callIdList[out], the list of neutron call ids
480      * @return Returns 0 on success, others on failure.
481      */
482     int32_t GetSubCallIdList(int32_t callId, std::vector<std::u16string> &callIdList) override;
483 
484     /**
485      * GetCallIdListForConference
486      *
487      * @brief Obtain the callId list of all calls in a conference
488      * @param callId[in], Id of a call in a conference
489      * @param callIdList[out], the callId list of all calls in a conference
490      * @return Returns 0 on success, others on failure.
491      */
492     int32_t GetCallIdListForConference(int32_t callId, std::vector<std::u16string> &callIdList) override;
493 
494     /**
495      * GetImsConfig
496      *
497      * @brief Obtain the IMS service configuration
498      * @param slotId[in], The slot id
499      * @param item[in]
500      * @return Returns 0 on success, others on failure.
501      */
502     int32_t GetImsConfig(int32_t slotId, ImsConfigItem item) override;
503 
504     /**
505      * SetImsConfig
506      *
507      * @brief Example Set the IMS service configuration
508      * @param slotId[in], The slot id
509      * @param item[in]
510      * @return Returns 0 on success, others on failure.
511      */
512     int32_t SetImsConfig(int32_t slotId, ImsConfigItem item, std::u16string &value) override;
513 
514     /**
515      * GetImsFeatureValue
516      *
517      * @brief Gets the value of the IMS function item of the specified network type
518      * @param slotId[in], The slot id
519      * @param info[in], FeatureType
520      * @return Returns 0 on success, others on failure.
521      */
522     int32_t GetImsFeatureValue(int32_t slotId, FeatureType type) override;
523 
524     /**
525      * SetImsFeatureValue
526      *
527      * @brief Set the value of the IMS function item of the specified network type
528      * @param slotId[in], The slot id
529      * @param info[in], FeatureType
530      * @param value[in]
531      * @return Returns 0 on success, others on failure.
532      */
533     int32_t SetImsFeatureValue(int32_t slotId, FeatureType type, int32_t value) override;
534 
535     /**
536      * UpdateImsCallMode
537      *
538      * @brief Setting the Call Mode
539      * @param callId[in], The call id
540      * @param mode[in], Calling patterns
541      * @return Returns 0 on success, others on failure.
542      */
543     int32_t UpdateImsCallMode(int32_t callId, ImsCallMode mode) override;
544 
545     /**
546      * EnableImsSwitch
547      *
548      * @brief Start VoLte
549      * @param slotId[in], The slot id
550      * @return Returns 0 on success, others on failure.
551      */
552     int32_t EnableImsSwitch(int32_t slotId) override;
553 
554     /**
555      * DisableImsSwitch
556      *
557      * @brief Stop VoLte
558      * @param slotId[in], The slot id
559      * @return Returns 0 on success, others on failure.
560      */
561     int32_t DisableImsSwitch(int32_t slotId) override;
562 
563     /**
564      * IsImsSwitchEnabled
565      *
566      * @brief Whether to enable VoLte
567      * @param slotId[in], The slot id
568      * @param enabled[out], The result of enable or not
569      * @return Returns 0 on success, others on failure.
570      */
571     int32_t IsImsSwitchEnabled(int32_t slotId, bool &enabled) override;
572 
573     /**
574      * SetVoNRState
575      *
576      * @brief Set VoNR State
577      * @param slotId[in], The slot id
578      * @param state[in], The state of VoNR
579      * @return Returns 0 on success, others on failure.
580      */
581     int32_t SetVoNRState(int32_t slotId, int32_t state) override;
582 
583     /**
584      * GetVoNRState
585      *
586      * @brief Get VoNR State
587      * @param slotId[in], The slot id
588      * @param state[out], The result of VoNR state ON or OFF
589      * @return Returns 0 on success, others on failure.
590      */
591     int32_t GetVoNRState(int32_t slotId, int32_t &state) override;
592 
593     /**
594      * StartRtt
595      *
596      * @brief Enable and send RTT information
597      * @param callId[in], The call id
598      * @param msg[in], RTT information
599      * @return Returns 0 on success, others on failure.
600      */
601     int32_t StartRtt(int32_t callId, std::u16string &msg) override;
602 
603     /**
604      * StopRtt
605      *
606      * @brief Close the RTT
607      * @param callId[in], The call id
608      * @return Returns 0 on success, others on failure.
609      */
610     int32_t StopRtt(int32_t callId) override;
611 
612     /**
613      * ReportOttCallDetailsInfo
614      *
615      * @brief report ott call details info
616      * @param ottVec[in], ott call status detail info list
617      * @return Returns 0 on success, others on failure.
618      */
619     int32_t ReportOttCallDetailsInfo(std::vector<OttCallDetailsInfo> &ottVec) override;
620 
621     /**
622      * ReportOttCallEventInfo
623      *
624      * @brief report ott call event info
625      * @param eventInfo[in], ott call event detail info
626      * @return Returns 0 on success, others on failure.
627      */
628     int32_t ReportOttCallEventInfo(OttCallEventInfo &eventInfo) override;
629 
630     /**
631      * CloseUnFinishedUssd
632      *
633      * @brief Close Unfinished ussd function for the current account
634      * @param slotId[in], The slot id
635      * @return Returns 0 on success, others on failure.
636      */
637     int32_t CloseUnFinishedUssd(int32_t slotId) override;
638 
639     /**
640      * Handle special code from dialer.
641      *
642      * @param specialCode[in], special code
643      * @return Returns 0 on success, others on failure.
644      */
645     int32_t InputDialerSpecialCode(const std::string &specialCode) override;
646 
647     /**
648      * Remove missed incoming call notification.
649      *
650      * @return Returns 0 on success, others on failure.
651      */
652     int32_t RemoveMissedIncomingCallNotification() override;
653 
654     /**
655      * SetVoIPCallState
656      *
657      * @brief Set VoIP Call State
658      * @param state[in], The state of VoIP Call
659      * @return Returns 0 on success, others on failure.
660      */
661     int32_t SetVoIPCallState(int32_t state) override;
662 
663     /**
664      * GetVoNRState
665      *
666      * @brief Get VoIP Call State
667      * @param state[out], The VoIP Call state
668      * @return Returns 0 on success, others on failure.
669      */
670     int32_t GetVoIPCallState(int32_t &state) override;
671 
672     /**
673      * @brief Set VoIP Call info
674      *
675      * @param callId[in] Indicates the VoIP Call id
676      * @param state[in] Indicates the VoIP Call state
677      * @param phoneNumber[in] Indicates the VoIP Call phone number
678      * @return Returns 0 on success, others on failure.
679      */
680     int32_t SetVoIPCallInfo(int32_t callId, int32_t state, std::string phoneNumber) override;
681 
682     /**
683      * @brief Get VoIP Call Switch Status
684      *
685      * @param callId[out] Indicates the VoIP Call id
686      * @param state[out] Indicates the VoIP Call state
687      * @param phoneNumber[out] Indicates the VoIP Call phone number
688      * @return Returns 0 on success, others on failure.
689      */
690     int32_t GetVoIPCallInfo(int32_t &callId, int32_t &state, std::string &phoneNumber) override;
691 
692     /**
693      * GetProxyObjectPtr
694      *
695      * @brief get callManager proxy object ptr
696      * @param proxyType[in], proxy type
697      * @return Returns nullptr on failure, others on success.
698      */
699     sptr<IRemoteObject> GetProxyObjectPtr(CallManagerProxyType proxyType) override;
700 
701     /**
702      * ReportAudioDeviceInfo
703      *
704      * @brief report audio device info
705      * @return Returns 0 on success, others on failure.
706      */
707     int32_t ReportAudioDeviceInfo() override;
708 
709     /**
710      * CancelCallUpgrade
711      *
712      * @brief cancel upgrade to video call
713      * @param callId[in], The call id
714      *
715      * @return Returns 0 on success, others on failure.
716      */
717     int32_t CancelCallUpgrade(int32_t callId) override;
718 
719     /**
720      * RequestCameraCapabilities
721      *
722      * @brief request camera capabilities
723      * @param callId[in], The call id
724      *
725      * @return Returns 0 on success, others on failure.
726      */
727     int32_t RequestCameraCapabilities(int32_t callId) override;
728 
729     /**
730      * RegisterVoipCallManagerCallback
731      *
732      * @brief notify voip register callstatus call back
733      * @return Returns 0 on success, others on failure.
734      */
735     int32_t RegisterVoipCallManagerCallback() override;
736 
737     /**
738      * @brief notify voip unregister callstatus callback
739      *
740      * @return Returns 0 on success, others on failure.
741      */
742     int32_t UnRegisterVoipCallManagerCallback() override;
743 
744     /**
745      * SendCallUiEvent
746      *
747      * @brief send call ui event
748      * @return Returns 0 on success, others on failure.
749      */
750     int32_t SendCallUiEvent(int32_t callId, std::string &eventName) override;
751 
752     /**
753      * RegisterBluetoothCallManagerCallback
754      *
755      * @brief notify bluetooth register callstatus call back
756      * @return Returns ICallStatusCallback.
757      */
758     sptr<ICallStatusCallback> RegisterBluetoothCallManagerCallbackPtr(std::string &macAddress) override;
759 
760     /**
761      * SendUssdResponse
762      *
763      * @brief send ussd response to modem
764      * @return Returns 0 on success, others on failure.
765      */
766     int32_t SendUssdResponse(int32_t slotId, const std::string &content) override;
767 
768     /**
769      * SetCallPolicyInfo
770      *
771      * @brief set telephony call trust/block list policy
772      * @param isDialingTrustlist[in], dialing policy flag, false is block, true is trust.
773      * @param dialingList[in], dialing trust/block number list.
774      * @param isIncomingTrustlist[in], incoming policy flag, false is block, true is trust.
775      * @param incomingList[in], incoming trust/block number list.
776      * @return Returns 0 on success, others on failure.
777      */
778     int32_t SetCallPolicyInfo(bool isDialingTrustlist, const std::vector<std::string> &dialingList,
779         bool isIncomingTrustlist, const std::vector<std::string> &incomingList) override;
780 
781 private:
782     int32_t SendRequest(CallManagerInterfaceCode code);
783     int32_t SendRequest(CallManagerInterfaceCode code, MessageParcel &dataParcel, MessageParcel &replyParcel);
784 
785 private:
786     static inline BrokerDelegator<CallManagerServiceProxy> delegator_;
787 };
788 } // namespace Telephony
789 } // namespace OHOS
790 
791 #endif // CALL_MANAGER_SERVICE_PROXY_H
792