消息

发送消息

发送文本消息

var msg = IM.sendTextMessage(this.text,this.chat.id);

发送文件/图片/音频/视频消息

let fileForm = document.getElementById("fileForm");
let formData = new FormData(fileForm);
var msgtype = "image";
var _ = this ;

//上传文件
IM.uploadFile(formData,function(res){
    if (res.status == 1){
        //创建消息(本来应在上传之前,但是chorme获取不到文件信息)
        var file = {"name":res.data.name,"size":res.data.size,"file":res.data.url_original,"thumbic":res.data.url_original};

        //创建消息
        var msg = IM.msgManager.createMessage(msgtype,file,_.chat);
        //发送消息
        msg = IM.sendAttachMessage(msg,res.data,_.chat);
    } 

})

发送位置消息

var data = {
    "longitude":"120.13026",
    "latitude":"30.25961",
    "address":"杭州市西湖区教工路120号",
    "name":"求是大厦"
};
var msg = IM.sendLocationMessage(data,this.chat.id);

发送自定义消息

var data = {
    "subject":"新闻组",
    "msgexttype":"news",
    "content":{
        "showtype":"full",
        "img":"http://www.qidainfo.com/Uploads/2019-03-02/5c7a42f1b0d81.jpg",
        "title":"《拇指熊—卜达》即将上演!",
        "list":[
            {"title":"50元4节北美精英外教在线课,4-12岁都能学!","img":"http://www.newsimg.cn/xl2017/images/n-wx.png"},
            {"title":"温德姆至尊豪廷大酒店自助,上百道菜品瞬间吃回本","img":"http://www.newsimg.cn/xl2017/images/n-wx.png"}
        ],
    }
};
var msg = IM.sendCustomMessage(data,this.chat.id);

接收消息

//订阅收到新消息事件
IM.events.removeHandler("onMessageNew",this.onMessageNew);

//重新获取消息
onMessageNew:function(){
    this.chats = IM.listChat();
}

设置会话已读

//订阅收到新消息事件
IM.setReadedByMsg(msg);

消息打开通知

Vue 是双向绑定,如果msglist是用chat.msgs,那么不需要订阅这个事件,自动会更新

//订阅收到新消息事件
app.IM.events.removeHandler("onMessageStatus", this.onMessageStatus);

//重新获取消息列表
onMessageStatus:function(){
    /重新获取会话
    var _chat = app.IM.getChat(this.data.chat.id);
    this.data.msgs = _chat.msgs;
}

历史消息

var options = {
    data:{"cid":this.chat.id},
    callback:function(res){
        if (res.msgs.length == 0){
            _.$alert("没有更多数据了");
        }
        //alert(res.msgs.length);
    }
};
IM.chatManger.listRoamMsg(options);

重发消息

IM.resendMessage(msg);

results matching ""

    No results matching ""