如何接收电话按键?(300分)

  • 主题发起人 主题发起人 tax
  • 开始时间 开始时间
T

tax

Unregistered / Unconfirmed
GUEST, unregistred user!
我用ASYNC 3.0接收电话按键。用它附的例程ExVoice时,选择TAPI设备时,显示“The Selected device does not support Voice Extensions.”我用的是MODEM,试了多个品牌,均一样何故?
 
电信协议有MTP1-3,SS7、TCAP、TUP、ISUP等。
中国现在一般用SS7(7号信令)。
先搞清楚你用的是什么协议。
 
设置成语音模式
当然你的MODEM 必须支持VOICE
 
你去更新modem的 driver試試
 
电话按键时,串口的缓冲区会收到所按的键的ASCII码,好象前面还有一个导引符,
记不大清楚了
 
设置成“语音模式”后,用超级终端都能看见
 
实现起来可能很难,因为中国电信接受电话输入信息是通过声讯平台
 
To: cmldy

我的MODEM在接收到电话后,发出的好像是传真信号。什么样的MODEM支持VOICE?
我的MODEM上写着支持语音、传真,可不行!为什么?
 
First 你的Modem必须有VOICE功能
然后你的MODEM的语音驱动程序必须安装(如果使用TAPI)编程的话
如果直接操纵串口,可先设置成语音应答模式(不同的MODEM)的命令
不一样可查找注册表
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Class/Modem/001/voiceanswer
如果没有这条命令,说明你的MODEM的驱动程序没有安装正确
 
用语音卡,很容易实现。
 
Following is a sample voice modem event log, with annotations added to the logged events.

11-08-1995 14:49:28.64 - Microsoft Voice Modem in use.

<p>11-08-1995 14:49:28.69 - Modem type: Microsoft Voice Modem

An application has called TAPI to open this modem's line handle. UNIMODEM.TSP called the Win32 function CreateFile("Microsoft Voice Modem"...) to open a file handle to UNIMODEM.VXD for this modem.

11-08-1995 14:49:28.95 - 19200,N,8,1

Unimodem has called VCOMM to open the correct serial port for this modem, and set its default COM port settings.

11-08-1995 14:49:29.52 - Initializing modem.
11-08-1995 14:49:29.52 - Send: AT
11-08-1995 14:49:29.52 - Recv: AT
11-08-1995 14:49:29.67 - Recv: OK
11-08-1995 14:49:29.67 - Interpreted response: Ok
11-08-1995 14:49:29.67 - Send: AT &amp;F E0 V1 &amp;D2 &amp;C1 W2 S95=47
11-08-1995 14:49:29.68 - Recv: AT &amp;F E0 V1 &amp;D2 &amp;C1 W2 S95=47
11-08-1995 14:49:29.82 - Recv: OK
11-08-1995 14:49:29.82 - Interpreted response: Ok
11-08-1995 14:49:29.82 - Send: ATS7=60S30=0L1M1/N3%C3&amp;K3B0 N1X4
11-08-1995 14:49:29.98 - Recv: OK
11-08-1995 14:49:29.98 - Interpreted response: Ok
11-08-1995 14:49:29.98 - Waiting for a call.

Normal data init process.

11-08-1995 14:49:29.98 - Send: at#cid=1
11-08-1995 14:49:30.14 - Recv: OK
11-08-1995 14:49:30.14 - Interpreted response: Ok

EnableCallerID commands sent to modem.

11-08-1995 14:49:30.14 - Send: at-sdr=7
11-08-1995 14:49:30.27 - Recv: OK
11-08-1995 14:49:30.27 - Interpreted response: Ok

EnableDistinctiveRing commands sent to modem.

11-08-1995 14:49:30.27 - Send: ATS0=0
11-08-1995 14:49:30.41 - Recv: OK
11-08-1995 14:49:30.41 - Interpreted response: Ok

Monitoring command sent to modem.

11-08-1995 14:49:44.25 - Recv: RING1
11-08-1995 14:49:44.25 - Interpreted response: Distinctive Ring A

Incoming ring. Since distinctive ringing is enabled, distinctive ring is reported.

11-08-1995 14:49:46.90 - Answering the voice call.
11-08-1995 14:49:46.90 - Send: at#cls=8
11-08-1995 14:49:47.16 - Recv: OK
11-08-1995 14:49:47.16 - Interpreted response: Ok
11-08-1995 14:49:47.16 - Send: at#vls=0
11-08-1995 14:49:47.31 - Recv: OK
11-08-1995 14:49:47.31 - Interpreted response: Ok
11-08-1995 14:49:47.31 - Send: at#vbt=1
11-08-1995 14:49:47.45 - Recv: OK
11-08-1995 14:49:47.45 - Interpreted response: Ok
11-08-1995 14:49:47.45 - Send: at#vsr=7200
11-08-1995 14:49:47.59 - Recv: OK
11-08-1995 14:49:47.59 - Interpreted response: Ok
11-08-1995 14:49:47.59 - Send: at#vbs=4
11-08-1995 14:49:47.73 - Recv: OK
11-08-1995 14:49:47.74 - Interpreted response: Ok
11-08-1995 14:49:47.74 - Send: ats30=60
11-08-1995 14:49:47.88 - Recv: OK
11-08-1995 14:49:47.88 - Interpreted response: Ok
11-08-1995 14:49:47.88 - Send: ata

