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

📄 rmstapiroutines.bas

📁 AVAYA IPO 430系列交换机 TAPI 2.0软件电话源代码
💻 BAS
📖 第 1 页 / 共 5 页
字号:
Attribute VB_Name = "RMSTAPIRoutines"
Option Explicit

' * Program written by R.Sterling for Avaya *
' * No queries should be directed to this individuals in connection with this program.
'   All queries should be directed to Avaya Technical Support (FSG) *
' * Copyright Avaya 2002 *

Global Const PROJECT_TITLE = "TAPI Tester - TAPI 2.x VB Sample - for Avaya"

Global gbDoneTask As Boolean
Global gbOverrideInput As Boolean
Global gsUserName As String

Global Const CHECKED_ON = 1
Global Const CHECKED_OFF = 2

Global gbOverrideMakeCall As Boolean

Global gsNoToDial As String

Global glTAPIVersion As Long

Global Const TAPI1_0 = 65539
Global Const TAPI1_4 = 65540
Global Const TAPI2_0 = 131072
Global Const TAPI2_1 = 131073
Global Const TAPI2_2 = 131074
Global Const TAPI3_0 = 196608
Global Const TAPI3_1 = 196609

Global Const RESULT_SUCCESS = 0

Global gbConf As Boolean
Global gbTrans As Boolean
Global gbOffering As Boolean
Global bConsCallSET As Boolean
Global bCallSET As Boolean

Global glNoOfErrors As Long

Global glNoOfDevices As Long
Global glLineApp As Long
Global glhLine As Long
Global glhCall As Long
Global glhAddr As Long
Global glLastCallHandle As Long

Global glHeldCall As Long
Global glConfCall As Long
Global glConsCall As Long

Global glhStoredConsCall As Long
Global glhStoredCall As Long

Global glCallInConf As Long

Global gsLastTAPIFunctionRan As String

' Old Declaration. Not to use anymore BEGIN
    'Global struct_MyCallBackFunc As lineCallbackFunc
' Old Declaration. Not to use anymore END

Global glNegAPIVerResult As Long

Global struct_DeviceConfig_Saved As VarString
Global gbDoneGevDevConfig As Boolean

Global struct_MyCallParams As lineCallParams

' Event Handling... BEGIN
'Public ctrl_Event As Control            ' Global label used for events (Set in Form Load)
Public ctrl_LineDigits As Control       ' Global label for LineDigits (Set in Form Load)
'Public ctrl_Display As Control          ' Global TextBox for messages (Set in Form Load)

' Dec not needed...
'Global l_lineInst As Long

Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long

Global l_Ptr_lineCallBack As Long

'Public l_hActiveCall As Long

' Event Handling... END
    
