tencent cloud

即时通信 IM

动态与公告
产品动态
公告
产品简介
产品概述
基本概念
应用场景
功能介绍
账号系统
用户资料与关系链
消息管理
群组相关
公众号系统
音视频通话 Call
使用限制
购买指南
计费概述
价格说明
购买指引
续费指引
停服说明
退费说明
开发指引
Demo 专区
开通服务
体验 Demo
快速跑通
下载中心
SDK & Demo 源码
更新日志
聊天互动(含 UI)
TUIKit 组件介绍
快速开始
全功能接入
单功能接入
AI 集成
构建基础界面
更多特性
定义外观
国际化界面语言
推送服务(Push)
服务概述
名词解释
开通服务
快速跑通
厂商通道
数据统计
排查工具
客户端 API
服务端 API
推送回调
高级功能
更新日志
错误码
常见问题
智能客服
功能概述
快速入门
集成指引
管理员操作手册
客服操作手册
更多实践
直播间搭建
AI 聊天机器人方案
超大娱乐协作社群
Discord 实现指南
游戏内集成 Chat 指南
类 WhatsApp Channel 搭建方案
发送红包
Chat 应对防火墙限制相关
无 UI 集成
快速开始
集成 SDK
初始化
登录登出
消息相关
会话相关
群组相关
社群话题
用户管理
离线推送
云端搜索
本地搜索
公众号
客户端 API
JavaScript
Android
iOS & macOS
Swift
Flutter
Electron
Unity
React Native
C 接口
C++
服务端 API
生成 UserSig
REST API
第三方回调
控制台指南
新版控制台介绍
创建并升级应用
基本配置
功能配置
账号管理
群组管理
公众号管理
回调配置
用量统计
资源包查看指南
实时监控
开发辅助工具
访问管理
高级功能
常见问题
uni-app 常见问题
购买相关问题
SDK 相关问题
账号鉴权相关问题
用户资料与关系链相关问题
消息相关问题
群组相关问题
直播群相关问题
昵称头像相关问题
协议与认证
服务等级协议
安全合规认证
IM 政策
隐私政策
数据隐私和安全协议
平滑迁移方案
平滑迁移完整版
平滑迁移简化版
错误码
联系我们

JavaScript

PDF
聚焦模式
字号
最后更新时间: 2025-01-14 15:15:12

功能描述

社群是一个由于共同主题而让大家聚集在一起的超大群组,您可以在社群下根据不同兴趣创建多个话题。社群用来管理群成员。社群下的所有话题不仅可以共享社群成员,还可以独立收发消息而不相互干扰。




社群管理

创建社群

API
chat.createGroup(options);
示例
// 创建支持话题的社群
let promise = chat.createGroup({
type: TencentCloudChat.TYPES.GRP_COMMUNITY,
name: 'WebSDK',
isSupportTopic: true,
});
promise.then(function(imResponse) { // 创建成功
console.log(imResponse.data.group); // 创建的群的资料
}).catch(function(imError) {
console.warn('createGroup error:', imError); // 创建群组失败的相关信息
});

获取支持话题的社群列表

说明:
1. 该接口仅适用于获取支持话题的社群,需 购买专业版、专业版plus或企业版, 登录 Chat Console 并开启社群开关后方可使用,开关路径:Applications > Your App > Chat > Configuration > Group Configuration > Community。
接口
chat.getJoinedCommunityList();
参数
返回值
Promise
示例
// 获取支持话题的社群列表
let promise = chat.getJoinedCommunityList();
promise.then(function(imResponse) { // 获取成功
console.log(imResponse.data.groupList); // 支持话题的社群列表
}).catch(function(imError) { // 获取失败
console.warn('getJoinedCommunityList error:', imError); // 失败的相关信息
});

创建话题

说明:
1. 该接口使用前必须先调用 createGroup 创建支持话题的社群。
接口
chat.createTopicInCommunity(options);
参数
参数 optionsObject类型,包含的属性值如下:
参数
类型
说明
groupID
String
话题所属社群 ID
topicName
String
话题名称
topicID
String
自定义话题 ID 时,格式必须是社群 ID 拼接上自定义话题 ID。例如:@TGS#_xxx@TOPIC#_xxx
avatar
String
话题头像
notification
String
话题公告
introduction
String
话题简介
customData
String
话题自定义信息
返回值
Promise
示例
// 创建话题
let promise = chat.createTopicInCommunity({
groupID: 'group1',
topicName: 'test',
avatar: 'xxx'
notification: 'xxx',
introduction: 'xxx',
customData: 'xxxx',
});
promise.then(function(imResponse) { // 创建成功
console.log(imResponse.data.topicID); // 话题 ID
}).catch(function(imError) { // 创建失败
console.warn('createTopicInCommunity error:', imError); // 创建话题失败的相关信息
});

