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

📄 tmdefines.bas

📁 电话伴侣开发源码 可以实现答录机等高级功能
💻 BAS
字号:
Attribute VB_Name = "tmdefines"
Public Const CT_INTERNAL = 0    'MIC
Public Const CT_EXTERNAL = 1    'LINE
Public Const CHN = CT_EXTERNAL

Public Const MAX_PLAYBUFSIZE = 4096

Public Const MaxDataLen = 46

Public Type EDATA
    Result As Long
    buf As String * MaxDataLen
End Type

Public Type TEvent
    EventType As Long    ' Type of event
 '   Channel As Long      ' Channel = 0
    Data As EDATA
End Type

'-----------------------------------------------------------------------------------------
'所有其它事件类型,请查阅开发包库文件->include->A4drv.h文件,根据程序需要加入
'------------------------------------------------------------------------------------------
Public Const TEvent_InterOffHook = 0    ' 本地话机摘机事件
Public Const TEvent_Ring = 3            ' 某一外线通道振铃事件
Public Const TEvent_DialEnd = 4         ' 拨号结束事件
Public Const TEvent_PlayEnd = 5         ' 放音结束事件
Public Const TEvent_GetChar = 10        ' 收到DTMF码事件
Public Const TEvent_OffHook = 11        ' 拨号后,被叫方摘机事件
Public Const TEvent_HangUp = 12         ' 挂机事件(必须调用设置忙音信号类型及忙音个数,方可产生该事件)
Public Const TEvent_Nobody = 13         ' 拨号后,没人接事件
Public Const TEvent_Busy = 14           ' 检测到忙音事件
Public Const TEvent_InterHangUp = 19    ' 本地话机挂机
Public Const TEvent_MicIn = 41          ' 麦克风插入事件
Public Const TEvent_MicOut = 42         ' 麦克风拔出事件
Public Const TEvent_Dial = 28           ' 检测到拨号音事件
Public Const TEvent_GetInterChar = 29   ' 检测到话机拨号DTMF码
Public Const TEvent_GetFsk = 30
Public Const TEvent_GetDTMF = 32
Public Const TEvent_TelCallOut = 33     '本地电话开始呼出,就是在电话拨号后听到回铃音了
Public Const TEvent_PlugOut = 36        '设备被拔出
Public Const TEvent_PlugIn = 37        '设备被插入


'-----------------------------------------------------------------------------------------
'全部函数说明请查阅开发包->库文件->include->TmA4drv.h 根据程序需要加入
'------------------------------------------------------------------------------------------

'设置检测DTMF的参数
Public Declare Function TV_SetDTMFParam Lib "tma4drv" (ByVal nFlow As Long, ByVal nSlow As Long, ByVal nValue As Double, ByVal nNum As Long) As Double



' 设备启动关闭
Public Declare Function TV_Initialize Lib "tma4drv" () As Long
Public Declare Function TV_InitializeEx Lib "tma4drv" (ByVal mode As Long) As Long
Public Declare Function TV_ReInit Lib "tma4drv" () As Boolean
Public Declare Sub TV_Disable Lib "tma4drv" ()


' 获取事件
Public Declare Function TV_GetEvent Lib "tma4drv" (TV_Event As TEvent) As Long

' 获取事件
Public Declare Function TV_GetEventEx Lib "tma4drv" (ByRef lEventType As Long, ByRef lResult As Long, ByVal code As String, ByVal DataLen As Long) As Long

' 摘挂机
Public Declare Sub TV_OffHookCtrl Lib "tma4drv" ()
Public Declare Sub TV_HangUpCtrl Lib "tma4drv" ()

Public Declare Sub TV_EnableRing Lib "tma4drv" (ByVal bType As Boolean)

' 拨号
Public Declare Sub TV_SetSendDTMFSpeed Lib "tma4drv" (ByVal speed As Long)
Public Declare Function TV_StartDial Lib "tma4drv" (ByVal code As String, ByVal st As Boolean) As Long
Public Declare Function TV_StopDial Lib "tma4drv" () As Long

' 取得来电号码
Public Declare Function TV_ReceiveCallingID Lib "tma4drv" (ByVal Channel As Long, ByVal dhhm As String, ByVal cd As Long) As Long


