node-nim
Version:
NetEase IM nodejs wrapper based on NetEase IM C++ SDK
164 lines • 5.69 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.V2NIMConversationGroupService = void 0;
const loader_1 = __importDefault(require("../loader"));
const eventemitter3_1 = require("eventemitter3");
class V2NIMConversationGroupService extends eventemitter3_1.EventEmitter {
constructor() {
super();
this.instance = new loader_1.default.V2NIMConversationGroupService({ emit: this.emit.bind(this) });
}
/**
* @brief 创建会话分组
* @param name 会话分组名称
* @param conversationIds 会话 ID 列表
* @returns V2NIMConversationGroupResult
* @example
* ```javascript
* const result = await v2.conversationGroupService.createConversationGroup('group1', 'extension', ['conversation1', 'conversation2'])
* ```
*/
createConversationGroup(name, serverExtension, conversationIds) {
return new Promise((resolve, reject) => {
this.instance.createConversationGroup(name, serverExtension, conversationIds, (result) => {
resolve(result);
}, (error) => {
reject(error);
});
});
}
/**
* @brief 删除会话分组
* @param groupId 会话分组 ID
* @returns void
* @example
* ```javascript
* await v2.conversationGroupService.deleteConversationGroup('group1')
* ```
*/
deleteConversationGroup(groupId) {
return new Promise((resolve, reject) => {
this.instance.deleteConversationGroup(groupId, () => {
resolve();
}, (error) => {
reject(error);
});
});
}
/**
* @brief 更新会话分组
* @param groupId 会话分组 ID
* @param name 新的会话分组名称
* @param serverExtension 扩展字段
* @returns void
* @example
* ```javascript
* await v2.conversationGroupService.updateConversationGroup('group1', 'newName', 'newExtension')
* ```
*/
updateConversationGroup(groupId, name, serverExtension) {
return new Promise((resolve, reject) => {
this.instance.updateConversationGroup(groupId, name, serverExtension, () => {
resolve();
}, (error) => {
reject(error);
});
});
}
/**
* @brief 添加会话到会话分组
* @param groupId 会话分组 ID
* @param conversationIds 会话 ID 列表
* @returns Array<V2NIMConversationOperationResult>
* @example
* ```javascript
* const result = await v2.conversationGroupService.addConversationsToGroup('group1', ['conversation1', 'conversation2'])
* ```
*/
addConversationsToGroup(groupId, conversationIds) {
return new Promise((resolve, reject) => {
this.instance.addConversationsToGroup(groupId, conversationIds, (result) => {
resolve(result);
}, (error) => {
reject(error);
});
});
}
/**
* @brief 从会话分组中移除会话
* @param groupId 会话分组 ID
* @param conversationIds 会话 ID 列表
* @returns Array<V2NIMConversationOperationResult>
* @example
* ```javascript
* const result = await v2.conversationGroupService.removeConversationsFromGroup('group1', ['conversation1', 'conversation2'])
* ```
*/
removeConversationsFromGroup(groupId, conversationIds) {
return new Promise((resolve, reject) => {
this.instance.removeConversationsFromGroup(groupId, conversationIds, (result) => {
resolve(result);
}, (error) => {
reject(error);
});
});
}
/**
* @brief 获取会话分组信息
* @param groupId 会话分组 ID
* @returns V2NIMConversationGroup
* @example
* ```javascript
* const group = await v2.conversationGroupService.getConversationGroup('group1')
* ```
*/
getConversationGroup(groupId) {
return new Promise((resolve, reject) => {
this.instance.getConversationGroup(groupId, (group) => {
resolve(group);
}, (error) => {
reject(error);
});
});
}
/**
* @brief 获取会话分组列表
* @returns Array<V2NIMConversationGroup>
* @example
* ```javascript
* const list = await v2.conversationGroupService.getConversationGroupList()
* ```
*/
getConversationGroupList() {
return new Promise((resolve, reject) => {
this.instance.getConversationGroupList((list) => {
resolve(list);
}, (error) => {
reject(error);
});
});
}
/**
* @brief 根据会话分组 ID 获取会话分组
* @param groupIds 会话分组 ID 列表
* @returns Array<V2NIMConversationGroup>
* @example
* ```javascript
* const list = await v2.conversationGroupService.getConversationGroupListByIds(['group1', 'group2'])
* ```
*/
getConversationGroupListByIds(groupIds) {
return new Promise((resolve, reject) => {
this.instance.getConversationGroupListByIds(groupIds, (list) => {
resolve(list);
}, (error) => {
reject(error);
});
});
}
}
exports.V2NIMConversationGroupService = V2NIMConversationGroupService;
//# sourceMappingURL=v2_nim_conversation_group_service.js.map
;