删除话题

接口
chat.deleteTopicFromCommunity(options);
参数
参数 optionsObject类型,包含的属性值如下:
参数
类型
说明
groupID
String
话题所属社群 ID
topicIDList
Array | undefined
话题 ID 列表,不传 topicIDList 表示删除全部话题
返回值
Promise
示例
// 删除某个社群下指定话题
let promise = chat.deleteTopicFromCommunity({
groupID: 'group1',
topicIDList: ['topicID'],
});
promise.then(function(imResponse) { // 删除成功
const { successTopicList, failureTopicList } = imResponse.data;
// 删除成功的话题列表
successTopicList.forEach((item) => {
const { topicID } = item;
});
// 删除失败的话题列表
failureTopicList.forEach((item) => {
const { topicID, code, message } = item;
})
}).catch(function(imError) { // 删除失败
console.warn('deleteTopicFromCommunity error:', imError); // 删除话题失败的相关信息
});
// 解散社群,删除此社群下所有话题
let promise = chat.dismissGroup('group1');
promise.then(function(imResponse) { // 解散成功
console.log(imResponse.data.groupID);
}).catch(function(imError) {
console.warn('dismissGroup error:', imError); // 解散群组失败的相关信息
});

修改话题信息

说明:
话题内其他成员可以收到 TencentCloudChat.EVENT.TOPIC_UPDATED 事件。
接口
chat.updateTopicProfile(options);
参数
参数 optionsObject 类型,包含的属性值如下:
参数
类型
说明
groupID
String
话题所属社群 ID
topicID
String
必填,话题 ID
topicName
String | undefined
话题名称
avatar
String | undefined
话题头像
notification
String | undefined
话题公告
introduction
String | undefined
话题简介
customData
String | undefined
话题自定义信息
muteAllMembers
Boolean | undefined
设置全体禁言,
true - 全体禁言
false - 取消全体禁言
返回值
Promise
示例
// 更新话题资料
let promise = chat.updateTopicProfile({
groupID: 'group1',
topicID: 'topic1',
topicName: 'test',
avatar: 'xxx'
notification: 'xxx',
introduction: 'xxx',
customData: 'xxxx',
muteAllMembers: true
});
promise.then(function(imResponse) { // 设置话题资料成功
console.log(imResponse.data.topic); // 返回修改后的话题资料
}).catch(function(imError) { // 设置话题资料失败
console.warn('updateTopicProfile error:', imError); // 设置话题资料失败的相关信息
});

获取话题列表

接口
chat.getTopicList(options);
参数
参数 optionsObject类型,包含的属性值如下:
参数
类型
说明
groupID
String
话题所属社群 ID
topicIDList
Array | undefined
话题 ID 列表,不传 topicIDList 表示获取全部话题
返回值
Promise
示例
// 获取某个社群下指定的话题
let promise = chat.getTopicList({
groupID: 'group1',
topicIDList: ['topicID'],
});
promise.then(function(imResponse) { // 获取成功
const { successTopicList, failureTopicList } = imResponse.data;
// 获取成功的话题列表
successTopicList.forEach((item) => {
const { topicID } = item;
});
// 获取失败的话题列表
failureTopicList.forEach((item) => {
const { topicID, code, message } = item;
})
}).catch(function(imError) { // 获取失败
console.warn('getTopicList error:', imError); // 获取话题列表失败的相关信息
});
// 获取某个社群下全部的话题
let promise = chat.getTopicList({
groupID: 'group1',
});
promise.then(function(imResponse) { // 获取成功
const { successTopicList, failureTopicList } = imResponse.data;
// 获取成功的话题列表
successTopicList.forEach((item) => {
const { topicID } = item;
});
// 获取失败的话题列表
failureTopicList.forEach((item) => {
const { topicID, code, message } = item;
})
}).catch(function(imError) { // 获取失败
console.warn('getTopicList error:', imError); // 获取话题列表失败的相关信息
});

监听话题回调

示例
let onTopicCreated = function(event) {
const groupID = event.data.groupID // 话题所属社群 ID
const topicID = event.data.topicID // 话题 ID
console.log(event.data);
};
chat.on(TencentCloudChat.EVENT.TOPIC_CREATED, onTopicCreated);
let onTopicDeleted = function(event) {
const groupID = event.data.groupID // 话题所属社群 ID
const topicIDList = event.data.topicIDList // 删除的话题 ID 列表
console.log(event.data);
};
chat.on(TencentCloudChat.EVENT.TOPIC_DELETED, onTopicDeleted);
let onTopicUpdated = function(event) {
const groupID = event.data.groupID // 话题所属社群 ID
const topic = event.data.topic // 话题资料
console.log(event.data);
};
chat.on(TencentCloudChat.EVENT.TOPIC_UPDATED, onTopicUpdated);


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