node-nim
Version:
NetEase IM nodejs wrapper based on NetEase IM C++ SDK
515 lines • 18.5 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.V2NIMMessageAttachmentCreator = exports.V2NIMStorageUtil = exports.V2NIMChatroomMessageCreator = exports.V2NIMClientAntispamUtil = exports.V2NIMConversationIdUtil = exports.V2NIMMessageConverter = exports.V2NIMMessageCreator = void 0;
const loader_1 = __importDefault(require("../loader"));
const eventemitter3_1 = require("eventemitter3");
let utilities = new loader_1.default.V2NIMUtilities();
/** @brief 消息创建器 */
class V2NIMMessageCreator {
/**
* @brief 创建文本消息
* @param text 文本内容
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createTextMessage('Hello, world!')
* ```
*/
static createTextMessage(text) {
return utilities.createTextMessage(text);
}
createTextMessage(text) {
return utilities.createTextMessage(text);
}
/**
* @brief 创建图片消息
* @param imagePath 图片路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @param width 图片宽度
* @param height 图片高度
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createImageMessage(imagePath, name, sceneName, width, height)
* ```
*/
static createImageMessage(imagePath, name, sceneName, width, height) {
return utilities.createImageMessage(imagePath, name, sceneName, width, height);
}
createImageMessage(imagePath, name, sceneName, width, height) {
return utilities.createImageMessage(imagePath, name, sceneName, width, height);
}
/**
* @brief 创建音频消息
* @param audioPath 音频路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @param duration 音频时长
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createAudioMessage(audioPath, name, sceneName, duration)
* ```
*/
static createAudioMessage(audioPath, name, sceneName, duration) {
return utilities.createAudioMessage(audioPath, name, sceneName, duration);
}
createAudioMessage(audioPath, name, sceneName, duration) {
return utilities.createAudioMessage(audioPath, name, sceneName, duration);
}
/**
* @brief 创建视频消息
* @param videoPath 视频路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @param duration 视频时长
* @param width 视频宽度
* @param height 视频高度
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createVideoMessage(videoPath, name, sceneName, duration, width, height)
* ```
*/
static createVideoMessage(videoPath, name, sceneName, duration, width, height) {
return utilities.createVideoMessage(videoPath, name, sceneName, duration, width, height);
}
createVideoMessage(videoPath, name, sceneName, duration, width, height) {
return utilities.createVideoMessage(videoPath, name, sceneName, duration, width, height);
}
/**
* @brief 创建文件消息
* @param filePath 文件路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createFileMessage(filePath, name, sceneName)
* ```
*/
static createFileMessage(filePath, name, sceneName) {
return utilities.createFileMessage(filePath, name, sceneName);
}
createFileMessage(filePath, name, sceneName) {
return utilities.createFileMessage(filePath, name, sceneName);
}
/**
* @brief 创建位置消息
* @param latitude 纬度
* @param longitude 经度
* @param address 详细位置信息
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createLocationMessage(latitude, longitude, address)
* ```
*/
static createLocationMessage(latitude, longitude, address) {
return utilities.createLocationMessage(latitude, longitude, address);
}
createLocationMessage(latitude, longitude, address) {
return utilities.createLocationMessage(latitude, longitude, address);
}
/**
* @brief 创建自定义消息
* @param text 文本内容
* @param rawAttachment 附件
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createCustomMessage(text, rawAttachment)
* ```
*/
static createCustomMessage(text, rawAttachment) {
return utilities.createCustomMessage(text, rawAttachment);
}
createCustomMessage(text, rawAttachment) {
return utilities.createCustomMessage(text, rawAttachment);
}
/**
* @brief 创建提示消息
* @param text 文本内容
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createTipsMessage(text)
* ```
*/
static createTipsMessage(text) {
return utilities.createTipsMessage(text);
}
createTipsMessage(text) {
return utilities.createTipsMessage(text);
}
/**
* @brief 创建转发消息
* @param message 原消息
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createForwardMessage(message)
* ```
*/
static createForwardMessage(message) {
return utilities.createForwardMessage(message);
}
createForwardMessage(message) {
return utilities.createForwardMessage(message);
}
/**
* @brief 创建话单类消息
* @param callType 话单类型,业务自定义,内容不校验
* @param channelId 话单频道 ID,内容不校验
* @param status 通话状态,业务自定义状态,内容不校验
* @param durations 通话成员时长列表,内容不校验
* @param text 话单描述
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageCreator.createCallMessage(callType, channelId, status, durations, text)
* ```
*/
static createCallMessage(callType, channelId, status, durations, text) {
return utilities.createCallMessage(callType, channelId, status, durations, text);
}
createCallMessage(callType, channelId, status, durations, text) {
return utilities.createCallMessage(callType, channelId, status, durations, text);
}
}
exports.V2NIMMessageCreator = V2NIMMessageCreator;
/** @brief 消息序列化工具 */
class V2NIMMessageConverter {
/**
* @brief 将消息序列化为 Json 字符串
* @param message V2NIMMessage 消息对象
* @returns string
* @example
* ```javascript
* const jsonString = v2.messageConverter.messageSerialization(message)
* ```
*/
messageSerialization(message) {
return utilities.messageSerialization(message);
}
/**
* @brief 将 Json 字符串反序列化为消息对象
* @param message Json 字符串
* @returns V2NIMMessage
* @example
* ```javascript
* const message = v2.messageConverter.messageDeserialization(jsonString)
* ```
*/
messageDeserialization(message) {
return utilities.messageDeserialization(message);
}
}
exports.V2NIMMessageConverter = V2NIMMessageConverter;
/** @brief 会话ID工具 */
class V2NIMConversationIdUtil {
/**
* @brief 获取点对点会话ID
* @param accountId 账号ID
* @returns string
* @example
* ```javascript
* const conversationId = v2.conversationIdUtil.p2pConversationId(accountId)
* ```
*/
static p2pConversationId(accountId) {
return utilities.p2pConversationId(accountId);
}
p2pConversationId(accountId) {
return utilities.p2pConversationId(accountId);
}
/**
* @brief 获取群组会话ID
* @param teamId 群组ID
* @returns string
* @example
* ```javascript
* const conversationId = v2.conversationIdUtil.teamConversationId(teamId)
* ```
*/
static teamConversationId(teamId) {
return utilities.teamConversationId(teamId);
}
teamConversationId(teamId) {
return utilities.teamConversationId(teamId);
}
/**
* @brief 获取超级群会话ID
* @param superTeamId 超级群ID
* @returns string
* @example
* ```javascript
* const conversationId = v2.conversationIdUtil.superTeamConversationId(superTeamId)
* ```
*/
static superTeamConversationId(superTeamId) {
return utilities.superTeamConversationId(superTeamId);
}
superTeamConversationId(superTeamId) {
return utilities.superTeamConversationId(superTeamId);
}
/**
* @brief 获取会话ID对应的会话类型
* @param conversationId 会话ID
* @returns V2NIMConversationType
* @example
* ```javascript
* const conversationType = v2.conversationIdUtil.parseConversationType(conversationId)
* ```
*/
static parseConversationType(conversationId) {
return utilities.parseConversationType(conversationId);
}
parseConversationType(conversationId) {
return utilities.parseConversationType(conversationId);
}
/**
* @brief 获取会话ID对应的目标ID
* @param conversationId 会话ID
* @returns string
* @example
* ```javascript
* const targetId = v2.conversationIdUtil.parseConversationTargetId(conversationId)
* ```
*/
static parseConversationTargetId(conversationId) {
return utilities.parseConversationTargetId(conversationId);
}
parseConversationTargetId(conversationId) {
return utilities.parseConversationTargetId(conversationId);
}
}
exports.V2NIMConversationIdUtil = V2NIMConversationIdUtil;
/** @brief 本地反垃圾工具 */
class V2NIMClientAntispamUtil {
/**
* @brief 文本本地反垃圾
* @param text 需要本地反垃圾check的文本
* @param replace 敏感内容替换词
* @returns V2NIMClientAntispamResult
* @example
* ```javascript
* const result = v2.clientAntispamUtil.checkTextAntispam(text, replace)
* ```
*/
static checkTextAntispam(text, replace) {
return utilities.checkTextAntispam(text, replace);
}
checkTextAntispam(text, replace) {
return utilities.checkTextAntispam(text, replace);
}
}
exports.V2NIMClientAntispamUtil = V2NIMClientAntispamUtil;
/** @brief 聊天室消息创建器 */
class V2NIMChatroomMessageCreator extends eventemitter3_1.EventEmitter {
/**
* @brief 创建文本消息
* @param text 文本内容
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createTextMessage(text)
* ```
*/
static createTextMessage(text) {
return utilities.chatroomCreateTextMessage(text);
}
createTextMessage(text) {
return utilities.chatroomCreateTextMessage(text);
}
/**
* @brief 创建图片消息
* @param imagePath 图片路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @param width 图片宽度
* @param height 图片高度
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createImageMessage(imagePath, name, sceneName, width, height)
* ```
*/
static createImageMessage(imagePath, name, sceneName, width, height) {
return utilities.chatroomCreateImageMessage(imagePath, name, sceneName, width, height);
}
createImageMessage(imagePath, name, sceneName, width, height) {
return utilities.chatroomCreateImageMessage(imagePath, name, sceneName, width, height);
}
/**
* @brief 创建音频消息
* @param audioPath 音频路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @param duration 音频时长
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createAudioMessage(audioPath, name, sceneName, duration)
* ```
*/
static createAudioMessage(audioPath, name, sceneName, duration) {
return utilities.chatroomCreateAudioMessage(audioPath, name, sceneName, duration);
}
createAudioMessage(audioPath, name, sceneName, duration) {
return utilities.chatroomCreateAudioMessage(audioPath, name, sceneName, duration);
}
/**
* @brief 创建视频消息
* @param videoPath 视频路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @param duration 视频时长
* @param width 视频宽度
* @param height 视频高度
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createVideoMessage(videoPath, name, sceneName, duration, width, height)
* ```
*/
static createVideoMessage(videoPath, name, sceneName, duration, width, height) {
return utilities.chatroomCreateVideoMessage(videoPath, name, sceneName, duration, width, height);
}
createVideoMessage(videoPath, name, sceneName, duration, width, height) {
return utilities.chatroomCreateVideoMessage(videoPath, name, sceneName, duration, width, height);
}
/**
* @brief 创建文件消息
* @param filePath 文件路径
* @param name 文件显示名称, 为空则使用文件名
* @param sceneName 文件存储场景
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createFileMessage(filePath, name, sceneName)
* ```
*/
static createFileMessage(filePath, name, sceneName) {
return utilities.chatroomCreateFileMessage(filePath, name, sceneName);
}
createFileMessage(filePath, name, sceneName) {
return utilities.chatroomCreateFileMessage(filePath, name, sceneName);
}
/**
* @brief 创建位置消息
* @param latitude 纬度
* @param longitude 经度
* @param address 详细位置信息
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createLocationMessage(latitude, longitude, address)
* ```
*/
static createLocationMessage(latitude, longitude, address) {
return utilities.chatroomCreateLocationMessage(latitude, longitude, address);
}
createLocationMessage(latitude, longitude, address) {
return utilities.chatroomCreateLocationMessage(latitude, longitude, address);
}
/**
* @brief 创建自定义消息
* @param rawAttachment 自定义附件
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createCustomMessage(rawAttachment)
* ```
*/
static createCustomMessage(rawAttachment) {
return utilities.chatroomCreateCustomMessage(rawAttachment);
}
createCustomMessage(rawAttachment) {
return utilities.chatroomCreateCustomMessage(rawAttachment);
}
/**
* @brief 创建提示消息
* @param text 文本内容
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createTipsMessage(text)
* ```
*/
static createTipsMessage(text) {
return utilities.chatroomCreateTipsMessage(text);
}
createTipsMessage(text) {
return utilities.chatroomCreateTipsMessage(text);
}
/**
* @brief 创建转发消息
* @param message 原消息
* @returns V2NIMChatroomMessage
* @example
* ```javascript
* const message = v2.chatroomMessageCreator.createForwardMessage(message)
* ```
*/
static createForwardMessage(message) {
return utilities.chatroomCreateForwardMessage(message);
}
createForwardMessage(message) {
return utilities.chatroomCreateForwardMessage(message);
}
}
exports.V2NIMChatroomMessageCreator = V2NIMChatroomMessageCreator;
class V2NIMStorageUtil {
/**
* @brief 生成图片缩略图链接
* @param uri 图片原始链接
* @param thumbSize 缩放的尺寸,如指定为 150,则取 150*150
* @returns string 图片缩略图链接
* @example
* ```javascript
* const url = v2.storageUtil.imageThumbUrl(uri, thumbSize)
* ```
*/
imageThumbUrl(uri, thumbSize) {
return utilities.imageThumUrl(uri, thumbSize);
}
/**
* @brief 生成视频封面链接
* @param uri 视频原始链接
* @param offset 截图时间点,单位:秒
* @param thumbSize 缩放的尺寸,如指定为 150,则取 150*150
* @param type 截图类型,如:png、jpeg
* @returns string 视频封面链接
* @example
* ```javascript
* const url = v2.storageUtil.videoCoverUrl(uri, offset, thumbSize, type)
* ```
*/
videoCoverUrl(uri, offset, thumbSize, type) {
return utilities.videoCoverUrl(uri, offset, thumbSize, type);
}
}
exports.V2NIMStorageUtil = V2NIMStorageUtil;
class V2NIMMessageAttachmentCreator {
/**
* @brief 构造地理位置消息附件
* @param latitude 纬度
* @param longitude 经度
* @param address 详细位置信息
* @returns V2NIMMessageLocationAttachment
* @example
* ```javascript
* const attachment = v2.messageAttachmentCreator.createLocationMessageAttachment(latitude, longitude, address)
* ```
*/
createLocationMessageAttachment(latitude, longitude, address) {
return utilities.createLocationMessageAttachment(latitude || 0, longitude || 0, address);
}
}
exports.V2NIMMessageAttachmentCreator = V2NIMMessageAttachmentCreator;
//# sourceMappingURL=v2_nim_utilities.js.map
;