Public Sub Run_lineGetAddressCaps()

    'Declare Function lineGetAddressCaps Lib "TAPI32.DLL" _
    '    (ByVal l_hLineApp As Long, ByVal l_dwDeviceID As Long, _
    '     ByVal l_dwAddressID As Long, ByVal l_dwAPIVersion As Long, _
    '     ByVal l_dwExtVersion As Long, ByRef lpAddressCaps As lineAddressCaps) As Long
    
    'Declare Function lineGetAddressCaps Lib "TAPI32.DLL" _
    '    (ByVal l_hLineApp As Long, ByVal l_dwDeviceID As Long, _
    '     ByVal l_dwAddressID As Long, ByVal l_dwAPIVersion As Long, _
    '     ByVal l_dwExtVersion As Long, ptr_lpAddressCaps As Any) As Long

    Dim sDevSpecificInfo As String
    
    Dim l_LineApp As Long                           ' lineGetAddressCaps .. Parameter 1 .. Value
    Dim l_DeviceID As Long                          ' lineGetAddressCaps .. Parameter 2 .. Value
    Dim l_AddrID As Long                            ' lineGetAddressCaps .. Parameter 3 .. Value
    Dim l_APIVer As Long                            ' lineGetAddressCaps .. Parameter 4 .. Value
    Dim l_ExtVer As Long                            ' lineGetAddressCaps .. Parameter 5 .. Value
    Dim struct_MyAddressCaps As lineAddressCaps     ' lineGetAddressCaps .. Parameter 6 .. Reference
    
    Dim l_lineGetAddressCaps_Result As Long         ' lineGetAddressCaps .. Function Passed?
    
    gsLastTAPIFunctionRan = "lineGetAddressCaps"
    
    ' Init Parameters..
        
    l_LineApp = RMSTAPIRoutines.glLineApp
    l_DeviceID = CLng(frmMain.cbDevice.Text)
    
    Call RMSTAPIRoutines.Run_lineNegotiateAPIVersion(True)
    
    gsLastTAPIFunctionRan = "lineGetAddressCaps"
    
    If glNegAPIVerResult <> RESULT_SUCCESS Then
        Exit Sub
    End If
    
    l_APIVer = RMSTAPIRoutines.glTAPIVersion
    
    ' Screen....
    frmStatus.lbStatus.AddItem " "
    frmStatus.lbStatus.AddItem "================================================================================================"
    frmStatus.lbStatus.AddItem "*** FUNCTION : lineGetAddressCaps ***"
    frmStatus.lbStatus.AddItem "------------------------------------------------------------------------------------------------"
        
    frmMain.lbStatusBrief.AddItem "FUNCTION : lineGetAddressCaps"
    frmMain.lbStatusBrief.ListIndex = frmMain.lbStatusBrief.ListCount - 1
    DoEvents
        
    ' Set Memory needed...
    struct_MyAddressCaps.l_dwTotalSize = LINEADDRESSCAPS_FIXEDSIZE + LINEADDRESSCAPS_MEMSIZE
        
    ' Run lineGetAddressCaps..
    l_lineGetAddressCaps_Result = RMSTAPIDeclarations.lineGetAddressCaps _
        (l_LineApp, l_DeviceID, l_AddrID, l_APIVer, l_ExtVer, struct_MyAddressCaps)
    
    ' Check if lineGetAddressCaps ran ok..
    If l_lineGetAddressCaps_Result = RESULT_SUCCESS Then
        ' Screen....
        sDevSpecificInfo = ""
        If struct_MyAddressCaps.l_dwDevSpecificSize > 0 Then
            sDevSpecificInfo = _
                RMSTAPIEvents.GetVarInfo _
                    (RMSTAPIEvents.Clean(struct_MyAddressCaps.mem), _
                    (struct_MyAddressCaps.l_dwDevSpecificOffset - LINEADDRESSCAPS_FIXEDSIZE) + 1, _
                    struct_MyAddressCaps.l_dwDevSpecificSize - 1)
        End If
        
        frmStatus.lbStatus.AddItem "lineGetAddressCaps ran. SUCCESS"
        frmStatus.lbStatus.AddItem "l_LineApp                                              = " & l_LineApp & "."
        frmStatus.lbStatus.AddItem "sDevSpecificInfo                                       = " & RMSGeneralRoutines.ReplaceNonPrintable(sDevSpecificInfo) & "."
        frmStatus.lbStatus.AddItem "sDevSpecificInfo                                       = " & RMSGeneralRoutines.ShowASCIIValues(sDevSpecificInfo) & ". (ASCII Values)"
        frmStatus.lbStatus.AddItem "sDevSpecificInfo                                       = " & RMSTAPIEvents.Strip_Down_DevSpecifc_Buffer(sDevSpecificInfo) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "l_DeviceID                                             = " & l_DeviceID & "."
        frmStatus.lbStatus.AddItem "l_AddrID                                               = " & l_AddrID & "."
        frmStatus.lbStatus.AddItem "l_APIVer                                               = " _
            & l_APIVer & ". (" & Hex(l_APIVer) & " Hex)"
        frmStatus.lbStatus.AddItem "l_APIVer                                               = " _
            & RMSTAPIEvents.GetTAPIVer(l_APIVer) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "l_ExtVer                                               = " & l_ExtVer & "."
    
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddrCapFlags                  = " _
            & struct_MyAddressCaps.l_dwAddrCapFlags & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressFeatures               = " _
            & struct_MyAddressCaps.l_dwAddressFeatures & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressFeatures               = " _
            & RMSTAPIEvents.lineAddrFeat(struct_MyAddressCaps.l_dwAddressFeatures) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressOffset                 = " _
            & struct_MyAddressCaps.l_dwAddressOffset & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressSharing                = " _
            & struct_MyAddressCaps.l_dwAddressSharing & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressSharing                = " _
            & RMSTAPIEvents.LineAddrSharing(struct_MyAddressCaps.l_dwAddressSharing) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressSize                   = " _
            & struct_MyAddressCaps.l_dwAddressSize & "."
        
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressStates                 = " _
            & struct_MyAddressCaps.l_dwAddressStates & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAddressStates                 = " _
            & RMSTAPIEvents.lineAddrState(struct_MyAddressCaps.l_dwAddressStates) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAvailableMediaModes           = " _
            & struct_MyAddressCaps.l_dwAvailableMediaModes & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwAvailableMediaModes           = " _
            & RMSTAPIEvents.LineMediaModeMsg(struct_MyAddressCaps.l_dwAvailableMediaModes) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwBusyModes                     = " _
            & struct_MyAddressCaps.l_dwBusyModes & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwBusyModes                     = " _
            & RMSTAPIEvents.lineBusyMode(struct_MyAddressCaps.l_dwBusyModes) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallCompletionConds           = " _
            & struct_MyAddressCaps.l_dwCallCompletionConds & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallCompletionModes           = " _
            & struct_MyAddressCaps.l_dwCallCompletionModes & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCalledIDFlags                 = " _
            & struct_MyAddressCaps.l_dwCalledIDFlags & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCalledIDFlags                 = " _
            & RMSTAPIEvents.lineCallPartyID(struct_MyAddressCaps.l_dwCalledIDFlags) & ". (Decoded)"
        
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallerIDFlags                 = " _
            & struct_MyAddressCaps.l_dwCallerIDFlags & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallerIDFlags                 = " _
            & RMSTAPIEvents.lineCallPartyID(struct_MyAddressCaps.l_dwCallerIDFlags) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallFeatures                  = " _
            & struct_MyAddressCaps.l_dwCallFeatures & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallFeatures                  = " _
            & RMSTAPIEvents.lineCallFeatures(struct_MyAddressCaps.l_dwCallFeatures) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallFeatures2                 = " _
            & struct_MyAddressCaps.l_dwCallFeatures2 & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallFeatures2                 = " _
            & RMSTAPIEvents.lineCallFeatures2(struct_MyAddressCaps.l_dwCallFeatures2) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallInfoStates                = " _
            & struct_MyAddressCaps.l_dwCallInfoStates & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallInfoStates                = " _
            & RMSTAPIEvents.LineCallInfoStateMsg(struct_MyAddressCaps.l_dwCallInfoStates) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallStates                    = " _
            & struct_MyAddressCaps.l_dwCallStates & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallStates                    = " _
            & RMSTAPIEvents.lineCallStateMsg(struct_MyAddressCaps.l_dwCallStates) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallTreatmentListOffset       = " _
            & struct_MyAddressCaps.l_dwCallTreatmentListOffset & "."
        
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCallTreatmentListSize         = " _
            & struct_MyAddressCaps.l_dwCallTreatmentListSize & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCompletionMsgTextEntrySize    = " _
            & struct_MyAddressCaps.l_dwCompletionMsgTextEntrySize & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCompletionMsgTextOffset       = " _
            & struct_MyAddressCaps.l_dwCompletionMsgTextOffset & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwCompletionMsgTextSize         = " _
            & struct_MyAddressCaps.l_dwCompletionMsgTextSize & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwConnectedIDFlags              = " _
            & struct_MyAddressCaps.l_dwConnectedIDFlags & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwConnectedIDFlags              = " _
            & RMSTAPIEvents.lineCallPartyID(struct_MyAddressCaps.l_dwConnectedIDFlags) & ". (Decoded)"
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwConnectedModes                = " _
            & struct_MyAddressCaps.l_dwConnectedModes & "."
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwDeviceClassesOffset           = " _
            & struct_MyAddressCaps.l_dwDeviceClassesOffset & "."
        
        frmStatus.lbStatus.AddItem "struct_MyAddressCaps.l_dwDeviceClassesSize             = " _
            & struct_MyAddressCaps.l_dwDeviceClassesSize & "."

⌨️ 快捷键说明

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