⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainform.cs

📁 VaxSIPUserAgentSDK
💻 CS
📖 第 1 页 / 共 3 页
字号:
                VaxSIPUserAgentOCX.EnableDonotDisturb();
            else
                VaxSIPUserAgentOCX.DisableDonotDisturb();
        }

        private void CheckGSM610_CheckedChanged(object sender, EventArgs e)
        {
            /****Codec No 0 represents GSM 6.10 *****/

            if (CheckGSM610.Checked == true)
                VaxSIPUserAgentOCX.SelectVoiceCodec(0);
            else
                VaxSIPUserAgentOCX.DeselectVoiceCodec(0);
        }

        private void CheckiLBC_CheckedChanged(object sender, EventArgs e)
        {
            /****Codec No 1 represents iLBC *****/

            if (CheckiLBC.Checked == true)
                VaxSIPUserAgentOCX.SelectVoiceCodec(1);
            else
                VaxSIPUserAgentOCX.DeselectVoiceCodec(1);
            
        }

        private void CheckG711A_CheckedChanged(object sender, EventArgs e)
        {
            /****Codec No 2 represents G711 A-LAW *****/

            if(CheckG711A.Checked == true)
                VaxSIPUserAgentOCX.SelectVoiceCodec(2);
            else
                VaxSIPUserAgentOCX.DeselectVoiceCodec(2);
        }

        private void CheckG711U_CheckedChanged(object sender, EventArgs e)
        {
            /****Codec No 3 represents G711 U-LAW *****/

            if (CheckG711U.Checked == true)
                VaxSIPUserAgentOCX.SelectVoiceCodec(3);
            else
                VaxSIPUserAgentOCX.DeselectVoiceCodec(3);
        }

        private void BtnTransferCall_Click(object sender, EventArgs e)
        {
            String sToURI = "sip:" + EditTransferPhoneNo.Text + "@" + EditSIPProxy.Text;

            if (!VaxSIPUserAgentOCX.TransferCall(ListLines.SelectedIndex, sToURI))
                ErrorMessages();
        }

        private void BtnClearLog_Click(object sender, EventArgs e)
        {
            ListStatusLog.Items.Clear();
        }

        private void VaxSIPUserAgentOCX_OnCallTransferAccepted(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnCallTransferAcceptedEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Transfer accepted.");
        }

        private void VaxSIPUserAgentOCX_OnConnecting(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnConnectingEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Connecting.");
        }

        private void VaxSIPUserAgentOCX_OnDisconnectCall(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnDisconnectCallEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Hung up.");
        }

        private void VaxSIPUserAgentOCX_OnFailToConnect(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnFailToConnectEvent e)
        {
             AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Fail to connect.");
        }

        private void VaxSIPUserAgentOCX_OnFailToRegister(object sender, EventArgs e)
        {
            AddToStatusLog("Fail to register.");
        }

        private void VaxSIPUserAgentOCX_OnFailToUnRegister(object sender, EventArgs e)
        {
            AddToStatusLog("Fail to unregister.");
        }

        private void VaxSIPUserAgentOCX_OnGeneralFailureResponse(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnGeneralFailureResponseEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + " Response: " + e.reasonPhrase);
        }

        private void VaxSIPUserAgentOCX_OnIncomingCall(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnIncomingCallEvent e)
        {
            if(ListIncomingCallIds.FindString(e.callId) == -1)
                ListIncomingCallIds.Items.Add(e.callId);

            if(e.displayName.Length != 0)
                ListIncomingCall.Items.Add("CLI: " + e.displayName);
            else
                ListIncomingCall.Items.Add("CLI: " + e.userName);

            if((ListIncomingCall.SelectedIndex == -1) && (ListIncomingCall.Items.Count > 0))
                ListIncomingCall.SelectedIndex = 0;
            
        }

        private void VaxSIPUserAgentOCX_OnIncomingCallRingingStart(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnIncomingCallRingingStartEvent e)
        {
            if(CheckPlayRingTone.Checked == true)
                PlaySound("ring.wav", 0, SND_ASYNC | SND_FILENAME | SND_LOOP | SND_NODEFAULT);
        }

        private void VaxSIPUserAgentOCX_OnIncomingCallRingingStop(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnIncomingCallRingingStopEvent e)
        {
            int nItemIndex = ListIncomingCallIds.Items.IndexOf(e.callId);
            if (nItemIndex == -1) return;

            ListIncomingCallIds.Items.RemoveAt(nItemIndex);
            ListIncomingCall.Items.RemoveAt(nItemIndex);
            
            PlaySound(null, 0, 0);
        }

        private void VaxSIPUserAgentOCX_OnPlayWaveDone(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnPlayWaveDoneEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Play wave done.");
        }

        private void VaxSIPUserAgentOCX_OnProvisionalResponse(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnProvisionalResponseEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo+ 1) + ": Response: " + e.reasonPhrase);
        }

        private void VaxSIPUserAgentOCX_OnRedirectionResponse(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnRedirectionResponseEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Response: " + e.reasonPhrase);
        }

        private void VaxSIPUserAgentOCX_OnRequestFailureResponse(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnRequestFailureResponseEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Response: " + e.reasonPhrase);
        }

        private void VaxSIPUserAgentOCX_OnServerFailureResponse(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnServerFailureResponseEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Response: " + e.reasonPhrase);
        }

        private void VaxSIPUserAgentOCX_OnSuccessToConnect(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnSuccessToConnectEvent e)
        {
            if (e.lineNo != ListLines.SelectedIndex)
            {
                VaxSIPUserAgentOCX.HoldLine(e.lineNo);
                ListLines.Items[e.lineNo] = "Line-" + Convert.ToString(e.lineNo + 1) + "  :  HOLD";
            }
            else
            {
                ListLines.Items[e.lineNo] = "Line-" + Convert.ToString(e.lineNo + 1) + "  :  BUSY";
            }
            
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Success to connect.");

            int nVol = VaxSIPUserAgentOCX.GetSpkVolume();
            SliderSpkVol.Value = nVol / 25;

            nVol = VaxSIPUserAgentOCX.GetMicVolume();
            SliderMicVol.Value = nVol / 25;

            CheckMicBoost.Checked = VaxSIPUserAgentOCX.IsMicBoostEnable();
        }

        private void VaxSIPUserAgentOCX_OnSuccessToRegister(object sender, EventArgs e)
        {
            AddToStatusLog("Registered successfully.");
        }

        private void VaxSIPUserAgentOCX_OnSuccessToUnRegister(object sender, EventArgs e)
        {
            AddToStatusLog("Unregistered successfully.");
        }

        private void VaxSIPUserAgentOCX_OnTryingToRegister(object sender, EventArgs e)
        {
            AddToStatusLog("Trying to register.");
        }

        private void VaxSIPUserAgentOCX_OnTryingToUnRegister(object sender, EventArgs e)
        {
            AddToStatusLog("Trying to Unregister.");
        }

        private void UpdateListLine(int nLineNo)
        {
            if (CheckStartConf.Checked)
	        {
		        for(int nLineCount = 0; nLineCount < 7; nLineCount++)
		        {
			        if(VaxSIPUserAgentOCX.IsLineHold(nLineCount))
                        VaxSIPUserAgentOCX.UnHoldLine(nLineCount);
		        }
	        }
	        else
	        {
		        for(int nLineCount = 0; nLineCount < 7; nLineCount++)
		        {
			        if(nLineCount == nLineNo) continue;

                    if(VaxSIPUserAgentOCX.IsLineBusy(nLineCount) == true && VaxSIPUserAgentOCX.IsLineHold(nLineCount) == false) 
			        {
                        VaxSIPUserAgentOCX.HoldLine(nLineCount);
			        }
		        }

                if (VaxSIPUserAgentOCX.IsLineHold(nLineNo))
                    VaxSIPUserAgentOCX.UnHoldLine(nLineNo);
	        }
        }	

        private void TimerTick_Tick(object sender, EventArgs e)
        {
            if (ListLines.Items.Count == 0)
            {
                for (int nLineNo = 0; nLineNo < 7; nLineNo++)
                {
                    ListLines.Items.Add("Line-" + Convert.ToString(nLineNo + 1) + "  :  FREE");
                }
                ListLines.SelectedIndex = 0;
            }

            UpdateListLine(ListLines.SelectedIndex);

            if (CheckkStartRecording.Checked != VaxSIPUserAgentOCX.IsRecording(ListLines.SelectedIndex))
            {
                if (VaxSIPUserAgentOCX.IsRecording(ListLines.SelectedIndex))
                    CheckkStartRecording.Checked = true;
                else CheckkStartRecording.Checked = false;
            }

            for (int nLineNo = 0; nLineNo < 7; nLineNo++)
            {
                String sItemText = ListLines.Items[nLineNo].ToString();

               if (!VaxSIPUserAgentOCX.IsLineOpen(nLineNo))
                {
                    if (sItemText.IndexOf("CLOSE") == -1)
                    {
                        ListLines.Items[nLineNo] = "Line-" + Convert.ToString(nLineNo + 1) + "  :  CLOSE";
                    }
                }
                else if (VaxSIPUserAgentOCX.IsLineBusy(nLineNo))
                {
                    if (VaxSIPUserAgentOCX.IsWaveFilePlaying(nLineNo))
                    {
                        if (sItemText.IndexOf("PLAYING") == -1)
                        {
                            ListLines.Items[nLineNo] = "Line-" + Convert.ToString(nLineNo + 1) + "  :  PLAYING";
                        }
                    }
                    else if (VaxSIPUserAgentOCX.IsLineHold(nLineNo))
                    {
                        if (sItemText.IndexOf("HOLD") == -1)
                        {
                            ListLines.Items[nLineNo] = "Line-" + Convert.ToString(nLineNo + 1) + "  :  HOLD";
                        }
                    }
                    else
                    {
                        if (sItemText.IndexOf("BUSY") == -1 && sItemText.IndexOf("CONNECTING") == -1)
                        {
                            ListLines.Items[nLineNo] = "Line-" + Convert.ToString(nLineNo + 1) + "  :  BUSY";
                        }
                    }
                }
                else
                {
                    if (sItemText.IndexOf("FREE") == -1)
                    {
                        ListLines.Items[nLineNo] = "Line-" + Convert.ToString(nLineNo + 1) + "  :  FREE";
                    }
                }
            }
        }

        private void BtnHelpMore_Click(object sender, EventArgs e)
        {
            HelpForm HelpDlg = new HelpForm();
            HelpDlg.ShowDialog();
        }

        private void VaxSIPUserAgentOCX_OnDTMFDigit(object sender, AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnDTMFDigitEvent e)
        {
            AddToStatusLog("Line-" + Convert.ToString(e.lineNo + 1) + ": Key-pressed: " + e.digit);
        }

        private void AddToStatusLog(String sStatusLog)
        {
            ListStatusLog.Items.Add(sStatusLog);
            ListStatusLog.TopIndex = ListStatusLog.Items.Count - 1;
        }

        private void ProgressTimer_Tick(object sender, EventArgs e)
        {
            SpkProgBar.Value = VaxSIPUserAgentOCX.GetSpkSoundLevel();
            MicProgBar.Value = VaxSIPUserAgentOCX.GetMicSoundLevel();
        }

        private void CheckStartConf_CheckedChanged(object sender, EventArgs e)
        {
            int nBusyCount = 0;
            
            for (int nLineCount = 0; nLineCount < 7; nLineCount++)
            {
                if (VaxSIPUserAgentOCX.IsLineBusy(nLineCount))
                    nBusyCount++;
            }

            if (nBusyCount < 2 && CheckStartConf.Checked)
            {
                CheckStartConf.Checked = false;
                MessageBox.Show("Dial/receive more than one calls and then click start conference check box.", "VaxVoIP SDK");
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -