分享
 
 
 

基于TurboWay电话卡的语音服务编程

王朝vc·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

将计算机和电话有机的结合起来形成无人电话自动服务系统,在当今已经社会越来越普遍化。这边用户只需拔打电话,根据那边计算机的自动提示,按相应的操作键既可完成他所需要的目地。你也想实现这些功能服务吗?下面就用我以前用VC做过的一个这方面的实例(投诉抢修管理系统)来告诉你。

本系统只需安装一块TurboWay TW8A 电话卡,就可以完成你所见到的电话自动服务所有功能。具体实现步骤如下:

1、将TW8A 电话卡插入扩展槽中,设置跳针,使TW8A电话语音卡占用C800-EF00内存扩展地址中的一段2Kbyte内空间,驱动软件会自动找到设置正确的内存地址。(注意:在使用EMM386或其它占用扩展内存的软件,应留出相应的内存地址空间,否则电话卡驱动程序会提示找不到卡的错误信息。故可在CONFIG.SYS文件中添加DEVICE=C:\WINDOWS\EMM386.EXE NOEMS X=d000-d0ff,TW8A电话语音卡出厂时地址的缺省值为D000.)

2、在 Windows 95 下,运行程序时,可将 TW8A.VXD 和 TW8A.DLL 复制到 <WINDOWS 95>\SYSTEM 目录下。在 Windows NT 4.0 下, 运行程序时,可将 TW8A.SYS 复制到 <WINDOWS NT>\SYSTEM32\DRIVERS 下, 将TW8A.DLL 复制到 <WINDOWS NT>\SYSTEM32 下, 然后运行如下程序注册 TW8A:REGINI TW8A.INI

3、在用VC生成的工程文件中,加入并包含进头文件TW8A.H,再将输入库TW8A.LIB连接至工程中,既可利用TW8A提供的语音接口来自行设计你所需的各种电话话音服务程序了。

下面就以我的实例中的部分功能来作以简单说明(实现细节请参看实例代码):

1、当用户按下1键时,会进入相应的投诉类型中。计算机会播放相应投诉类型的信息及提示用户相对应的按键(1到3)。用户挂机后,计算机会进行自动拔号投诉。计算机在拔号后30秒内,无人摘机的话,将自动拔打上级领导号码。

例如:

按1键后开始投诉漏水信息并同时进行录音,完毕后可按任一键结束录音并挂机。

按2键后开始投诉漏电信息并同时进行录音,完毕后可按任一键结束录音并挂机。

按3键后开始投诉漏气信息并同时进行录音,完毕后可按任一键结束录音并挂机。

按4键投诉挂机后,电脑会直接呼叫内线电话。

部分代码实现如下:

……(前面代码实现部分省略掉)

/**************在播放选择投诉提示过程中按键***********/

else if( inputchar[i] == APPEAL)