VoiceAnswer commands sent to modem. This happens in response to the TAPI function lineAnswer.

11-08-1995 14:49:48.11 - Recv: VCON
11-08-1995 14:49:48.11 - Interpreted response: Ok

Voice connect response. The voice connect response is normally mapped to an OK response.

11-08-1995 14:49:48.11 - Issuing Speakerphone command.
11-08-1995 14:49:48.11 - Send: at#vls=6
11-08-1995 14:49:48.26 - Recv: OK
11-08-1995 14:49:48.26 - Interpreted response: Ok

SpeakerphoneEnable commands sent to modem.

11-08-1995 14:49:48.26 - Send: at#vls=6
11-08-1995 14:49:48.41 - Recv: OK
11-08-1995 14:49:48.41 - Interpreted response: Ok
11-08-1995 14:49:48.41 - Send: at#spk=0,,,
11-08-1995 14:49:48.55 - Recv: OK
11-08-1995 14:49:48.55 - Interpreted response: Ok

SpeakerphoneMute commands sent to modem.

11-08-1995 14:49:48.55 - Send: at#vls=6
11-08-1995 14:49:48.69 - Recv: OK
11-08-1995 14:49:48.69 - Interpreted response: Ok
11-08-1995 14:49:48.69 - Send: at#spk=,0,3
11-08-1995 14:49:48.84 - Recv: OK
11-08-1995 14:49:48.84 - Interpreted response: Ok

SpeakerphoneSetVolumeGain commands sent to modem

The preceding commands (SpeakerphoneEnable, SpeakerphoneMute, and SpeakerphoneSetVolumeGain) are sent in response to the TAPI call phoneSetHookSwitch(hPhone, PHONESHOOKSWITCHDEV_SPEAKER, PHONEHOOKSWITCHMODE_SPEAKER), which takes the speakerphone off hook, and mutes it.

11-08-1995 14:49:48.84 - Voice Modem Wave Open.

waveOutOpen/waveInOpen called

11-08-1995 14:49:48.85 - Setting wave format.
11-08-1995 14:49:48.85 - Send: at#vls=0
11-08-1995 14:49:48.99 - Recv: OK
11-08-1995 14:49:48.99 - Interpreted response: Ok

LineSetPlayFormat commands sent to modem.

11-08-1995 14:49:48.99 - Starting wave play/record.
11-08-1995 14:49:48.99 - Send: at#vtx
11-08-1995 14:49:49.17 - Recv: CONNECT
11-08-1995 14:49:49.17 - Interpreted response: Connect

StartPlay commands sent to modem.

11-08-1995 14:49:49.40 - Received DLE Raw=117, Translated=255.

DLE received from modem. The Raw value is the actual value received, and the Translated value is the value Unimodem has mapped it to. See the DLE translation table in Interpreting Modem Event Logs. In this example, the DLE is translated to 255, which means that Unimodem/V ignores this DLE.

11-08-1995 14:49:54.78 - Ending wave play/record.
11-08-1995 14:49:54.78 - Voice Modem Wave Close.

waveInClose/waveOutClose has been called.

.
.
.
11-08-1995 14:50:41.48 - Received DLE Raw=49, Translated=1.

DLE received from modem. This is translated to the DTMF digit 1.

11-08-1995 14:50:41.51 - Ending wave play/record.
11-08-1995 14:50:41.51 - Voice Modem Wave Close.

waveInClose/waveOutClose has been called.

11-08-1995 14:50:41.94 - Received DLE Raw=35, Translated=15.

 
有没有在程序中接受按键号码的方法?
 
cmldy的回答应该是符合这个问题的,另补充一句,ASYNC 3.0 是用TAPI和MAPI来写
的,因此你的win必须支持TAPI,TAPI 目前只能够在windows98和w2k上实现,win95
需要到http://www.microsoft.com/hwdev/上去下载相应的语音modem驱动程序才
能支持,在 NT 上就不要想了 。
 
在 NT 上就不要想了 ????
在 NT 上Open Com口按我给出的部序使Modem进入Voice mode完全可以完成此功能。
 
请问如何在程序中实现?
 
请问,如何在程序中实现?
 
在程序中打开Com口按我给出的部序使Modem进入Voice mode。
 
我在nt上还没试出来,kill-k能给我一个例程吗?谢谢(glrmjcy@sina.com)
 
后退
顶部