Zoom Rooms Controller SDK Reference 6.5.0
Loading...
Searching...
No Matches
IMeetingAudioHelper.h
Go to the documentation of this file.
1
8#ifndef ZRC_IMEETINGAUDIOHELPER_H
9#define ZRC_IMEETINGAUDIOHELPER_H
10
11#include "ZRCSDKTypes.h"
12
14
20{
24};
25
29{
30 bool isRecording = false;
31 int32_t totalDuration = 0;
32 int32_t timeLeft = 0;
33};
34
38{
39 std::string deviceID;
40 std::string deviceName;
41 int32_t volume = 0;
42 bool volumeCanAdjust = false;
43 bool isSelected = false;
44};
45
48{
49 int32_t userID = 0;
50 bool muteState = false;
53 std::vector<FarEndAudioDeviceInfo> microphones;
54 std::vector<FarEndAudioDeviceInfo> speakers;
55};
56
60{
61public:
63
72 virtual void OnUpdateMyAudioStatus(const AudioStatus& audioStatus) = 0;
73
83 virtual void OnMuteUserAudioNotification(int32_t userID, const AudioStatus& audioStatus) = 0;
84
93 virtual void OnMuteOnEntryNotification(bool isMuteOnEntry) = 0;
94
105
114 virtual void OnAllowAttendeesUnmuteThemselvesNotification(bool canAttendeesUnmuteThemselves) = 0;
115
124 virtual void OnEnablePlayJoinOrLeaveChimeNotification(bool enable) = 0;
125
135
136 // ==========================================================================
137 // FEAC Requester Sinks
138 // ==========================================================================
148 virtual void OnFEACApproveNotification(int32_t farEndUserID, const std::string& farEndUserName) = 0;
158 virtual void OnFEACDeclineNotification(int32_t farEndUserID, const std::string& farEndUserName) = 0;
170 virtual void OnFEACTakeOverNotification(int32_t farEndUserID, const std::string& farEndUserName, int32_t controllingUserID, const std::string& controllingUserName) = 0;
180 virtual void OnFEACMicListChangedNotification(int32_t farEndUserID, const std::vector<FarEndAudioDeviceInfo>& micList) = 0;
190 virtual void OnFEACSpeakerListChangedNotification(int32_t farEndUserID, const std::vector<FarEndAudioDeviceInfo>& speakerList) = 0;
200 virtual void OnFEACMuteStateChangedNotification(int32_t farEndUserID, bool muteState) = 0;
209 virtual void OnFEACUnmuteDisabledByHostNotification(int32_t farEndUserID) = 0;
210
211 // ==========================================================================
212 // FEAC Be Requested Sinks
213 // ==========================================================================
223 virtual void OnFEACRequestNotification(int32_t requesterUserID, const std::string& requesterUserName) = 0;
233 virtual void OnFEACGiveUpNotification(int32_t requesterUserID, const std::string& requesterUserName) = 0;
242 virtual void OnFEACApproveControlRequestNotification(int32_t requesterUserID) = 0;
251 virtual void OnFEACDeclineControlRequestNotification(int32_t requesterUserID) = 0;
252};
253
257{
258public:
260
272
284
295 virtual ZRCSDKError UpdateMyAudioStatus(bool mute) = 0;
296
308 virtual ZRCSDKError MuteUserAudio(int32_t userID, bool mute) = 0;
309
320 virtual ZRCSDKError MuteAllAudios(bool mute) = 0;
321
332 virtual ZRCSDKError MuteOnEntry(bool mute) = 0;
333
344 virtual ZRCSDKError AnswerUnmuteAudioByHostRequest(bool accepted) = 0;
345
357
368 virtual ZRCSDKError EnablePlayJoinOrLeaveChime(bool enable) = 0;
369
381
393
394 // ==========================================================================
395 // FEAC Requester Commands
396 // ==========================================================================
407 virtual ZRCSDKError RequestFarEndAudioControl(int32_t farEndUserID) = 0;
418 virtual ZRCSDKError GiveUpFarEndAudioControl(int32_t farEndUserID) = 0;
429 virtual ZRCSDKError BeginControlFarEndAudio(int32_t farEndUserID) = 0;
440 virtual ZRCSDKError EndControlFarEndAudio(int32_t farEndUserID) = 0;
452 virtual ZRCSDKError SelectFarEndAudioMicrophone(int32_t farEndUserID, const std::string& deviceID) = 0;
464 virtual ZRCSDKError SelectFarEndAudioSpeaker(int32_t farEndUserID, const std::string& deviceID) = 0;
476 virtual ZRCSDKError AdjustFarEndAudioSelectedMicrophoneVolume(int32_t farEndUserID, int32_t volume) = 0;
488 virtual ZRCSDKError AdjustFarEndAudioSelectedSpeakerVolume(int32_t farEndUserID, int32_t volume) = 0;
500 virtual ZRCSDKError MuteFarEndAudioMicrophone(int32_t farEndUserID, bool mute) = 0;
501
502 // ==========================================================================
503 // FEAC Be Requested Sinks
504 // ==========================================================================
515 virtual ZRCSDKError ApproveFarEndAudioControlRequest(int32_t requesterUserID) = 0;
526 virtual ZRCSDKError DeclineFarEndAudioControlRequest(int32_t requesterUserID) = 0;
527
550 virtual ZRCSDKError GetAllFarEndAudioControllingUserDeviceInfo(std::vector<FarEndAudioControllingUserDeviceInfo>& deviceInfoList) = 0;
551};
552
554
555#endif //ZRC_IMEETINGAUDIOHELPER_H
AskUnmuteAudioByHostType
Host or co-host ask to unmute audio type Here are more detailed structural descriptions.
@ AskUnmuteAudioByHostTypeSpotlight
Zoom Room is being spotlighted, being spotlighted will be asked to unmute audio.
@ AskUnmuteAudioByHostTypeUnmuteAudio
Host or co-host request Zoom Room to unmute audio.
@ AskUnmuteAudioByHostTypeViewOnlyTalk
In webinar, host allow attendee to talk.
#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
Meeting Audio helper interface.
virtual ZRCSDKError BeginControlFarEndAudio(int32_t farEndUserID)=0
Begin control far end audio. Only when you begin control the controlled user's audio can you receive ...
virtual ZRCSDKError GetAllFarEndAudioControllingUserDeviceInfo(std::vector< FarEndAudioControllingUserDeviceInfo > &deviceInfoList)=0
Get all controlling user's device infos.
virtual ZRCSDKError GetFarEndAudioControllingUserDeviceInfo(FarEndAudioControllingUserDeviceInfo &deviceInfo, int32_t userID)=0
Get the controlling user's device info by user ID.
virtual ZRCSDKError AdjustFarEndAudioSelectedSpeakerVolume(int32_t farEndUserID, int32_t volume)=0
Adjust the controlled user's speaker volume.
virtual ZRCSDKError MuteFarEndAudioMicrophone(int32_t farEndUserID, bool mute)=0
Mute the controlled user's microphone.
virtual ZRCSDKError MuteAllAudios(bool mute)=0
Mute or unmute all meeting users' audio.
virtual ZRCSDKError SelectFarEndAudioMicrophone(int32_t farEndUserID, const std::string &deviceID)=0
Select the controlled user's microphone.
virtual ZRCSDKError EnableMeetingAudioTroubleShooting(bool enable)=0
Enable meeting audio troubleshooting.
virtual ZRCSDKError DeregisterSink(IMeetingAudioHelperSink *pSink)=0
Deregister meeting audio helper callback sink.
virtual ZRCSDKError ApproveFarEndAudioControlRequest(int32_t requesterUserID)=0
Approve far end audio control request.
virtual ZRCSDKError DeclineFarEndAudioControlRequest(int32_t requesterUserID)=0
Decline far end audio control request.
virtual ZRCSDKError RequestFarEndAudioControl(int32_t farEndUserID)=0
Request far end audio control.
virtual ZRCSDKError AnswerUnmuteAudioByHostRequest(bool accepted)=0
Answer incoming unmute audio request.
virtual ZRCSDKError MuteUserAudio(int32_t userID, bool mute)=0
Mute or unmute the assigned user audio.
virtual ZRCSDKError EndControlFarEndAudio(int32_t farEndUserID)=0
End control far end audio. You will not receive relevant control information after end control the co...
virtual ZRCSDKError AdjustFarEndAudioSelectedMicrophoneVolume(int32_t farEndUserID, int32_t volume)=0
Adjust the controlled user's microphone volume.
virtual ZRCSDKError UpdateMyAudioStatus(bool mute)=0
Mute or unmute self audio.
virtual ZRCSDKError IsMeetingAudioTroubleShootingAvailable(bool &isAvailable)=0
Query if meeting audio troubleshooting available.
virtual ZRCSDKError GiveUpFarEndAudioControl(int32_t farEndUserID)=0
Give up far end audio control.
virtual ZRCSDKError AllowAttendeesUnmuteThemselves(bool allow)=0
Allow attendee unmute themselves.
virtual ZRCSDKError SelectFarEndAudioSpeaker(int32_t farEndUserID, const std::string &deviceID)=0
Select the controlled user's speaker.
virtual ZRCSDKError MuteOnEntry(bool mute)=0
Mute or unmute the user after joining the meeting.
virtual ZRCSDKError RegisterSink(IMeetingAudioHelperSink *pSink)=0
Register meeting audio helper callback sink.
virtual ZRCSDKError EnablePlayJoinOrLeaveChime(bool enable)=0
Enable play chime when join or leave meeting.
Meeting Audio helper event callback.
virtual void OnFEACRequestNotification(int32_t requesterUserID, const std::string &requesterUserName)=0
FEAC request your audio control notification.
virtual void OnFEACApproveNotification(int32_t farEndUserID, const std::string &farEndUserName)=0
FEAC approve your request notification.
virtual void OnUpdateAudioTroubleShootingStatus(const AudioTroubleShootingStatus &status)=0
Audio troubleshooting status update notification.
virtual void OnFEACApproveControlRequestNotification(int32_t requesterUserID)=0
FEAC approve audio control request notification. You will receive this notification when other ZRC ap...
virtual void OnFEACMuteStateChangedNotification(int32_t farEndUserID, bool muteState)=0
FEAC mute state changed notification.
virtual void OnFEACMicListChangedNotification(int32_t farEndUserID, const std::vector< FarEndAudioDeviceInfo > &micList)=0
FEAC microphone list changed notification.
virtual void OnMuteUserAudioNotification(int32_t userID, const AudioStatus &audioStatus)=0
After mute user audio, user audio status changed callback.
virtual void OnEnablePlayJoinOrLeaveChimeNotification(bool enable)=0
Enable play join or leave chime status notification.
virtual void OnMuteOnEntryNotification(bool isMuteOnEntry)=0
Mute on entry status notification.
virtual void OnFEACDeclineControlRequestNotification(int32_t requesterUserID)=0
FEAC decline audio control request notification. You will receive this notification when other ZRC de...
virtual void OnFEACSpeakerListChangedNotification(int32_t farEndUserID, const std::vector< FarEndAudioDeviceInfo > &speakerList)=0
FEAC speaker list changed notification.
virtual void OnFEACDeclineNotification(int32_t farEndUserID, const std::string &farEndUserName)=0
FEAC decline your request notification.
virtual void OnAskUnmuteAudioByHostNotification(bool show, AskUnmuteAudioByHostType type)=0
Notification from host ask to unmute audio.
virtual void OnAllowAttendeesUnmuteThemselvesNotification(bool canAttendeesUnmuteThemselves)=0
Allow attendees unmute themselves notification.
virtual void OnUpdateMyAudioStatus(const AudioStatus &audioStatus)=0
Zoom Room's audio status changed callback.
virtual void OnFEACTakeOverNotification(int32_t farEndUserID, const std::string &farEndUserName, int32_t controllingUserID, const std::string &controllingUserName)=0
FEAC take over notification.
virtual void OnFEACGiveUpNotification(int32_t requesterUserID, const std::string &requesterUserName)=0
FEAC give up your audio control notification.
virtual void OnFEACUnmuteDisabledByHostNotification(int32_t farEndUserID)=0
FEAC unmute disabled by host notification. You will receive this notification when you unmute the con...
Audio status.
Audio troubleshooting status.
Far end audio controlling user device info. This device info includes all control info of the control...
FarEndAudioDeviceInfo selectedSpeaker
The speaker that is currently in use.
FarEndAudioDeviceInfo selectedMicrophone
The microphone that is currently in use.
int32_t userID
User ID of the controlled user.
std::vector< FarEndAudioDeviceInfo > microphones
The all microphones of the controlled user, include the microphone that is currently in use.
bool muteState
TRUE indicate microphone is muted. Otherwise not.
std::vector< FarEndAudioDeviceInfo > speakers
The all speakers of the controlled user, include the speaker that is currently in use.
Far end audio device info.
int32_t volume
The volume of the device. When isSelected == false, this field is invalid.
bool isSelected
True indicate the device is currently in use.
std::string deviceName
Device name.
bool volumeCanAdjust
True indicate the volume can be adjusted, otherwise can't. When isSelected == false,...
std::string deviceID
Device ID.