社区
网络及通讯开发
帖子详情
通讯的问题:有电话打入时取得电话号码。
JQinHan
2005-04-24 05:29:05
用moden把电话线和电脑串口连起来,程序监控串口,当有电话打进来时,能不能得到打入的电话号码?能得到有什么要求?应该怎么做?
如果moden不行,那有什么设备可以完成这个功能?
解决了要多少分都行。我有二个ID,这个只有三百分,另一个有二千多分
...全文
231
15
打赏
收藏
通讯的问题:有电话打入时取得电话号码。
用moden把电话线和电脑串口连起来,程序监控串口,当有电话打进来时,能不能得到打入的电话号码?能得到有什么要求?应该怎么做? 如果moden不行,那有什么设备可以完成这个功能? 解决了要多少分都行。我有二个ID,这个只有三百分,另一个有二千多分
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
touhu
2005-06-25
打赏
举报
回复
来电显示用MODEM!我做过,呵呵,现在还在用呢!
用AT#CID或AT+VCID命令。
自己用超级终端试试就知了。
线路一样得开通来电显示才行!
「已注销」
2005-06-06
打赏
举报
回复
mark
CWYCN
2005-04-27
打赏
举报
回复
学习
mli0080
2005-04-25
打赏
举报
回复
不开通来电显示你怎么从电信局得到对方的号码呢?
Behard
2005-04-25
打赏
举报
回复
肯定需要开通来电显示的
Behard
2005-04-25
打赏
举报
回复
电话号码跟在 Ring 命令后面
bluesen
2005-04-25
打赏
举报
回复
线路必须申请开通来电显示。据我所知,各地的电信送主叫的模式是不同的,有FSK和DTMF两种模式,这两种模式我都遇到过。
如果Modem不行,就买个语音卡,语音卡可以轻易支持多路,而且相对稳定,也可以适应多种主叫发送模式。
我的免费语音平台,既可以支持语音Modem,也支持多种语音板卡,代码是完全一样的:
http://www.bluespace.com.cn/koodoo
不妨看看,也可以到网站上的留言簿上探讨。
wakala
2005-04-25
打赏
举报
回复
学习
JQinHan
2005-04-24
打赏
举报
回复
看了下程序,不是很明白,应该就是一个函数,在不停地监视moden所连的端口,一有电话打入则能得到电话号码。
是不是这样?
JQinHan
2005-04-24
打赏
举报
回复
刚睡了会。
我试一下,谢谢了。
这个要不要开通电话的来电显示?
Behard
2005-04-24
打赏
举报
回复
bufferOK 是在中断接收函数控制
收到 '\r' 即可置为 true
Behard
2005-04-24
打赏
举报
回复
直接使用 AT 命令的方式控制
我以前写的 DOS 下控制 Modem 的程序
void comm_putc ( unsigned char c ) /* sends char out port */
{
while ( ( inportb ( stat8250 ) & 0x20 ) == 0 ) ;
/* Wait til transmitter is ready then send it */
outportb ( dat8250 , c );
// outportb ( 0x3f8 , c ) ; // COM1=0x2F8 COM2=0x3F8
}
void SendCommand ( char *cmdline )
{
unsigned char send_character ;
for ( ; ( send_character = *cmdline ) != '\0' ; cmdline++ )
comm_putc ( send_character ) ;
return ;
}
long ReadTime( void ) // 获取时间
{
union REGS r;
long milliseconds;
r.h.ah = 0x2c;
int86( 0x21, &r, &r );
milliseconds = (long) r.h.dl * 10; // dl : hundredths
milliseconds += (long) r.h.dh * 1000; // dh : seconds
milliseconds += (long) r.h.cl * 60000L; // cl : minutes
milliseconds += (long) r.h.ch * 3600000L; // ch : hours
return( milliseconds );
}
int Initialize ( void ) // 初始化
{
long timeout ;
char *rece_temp ;
timeout = ReadTime () + 2000L ;
comm_putc ( 'A' ) ;
comm_putc ( 'T' ) ;
comm_putc ( '\r' ) ;
while ( ReadTime () < timeout )
{
if ( bufferOK )
{
bufferOK = 0 ;
if ( ( rece_temp = strstr ( inter_buffer, "OK" )) != 0 )
{
// printf ( "Initialize is OK!\n" ) ;
return 1 ;
}
}
}
// printf ( "Initialize is Failed!\n" ) ;
return 0 ;
}
int Dial ( void ) // 拨号
{
long timeout = ReadTime () + 60000L ;
char *rece_temp ;
inter_no = read_no = 0 ;
comm_putc ( 'A' ) ; //Can use SendCommand()
comm_putc ( 'T' ) ;
comm_putc ( 'D' ) ;
comm_putc ( 'T' ) ;
SendCommand ( "12345678" ) ; // 电话号码
comm_putc ( '\r' ) ;
while ( ReadTime () < timeout )
{
if ( bufferOK )
{
bufferOK = 0 ;
if ( ( rece_temp = strstr ( inter_buffer, "CONNECT" )) != 0 )
{
// printf ( "%s\n" , rece_temp ) ;
return 1 ;
}
if ( ( rece_temp = strstr ( inter_buffer, "NO CARRIER" )) != 0 )
{
// printf ( "No Carrier!\n" ) ;
return 0 ;
}
}
}
return 0 ;
}
int Answer ( void ) // 应答
{
long timeout = ReadTime () + 60000L ;
char *rece_temp ;
inter_no = read_no = 0 ;
comm_putc ( 'A' ) ;
comm_putc ( 'T' ) ;
comm_putc ( 'A' ) ;
comm_putc ( '\r' ) ;
while ( ReadTime () < timeout )
{
if ( bufferOK )
{
bufferOK = 0 ;
if ( ( rece_temp = strstr ( inter_buffer, "CONNECT" )) != 0 )
{
// printf ( "%s\n" , inter_buffer ) ;
return 1 ;
}
if ( ( rece_temp = strstr ( inter_buffer, "NO CARRIER" )) != 0 )
{
// printf ( "No Carrier!\n" ) ;
return 0 ;
}
}
}
return 0 ;
}
int Ring ( void ) // 响铃
{
char *rece_temp ;
if ( bufferOK )
{
bufferOK = 0 ;
if ( ( rece_temp = strstr ( inter_buffer, "RING" )) != 0 )
{
// printf ( "%s\n" , inter_buffer ) ;
return 1 ;
}
}
else
return 0 ;
}
int Hangup ( void ) // 挂机
{
long timeout = ReadTime () + 1250 ;
char *rece_temp ;
while ( ReadTime() < timeout )
;
SendCommand ( "+++" ) ;
timeout = ReadTime() + 1250 ;
while ( ReadTime() < timeout )
;
timeout = ReadTime() + 10000L ;
SendCommand ( "ATH0\r" ) ;
while ( ReadTime () < timeout )
{
if ( bufferOK )
{
bufferOK = 0 ;
if ( ( rece_temp = strstr ( inter_buffer , "OK" )) != 0 )
{
// printf ( "Hang is OK!\n" ) ;
return 1 ;
}
}
}
return 0 ;
}
Behard
2005-04-24
打赏
举报
回复
你直接使用 AT 命令还是 微软的 API?
如果是 AT 命令的话,会返回 RING 命令带电话号码的
不过这需要你的电话网络支持
JQinHan
2005-04-24
打赏
举报
回复
在线等候中……
CTI 计算机
电话
集成系统 电信
引用:http://baike.baidu.com/view/76402.htm 百科名片 CTI技术是从传统的计算机
电话
集成(Computer Telephony Integration)技术发展而来的,最初是想将计算机技术应用到
电话
系统中,能够自动地对
电话
中的信令信息进行识别处理,并通过建立有关的话路连接,而向用户传送预定的录音文件、转接来话等。而到现在,CTI技术已经...
人心难测——冒充身份类诈骗
常见情况 1、冒充领导诈骗:犯罪分子获知上级机关、监管部门单位领导的姓名、办公
电话
等有关资料,假冒领导秘书或工作人员等身份打
电话
2、冒充亲友诈骗:犯罪分子利用木马程序盗取对方网络
通讯
工具密码,截取对方聊天视频资料后,冒充该
通讯
账号主人对其亲友或好友以“患重病、出车祸”等紧急事情为名实施诈骗。 3、补助救助、助学金诈骗:冒充教育、民政、残联等工作人员,向残疾人员、学生、家长打
电话
、发短信,谎称可以领取补助金、救助金、助学金,要其提供银行卡号,指令其在取款机上将钱转走。 4、冒充公检法
电话
诈骗:犯罪分
诺基亚智能手机知识大全
一、购买篇去买手机
时
的注意事项:买手机的
时
候一般注意一下有没有什么使用过的痕迹,看看
通讯
记录里有没有打过
电话
,有没有存乱七八糟的照片,还有看看电池触点磨损情况,按住#键5秒以上看看是否有切换线路选项;再者就是看屏幕有没有坏点,手机上的坏点可以说直接用肉眼就能看出来的,不象数码相机上的坏点还得通过软件测试,打开手机的照相机拍一张全黑的照片,在遮上一张白纸对着光照一张全白的照片(千万不要直接对着光线照
VB语音开发
一、引言
电话
语音查询系统已广泛应用于
电话
银行、话费查询、证券委托、自动缴费(水、电、气等费用)、语音信箱、自动声讯服务、民航、公共考务、铁路等部门的信息查询以及各种公共场所自动回答顾客提问等领域。
电话
语音查询系统的工作流程是用户拨通
电话
语音查询系统的热线
电话
,并根据
电话
中的语音提示,通过按
电话
键来查询电脑中存储的各种信息; 电脑自动对用户的操作进行应答,并以语音形式将信息反馈给用...
外卖类应用的竞争与发展分析
外卖,顾名思义,就是快餐的外送服务。打包可以说是外卖最古老的形式,但随着科学技术的发展,
电话
、手机、网络的普及,外卖也不再局限于打包形式,进入了飞速发展的
时
代。 现今的外卖行业可以说是百花齐放、百家争鸣。
电话
订购,网站订购,手机APP订购……各种“叫外卖”方式层出不穷,其中最火最受大众喜爱的就是手机APP订购了。涉及到手机APP,那么就会遇到一个无法避免的
问题
:现在正处于互联网爆炸发展的
时
期,各...
网络及通讯开发
1,316
社区成员
8,873
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章