node-nim
Version:
NetEase IM nodejs wrapper based on NetEase IM C++ SDK
325 lines • 10.7 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.QChatMessageModule = void 0;
const loader_1 = __importDefault(require("../loader"));
const eventemitter3_1 = require("eventemitter3");
class QChatMessageModule extends eventemitter3_1.EventEmitter {
constructor() {
super();
this.instance = new loader_1.default.QChatMessage({ emit: this.emit.bind(this) });
}
/** 注册全局回调 */
initEventHandlers() {
return this.instance.InitEventHandlers();
}
/** @fn send(param: QChatSendMessageParam)
* 发送消息
* @param[in] param 接口参数 @see QChatSendMessageParam
* @return void
*/
send(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Send(param);
});
return p;
}
/** @fn update(param: QChatUpdateMessageParam)
* 更新消息
* @param[in] param 接口参数 @see QChatUpdateMessageParam
*/
update(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Update(param);
});
return p;
}
/** @fn revoke(param: QChatRevokeMessageParam)
* 撤回消息,撤回未读消息不影响未读数
* @param[in] param 接口参数 @see QChatRevokeMessageParam
* @return void
*/
revoke(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Revoke(param);
});
return p;
}
/** @fn delete(param: QChatDeleteMessageParam)
* 删除消息,删除未读消息影响未读数
* @param[in] param 接口参数 @see QChatDeleteMessageParam
* @return void
*/
delete(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Delete(param);
});
return p;
}
/** @fn getMessages(param: QChatGetMessagesParam)
* 查询历史消息
* @param[in] param 接口参数 @see QChatGetMessagesParam
* @return void
*/
getMessages(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetMessages(param);
});
return p;
}
/** @fn getMessagesCache(param: QChatGetMessagesCacheParam)
* @brief 查询本地消息历史缓存, 仅用于无网络情况或加速页面显示时使用,恢复通信后应使用GetMessages的结果进行覆盖
*
* @param param 要查询的服务器、频道信息 @see QChatGetMessagesCacheParam
* @return void
*/
getMessagesCache(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetMessagesCache(param);
});
return p;
}
/** @fn getLastMessages(param: QChatGetLastMessagesParam)
* 查询频道最后一条消息
* @param[in] param 接口参数 @see QChatGetLastMessagesParam
* @return void
*/
getLastMessages(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetLastMessages(param);
});
return p;
}
/** @fn markRead(param: QChatMarkMessageReadParam)
* 标记消息已读
* @param[in] param 接口参数 @see QChatMarkMessageReadParam
* @return void
*/
markRead(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.MarkRead(param);
});
return p;
}
/** @fn reply(param: QChatReplyMessageParam)
* @brief 回复指定消息
* @since v9.1.0
* @param[in] param 接口参数 @see QChatReplyMessageParam
*/
reply(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Reply(param);
});
return p;
}
/** @fn getMessageHistoryByIds(param: QChatGetMessageHistoryByIdsParam)
* @brief 通过一组消息 ID 查询消息详情
* @since v9.1.0
* @param param 接口参数 @see QChatGetMessageHistoryByIdsParam
*/
getMessageHistoryByIds(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetMessageHistoryByIds(param);
});
return p;
}
/** @fn getReferMessages(param: QChatGetReferMessagesParam)
* @brief 获取指定消息的引用消息内容
* @since v9.1.0
* @param param 接口参数 @see QChatGetReferMessagesParam
*/
getReferMessages(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetReferMessages(param);
});
return p;
}
/** @fn getThreadMessages(param: QChatGetThreadMessagesParam)
* @brief 分页获取一个 thread 消息得详细回复消息列表
* @since v9.1.0
* @param param 接口参数 @see QChatGetThreadMessagesParam
*/
getThreadMessages(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetThreadMessages(param);
});
return p;
}
/** @fn getThreadRootMessagesMeta(param: QChatGetThreadRootMessagesMetaParam)
* @brief 获取一批 thread root 消息的基本信息(回复次数,最后回复时间)
* @since v9.1.0
* @param param 接口参数 @see QChatGetThreadRootMessagesMetaParam
*/
getThreadRootMessagesMeta(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetThreadRootMessagesMeta(param);
});
return p;
}
/** @fn getMentionedMeMessages(param: QChatGetMentionedMeMessagesParam)
* @brief 查询未读消息中 @ 当前用户的消息
* @since v9.9.0
* @param param 接口参数 @see QChatGetMentionedMeMessagesParam
*/
getMentionedMeMessages(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetMentionedMeMessages(param);
});
return p;
}
/** @fn areMentionedMeMessages(param: QChatAreMentionedMeMessagesParam)
* @brief 查询指定消息中是否有 @ 当前用户的消息
* @since v9.9.0
* @param param 接口参数 @see QChatAreMentionedMeMessagesParam
*/
areMentionedMeMessages(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.AreMentionedMeMessages(param);
});
return p;
}
/** @fn addQuickComment(param: QChatAddQuickCommentParam)
* @brief 对指定消息添加快捷评论
* @since v9.1.0
* @param param 接口参数 @see QChatAddQuickCommentParam
*/
addQuickComment(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.AddQuickComment(param);
});
return p;
}
/** @fn removeQuickComment(param: QChatRemoveQuickCommentParam)
* @brief 从某个消息上移除快捷评论
* @since v9.1.0
* @param param 接口参数 @see QChatRemoveQuickComm entParam
*/
removeQuickComment(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.RemoveQuickComment(param);
});
return p;
}
/** @fn getQuickComments(param: QChatGetQuickCommentsParam)
* @brief 获取指定消息包含的快捷评论列表
* @since v9.1.0
* @param param 接口参数 @see QChatGetQuickCommentsParam
*/
getQuickComments(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetQuickComments(param);
});
return p;
}
/** @fn searchMsgByPage(param: QChatMessageSearchPageParam)
* @brief 分页搜索消息
* @since v9.4.0
* @param param 接口参数 @see QChatSearchMsgByPageParam
*/
searchMsgByPage(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.SearchMsgByPage(param);
});
return p;
}
/** @fn void insertOrReplaceTextCache(const QChatInsertOrReplaceTextCacheParam& param)
* @brief 插入或更新自定义文本缓存
* @param param 接口参数 @see QChatInsertOrReplaceTextCacheParam
*/
insertOrReplaceTextCache(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.InsertOrReplaceTextCache(param);
});
return p;
}
/** @fn void deleteTextCache(const QChatDeleteTextCacheParam& param)
* @brief 删除自定义文本缓存
* @param param 接口参数 @see QChatDeleteTextCacheParam
*/
deleteTextCache(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.DeleteTextCache(param);
});
return p;
}
/** @fn void getTextCache(const QChatGetTextCacheParam& param)
* @brief 获取自定义文本缓存
* @param param 接口参数 @see QChatGetTextCacheParam
*/
getTextCache(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.GetTextCache(param);
});
return p;
}
}
exports.QChatMessageModule = QChatMessageModule;
//# sourceMappingURL=message.js.map