怎么得到来电时间?

infsafe 2009-07-07 04:27:46
我用TAPI开发来电防火墙.我想得到来电的时间.
注意哦,这个来电时间是拨号方拨打电话,对方没有应答,然后挂断电话.这个期间的时间怎么在对方的来电防火墙里面得到?
因为有些垃圾电话都是打一下就挂.对于这种来电时间极短的电话直接添加到黑名单里面.
谢谢!
...全文
84 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
载舟之水 2009-07-07
  • 打赏
  • 举报
回复
哦。写错了,是TAPI CALLBACK监视
载舟之水 2009-07-07
  • 打赏
  • 举报
回复
两个方法都是可行的,

第一个有两种实现
1.可以监视calllog edb数据库,发现新建记录就去读出呼叫方向和通话时间。
2.挂断后直接用api去读取最新的entry。

第二个方法要做RIL CALLBACK监视,而且要区分newcall是呼入还是呼出,data call还是voice call的挂断消息。

infsafe 2009-07-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cytlyy 的回复:]
方法有多种:
1.不用TAPI,直接利用PhoneGetCallLogEntry读取通话记录。CALLLOGENTRY结构体包含了FILETIME ftStartTime;
FILETIME ftEndTime;,可以计算得到通话时间。
2.既然你用TAPI做的防护墙。可以监控LINE_APPNEWCALL,LINECALLSTATE_DISCONNECTED时间差也可以得到这个通话时间。
等等。
[/Quote]

第二个方法不对吧,因为我不会接通,怎么有LINECALLSTATE_DISCONNECTED这个消息?
世外涛缘 2009-07-07
  • 打赏
  • 举报
回复
C#楼主可以参考下:
http://blog.csdn.net/supermxg_83/archive/2009/05/21/4206927.aspx
cytlyy 2009-07-07
  • 打赏
  • 举报
回复
方法有多种:
1.不用TAPI,直接利用PhoneGetCallLogEntry读取通话记录。CALLLOGENTRY结构体包含了FILETIME ftStartTime;
FILETIME ftEndTime;,可以计算得到通话时间。
2.既然你用TAPI做的防护墙。可以监控LINE_APPNEWCALL,LINECALLSTATE_DISCONNECTED时间差也可以得到这个通话时间。
等等。

7,657

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