@fork-anyone/node-nim
Version:
NetEase IM nodejs wrapper based on NetEase IM C++ SDK
74 lines • 2.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.QChatInstanceModule = void 0;
const eventemitter3_1 = require("eventemitter3");
class QChatInstanceModule extends eventemitter3_1.EventEmitter {
constructor(sdk) {
super();
this.instance = new sdk.QChatInstance({ emit: this.emit.bind(this) });
}
/** 注册全局回调 */
initEventHandlers() {
return this.instance.InitEventHandlers();
}
/** @fn init(param: QChatInitParam)
* 圈组模块初始化(SDK初始化时调用一次)
* @param[in] param 接口参数
* @return boolean 模块加载结果
*/
init(param) {
return this.instance.Init(param);
}
/** @fn cleanup(param: QChatCleanupParam)
* 圈组模块清理(卸载SDK时调用一次)
* @param[in] param 接口参数
* @return boolean 模块清理结果
*/
cleanup(param) {
return this.instance.Cleanup(param);
}
/** @fn login(param: QChatLoginParam)
* 登录圈组
* @param[in] param 接口参数
* @return void
*/
login(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Login(param);
});
return p;
}
/** @fn logout(param: QChatLogoutParam)
* 登出圈组
* @param[in] param 接口参数
* @return void
*/
logout(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.Logout(param);
});
return p;
}
/** @fn kickOtherClients(param: QChatKickParam)
* 踢掉自己指定的一个其他端
* @param[in] param 接口参数
* @return void
*/
kickOtherClients(param) {
const p = new Promise((resolve) => {
param.cb = (resp) => {
resolve(resp);
};
this.instance.KickOtherClients(param);
});
return p;
}
}
exports.QChatInstanceModule = QChatInstanceModule;
//# sourceMappingURL=instance.js.map