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

📄 mainform.vb

📁 VaxSIPUserAgentSDK
💻 VB
📖 第 1 页 / 共 3 页
字号:

    Private Sub CheckSpkMute_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckSpkMute.CheckedChanged
        VaxSIPUserAgentOCX.MuteSpk(CheckSpkMute.Checked)
    End Sub

    Private Sub CheckMuteMic_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckMuteMic.CheckedChanged
        VaxSIPUserAgentOCX.MuteMic(CheckMuteMic.Checked)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnCallTransferAccepted(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnCallTransferAcceptedEvent) Handles VaxSIPUserAgentOCX.OnCallTransferAccepted
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Transfer accepted.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnConnecting(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnConnectingEvent) Handles VaxSIPUserAgentOCX.OnConnecting
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Connecting.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnDisconnectCall(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnDisconnectCallEvent) Handles VaxSIPUserAgentOCX.OnDisconnectCall
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Hung up.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnFailToConnect(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnFailToConnectEvent) Handles VaxSIPUserAgentOCX.OnFailToConnect
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Fail to connect.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnFailToRegister(ByVal sender As Object, ByVal e As System.EventArgs) Handles VaxSIPUserAgentOCX.OnFailToRegister
        AddToStatusLog("Fail to register.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnFailToUnRegister(ByVal sender As Object, ByVal e As System.EventArgs) Handles VaxSIPUserAgentOCX.OnFailToUnRegister
        AddToStatusLog("Fail to unregister.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnGeneralFailureResponse(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnGeneralFailureResponseEvent) Handles VaxSIPUserAgentOCX.OnGeneralFailureResponse
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & " Response: " & e.reasonPhrase)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnIncomingCall(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnIncomingCallEvent) Handles VaxSIPUserAgentOCX.OnIncomingCall

        If ListIncomingCallIds.FindString(e.callId) = -1 Then
            ListIncomingCallIds.Items.Add(e.callId)

            If e.displayName.Length <> 0 Then
                ListIncomingCall.Items.Add("CLI: " & e.displayName)
            Else
                ListIncomingCall.Items.Add("CLI: " & e.userName)
            End If


        End If

        If ListIncomingCall.SelectedIndex = -1 And ListIncomingCall.Items.Count > 0 Then
            ListIncomingCall.SelectedIndex = 0
        End If

    End Sub

    Private Sub VaxSIPUserAgentOCX_OnIncomingCallRingingStart(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnIncomingCallRingingStartEvent) Handles VaxSIPUserAgentOCX.OnIncomingCallRingingStart

        If CheckPlayRingTone.Checked = True Then
            PlaySound("ring.wav", 0&, SND_ASYNC Or SND_FILENAME Or SND_LOOP Or SND_NODEFAULT)
        End If

    End Sub

    Private Sub VaxSIPUserAgentOCX_OnIncomingCallRingingStop(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnIncomingCallRingingStopEvent) Handles VaxSIPUserAgentOCX.OnIncomingCallRingingStop
        RemoveCallIdFromList(e.callId)
        PlaySound(vbNullString, 0&, 0)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnPlayWaveDone(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnPlayWaveDoneEvent) Handles VaxSIPUserAgentOCX.OnPlayWaveDone
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Play wave done.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnProvisionalResponse(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnProvisionalResponseEvent) Handles VaxSIPUserAgentOCX.OnProvisionalResponse
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Response: " & e.reasonPhrase)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnRedirectionResponse(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnRedirectionResponseEvent) Handles VaxSIPUserAgentOCX.OnRedirectionResponse
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Response: " & e.reasonPhrase)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnRequestFailureResponse(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnRequestFailureResponseEvent) Handles VaxSIPUserAgentOCX.OnRequestFailureResponse
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Response: " & e.reasonPhrase)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnServerFailureResponse(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnServerFailureResponseEvent) Handles VaxSIPUserAgentOCX.OnServerFailureResponse
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Response: " & e.reasonPhrase)
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnSuccessToConnect(ByVal sender As Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnSuccessToConnectEvent) Handles VaxSIPUserAgentOCX.OnSuccessToConnect

        Dim Result As Integer

        If e.lineNo <> ListLines.SelectedIndex Then
            VaxSIPUserAgentOCX.HoldLine(e.lineNo)
            ListLines.Items.Item(e.lineNo) = "Line-" + Trim(Str(e.lineNo + 1)) + " : HOLD"
        Else
            ListLines.Items.Item(e.lineNo) = "Line-" + Trim(Str(e.lineNo + 1)) + " : BUSY"
        End If

        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Success to connect.")

        Result = VaxSIPUserAgentOCX.GetSpkVolume()
        SliderSpkVol.Value = Result / 25

        Result = VaxSIPUserAgentOCX.GetMicVolume()
        SliderMicVol.Value = Result / 25

        CheckMicBoost.Checked = VaxSIPUserAgentOCX.IsMicBoostEnable()

    End Sub

    Private Sub VaxSIPUserAgentOCX_OnSuccessToRegister(ByVal sender As Object, ByVal e As System.EventArgs) Handles VaxSIPUserAgentOCX.OnSuccessToRegister
        AddToStatusLog("Registered successfully.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnSuccessToUnRegister(ByVal sender As Object, ByVal e As System.EventArgs) Handles VaxSIPUserAgentOCX.OnSuccessToUnRegister
        AddToStatusLog("Unregistered successfully.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnTryingToRegister(ByVal sender As Object, ByVal e As System.EventArgs) Handles VaxSIPUserAgentOCX.OnTryingToRegister
        AddToStatusLog("Trying to register.")
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnTryingToUnRegister(ByVal sender As Object, ByVal e As System.EventArgs) Handles VaxSIPUserAgentOCX.OnTryingToUnRegister
        AddToStatusLog("Trying to Unregister.")
    End Sub

    Private Sub SliderSpkVol_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs)

        ' SetSpkVolume method requires Volume value from 0 to 255 range    '
        ' but the slider range is 0 to 10, so we multiply the slider value '
        ' to 25 to get the required value to pass to SetSpkVolume method   '

        VaxSIPUserAgentOCX.SetSpkVolume(SliderSpkVol.Value * 25)

    End Sub

    Private Sub SliderMicVol_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs)

        ' SetMicVolume method requires Volume value from 0 to 255 range    '
        ' but the slider range is 0 to 10, so we multiply the slider value '
        ' to 25 to get the required value to pass to SetMicVolume method   '

        VaxSIPUserAgentOCX.SetMicVolume(SliderMicVol.Value * 25)

    End Sub

    Private Sub UpdateSoundDevices()

        Dim DeviceId As Integer

        ComboAudioIn.Items.Clear()
        ComboAudioIn.Items.Add("Default Device")

        For DeviceId = 0 To VaxSIPUserAgentOCX.GetAudioInDevTotal() - 1
            ComboAudioIn.Items.Add(VaxSIPUserAgentOCX.GetAudioInDevName(DeviceId))
        Next DeviceId

        ComboAudioIn.SelectedIndex = 0

        ComboAudioOut.Items.Clear()
        ComboAudioOut.Items.Add("Default Device")

        For DeviceId = 0 To VaxSIPUserAgentOCX.GetAudioOutDevTotal() - 1
            ComboAudioOut.Items.Add(VaxSIPUserAgentOCX.GetAudioOutDevName(DeviceId))
        Next DeviceId

        ComboAudioOut.SelectedIndex = 0

    End Sub

    Private Function FindLine() As Integer

        Dim LineNo As Integer
        LineNo = ListLines.SelectedIndex

        If VaxSIPUserAgentOCX.IsLineBusy(LineNo) = False Then
            FindLine = LineNo
            Exit Function
        End If

        For LineNo = 0 To 6

            If VaxSIPUserAgentOCX.IsLineBusy(LineNo) = False Then
                FindLine = LineNo
                Exit Function
            End If

        Next LineNo

        FindLine = -1

    End Function

    Private Sub UpdateListLine(ByVal LineNo As Integer)

        Dim LineCount As Integer

        If CheckStartConf.Checked Then
            For LineCount = 0 To 6
                If VaxSIPUserAgentOCX.IsLineHold(LineCount) Then
                    VaxSIPUserAgentOCX.UnHoldLine(LineCount)
                End If
            Next LineCount
        Else

            For LineCount = 0 To 6
                If LineCount <> LineNo Then
                    If ((VaxSIPUserAgentOCX.IsLineBusy(LineCount) = True) And (VaxSIPUserAgentOCX.IsLineHold(LineCount) = False)) Then
                        VaxSIPUserAgentOCX.HoldLine(LineCount)
                    End If
                End If
            Next LineCount

            If VaxSIPUserAgentOCX.IsLineHold(LineNo) Then
                VaxSIPUserAgentOCX.UnHoldLine(LineNo)
            End If

        End If

    End Sub

    Private Sub TimerTick_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerTick.Tick

        Dim ItemText As String
        Dim LineNo As Integer

        If ListLines.Items.Count() = 0 Then
            For LineNo = 0 To 6
                ListLines.Items.Add("Line-" + Trim(Str(LineNo + 1)) + " : FREE")
            Next LineNo

            ListLines.SelectedIndex = 0
        End If

        UpdateListLine(ListLines.SelectedIndex)

        If (VaxSIPUserAgentOCX.IsRecording(ListLines.SelectedIndex) = True) <> (CheckStartRecording.Checked = True) Then
            If VaxSIPUserAgentOCX.IsRecording(ListLines.SelectedIndex) Then
                CheckStartRecording.Checked = True
            Else
                CheckStartRecording.Checked = False
            End If
        End If

        For LineNo = 0 To 6

            ItemText = ListLines.Items.Item(LineNo)

            If VaxSIPUserAgentOCX.IsLineOpen(LineNo) = False Then

                If ItemText.IndexOf("CLOSE") = -1 Then
                    ListLines.Items.Item(LineNo) = "Line-" + Trim(Str(LineNo + 1)) + " : CLOSE"
                End If

            Else
                If VaxSIPUserAgentOCX.IsLineBusy(LineNo) = True Then

                    If VaxSIPUserAgentOCX.IsWaveFilePlaying(LineNo) = True Then
                        If ItemText.IndexOf("PLAYING") = -1 Then
                            ListLines.Items.Item(LineNo) = "Line-" + Trim(Str(LineNo + 1)) + " : PLAYING"
                        End If
                    Else
                        If VaxSIPUserAgentOCX.IsLineHold(LineNo) = True Then
                            If ItemText.IndexOf("HOLD") = -1 Then
                                ListLines.Items.Item(LineNo) = "Line-" + Trim(Str(LineNo + 1)) + " : HOLD"
                            End If
                        Else
                            If (ItemText.IndexOf("BUSY") = -1) And (ItemText.IndexOf("CONNECTING") = -1) Then
                                ListLines.Items.Item(LineNo) = "Line-" + Trim(Str(LineNo + 1)) + " : BUSY"
                            End If
                        End If
                    End If
                Else
                    If ItemText.IndexOf("FREE") = -1 Then
                        ListLines.Items.Item(LineNo) = "Line-" + Trim(Str(LineNo + 1)) + " : FREE"
                    End If
                End If

            End If

        Next LineNo

    End Sub

    Private Sub CheckPlayRingTone_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckPlayRingTone.CheckedChanged

        If CheckPlayRingTone.Checked = False Then
            PlaySound(vbNullString, 0&, 0)
        End If

    End Sub

    Private Sub BtnHelpMore_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnHelpMore.Click
        HelpForm.ShowDialog()
    End Sub

    Private Sub VaxSIPUserAgentOCX_OnDTMFDigit(ByVal sender As System.Object, ByVal e As AxVAXSIPUSERAGENTOCXLib._DVaxSIPUserAgentOCXEvents_OnDTMFDigitEvent) Handles VaxSIPUserAgentOCX.OnDTMFDigit
        AddToStatusLog("Line-" & Str(e.lineNo + 1) & ": Key-pressed: " & e.digit)
    End Sub

    Private Sub MainForm_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
        PlaySound(vbNullString, 0&, 0)
    End Sub

    Private Sub ProgressTimer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressTimer.Tick
        SpkProgBar.Value = VaxSIPUserAgentOCX.GetSpkSoundLevel()
        MicProgBar.Value = VaxSIPUserAgentOCX.GetMicSoundLevel()
    End Sub

    Private Sub AddToStatusLog(ByVal StatusLog As String)
        ListStatusLog.Items.Add(StatusLog)
        ListStatusLog.TopIndex = ListStatusLog.Items.Count - 1
    End Sub

    Private Sub CheckStartRecording_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckStartRecording.CheckedChanged
        Dim Result As Boolean
        Dim LineNo As Integer

        LineNo = ListLines.SelectedIndex

        If CheckStartRecording.Checked = True Then
            Result = VaxSIPUserAgentOCX.StartRecording(LineNo, 2, True)
            If Result = False Then
                ErrorMessages()
            End If
        Else
            Result = VaxSIPUserAgentOCX.StopRecording(LineNo)
        End If
    End Sub

    Private Sub MainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        CheckEchoCancel.Checked = True

        CheckGSM610.Checked = True
        CheckiLBC.Checked = True
        CheckG711A.Checked = True
        CheckG711U.Checked = True

    End Sub

    Private Sub CheckStartConf_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckStartConf.CheckedChanged
        Dim BusyCount As Integer
        Dim LineNo As Integer

        For LineNo = 0 To 6
            If VaxSIPUserAgentOCX.IsLineBusy(LineNo) = True Then
                BusyCount = BusyCount + 1
            End If
        Next LineNo

        If BusyCount < 2 And CheckStartConf.Checked Then
            CheckStartConf.Checked = False
            MessageBox.Show("Dial/receive more than one calls and then click start conference check box.", "VaxVoIP SDK")
        End If
    End Sub
End Class

⌨️ 快捷键说明

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