Zoom Rooms Controller SDK Reference 7.0.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;
97 uint32_t signatureEndTimestamp = 0;
98 std::string sipPhoneNumber;
100 std::vector<PhoneContact> phoneInfos;
101};
102
106{
108 uint32_t count = 0;
109};
110
114{
116 uint32_t startIndex = 0;
117 uint32_t numberOfContacts = 0;
118 std::string filter;
120 std::vector<Contact> contacts;
121 uint64_t buddyTypeBits = 0;
122};
123
127{
128 std::vector<Contact> favoriteContacts;
129 std::vector<LegacyRoomSystem> favoriteLegacyRoomSystems;
130 std::vector<PhoneContact> favoritePhoneContacts;
131};
132
136{
137public:
139
148 virtual void OnImUpdateContactNotification(const std::vector<Contact>& contacts) = 0;
149
162 virtual void OnDynamicContactBasicInfoNotification(const std::vector<ContactTypeInfo>& typeInfos, uint32_t numberOfContacts, uint32_t numberOfZoomRooms) = 0;
163
173
182 virtual void OnUpdateFavoritesList(const FavoritesList& list) = 0;
183
192 virtual void OnStartReceivingLegacyRoomList(bool isSelfRooms) = 0;
193
203 virtual void OnAddLegacyRooms(const std::vector<LegacyRoomSystem>& roomList, bool isSelfRooms) = 0;
204
213 virtual void OnFinishReceivingLegacyRoomList(bool isSelfRooms) = 0;
214};
215
219{
220public:
221 virtual ~IContactHelper() {}
222
234
246
258 virtual ZRCSDKError SubscribeByContactID(const std::vector<std::string>& contactIDs, bool isSearchSipContact) = 0;
259
272 virtual ZRCSDKError Subscribe(uint32_t startIndex, uint32_t count, bool isSearchSipContact) = 0;
273
284 virtual ZRCSDKError RequestContactsDetail(const std::vector<std::string>& contactIDs) = 0;
285
299 virtual ZRCSDKError RequestContactsDynamically(uint32_t startIndex, uint32_t count, bool isSearchSipContact, uint64_t buddyTypeBits) = 0;
300
315 virtual ZRCSDKError SearchContactsDynamically(uint32_t startIndex, uint32_t count, bool isSearchSipContact, const std::string& searchFilter, uint64_t buddyTypeBits) = 0;
316
328 virtual ZRCSDKError GetLegacyRoomList(std::vector<LegacyRoomSystem>& roomList, bool isSelfRooms) = 0;
329};
330
332#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.
uint32_t signatureEndTimestamp
Signature end UTC timestamp in seconds. 0 indicates no end time.
std::string lastName
Last name.
std::string sipPhoneNumber
Sip phone number.
IMBuddyType buddyType
Buddy type, see IMBuddyType enum.
uint32_t signatureStartTimestamp
Signature start UTC timestamp in seconds. 0 indicates no start time.
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.