消息
发送消息
发送文本消息
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);