{

switch (dtmf)

{

case '1':

case '2':

case '3':

case '4':

if(inputchar[i]==LEAVEWORD) dtmf='0';

filenamestr=GetFileName(dtmf,i);

strcpy(filename[i],filenamestr);

fail=TW_StartRecordFile( i , filename[i] , 0 , LONG_MAX);

if( fail==-1)

{

MessageBox("初始录音失败!","错误",MB_OK|MB_ICONSTOP);

strcpy(filename[i],welcomfile);

TW_StartPlayFile(i,filename[i],0,LONG_MAX);

TW_StartPlayFile (3, filename[i], 0 , LONG_MAX); //放音模块开始播放

CS[i]=WS_PLAY;

inputchar[i]=START;

}

else

CS[i]=WS_RECORD;

break;

……(后面代码实现部分省略掉)

2、当用户按下2键时,会进入相应的留言类型中。这时计算机会提示进行留言的各种信息类型和相应类型的用户按键(0到9)。

例如:

用户按0到9中任一键后,便可进行留言并同时录制留言信息。留言完毕后,可按任一键结束留言并转入初始欢迎的放音文件。

部分代码实现如下:

……(前面代码实现部分省略掉)

else if( inputchar[i] == APPEAL || inputchar[i] == LEAVEWORD)

{

switch (dtmf)

{

case '1':

case '2':

case '3':

case '4':

……(此投诉部分代码省略掉)

break;

default:

if(inputchar[i]==LEAVEWORD)

{

filenamestr=GetFileName('0',i);

strcpy(filename[i],filenamestr);

fail=TW_StartRecordFile(i,filename[i],0,LONG_MAX);

if (fail==-1) //录音失败

{

MessageBox("初始录音失败!","错误",MB_ICONQUESTION);

strcpy(filename[i],welcomfile);

TW_StartPlayFile(i,filename[i],0,LONG_MAX);

TW_StartPlayFile (3, filename[i], 0 , LONG_MAX); //放音模块开始播放

CS[i]=WS_PLAY;

inputchar[i]=START;

}

else

CS[i]=WS_RECORD;

}

else

{

strcpy(filename[i],welcomfile);

inputchar[i]=START;

TW_StartPlayFile( i , filename[i] , 0 , LONG_MAX);

TW_StartPlayFile (3, filename[i], 0 , LONG_MAX) ; //放音模块开始播放

}

break;

}

……(后面代码实现部分省略掉)

3、当用户按下3键时,会进入相应的信息查询(如:水费,电费,气费)中,这时计算机会提示相对应信息查询的按键。信息播放完成后,系统会自动转入初始欢迎的放音文件。

例如:

按1键会播放水费信息。

按2键会播放电费信息。

按3键会播放气费信息。

部分代码实现如下:

……(前面代码实现部分省略掉)

else if(inputchar[i]==INQUIRE)//进入查询功能

{

switch (dtmf)

{

case '1':

strcpy(filename[i],INFORMATION1);

CS[i]=WS_PLAYINF;

break;

case '2':

strcpy(filename[i],INFORMATION2);

CS[i]=WS_PLAYINF;

break;

case '3':

strcpy(filename[i],INFORMATION3);

CS[i]=WS_PLAYINF;

break;

default:

strcpy(filename[i],chooseinf);

break;

}

TW_StartPlayFile(i , filename[i] , 0 , LONG_MAX);

TW_StartPlayFile (3, filename[i], 0 , LONG_MAX) ; //放音模块

while(TW_PlayFileRest(i)>0&&TW_PlayFileRest(3)>0);

}

……(后面代码实现部分省略掉)

4、当用户按下0键时,会进入特殊功能(领导使用)中。此功能会提示输入相应密码的信息,密码正确后可以查询用户留言和投诉信息及可录制3键中的信息文件(水费,电费,气费)。

例如:

当输入密码为1999时,会提示查询留言和投诉类型的相应按键(0到3)。按0键查询留言信息,按1到3键分别查询1到3类的投诉信息。(按*键可查询到最近的留言信息,按#键可查询到最近的投诉信息。)

当输入密码为2000时,会提示录制信息文件(水费,电费,气费) 的相应按键,录音完成后按任一键结束录音。否则,当输入密码不正确或等待15秒后仍未输入密码时,进行 自动挂机。

部分代码实现如下:

……(前面代码实现部分省略掉)

else if(inputchar[i]==PARTICULAR) //进入特殊功能输入密码

{

passwordpointer=0;

password[passwordpointer++]=dtmf;

TW_StartTimer(i,30);

CS[i]=WS_WAITFORPASSWORD;

}

case WS_WAITFORPASSWORD

……(后面部分代码实现省略掉)

以上语音服务系统的具体代码实现及其它部分功能(如内线语音服务等),请在下载实例代码后,参看源码及其文档及可。

联系方式:

地址:陕西省西安市劳动路2号院六单元

邮编:710082

作者EMAIL:jingzhou_xu@163.net

未来工作室(Future Studio)

文件下载: 点击下载 [554KB],[rar格式,下载 Winrar300sc ]

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有