' 播放
'//
'// Function:                        TV_StartPlayFile
'//
'// Description:                     播放语音文件
'//
'// Inputs:
'//
'//       FilePath                   语音文件路径
'//       lSeek                      偏移的时间
'//       lMaxNum                    保留。可输入任意值
'//       bOpenPlay                  是否让喇叭出声
'//       bReplay                    重复播放
'//       bSetVolume                 是否设置音量
'// Return:
'//       -1:                        播放失败
'//       其它:                      返回播放设备通道的ID,用来停止播放标志
'//
'// Notes:                           系统摘机时,语音数据同时被发往通话对方

Public Declare Function TV_StartPlayFile Lib "tma4drv" (ByVal fname As String, ByVal fseek As Long, ByVal num As Long, _
                                                        ByVal bOpenPlay As Boolean, ByVal bReplay As Boolean, ByVal bSetVolume As Boolean, _
                                                        ByVal bTimeout As Long) As Long
Public Declare Function TV_StopPlayFile Lib "tma4drv" (ByVal nDevID As Long) As Long


' 录音
Public Declare Function TV_StartRecordFile Lib "tma4drv" (ByVal fname As String, ByVal fseek As Long, ByVal num As Long) As Long
Public Declare Function TV_StopRecordFile Lib "tma4drv" (ByVal nDevID As Long, bClearBusy As Boolean) As Long


' 取得初始化状态
Public Declare Function TV_GetInitState Lib "tma4drv" () As Boolean

'设置接受消息的窗口
Public Declare Sub TV_SetMsgWnd Lib "tma4drv" (ByVal hMsgWnd As Long)

' 设置播放声音的音量,范围为0-100,默认为100最大
Public Declare Sub V_SetVolume Lib "tma4drv" (ByVal nVolume As Long)

' 取得播放声音的音量
Public Declare Function TV_GetVolume Lib "tma4drv" () As Long


' 本地话机是否可用
Public Declare Function TV_IsTelEnable Lib "tma4drv" () As Boolean

' 本地话机摘挂机状态
Public Declare Function TV_GetTelState Lib "tma4drv" () As Boolean

' 系统摘挂机状态
Public Declare Function TV_GetPcState Lib "tma4drv" () As Boolean

Public Declare Sub TV_SetRecSource Lib "tma4drv" (ByVal bValue As Long)


' 是否检测到拨号音
Public Declare Function TV_CheckDialSignal Lib "tma4drv" () As Boolean

' 播放文件时的偏移时间
Public Declare Function TV_PlaySeek Lib "tma4drv" (ByVal nSeekTime As Long) As Long

' 麦克风是否有效
Public Declare Function TV_EnableMic Lib "tma4drv" (ByVal bEnable As Boolean) As Boolean

' 设置本地话机摘挂机时系统响应速度
Public Declare Sub TV_SetLocalTelSpeed Lib "tma4drv" (ByVal nTelSpeed As Long)

' 检测拨号是否结束
Public Declare Function TV_DialRest Lib "tma4drv" (ByVal Channel As Long) As Long

' 取得板卡序列号
Public Declare Function TV_GetSerial Lib "tma4drv" (ByVal serial As String) As Boolean



' 设置检测DTMF的灵敏度
'      iLevel:0                最灵敏
'      iLevel:1                灵敏
'      iLevel:2                中等
'      iLevel:3                低
'      iLevel:4                最低
Public Declare Sub TV_SetCheckDTMFLevel Lib "tma4drv" (ByVal nLevel As Long)

' 设置拨号时的声音大小
Public Declare Sub TV_SetDialVolLevel Lib "tma4drv" (ByVal nLevel As Long)


' 设置下次播放播放文件的音量是否同步于TV_SetDialVolLevel
'      nType:0             使用通用设置的音量
'      nType:1             使用设置的DTMF等级音量
Public Declare Sub V_SetVolumeType Lib "tma4drv" (ByVal nType As Long)

' 设置来检测的忙音个数
Public Declare Sub TV_SetBusyNum Lib "tma4drv" (ByVal nBusyNum As Long)

' 设置来电响铃后静音的长度。标准市话为4000毫秒
Public Declare Sub TV_SetSileLength Lib "tma4drv" (ByVal nSileLength As Long)

' 设置判断对方摘机类型
Public Declare Sub TV_SetOffHookType Lib "tma4drv" (ByVal bType As Boolean)


' 取得正在录音的文件路径
Public Declare Function TV_GetRecordingFilePath Lib "tma4drv" (ByVal FilePath As String) As Boolean


⌨️ 快捷键说明

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