/// <summary> /// 修复会话 /// </summary> private void RepairConversationCallBack() { try { if (!string.IsNullOrEmpty(this.meetAddress)) { MainWindow.mainWindow.Topmost = true; TimerJob.StartRun(new Action(() => { //取消置顶 MainWindow.mainWindow.Topmost = false; }), 2000); LyncHelper.CloseAllConversation(new Action(() => { })); LyncHelper.JoinConversationByWebBrowser(this.meetAddress); //释放dns(改为自由获取),主窗体状态还原(非置顶) } } catch (Exception ex) { LogManage.WriteLog(this.GetType(), ex); } finally { } }
/// <summary> /// 创建或进入会话 /// </summary> /// <param name="successed">执行是否包含会话是否成功</param> /// <param name="meetAddress">会议地址</param> private void MeetSetupOrEnter(bool successed, string meet_Address) { try { if (successed && string.IsNullOrEmpty(meet_Address)) { //禁止其他人进行查询完之后直接进行会话初始化(有可能在其中过程当中,第一个开启会话的人还没有准备完毕,所以记进行一次通知) ModelManage.ConferenceLyncConversation.ForbiddenConversationInit(Constant.ConferenceName, new Action <bool>((flg) => { })); //判断主会话是否存在 if (LyncHelper.MainConversation == null) { //参会人列表 List <string> list = Constant.ParticipantList.Where(Item => Item.Equals(Constant.SelfUri)).ToList <string>(); //添加对应大屏 list.Add(Constant.BigScreenName); //开启会话 LyncHelper.StartConference(Constant.lyncClient, Constant.ConferenceName, Constant.SelfName, list, LyncHelper.MainConversation); //获取会议地址上传到服务器 this.UPloadMeetAddressAndCancelLock(successed); this.meetAddress = meet_Address; } } else { this.meetAddress = meet_Address; //使用浏览器的方式参会 LyncHelper.JoinConversationByWebBrowser(meet_Address); } } catch (Exception ex) { LogManage.WriteLog(this.GetType(), ex); } finally { } }