var jobs_id = msgobj.jobs_id; var jobfair_id = msgobj.jobfair_id; var resumeid = msgobj.resume_id; var roomId = msgobj.roomId; if(msgobj.isComVideDialog){ var link = url+'&jobs_id='+jobs_id+'&jobfair_id='+jobfair_id+'&resume_id='+resumeid+'&roomId=' + roomId +"&isIntviewVideo=" +true } else { var link = url+'&jobs_id='+jobs_id+'&jobfair_id='+jobfair_id+'&resume_id='+resumeid+'&roomId=' + roomId; } var LoginDialog = $(this).dialog({ title: false, content:"
", footer: false, header: true, border: false, innerPadding: false, backdrop: true, isVideo:true, ele:'J_video_room_dialog' }); } else if (msgobj.type == 2){ if(dialogMin===true){ dialogMin = false $('.J_video_room_dialog').remove() } $('.J_f_con_video .num_icon').hide() var url = "/index.php?m=Home&c=Vi&a=jobfair_main_per" var jobs_id = msgobj.jobs_id; var jobfair_id = msgobj.jobfair_id; var interview_uid = msgobj.interview_uid; var roomId = msgobj.roomId; if(msgobj.isComVideDialog){ var link = url +'&jobs_id='+jobs_id+'&jobfair_id='+jobfair_id+'&interview_uid='+interview_uid +'&roomId=' + roomId+"&isIntviewVideo=" +true }else { var link = url +'&jobs_id='+jobs_id+'&jobfair_id='+jobfair_id+'&interview_uid='+interview_uid +'&roomId=' + roomId; } var LoginDialog = $(this).dialog({ title: false, content:"
", footer: false, header: true, border: false, innerPadding: false, backdrop: true, isVideo:true, ele:'J_video_room_dialog' }); } },200) }else if(data.content.msg_type == "text"){ $.getJSON("/index.php?m=Jobfair&c=index&a=message",{ interview_uid:data.sender.uid, },function(res){ if(parseInt(res.status) === 1){ isOpen=false layer.open({ type: 1, title: false, area: ['800px', '600px'], //宽高 content: res.data, end:function(index){ isOpen=true } }); var chat_user_list = JSON.parse(sessionStorage.getItem("chat_obj")); for (var index = 0; index < chat_user_list.length; index++) { var item = chat_user_list[index]; if(item.uid == data.sender.uid){ item.unread_num = 0 updataUnread(chat_user_list) } } sessionStorage.setItem("chat_obj", JSON.stringify(chat_user_list)); window.app.getchatObj() } else { layer.msg(res.msg); } }); } }, // 可传递参数 可选 data: data, // 自动关闭 单位毫秒 默认 6500毫秒 timeout<=0 不自动关闭 可选 // data.content.msg_type == 'text' ? 3000 : 6000 timeout: 15000 } // 仿桌面通知 new dToast(config); } var token = "" var current_uid = 0 var chat_uid_ary=[] // var video_uid_ary=[] var isOpen = true var videoNum = 0 var time1= null var mantle = 0 var mantleAry = [] var is_dating = parseInt("") // 当前用户身份企业/个人 var utype = "" if(token){ initWebSocket() var chat_user_list = JSON.parse(sessionStorage.getItem("chat_obj")); if(!chat_user_list){ var url = "/index.php?m=Jobfair&c=Index&a=ajax_get_left" var get_unread_url = "/index.php?m=Jobfair&c=Index&a=get_jobfair_every_unread" var _this = this axios.get(url).then(function(res){ if(parseInt(res.data.status)==1){ axios.get(get_unread_url).then(function(res2){ var unreadObj = res2.data.data for (var index = 0; index < res.data.data.length; index++) { var item = res.data.data[index]; chat_uid_ary.push({ uid:item.touid, unread_num: unreadObj ? parseInt(unreadObj[item.touid]) ? parseInt(unreadObj[item.touid]) : 0 : 0 }) } sessionStorage.setItem("chat_obj", JSON.stringify(chat_uid_ary)); }) } }) } } // 初始化 WebSocket function initWebSocket(){ // 初始化weosocket var im_websocket = 'wss://bohuiws.tywangcai.com' if(!window.ws){ window.ws = new WebSocket(im_websocket) }; ws.onopen = function websocketonopen() { var msgObj = { controller: 'Index', action: 'connect', args: { token: "" } } var msgStr = JSON.stringify(msgObj) ws.send(msgStr) } ws.onmessage = function websocketonmessage(e){ function isJSON(str) { if (typeof str == 'string') { try { var obj=JSON.parse(str); if(typeof obj == 'object' && obj ){ return true; }else{ return false; } } catch(e) { return false; } } } if(isJSON(e.data)){ var msgObj = JSON.parse(e.data) current_uid = msgObj.sender.uid var chat_user_list = JSON.parse(sessionStorage.getItem("chat_obj")); //文字聊天消息未读 var currentItem = selectChatItem(chat_user_list,msgObj) if(msgObj.content.msg_type == 'text'){ if(is_dating != 2){ if(currentItem == false){ // 没有找到当前用户 chat_user_list.push({uid:msgObj.sender.uid,unread_num:1}) updataUnread(chat_user_list) } else { if(isOpen || !window.app){ // 原数组会不会发生改变 (会) currentItem.unread_num +=1 } else { if(currentItem.uid != window.app.target_userid){ currentItem.unread_num +=1 } } updataUnread(chat_user_list) } sessionStorage.setItem("chat_obj", JSON.stringify(chat_user_list)); } } var sendObj={ addtime:parseInt(msgObj.addtime)/1000, avatar:msgObj.sender.avatar, content:msgObj.content.msg, type:msgObj.content.msg_type, uid:msgObj.sender.uid } if(window.app){ if(sendObj.type == 'text'){ window.app.getMessageList(false,sendObj) } } // 判断发送的是视频还是文字 if( msgObj.content.msg_type == 'video'){ var videoMsg = JSON.parse(msgObj.content.msg) $('.J_f_con_video .num_icon').show() if(is_dating){ if(utype == 2 && is_dating !=2){ if(videoMsg.isComVideDialog != true){ mantle++ var layerIndex = layer.confirm("
"+msgObj.sender.nickname+"企业邀请您进入面试间,是否进入
",{ btn:['确定','取消'], area:['280px','180px'], type:1, closeBtn:false, shade:mantle == 1 ? 0.4 : 0 },function(index){ mantle = 0 // ,array('jobfair_id'=>,'jobs_id'=>,'resume_id'=>,'interview_uid'=>) // 判断当前求职者是否在其他队列中 var check_queue_url = "/index.php?m=Home&c=Vi&a=ajax_check_queue_zxr" // 获取大厅某个求职者企业状态 var online_status_url = "/index.php?m=Home&c=Vi&a=ajax_get_online_status_zxr" // 进入队列 var url = "/index.php?m=Home&c=Vi&a=ajax_get_personal_agree" +'&jobfair_id='+videoMsg.jobfair_id +'&jobs_id='+videoMsg.jobs_id +"&interview_uid="+videoMsg.interview_uid $.post(online_status_url,{uid:videoMsg.interview_uid},function(res){ if(res.data == 0){ layer.msg('当前用户不在线');