UNPKG

node-nim

Version:

NetEase IM nodejs wrapper based on NetEase IM C++ SDK

515 lines 18.5 kB
"use strict"; 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