Zoom Rooms Controller SDK Reference 6.5.0
Loading...
Searching...
No Matches
IContactHelper.h
Go to the documentation of this file.
1
6#ifndef ZRC_ICONTACTHELPER_H
7#define ZRC_ICONTACTHELPER_H
8
9#include "ZRCSDKTypes.h"
10
12
18{
22};
23
29{
36 IMBuddyTypeNormal = 1 << 5
37};
38
44{
56};
57
61{
62 std::string label;
63 std::string countryCode;
64 std::string phoneNumber;
65};
66
70{
71 std::string extension;
72 std::string companyNumber;
73 std::vector<std::string> directNumbers;
74};
75
78struct Contact
79{
83 std::string contactID;
84 std::string screenName;
85 std::string firstName;
86 std::string lastName;
87 std::string phoneNumber;
88 std::string email;
89 std::string pronouns;
90 std::string company;
91 std::string department;
92 std::string jobTitle;
93 std::string avatarURL;
94 std::string location;
95 std::string signature;
96 std::string sipPhoneNumber;
98 std::vector<PhoneContact> phoneInfos;
99};
100
104{
106 uint32_t count = 0;
107};
108
112{
114 uint32_t startIndex = 0;
115 uint32_t numberOfContacts = 0;
116 std::string filter;
118 std::vector<Contact> contacts;
119 uint64_t buddyTypeBits = 0;
120};
121
125{
126 std::vector<Contact> favoriteContacts;
127 std::vector<LegacyRoomSystem> favoriteLegacyRoomSystems;
128 std::vector<PhoneContact> favoritePhoneContacts;
129};
130
134{
135public:
137
146 virtual void OnImUpdateContactNotification(const std::vector<Contact>& contacts) = 0;
147
160 virtual void OnDynamicContactBasicInfoNotification(const std::vector<ContactTypeInfo>& typeInfos, uint32_t numberOfContacts, uint32_t numberOfZoomRooms) = 0;
161
171
180 virtual void OnUpdateFavoritesList(const FavoritesList& list) = 0;
181
190 virtual void OnStartReceivingLegacyRoomList(bool isSelfRooms) = 0;
191
201 virtual void OnAddLegacyRooms(const std::vector<LegacyRoomSystem>& roomList, bool isSelfRooms) = 0;
202
211 virtual void OnFinishReceivingLegacyRoomList(bool isSelfRooms) = 0;
212};
213
217{
218public:
219 virtual ~IContactHelper() {}
220
232
244
256 virtual ZRCSDKError SubscribeByContactID(const std::vector<std::string>& contactIDs, bool isSearchSipContact) = 0;
257
270 virtual ZRCSDKError Subscribe(uint32_t startIndex, uint32_t count, bool isSearchSipContact) = 0;
271
282 virtual ZRCSDKError RequestContactsDetail(const std::vector<std::string>& contactIDs) = 0;
283
297 virtual ZRCSDKError RequestContactsDynamically(uint32_t startIndex, uint32_t count, bool isSearchSipContact, uint64_t buddyTypeBits) = 0;
298
313 virtual ZRCSDKError SearchContactsDynamically(uint32_t startIndex, uint32_t count, bool isSearchSipContact, const std::string& searchFilter, uint64_t buddyTypeBits) = 0;
314
326 virtual ZRCSDKError GetLegacyRoomList(std::vector<LegacyRoomSystem>& roomList, bool isSelfRooms) = 0;
327};
328
330#endif //ZRC_ICONTACTHELPER_H
IMPresenceStatus
IM presence status Here are more detailed structural descriptions.
@ IMPresenceStatusAway
Away.
@ IMPresenceStatusCalendar
In a calendar event.
@ IMPresenceStatusNone
Invalid.
@ IMPresenceStatusAvailable
Online.
@ IMPresenceStatusPresenting
Presenting.
@ IMPresenceStatusDoNotDisturb
Do not disturb.
@ IMPresenceStatusInMeeting
In a Zoom meeting.
@ IMPresenceStatusOutOfOffice
Out of office.
@ IMPresenceStatusPhoneCall
On a call.
@ IMPresenceStatusBusy
Busy.
@ IMPresenceStatusUnAvailable
UnAvailable.
IMAccountStatus
IM account status Here are more detailed structural descriptions.
@ IMAccountStatusActive
IM account status is active.
@ IMAccountStatusTerminate
IM account status is terminate.
@ IMAccountStatusDeactivated
IM account status is deactivated.
IMBuddyType
IM buddy type Here are more detailed structural descriptions.
@ IMBuddyTypeDefault
Default.
@ IMBuddyTypeSharedGlobalDirectory
Shared global directory, buddy from UCS.
@ IMBuddyTypePersonalContacts
Personal contact.
@ IMBuddyTypeZoomPhoneApplicance
Zoom Phone Applicance.
@ IMBuddyTypeNone
Init.
@ IMBuddyTypeZoomRoom
Zoom Room.
@ IMBuddyTypeNormal
Normal IM User.
#define NS_ZRCSDK_END
#define NS_ZRCSDK_BEG
ZRC SDK Types.
ZRCSDKError
SDK error types. Here are more detailed structural descriptions.
Definition ZRCSDKTypes.h:22
Contact helper interface.
virtual ZRCSDKError DeregisterSink(IContactHelperSink *pSink)=0
Deregister contact helper callback sink.
virtual ~IContactHelper()
virtual ZRCSDKError GetLegacyRoomList(std::vector< LegacyRoomSystem > &roomList, bool isSelfRooms)=0
Query current legacy room list.
virtual ZRCSDKError SearchContactsDynamically(uint32_t startIndex, uint32_t count, bool isSearchSipContact, const std::string &searchFilter, uint64_t buddyTypeBits)=0
Search contacts dynamically.
virtual ZRCSDKError Subscribe(uint32_t startIndex, uint32_t count, bool isSearchSipContact)=0
Subscribe contact in range, you will be notified the changes after the subscription.
virtual ZRCSDKError RequestContactsDetail(const std::vector< std::string > &contactIDs)=0
Request contacts detail.
virtual ZRCSDKError RegisterSink(IContactHelperSink *pSink)=0
Register contact helper callback sink.
virtual ZRCSDKError RequestContactsDynamically(uint32_t startIndex, uint32_t count, bool isSearchSipContact, uint64_t buddyTypeBits)=0
Request contacts dynamically.
virtual ZRCSDKError SubscribeByContactID(const std::vector< std::string > &contactIDs, bool isSearchSipContact)=0
Subscribe contact by contact ID, you will be notified the changes after the subscription.
Contact helper event callback.
virtual ~IContactHelperSink()
virtual void OnDynamicContactBasicInfoNotification(const std::vector< ContactTypeInfo > &typeInfos, uint32_t numberOfContacts, uint32_t numberOfZoomRooms)=0
Dynamic contact basic info notification.
virtual void OnImUpdateContactNotification(const std::vector< Contact > &contacts)=0
IM contacts update notification.
virtual void OnStartReceivingLegacyRoomList(bool isSelfRooms)=0
Start receiving legacy room list notification.
virtual void OnUpdateFavoritesList(const FavoritesList &list)=0
Update favorite list notification.
virtual void OnDynamicContactListNotification(const DynamicContactListInfo &info)=0
Dynamic contact list notification.
virtual void OnFinishReceivingLegacyRoomList(bool isSelfRooms)=0
Finishing receiving legacy room list notification.
virtual void OnAddLegacyRooms(const std::vector< LegacyRoomSystem > &roomList, bool isSelfRooms)=0
Add legacy rooms notification.
Cloud PBX info Invalid if each filed is empty.
std::vector< std::string > directNumbers
Direct numbers.
std::string companyNumber
Company number.
std::string extension
Extension number.
Contact item.
CloudPBXInfo cloudPBXInfo
Cloud PBX info. Invalid if each filed is empty.
std::string firstName
First name.
std::string avatarURL
Avatar url.
std::string pronouns
Pronouns.
IMAccountStatus accountStatus
Account status, see IMAccountStatus enum.
std::string contactID
Contact ID.
std::string company
Company.
std::string lastName
Last name.
std::string sipPhoneNumber
Sip phone number.
IMBuddyType buddyType
Buddy type, see IMBuddyType enum.
std::string jobTitle
Job title.
std::vector< PhoneContact > phoneInfos
Phone contact infos.
std::string signature
Signature.
std::string location
Location.
IMPresenceStatus presenceStatus
Presence status, see IMPresenceStatus enum.
std::string email
Email.
std::string screenName
Screen name.
std::string department
Department.
std::string phoneNumber
Phone number.
Contact type info.
uint32_t count
Buddy count.
IMBuddyType buddyType
Buddy type.
Dynamic contact list update information.
std::string filter
Search filter, will be an empty string if this is not a search result.
std::vector< Contact > contacts
Contacts.
uint32_t startIndex
Start index.
uint32_t totalNumberOfContactsInSearchResult
Total number of contacts in search result.
uint32_t numberOfContacts
Number of contacts.
bool isSearchSipContactResult
TRUE indicates this is a search sip contact result.
uint64_t buddyTypeBits
Bit value 1 indicates the buddy type being searched, see IMBuddyType enum.
Favorite contact list.
std::vector< LegacyRoomSystem > favoriteLegacyRoomSystems
Favorite legacy room system list.
std::vector< PhoneContact > favoritePhoneContacts
Favorite phone contact list.
std::vector< Contact > favoriteContacts
Favorite contact list.
Phone contact info. Invalid if each filed is empty.
std::string phoneNumber
Phone number.
std::string countryCode
Country code.
std::string label
Label.