📄 shpa3api.vb
字号:
Module Shpa3api
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
'软件授权协议
'
'1、 杭州三汇信息工程有限公司(以下简称本公司)拥有“本软件及所有附属产品、文件和相关文档”(以下简称本产品)的完全版权。 任何单位和个人在使用前须获得本公司的授权。
'2、 本公司授权符合以下全部条件的单位和个人免费使用本产品:
' A、 本产品与通过合法销售渠道购买的本公司硬件产品配合使用时;
' B、 不私自向第三方传播本产品和本产品的任何一部分。
'3、 除符合第2条以外的其他单位和个人需要使用本产品时,必须获得本公司的书面授权。
'4、 获得授权的单位和个人不得转让其获得的授权。
'5、 使用本产品,即表明完全理解本协议的所有条款并全部接受。
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Enum ChType
ANALOG_CH = 0
INTER_CH = 1
USER_CH = 2
REC_CH = 3
SS1_CH = 4
FAX_CH = 5
End Enum
'//pending reason
Public Enum PendingReason
ANALOGOUT_NO_DIALTONE = 0
ANALOGOUT_BUSYTONE = 1
ANALOGOUT_ECHO_NOVOICE = 2
ANALOGOUT_NOANSWER = 3
ANALOGOUT_TALKING_REMOTE_HANGUPED = 4
SS1IN_WAIT_SET_KB = 10
SS1IN_BWD_KB5 = 11
SS1IN_TALKING_REMOTE_HANGUPED = 12 '// 自动呼入时检测到主叫用户先挂机
SS1OUT_TALKING_REMOTE_HANGUPED = 20 '// 自动呼出进入通话后检测到被叫用户先挂机
SS1OUT_NOANSWER = 21 '// 等待被叫用户摘机超时
SS1OUT_NOBWDACK = 22 '// 等待占用应答信号超时
SS1OUT_DIALING_BWD_HANGUP = 23 '// 收到后向拆线信号
SS1OUT_BWD_A5 = 24 '// 收到A=5(空号)信号
SS1OUT_BWD_KB5 = 25 '// 收到KB=5(空号)信号
SS1OUT_BWD_KB2 = 26 '// 用户“市忙”
SS1OUT_BWD_KB3 = 27 '// 用户”长忙“
SS1OUT_BWD_A4 = 28 '// 机键拥塞
SS1OUT_BWD_KB4 = 29 '// 收到KB=4(机键拥塞)信号
SS1OUT_TIMEOUT_BWD_A = 30 '// 等候接收后向A组信号超时
SS1OUT_TIMEOUT_BWD_A_STOP = 31 '// 等候后向A组信号停发超时
SS1OUT_TIMEOUT_BWD_KB = 32 '// 接收后向KB信号超时
SS1OUT_TIMEOUT_BWD_KB_STOP = 33 '// 等候被叫方停发后向KB信号超时
SS1OUT_TIMEOUT_CALLERID_BWD_A1 = 34 '// 收到未定义的后向A组信号
SS1OUT_TIMEOUT_CALLERID_BWD_A1_STOP = 35 '// 发送CALLERID时等候后向A组信号停发超时
SS1OUT_UNDEFINED_CALLERID_BWD_A = 36 '// 发送主叫号码时收到未定义的后向A组信号
SS1OUT_UNDEFINED_BWD_A = 37 '// 收到未定义的后向A组信号
SS1OUT_UNDEFINED_BWD_KB = 38 '// 收到未定义的KB信号
End Enum
'通道状态常量定义,函数SsmGetChState()的返回值
Public Enum ChState
S_CALL_STANDBY = 0
S_CALL_PICKUPED = 1
S_CALL_RINGING = 2
S_CALL_TALKING = 3
S_CALL_ANALOG_WAITDIALTONE = 4
S_CALL_ANALOG_TXPHONUM = 5
S_CALL_ANALOG_WAITDIALRESULT = 6
S_CALL_PENDING = 7
S_CALL_OFFLINE = 8
S_CALL_WAIT_REMOTE_PICKUP = 9
S_CALL_ANALOG_CLEAR = 10
S_CALL_SS1_BLOCK = 20
S_CALL_SS1_SAYIDLE = 21
S_CALL_SS1IN_WAIT_PHONUM = 30
S_CALL_SS1IN_WAIT_FWDSTOP = 31
S_CALL_SS1IN_WAIT_CALLERID = 32
S_CALL_SS1IN_WAIT_KD = 33
S_CALL_SS1IN_WAIT_KDSTOP = 34
S_CALL_SS1OUT_WAITBWDACK = 40
S_CALL_SS1OUT_TXPHONENUM = 41
S_CALL_SS1OUT_WAIT_PHONUM = 42
S_CALL_SS1OUT_TXCALLERID = 43
S_CALL_SS1OUT_WAIT_KB = 44
'Public Const S_SPY_STANDBY = 0 '//监控:空闲
'Public Const S_SPY_RCVPHONUM = 105 ' //监控:接收号码
'Public Const S_SPY_RINGING = 2 '//监控:振铃
'Public Const S_SPY_TALKING = 3 ' //监控:通话
End Enum
' 自动拨号任务执行情况的常量定义,函数SsmChkAutoDial()的返回值
Public Enum AutoDial
DIAL_STANDBY = 0 ' // 没有自动拨号任务
DIAL_DIALING = 1 ' // 正在自动拨号
DIAL_ECHOTONE = 2 ' // 发送完被叫号码后检测到了回铃音
DIAL_NO_DIALTONE = 3 ' // 没有拨号音,自动拨号失败。
DIAL_BUSYTONE = 4 ' // 被叫用户忙,自动拨号结束
DIAL_ECHO_NOVOICE = 5 ' // 模拟外线通道拨号结束并收到回铃音后出现无声,自动拨号结束
DIAL_NOVOICE = 6 ' // 模拟外线通道拨号结束后在指定时间内没有检测到任何声音,自动拨号结束
DIAL_VOICE = 7 ' // 被叫用户摘机,自动拨号结束
DIAL_VOICEF1 = 8 ' // 被叫用户摘机且收到频率F1的声音(模拟外线通道),自动拨号结束
DIAL_VOICEF2 = 9 ' // 被叫用户摘机且收到频率F2的声音(模拟外线通道),自动拨号结束
DIAL_NOANSWER = 10 ' // 无人接听,自动拨号失败
DIAL_FAILURE = 11 ' // 自动拨号失败
DIAL_INVALID_PHONUM = 12 ' // 空号,自动拨号结束
End Enum
'Chinese: 自定义中继通道状态
'English: user-defined trunk channel state
Public Enum TrkChState
TRK_IDLE = 0 'CHS:空闲状态
'ENG:Idle state
TRK_WAIT_CONNECT = 1 'CHS:等待连接……
'ENG:Waiting for connect
TRK_CHECK_PLAY_WELCOME = 2 'CHS:欢迎
'ENG:Play "Welcome"
TRK_CHECK_PLAY_SELECT = 3 'CHS:按键选择……
'ENG:Selecting……
TRK_CHECK_REC_START = 4 'CHS:开始录音
'ENG:Start recording
TRK_CHECK_REC_END = 5 'CHS:录音中……
'ENG:Recording……
TRK_CHECK_PLAY_RECORD = 6 'CHS:播放录音
'ENG: Play record
TRK_CHECK_PLAY_BYEBYE = 7 'CHS:再见
'ENG:Byebye
End Enum
' 事件码占用16bytes,采用顺序编码(从0开始编码)。
' 若采用windows消息机制,windows消息编码:事件码+0x7000(WM_USER)
Public Enum ShEvent
WM_USER = &H400
E_CHG_RcvDTMF = &HC '有新dtmf字符进入dtmfbuf
E_CHG_ChState = &H18 '通道状态发生变化
E_SYS_TIMEOUT = &H30 '定时器事件
E_PROC_PlayEnd = &HF '放音结束
E_PROC_RecordEnd = &H13 '录音结束
End Enum
'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
'@@@@@@@@@@@@@@@@@@@ INITIALIZATION OPERATION @@@@@@@@@@@@@@@@@@@@@
'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Public Declare Function SsmStartCti Lib "SHP_A3.dll" (ByVal lpSsmCfgFileName As String, ByVal lpIndexCfgFileName As String) As Int32
Public Declare Function SsmCloseCti Lib "SHP_A3.dll" () As Int32
Public Declare Sub SsmGetLastErrMsg Lib "SHP_A3.dll" (ByVal szErrMsgBuf As String)
Public Declare Auto Function SsmSetEvent Lib "SHP_A3.dll" (ByVal wEvent As Int32, ByVal nReference As Int32, ByVal bEnable As Boolean, ByRef pEventSet As EVENT_SET_INFO) As Int32
Public Declare Function SsmGetLastErrCode Lib "SHP_A3.dll" () As Int32
Public Declare Function SsmGetMaxUsableBoard Lib "SHP_A3.dll" () As Int32
Public Declare Function SsmGetMaxCfgBoard Lib "SHP_A3.dll" () As Int32
Public Declare Function SsmGetRxDtmfBufSize Lib "SHP_A3.dll" () As Int32
Public Declare Function SsmGetAccreditId Lib "SHP_A3.dll" (ByVal nBId As Int32) As Int32
Public Declare Function SsmGetMaxCh Lib "SHP_A3.dll" () As Int32
Public Declare Function SsmGetChType Lib "SHP_A3.dll" (ByVal ch As Int32) As Int32
Public Declare Function SsmSetMaxIdxSeg Lib "SHP_A3.dll" (ByVal wMaxIdxSeg As Int32) As Int32
Public Declare Function SsmLoadIndexData Lib "SHP_A3.dll" (ByVal nSegNo As Int32, ByVal pAlias As String, ByVal nCodec As Int32, ByVal pVocFile As String, ByVal lStartPos As Int32, ByVal lLen As Int32) As Int32
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -