去年做过一个项目,是要在windows mobile手机上做个来电防火墙, 其实原理很简单, 无非是截获来电并检查黑白名单, 按照规则给出相应的提示音, 现在总结一下, 大概有几个方面是关键点:
1. 如何截获来电?
有几种办法, 一种是底层的RIL函数, 这种方法响应迅速, 不会在拦截电话前还在屏幕上快速闪现一下来电提示窗口,或者是铃声突然响一下再消失. 缺点时RIL函数编程并不容易,如何处理好诸多RIL通知事件,并根据业务逻辑设计良好的程序逻辑是一个不小的挑战;
第二种办法是使用.net compact framework的notification,
包括:SystemProperty.PhoneCallCalling, SystemProperty.PhoneIncomingCall,
SystemProperty.PhoneCallTalking.
SystemProperty.PhoneCallCalling: 表示正在呼出中...
SystemProperty.PhoneIncomingCall: 表示现在有电话来到...
SystemProperty.PhoneCallTalking: 表示通话是否建立or挂断?
通过这三个函数的取值组合, 能得到目前电话状态, 是正在拨出?还是有来电?还是电话已接通?还是电话已挂断?
由于我的项目要同时完成多种任务: 来电时要判断是否拦截; 要记录来电号码,来电时间; 通话时要记录通话时长;等等,所以用这种方法单独写一个程序来管理电话功能,效果比较好.
2. 如何定义规则?
就是拦截规则, 这个一般可以照着别人做好的防火墙软件, 无非是黑白名单, 全部拦截还是部分拦截, 还有分时段拦截等等...
3. 保存拦截记录.
拦截的电话需要记住,包括来电号码, 姓名, 时间. 保存在数据库或文件中.
4. 拦截后自动回复短信.
一般都要给出几条默认的短信, 并且允许用户自定义短信内容. 作为拦截电话后对方的回复, 比如"现在正在开会,稍后回复您"等等.
5. 最考验一个防火墙软件优劣的东西---提示音
你肯定不希望一个你不喜欢的人打你的电话时, 还让他在听筒里听到"嘟..."的一声,然后再告诉他"您拨打的电话已关机"吧??
这篇文章要给大家贡献的最有用的东西也就在这里:
直接告诉对方--“电话已关机”,“此号码已停机”,“号码不存在”, 而不再有任何提示音, 要达到这个目的, 必须用来电转移效果才最好, 因为来电转移是在源头处就把提示音直接播放给呼叫方, 其他任何方法都没有这个方法直接且效果好.
具体实现方法麻烦点,需要在程序里调用 AT指令,这里不详述了,有兴趣的可以去找(也许还有别的办法). 看到这里,你可能已经想到了, 要把来电转移到哪个号码上才能实现--“电话已关机”,“此号码已停机”,“号码不存在”三种提示音呢?
经过研究, 发现有些软件使用的是这三个号码:“13911950261”, “0 13555555555”, “1351234567”,
不信大家可以用电话打打这三个号码看看. “1351234567”, 很显然, 号码长度不足11位, 当然提示你“号码不存在”了, 呵呵.
分享到:
相关推荐
调节托辊的偏置角是对带式输送机输送带调偏的一个常见方法,介绍了2种不停机调节托辊斜置角的方法。1使用轴端加长的托辊;该托辊一端的伸出轴被加长,安装在托辊架上后,托辊支撑座的外侧伸出一段较长的轴段。可徒手或...
先说下几个要点: 1. 电话拦截这个功能大家可能都知道了,就是利用反射原理调用ITelephony的隐藏...如果事前设置好了忙时转移到一个空号/已关机/已停机的电话号码,就会提示您拨的电话号码是空号/已关机/已停机。其实大
jClean可以完美实现模拟中继上彩铃、忙音、关机、停机、空号、过期、来电助手、来电转移、呼叫限制、无法接通、不在服务区等等二十多种状态的准确探测和识别。jClean电话号码清洗系统能够让您的电话营销目标更加精准...
反渗透停机保养方法.pdf
本文所讲的内容是在Android系统中如何写程序进行电话拦截,并发出拦截提示音提醒用户,可以说此功能还是比较实用的。 1、电话拦截 这个功能大家可能都知道了,就是利用反射原理调用ITelephony的隐藏方法来实现。...
IAR开发环境中在STM8S003单片机上实现低功耗模式 活跃停机 Active halt,使用寄存器开发。
电话拦截(禁止号码呼入、禁止号码呼出) 2.短信拦截(拦截号码短信、拦截向号码发送短信) 3.全局设置(短信拦截设置、电话拦截设置、夜间防骚扰设置) 4.呼叫转移(遇忙转移:空号、正忙、停机,无条件转移,无...
MySQL不停机不锁表主从同步与读写分离配置,1 .xtrabackup安装.2.核对mysql的版本.3.在master服务器上在线备份数据库.4.slave机器上操作
主要介绍了spring boot2.0实现优雅停机的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
不停机搭建standby备库 介绍安装standby备库步骤及注意事项
oracle rac 不停机调整时间.txt
有关机、停机、空号、忙音、关闭铃音和自定义呼叫转移等多种拦截模式供用户选择,支持对拦截的电话自动回复短信,真正实现人性化过滤。 3、智能化日程模式 首创日程管理模式,用户根据对时间段的设置,使手机在特定...
定义开发特定的 FB 功能块类型(Block Type) , 或者对已有功能块类型进行修改调整以 适应实际现场需求。 在 AS 程序中, 将基于该功能块类型创建相应实例(Instance) , 下 载到实际 CPU 中使用。 在调试过程中,...
三菱PLC定时停机程序
极速号码魔方一款集号段预测、数据批量处理、精准检测为一体的...如果您已经拥有了各类号码资源,还可以免费使用系统的号码预检测功能,即时获得号码资源中实号、空号、停机及关机的状态比例,为您的下一步营销做参考。
漂亮的停机维护html模板
落草空号检测是一款专业的空号检测,生成,分类软件,它能够把号码当中的空号过滤出来(10种状态 正常号码 / 空号 / 停机 / 关机 / 来电提醒 / 已设置呼入限制 / 暂时无法接通 / 请勿来电 / 垃圾号码 / 其它) 把有用...