Windows(C++)[v1.7.5.0]
PanoRtcGroup.h
1
2#pragma once
3
4#include "PanoRtcDefs.h"
5
6PANORTC_NS_BEGIN
7
8
16{
17public:
18 class Callback;
26 {
30 const char* userData{ nullptr };
31 };
32 struct UserInfo
33 {
34 uint64_t userId{ 0 };
35 const char* userData{ nullptr };
36 };
37
52 virtual QResult setCallback(Callback *callback) = 0;
69 virtual QResult joinGroup(const char *groupId, const GroupConfig &config) = 0;
84 virtual QResult subscribeGroup(const char *groupId) = 0;
99 virtual QResult unsubscribeGroup(const char *groupId) = 0;
114 virtual QResult leaveGroup(const char *groupId) = 0;
133 virtual QResult inviteGroupUsers(const char *groupId, uint64_t *users, int count) = 0;
148 virtual QResult dismissGroup(const char *groupId) = 0;
163 virtual QResult setDefaultGroup(const char *groupId) = 0;
164
179 virtual QResult observeGroup(const char *groupId) = 0;
194 virtual QResult unobserveGroup(const char *groupId) = 0;
221
229 {
230 public:
241 virtual void onGroupJoinConfirm(const char *groupId, QResult result) {}
252 virtual void onGroupLeaveIndication(const char *groupId, QResult reason) {}
263 virtual void onGroupInviteIndication(const char *groupId, uint64_t fromUserId) {}
274 virtual void onGroupDismissConfirm(const char *groupId, QResult result) {}
285 virtual void onGroupUserJoinIndication(const char *groupId, const UserInfo &userInfo) {}
298 virtual void onGroupUserLeaveIndication(const char *groupId, uint64_t userId, QResult reason) {}
307 virtual void onGroupDefaultUpdateIndication(const char *groupId) {}
318 virtual void onGroupObserveConfirm(const char *groupId, QResult result) {}
319
320 virtual ~Callback() {};
321 };
322
323protected:
324 virtual ~RtcGroupManager() {}
325};
326
327PANORTC_NS_END
QResult
返回值
Definition: PanoRtcDefs.h:54
RtcGroupManager 的回调函数,在使用 RtcGroupManager 之前必须要设置回调以获取事件通知。
Definition: PanoRtcGroup.h:229
virtual void onGroupInviteIndication(const char *groupId, uint64_t fromUserId)
用户分组邀请的通知
Definition: PanoRtcGroup.h:263
virtual void onGroupUserLeaveIndication(const char *groupId, uint64_t userId, QResult reason)
用户离开分组的通知
Definition: PanoRtcGroup.h:298
virtual void onGroupDefaultUpdateIndication(const char *groupId)
默认分组变更的通知
Definition: PanoRtcGroup.h:307
virtual void onGroupJoinConfirm(const char *groupId, QResult result)
加入分组成功与否的通知
Definition: PanoRtcGroup.h:241
virtual void onGroupObserveConfirm(const char *groupId, QResult result)
观察分组事件成功与否的通知
Definition: PanoRtcGroup.h:318
virtual void onGroupUserJoinIndication(const char *groupId, const UserInfo &userInfo)
用户加入分组的通知
Definition: PanoRtcGroup.h:285
virtual void onGroupDismissConfirm(const char *groupId, QResult result)
解散分组成功与否的通知
Definition: PanoRtcGroup.h:274
virtual void onGroupLeaveIndication(const char *groupId, QResult reason)
分组离开的通知
Definition: PanoRtcGroup.h:252
RtcGroupManager, 分组服务核心接口
Definition: PanoRtcGroup.h:16
virtual QResult inviteGroupUsers(const char *groupId, uint64_t *users, int count)=0
邀请用户加入分组。
virtual QResult dismissGroup(const char *groupId)=0
解散分组。
virtual QResult setCallback(Callback *callback)=0
设置分组服务的回调。
virtual QResult subscribeGroup(const char *groupId)=0
订阅分组。
virtual QResult observeAllGroups()=0
观察所有分组的事件,包括后续创建的分组。调用成功后可在未加入分组的情况下接收分组事件。
virtual QResult unobserveAllGroups()=0
取消观察所有分组的事件。
virtual QResult unobserveGroup(const char *groupId)=0
取消观察指定分组的事件。
virtual QResult observeGroup(const char *groupId)=0
观察指定分组的事件。调用成功后可在未加入分组的情况下接收分组事件。
virtual QResult leaveGroup(const char *groupId)=0
离开分组。
virtual QResult setDefaultGroup(const char *groupId)=0
设置默认分组。在音频自动订阅启用的情况下,默认分组设置后新用户加入频道会自动加入和订阅默认分组。
virtual QResult unsubscribeGroup(const char *groupId)=0
取消订阅分组。
virtual QResult joinGroup(const char *groupId, const GroupConfig &config)=0
加入分组。
分组配置参数,用于加入分组
Definition: PanoRtcGroup.h:26
const char * userData
Definition: PanoRtcGroup.h:30
Definition: PanoRtcGroup.h:33