mtl-js-sdk
Version:
ynf-fw-mtl-api
225 lines (214 loc) • 5.88 kB
JavaScript
;
function Plugin(options, exports = {}) {
const { platform } = options || { platform: window.mtl.platform };
function successCallBack(object = {}) {
object.success && object.success({});
object.complete && object.complete({});
}
function failCallBack(object = {}) {
object.fail && object.fail({});
object.complete && object.complete({});
}
//im登录
function loginIM(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("loginIM", object);
} else if (platform === 'wx') {
failCallBack(object)
} else {
successCallBack(object)
}
}
//打开聊天页面
function openChat(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("openChat", object);
} else {
successCallBack(object)
}
}
//退出登陆
function logoutIM(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("logoutIM", object);
} else {
successCallBack(object)
}
}
//获取未读书
function getUnreadMsgCount(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("getUnreadMsgCount", object);
} else {
successCallBack(object)
}
}
//消息列表
function getRecentMessage(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("getRecentMessage", object);
} else {
successCallBack(object)
}
}
//增量消息
function getReceiveMessage(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("getReceiveMessage", object);
} else {
successCallBack(object)
}
}
//搜索
function doSearch(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("doSearch", object);
} else {
successCallBack(object)
}
}
//创建群聊
function createChatGroup(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("createChatGroup", object);
} else {
successCallBack(object)
}
}
//获取全部群成员
function getGroupMembers(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("getGroupMembers", object);
} else {
successCallBack(object)
}
}
//修改群名称
function renameChatGroupName(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("renameChatGroupName", object);
} else {
successCallBack(object)
}
}
//设置群公告
function modifyChatGroupAnnounce(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("modifyChatGroupAnnounce", object);
} else {
successCallBack(object)
}
}
//添加群成员
function inviteRosterIntoChatGroup(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("inviteRosterIntoChatGroup", object);
} else {
successCallBack(object)
}
}
//删除群成员
function kickGroupMember(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("kickGroupMember", object);
} else {
successCallBack(object)
}
}
//删除并退出群聊
function leaveChatGroup(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("leaveChatGroup", object);
} else {
successCallBack(object)
}
}
//转让群组
function changeChatGroupAdmin(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("changeChatGroupAdmin", object);
} else {
successCallBack(object)
}
}
//解散群组
function dismissChatGroup(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("dismissChatGroup", object);
} else {
successCallBack(object)
}
}
//消息置顶
function updateStickTop(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("updateStickTop", object);
} else {
successCallBack(object)
}
}
//消息免打扰
function updateNoDisturb(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("updateNoDisturb", object);
} else {
successCallBack(object)
}
}
//删除消息
function deleteMessage(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("deleteMessage", object);
} else {
successCallBack(object)
}
}
//转发消息
function forwardMessage(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("forwardMessage", object);
} else {
successCallBack(object)
}
}
//获取群组信息
function getContactInfo(object = {}) {
if (platform === 'APIAndroid' || platform === 'APIIos') {
execApiBridge("getContactInfo", object);
} else {
successCallBack(object)
}
}
// 内部方法
function execApiBridge(method, object) {
mtl.execPluginBridge({ ...object, method, requireName : "imChat" })
}
let apiMethods = {
loginIM,
logoutIM,
openChat,
getUnreadMsgCount,
getRecentMessage,
getReceiveMessage,
doSearch,
createChatGroup,
getGroupMembers,
renameChatGroupName,
modifyChatGroupAnnounce,
inviteRosterIntoChatGroup,
kickGroupMember,
leaveChatGroup,
changeChatGroupAdmin,
dismissChatGroup,
updateStickTop,
updateNoDisturb,
deleteMessage,
forwardMessage,
getContactInfo,
};
const methods = apiMethods;
exports.module = methods;
exports.symbolPath = "im";
return exports;
}
export default Plugin;