Commit 665ae7bc authored by 罗超's avatar 罗超

修复BUG

parent c5a1a5e2
...@@ -20,8 +20,8 @@ let config = { ...@@ -20,8 +20,8 @@ let config = {
// 我的手机图标 // 我的手机图标
myPhoneIcon: 'http://yx-web.nos.netease.com/webdoc/h5/im/my-phone.png', myPhoneIcon: 'http://yx-web.nos.netease.com/webdoc/h5/im/my-phone.png',
// 本地消息显示数量,会影响性能 // 本地消息显示数量,会影响性能
localMsglimit: 36, localMsglimit: 10,
useDb: false useDb: true
} }
const env = 'online' const env = 'online'
......
...@@ -299,7 +299,7 @@ ipc.on('reconnect', function(event) { ...@@ -299,7 +299,7 @@ ipc.on('reconnect', function(event) {
ipc.on('loginSuccess', function(event, userInfo) { ipc.on('loginSuccess', function(event, userInfo) {
initNIM(userInfo.ImAccount, userInfo.ImToken) initNIM(userInfo.ImAccount, userInfo.ImToken)
registScrollerHotKey() registScrollerHotKey()
getScrollerhotWindows() //getScrollerhotWindows()
global.LOGINUSER = userInfo global.LOGINUSER = userInfo
getNewMsgWindows() getNewMsgWindows()
getMainWinodw(0) getMainWinodw(0)
...@@ -454,7 +454,7 @@ ipc.on('openSystemNotice', function(event, sessionid) { ...@@ -454,7 +454,7 @@ ipc.on('openSystemNotice', function(event, sessionid) {
show: false, show: false,
width: 320, width: 320,
height: 190, height: 190,
alwaysOnTop: true, alwaysOnTop: false,
focusable: false, focusable: false,
icon: windowIcon icon: windowIcon
}) })
...@@ -715,7 +715,7 @@ ipc.on('send-file', function(event, obj) { ...@@ -715,7 +715,7 @@ ipc.on('send-file', function(event, obj) {
} }
}) })
}) })
ipc.on('read-clip', function (event) { ipc.on('read-clip', function(event) {
const rawFilePath = clipboard.readBuffer('FileNameW').toString('ucs2'); const rawFilePath = clipboard.readBuffer('FileNameW').toString('ucs2');
let filePath = rawFilePath.replace(new RegExp(String.fromCharCode(0), 'g'), ''); let filePath = rawFilePath.replace(new RegExp(String.fromCharCode(0), 'g'), '');
if (filePath && filePath.length > 0) { if (filePath && filePath.length > 0) {
...@@ -950,6 +950,7 @@ let getNoticeWindows = function() { ...@@ -950,6 +950,7 @@ let getNoticeWindows = function() {
}) })
} }
noticeWindows.loadURL(noticeUrl) noticeWindows.loadURL(noticeUrl)
mainWindow.setFocusable(true)
noticeWindows.setMenu(null) noticeWindows.setMenu(null)
noticeWindows.once('ready-to-show', () => { noticeWindows.once('ready-to-show', () => {
noticeWindows.show() noticeWindows.show()
......
...@@ -331,12 +331,13 @@ export default { ...@@ -331,12 +331,13 @@ export default {
} else if (/^team-/.test(sessionId)) { } else if (/^team-/.test(sessionId)) {
var teamMembers = this.$store.state.teamMembers[this.to]; var teamMembers = this.$store.state.teamMembers[this.to];
if (this.teamInfo) { if (this.teamInfo) {
if ( // if (
teamMembers === undefined || // teamMembers === undefined ||
teamMembers.length < this.teamInfo.memberNum // teamMembers.length < this.teamInfo.memberNum
) { // ) {
this.$store.dispatch("getTeamMembers", this.to); // console.log('...............')
} // this.$store.dispatch("getTeamMembers", this.to);
// }
if (this.teamInfo) { if (this.teamInfo) {
// teamInfo中的人数为初始获取的值,在人员增减后不会及时更新,而teamMembers在人员增减后同步维护的人员信息 // teamInfo中的人数为初始获取的值,在人员增减后不会及时更新,而teamMembers在人员增减后同步维护的人员信息
var members = var members =
...@@ -395,15 +396,16 @@ export default { ...@@ -395,15 +396,16 @@ export default {
} else { } else {
this.lstShowData.lastMsgShow = ""; this.lstShowData.lastMsgShow = "";
} }
//
} }
if(msgs.length>0) if(msgs.length>0)
this.lstTimer=msgs[msgs.length-1].time this.lstTimer=msgs[msgs.length-1].time
if(this.scene=='team'){ if(this.scene=='team'){
msgs=msgs.filter(x=>{ // msgs=msgs.filter(x=>{
if(x.type!='notification' ||(x.type=='notification' && !x.attach.team.custom)) // if(x.type!='notification' ||(x.type=='notification' && !x.attach.team.custom))
return x // return x
return; // return;
}) // })
} }
// console.log(msgs) // console.log(msgs)
return msgs; return msgs;
...@@ -885,6 +887,7 @@ export default { ...@@ -885,6 +887,7 @@ export default {
height: 46px; height: 46px;
line-height: 46px; line-height: 46px;
padding-left: 20px; padding-left: 20px;
padding-right: 50px;
border-bottom: 1px solid #ddd; border-bottom: 1px solid #ddd;
position: relative; position: relative;
} }
......
...@@ -408,6 +408,7 @@ export default { ...@@ -408,6 +408,7 @@ export default {
callbackTeam:this.callBackTeam callbackTeam:this.callBackTeam
}); });
}else{ }else{
console.log('in start...........',new Date())
this.$store.dispatch("sendMsg", { this.$store.dispatch("sendMsg", {
type: "text", type: "text",
scene: this.scene, scene: this.scene,
......
...@@ -340,7 +340,26 @@ export default { ...@@ -340,7 +340,26 @@ export default {
this.atIds=session.atId this.atIds=session.atId
session.atId=null session.atId=null
} }
if (session.scene === "team") {
var teamMembers = this.$store.state.teamMembers[session.to];
let teamInfo = this.$store.state.teamlist.find(team => {
return team.teamId === this.currentSession.to;
});
if (teamInfo) {
if (
teamMembers === undefined ||
teamMembers.length < teamInfo.memberNum
) {
this.$store.dispatch("getTeamMembers", session.to);
}
}
}
this.$store.dispatch("setCurrSession", session.id) this.$store.dispatch("setCurrSession", session.id)
this.$store.dispatch("getHistoryMsgs", {
scene: session.scene,
to: session.to
});
} }
}, },
clearAtMe(){ clearAtMe(){
...@@ -687,10 +706,14 @@ export default { ...@@ -687,10 +706,14 @@ export default {
} else { } else {
this.$electron.ipcRenderer.send("newMessage", []); this.$electron.ipcRenderer.send("newMessage", []);
} }
if (!this.$electron.remote.getCurrentWindow().isFocused()) { try {
if (this.calcUnRead(this.newMsgList, unreadList)) { if (!this.$electron.remote.getCurrentWindow().isFocused()) {
this.$electron.remote.getCurrentWindow().flashFrame(true); if (this.calcUnRead(this.newMsgList, unreadList)) {
this.$electron.remote.getCurrentWindow().flashFrame(true);
}
} }
} catch (error) {
} }
......
...@@ -6,130 +6,138 @@ import config from '../../configs/index' ...@@ -6,130 +6,138 @@ import config from '../../configs/index'
import pageUtil from '../../utils/page' import pageUtil from '../../utils/page'
import util from '../../utils/index' import util from '../../utils/index'
import store from '../' import store from '../'
import {onFriends, onSyncFriendAction} from './friends' import { onFriends, onSyncFriendAction } from './friends'
import {onRobots} from './robots' import { onRobots } from './robots'
import {onBlacklist, onMarkInBlacklist} from './blacks' import { onBlacklist, onMarkInBlacklist } from './blacks'
import {onMyInfo, onUserInfo} from './userInfo' import { onMyInfo, onUserInfo } from './userInfo'
import {onSessions, onUpdateSession} from './session' import { onSessions, onUpdateSession } from './session'
import {onRoamingMsgs, onOfflineMsgs, onMsg, onMutelist, onMarkInMutelist} from './msgs' import { onRoamingMsgs, onOfflineMsgs, onMsg, onMutelist, onMarkInMutelist } from './msgs'
import {onSysMsgs, onSysMsg, onSysMsgUnread, onCustomSysMsgs} from './sysMsgs' import { onSysMsgs, onSysMsg, onSysMsgUnread, onCustomSysMsgs } from './sysMsgs'
import { onTeams, onSynCreateTeam, onCreateTeam, onUpdateTeam, onTeamMembers, onUpdateTeamMember, onAddTeamMembers, onRemoveTeamMembers, onUpdateTeamManagers, onDismissTeam, onUpdateTeamMembersMute, onTeamMsgReceipt} from './team' import { onTeams, onSynCreateTeam, onCreateTeam, onUpdateTeam, onTeamMembers, onUpdateTeamMember, onAddTeamMembers, onRemoveTeamMembers, onUpdateTeamManagers, onDismissTeam, onUpdateTeamMembersMute, onTeamMsgReceipt } from './team'
const SDK = require('../../sdk/NIM_Web_SDK_v6.1.0') const SDK = require('../../sdk/NIM_Web_SDK_v6.1.0')
// 重新初始化 NIM SDK // 重新初始化 NIM SDK
export function initNimSDK({ state, commit, dispatch }, loginInfo) { export function initNimSDK({ state, commit, dispatch }, loginInfo) {
if (state.nim) { if (state.nim) {
state.nim.disconnect() state.nim.disconnect()
} }
dispatch('showLoading') dispatch('showLoading')
// 初始化SDK // 初始化SDK
window.nim = state.nim = SDK.NIM.getInstance({ window.nim = state.nim = SDK.NIM.getInstance({
debug: false, debug: false,
appKey: config.appkey, appKey: config.appkey,
account: loginInfo.uid, account: loginInfo.uid,
token: loginInfo.sdktoken, token: loginInfo.sdktoken,
db: config.useDb, db: config.useDb,
// logFunc: new SDK.NIM.LoggerPlugin({ // logFunc: new SDK.NIM.LoggerPlugin({
// url: '/webdemo/h5/getlogger', // url: '/webdemo/h5/getlogger',
// level: 'info' // level: 'info'
// }), // }),
syncSessionUnread: true, syncSessionUnread: true,
syncRobots: true, syncRobots: true,
autoMarkRead: true, // 默认为true autoMarkRead: true, // 默认为true
onconnect: function onConnect (event) { onconnect: function onConnect(event) {
if (loginInfo) { if (loginInfo) {
// 连接上以后更新uid // 连接上以后更新uid
commit('updateUserUID', loginInfo) commit('updateUserUID', loginInfo)
commit('updateNetError',false) commit('updateNetError', false)
console.log('链接完成......') console.log('链接完成......')
} }
}, },
onerror: function onError (event) { onerror: function onError(event) {
commit('updateNetError',true) commit('updateNetError', true)
}, },
onwillreconnect: function onWillReconnect() { onwillreconnect: function onWillReconnect() {
commit('updateNetError',true) commit('updateNetError', true)
console.log('尝试中.........') console.log('尝试中.........')
}, },
ondisconnect: function onDisconnect (error) { ondisconnect: function onDisconnect(error) {
switch (error.code) { switch (error.code) {
// 账号或者密码错误, 请跳转到登录页面并提示错误 // 账号或者密码错误, 请跳转到登录页面并提示错误
case 302: case 302:
pageUtil.turnPage('帐号或密码错误', 'login') pageUtil.turnPage('帐号或密码错误', 'login')
break break
// 被踢, 请提示错误后跳转到登录页面 // 被踢, 请提示错误后跳转到登录页面
case 'kicked': case 'kicked':
let map = { let map = {
PC: '电脑版', PC: '电脑版',
Web: '网页版', Web: '网页版',
Android: '手机版', Android: '手机版',
iOS: '手机版', iOS: '手机版',
WindowsPhone: '手机版' WindowsPhone: '手机版'
} }
let str = error.from let str = error.from
let errorMsg = `你的帐号于${util.formatDate(new Date())}${(map[str] || '其他端')}踢出下线,请确定帐号信息安全!` let errorMsg = `你的帐号于${util.formatDate(new Date())}${(map[str] || '其他端')}踢出下线,请确定帐号信息安全!`
pageUtil.turnPage(errorMsg, 'login') pageUtil.turnPage(errorMsg, 'login')
break break
default: default:
break break
} }
}, },
// // 多端登录 // // 多端登录
// onloginportschange: onLoginPortsChange, // onloginportschange: onLoginPortsChange,
// 用户关系及好友关系 // 用户关系及好友关系
onblacklist: onBlacklist, onblacklist: onBlacklist,
onsyncmarkinblacklist: onMarkInBlacklist, onsyncmarkinblacklist: onMarkInBlacklist,
onmutelist: onMutelist, onmutelist: onMutelist,
onsyncmarkinmutelist: onMarkInMutelist, onsyncmarkinmutelist: onMarkInMutelist,
onfriends: onFriends, onfriends: onFriends,
onsyncfriendaction: onSyncFriendAction, onsyncfriendaction: onSyncFriendAction,
// 机器人 // 机器人
onrobots: onRobots, onrobots: onRobots,
// 用户名片 - actions/userInfo // 用户名片 - actions/userInfo
onmyinfo: onMyInfo, onmyinfo: onMyInfo,
onupdatemyinfo: onMyInfo, onupdatemyinfo: onMyInfo,
onusers: onUserInfo, onusers: onUserInfo,
onupdateuser: onUserInfo, onupdateuser: onUserInfo,
// // 群组 // // 群组
onteams: onTeams, onteams: onTeams,
onsynccreateteam: onSynCreateTeam, onsynccreateteam: onSynCreateTeam,
syncTeams: true, syncTeams: true,
onteammembers: onTeamMembers, onteammembers: onTeamMembers,
onCreateTeam: onCreateTeam, onCreateTeam: onCreateTeam,
onDismissTeam: onDismissTeam, onDismissTeam: onDismissTeam,
onUpdateTeam: onUpdateTeam, onUpdateTeam: onUpdateTeam,
onAddTeamMembers: onAddTeamMembers, onAddTeamMembers: onAddTeamMembers,
onRemoveTeamMembers: onRemoveTeamMembers, onRemoveTeamMembers: onRemoveTeamMembers,
onUpdateTeamManagers: onUpdateTeamManagers, onUpdateTeamManagers: onUpdateTeamManagers,
onupdateteammember: onUpdateTeamMember, onupdateteammember: onUpdateTeamMember,
onUpdateTeamMembersMute: onUpdateTeamMembersMute, onUpdateTeamMembersMute: onUpdateTeamMembersMute,
onTeamMsgReceipt: onTeamMsgReceipt, onTeamMsgReceipt: onTeamMsgReceipt,
// // 会话 // // 会话
onsessions: onSessions, onsessions: onSessions,
onupdatesession: onUpdateSession, onupdatesession: onUpdateSession,
// // 消息 // // 消息
onroamingmsgs: onRoamingMsgs, onroamingmsgs: onRoamingMsgs,
onofflinemsgs: onOfflineMsgs, onofflinemsgs: onOfflineMsgs,
onmsg: onMsg, onmsg: onMsg,
// // 系统通知 // // 系统通知
onsysmsg: onSysMsg, onsysmsg: onSysMsg,
onofflinesysmsgs: onSysMsgs, onofflinesysmsgs: onSysMsgs,
onupdatesysmsg: onSysMsg, // 通过、拒绝好友申请会收到此回调 onupdatesysmsg: onSysMsg, // 通过、拒绝好友申请会收到此回调
onsysmsgunread: onSysMsgUnread, onsysmsgunread: onSysMsgUnread,
onupdatesysmsgunread: onSysMsgUnread, onupdatesysmsgunread: onSysMsgUnread,
onofflinecustomsysmsgs: onCustomSysMsgs, onofflinecustomsysmsgs: onCustomSysMsgs,
oncustomsysmsg: onCustomSysMsgs, oncustomsysmsg: onCustomSysMsgs,
// // 同步完成 // // 同步完成
onsyncdone: function onSyncDone () { onsyncdone: function onSyncDone() {
dispatch('hideLoading') dispatch('hideLoading')
// 说明在聊天列表页 // 说明在聊天列表页
if (store.state.currSessionId) { if (store.state.currSessionId) {
dispatch('setCurrSession', store.state.currSessionId) dispatch('setCurrSession', store.state.currSessionId)
} }
} },
}) shouldIgnoreNotification: function(msg) {
window.nim.useDb = config.useDb let team = msg.attach.team
} if (team['name'] || team['intro'] || team['joinMode'] || team['inviteMode'] || team['updateTeamMode'] || team['beInviteMode']) {
return false
} else {
return true
}
}
})
window.nim.useDb = config.useDb
}
\ No newline at end of file
...@@ -137,6 +137,8 @@ function onSendMsgDone(error, msg) { ...@@ -137,6 +137,8 @@ function onSendMsgDone(error, msg) {
} }
}) })
} }
console.log('end sdk.........')
util.getDate()
onMsg(msg) onMsg(msg)
} }
...@@ -231,6 +233,8 @@ export function sendMsg({ state, commit }, obj) { ...@@ -231,6 +233,8 @@ export function sendMsg({ state, commit }, obj) {
done: onSendMsgDone, done: onSendMsgDone,
needMsgReceipt: obj.needMsgReceipt || false needMsgReceipt: obj.needMsgReceipt || false
}) })
console.log('start sdk.........')
util.getDate()
break break
case 'at': case 'at':
nim.sendText({ nim.sendText({
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment