/// <summary> /// 软摘机/挂机 /// </summary> /// <param name="result">1摘机 0挂机</param> public static void enableHook(int result) { try { if (result == 1)//摘机 { Utils.WriteLog(string.Format("软摘机")); VoipHelper.StopVoice(VoipHelper.playHandle); VoipHelper.lineToSpk(1); VoipHelper.domicToLine(1); if (VoipHelper.callState == VoipHelper.telState.IN) { ConstDefault.isMissed = false; ConstDefault.retToJs resultToJs = new ConstDefault.retToJs(); resultToJs.action = ConstDefault.PHONE_CALLING; Utils.resultToJavascript(resultToJs); } else { ConstDefault.retToJs resultToJs = new ConstDefault.retToJs(); resultToJs.action = ConstDefault.PHONE_DIALING; resultToJs.phoneNumber = VoipHelper.callNumber; Utils.resultToJavascript(resultToJs); } } else //挂机 { Utils.WriteLog(string.Format("软挂机")); VoipHelper.lineToSpk(0); VoipHelper.offHookCallNumber = null; VoipHelper.playHandle = VoipHelper.StopVoice(VoipHelper.playHandle); ConstDefault.isBySelf = true; ConstDefault.isCalling = false; if (VoipHelper.callState == VoipHelper.telState.IN) { MainWindow.form.Topmost = false; } if (VoipHelper.isHookError) { VoipHelper.isHookError = false; return; } ConstDefault.retToJs resultToJs = new ConstDefault.retToJs(); resultToJs.action = ConstDefault.PHONE_IDEL; Utils.resultToJavascript(resultToJs); } } catch (Exception err) { VoipHelper.isHookError = true; ConstDefault.retToJs errToJs = new ConstDefault.retToJs(); errToJs.action = ConstDefault.PHONE_IDEL; Utils.resultToJavascript(errToJs); VoipHelper.OffOnHook(0); Utils.WriteLog(string.Format("软摘软挂错误==>>{0}", err)); return; } }