发明内容
本发明的目的在于提供一种垃圾来电检测方法及设备,以对垃圾来电进行检测。
本发明提供了如下方案:
一种垃圾来电检测方法,所述方法包括:
接收呼叫请求,所述呼叫请求包括主叫用户标识及被叫用户标识;
根据所述呼叫请求,确定主叫用户和被叫用户;
利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户间的直接和间接通话记录;所述通话记录包含各用户间的通话状态数据;
根据所述直接和间接通信记录中的通话状态数据计算所述被叫用户对所述主叫用户的信任值;
若所述信任值小于预设阈值,则确认所述呼叫请求为垃圾来电。
可选的,若未搜索到所述主叫用户和所述被叫用户间的直接和间接通话记录,则确认所述呼叫请求为垃圾来电。
可选的,所述通话状态数据包括:
通话时长和/或通话次数。
可选的,所述利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户间的直接和间接通话记录包括:
利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户之间的通话路径;
所述根据所述直接和间接通信记录中的通话状态数据计算所述被叫用户对所述主叫用户的信任值包括:
根据所述通话路径中各路径段上的通话状态数据计算所述路径段的信任值;
将同一通话路径中各路径段的信任值相乘,得到所述通话路径的信任值;
将各通话路径的信任值相加得到所述被叫用户对所述主叫用户的信任值。
可选的,所述方法还包括:
若所述通话路径中一路径段的信任值高于所述路径段的上一路径段的信任值,则删除所述通话路径;其中,所述路径段比所述上一路径段靠近所述被叫用户。
可选的,所述路径段的信任值为所述路径段的第一节点与第二节点间的通话时长占所述第一节点总通话时长的比率和/或所述第一节点与所述第二节点间的通话次数占所述第一节点总通话次数的比率;其中,所述第一节点比所述第二节点靠近所述被叫用户。
本发明还提供一种垃圾来电检测设备,所述设备包括:
接收单元,用于接收呼叫请求;所述呼叫请求包括主叫用户标识及被叫用户标识;
确定单元,用于根据所述呼叫请求,确定主叫用户和被叫用户;
搜索单元,用于利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户间的直接和间接通话记录;所述通话记录包含各用户间的通话状态数据;
第一计算单元,用于根据所述直接和间接通信记录中的通话状态数据计算所述被叫用户对所述主叫用户的信任值;
确认单元,用于在所述信任值小于预设阈值时,确认所述呼叫请求为垃圾来电。
可选的,所述确认单元,还用于在未搜索到所述主叫用户和所述被叫用户间的直接和间接通话记录时,确认所述呼叫请求为垃圾来电。
可选的,所述搜索单元,还用于利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户之间的通话路径;
所述第一计算单元包括:
第一计算子单元,用于根据所述通话路径中各路径段上的通话状态数据计算所述路径段的信任值;
乘法单元,用于将同一通话路径中各路径段的信任值相乘,得到所述通话路径的信任值;
加法单元,用于将各通话路径的信任值相加得到所述被叫用户对所述主叫用户的信任值。
可选的,所述设备还包括:删除单元,用于在所述通话路径中一路径段的信任值高于所述路径段的上一路径段的信任值时,删除所述通话路径;其中,所述路径段比所述上一路径段靠近所述被叫用户。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明中,首先在预先保存的用户间通话记录中搜索到被叫用户与主叫用户之间的直接和间接通话记录,这样就使得在被叫用户接收到一个来电时,能够基于被叫用户与主叫用户过往的直接和间接通话记录中的通话状态数据计算被叫用户与主叫用户的信任值,以对该主叫用户是否能够被信任进行检测。保存的通话记录并不对发起者是人还是机器作出区分,即信任值的计算与电话的发起者无关。因此通过本发明的方法能够对机器和人发起的垃圾来电进行检测,解决了现有技术中不能对由人工发起的垃圾来电检测的问题。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例1提供了一种垃圾来电检测方法,参见图1,该方法包括以下步骤:
S1、接收呼叫请求,所述呼叫请求包括主叫用户标识及被叫用户标识。
S2、根据所述呼叫请求,确定主叫用户和被叫用户。
S3、利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户间的直接和间接通话记录;所述通话记录包含各用户间的通话状态数据。
垃圾来电是指正常用户不希望接收到的呼叫请求。其目的多是与被呼叫用户建立多媒体通道,通过文本,音频或视频等多媒体信息向用户进行广告宣传,推销或者诈骗等活动。因此在接收到垃圾来电时,被叫用户一般会在很短时间内挂断。而且在下次接收到垃圾来电时不予接听。可见垃圾来电通常具有这样的性质:通话时间较短、与同一用户的通话次数不会太多。基于这样的特性,我们可以通过分析某一被叫用户与主叫用户的通话状态数据如通话时间、通话次数来检测某一呼叫是否为垃圾来电。
但对某一具体用户而言,如果仅仅依靠该用户的直接通话记录来检测垃圾来电,检测的准确度会比较低。比如某一朋友换号后第一次打电话给被叫用户,在被叫用户的通话记录中查不到与新号码的通话数据,就无法计算信任值并进行检测。为此,我们的通话记录包括被叫用户的直接通话记录和间接通话记录。所述的间接通话记录是指一用户和另一用户通过与两者有直接或间接通话关联的用户建立的通话记录。比如,若用户A呼叫用户B,用户B呼叫用户C,用户C呼叫用户D,那么用户A与用户C、用户A与用户D就是间接通话。保存间接通话记录扩大了可以查询的通话记录范围。其被用作计算信任值的基础是如果用户A对用户B是信任的,而用户B对用户C是信任的,那么用户A就可以信任用户C。
服务器可以预先保存域内各用户间一定时间内的通话记录,时间可以自由设置。通话记录中包含各用户间的通话状态数据,通话状态数据是指用以表征通话的具体状态的数据,如双方通话时长,某一用户总通话时长,双方通话次数,某用户总通话次数等用以表示用户通话状态的数据。当然也可以是对初始通话状态数据经过处理后的数据,比如统计出的某主叫用户在所述通话记录中接通后被立即挂断的次数等。
根据确定的主叫用户和被叫用户,在通话记录中搜索所述主叫用户和所述被叫用户间的直接通话记录和间接通话记录。具体的搜索过程可以以主叫用户为搜索起点,以被叫用户为搜索目标点,当然也可以是其他形式。
搜索出直接通话记录和间接通话记录中包含主叫用户和被叫用户的通话状态数据。明显的,这一通话状态数据包含主叫和被叫用户的直接通话状态数据和间接通话状态数据。
S4、根据所述直接和间接通信记录中的通话状态数据计算所述被叫用户对所述主叫用户的信任值。
具体的我们可以以双方通话时长占被叫用户总通话时长的比率计算信任值,在具体的计算过程中对直接通话和间接通话做出区分。当然也可以以通话次数为基础计算信任值。具体计算过程因保存的通话状态数据类型和通话记录的而具体保存形式而异。
S5、若所述信任值小于预设阈值,则确认所述呼叫请求为垃圾来电。
将得到的信任值与阈值作比较,如果该信任值小于或等于阈值,那么所述的呼叫请求就是垃圾来电。
在本发明中,对确认的垃圾来电可以直接过滤,也可以发送提示信息给被叫用户,根据被叫用户的指令接通或过滤此来电。或者,为进一步确认,可以对所述垃圾来电进行图灵测试,根据图灵测试结果在执行相应的操作。
有时在通话记录中搜索不到与该主叫用户有关的通话记录,为此,本发明所述的方法还包括:
若未搜索到所述主叫用户和所述被叫用户间的直接和间接通话记录,则确认所述呼叫请求为垃圾来电。
在本发明实施例中,可以以通话路径的形式保存通话记录,将用户作为节点,连接直接通话的用户形成路径段,主叫用户和被叫用户之间的一条或多条路径段组成路径。当某个路径仅由1个路径段组成时,表示主叫用户和被叫用户之间有直接通话记录;当某个路径由至少两个路径段组成时,表示主叫用户与被叫用户之间存在间接通话记录。
需要特别说明的是,本发明实施例的路径仅用于表达用户之间通话记录的逻辑关系,至于在实际应用中,对这种逻辑关系的实际存储记录形式、可以采用例如附图3的链式或者图4的树的形式,本领域人员应该可以轻易想到,还可以采用表格、图形或纯文字记录等其他形式,只要能表达用户之间的通话关系即可。
如A-B-C-D表示在一定时间内用户A呼叫过用户B,用户B呼叫过用户C,用户C呼叫过用户D,他们对应的路径段分别是A-B、B-C、C-D,均表示了直接通话记录的关系。而用户A与C属于间接通话记录的关系,因此对应路径A-B-C由两个路径段组成。路径的具体示例也可以参照图2、3、4、5。
在本发明方法实施例2中,步骤S3包括:
利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户之间的通话路径;
步骤S4包括:
根据所述通话路径中各路径段上的通话状态数据计算所述路径段的信任值;
将同一通话路径中各路径段的信任值相乘,得到所述通话路径的信任值;
将各通话路径的信任值相加得到所述被叫用户对所述主叫用户的信任值。
具体的,所述路径段的信任值可以为所述路径段的第一节点与第二节点间的通话时长占所述第一节点总通话时长的比率。其中,所述第一节点比所述第二节点靠近所述被叫用户。值得注意的是,在本发明中,所谓的靠近还包括第一节点就是被叫用户的情形。
假设用户P呼叫用户A,如图2所示,若根据预存的各用户间的通话记录,搜索到主叫用户P和被叫用户A之间的通话路径为A-P,A-D-P,A-B-E-P,其中A-P路径段的通话时长为20分钟,A的总通话时长为60分钟。A-D路径段的通话时长为10分钟,D-P路径段的通话时长为20分钟,D的总通话时长为40分钟。A-B路径段的通话时长为30分钟,B-E路径段的通话时长为10分钟,B的总通话时长为30分钟,E-P路径段的通话时长为5分钟,E的总通话时长为30分钟。
根据图2所示的各路径上的通话状态数据(通话时长)可以计算出各通话路径上各路径段的信任值。计算结果如图3所示,A-P通话路径上A-P路径段的信任值为1/3。A-D-P通话路径上A-D,D-P路径段的信任值分别为1/6、1/2。A-B-E-P通话路径上A-B,B-E,E-P各路径段的信任值分别为1/2,1/3,1/6。将同一通话路径上个路径段的信任值相乘得到A-P通话路径的信任值为1/3,A-D-P通话路径的信任值为1/6*1/2=1/12,A-B-E-P通话路径的信任值为1/2*1/3*1/6=1/36。将各通话路径的信任值相加得到被叫用户A对主叫用户P的信任值为1/3+1/12+1/36=4/9。若所述的阈值为1/3,则所述信任值大于阈值,那么用户P的呼叫请求就不是垃圾来电。
当然所述路径段的信任值也可以是各路径段上第一节点与所述第二节点间的通话次数占所述第一节点总通话次数的比率。也可以是将所述路径段的第一节点与第二节点间的通话时长占所述第一节点总通话时长的比率与各路径段上第一节点与所述第二节点间的通话次数占所述第一节点总通话次数的比率相结合得到。
为避免某用户对间接用户的信任受其他用户的影响过大,所述方法还包括:若所述通话路径中一路径段的信任值高于所述路径段的上一路径段的信任值,则删除所述通话路径;其中,所述路径段比所述上一路径段靠近所述被叫用户。
以图3为例,A-D-P通话路径上D-P路径段的信任值大于A-D路径段的信任值,则应当在图3中删除A-D-P这一通话路径。那么得到的信任值就是A-P通话路径信任值与A-B-E-P通话路径的信任值之和1/3+1/36=13/36。
为使搜索过程和计算过程更直观、易操作,在本发明的实施例3中,各用户间的通话路径可以以呼叫树的形式保存,具体的呼叫树包括根节点和第一至第N节点,以所述各用户中的某一用户为根节点,以所述用户在一定时间内呼叫的用户为所述根节点的子节点,以所述根节点的子节点为第一节点;以第n节点代表的用户在一定时间内呼叫的用户为第n节点的子节点;以第n节点的子节点为第n+1节点;n不大于N;若第n节点所代表的第n用户同时在所述根节点或所述第1至第n-2节点中出现,则所述第n用户的第n节点为叶子节点;其中,所述呼叫树包含所述用户的通话状态数据。
比如若第二用户A在一个月内呼叫过用户P、B、C、D,通话时长分别是10、20、25、5分钟;用户P在一个月内呼叫过用户S,通话时长为15分钟;用户S在一个月内呼叫过用户Z、L,通话时长分别为25、20分钟;用户B在一个月内呼叫过用户A、E,通话时长分别为15、5分钟;用户E在一个月内呼叫过用户O、P,通话时长分别为25、30分钟;用户C在一个月内呼叫过用户Q,通话时长为10分钟;用户Q在一个月内呼叫过用户X、Y,通话时长分别为20、10分钟;用户D在一个月内呼叫过用户P,通话时长为30分钟。根据上述数据能得到用户A、P、B、C、D、E、S、Q各自的主叫总通话时长分别为:60、15、20、10、30、55、45、30分钟。
依据上述通话记录建立用户A的呼叫树,为防止无限制的查询,此处可以设定节点数N为3,也就是说叶子节点距A不超过三个节点的距离,那么创建的呼叫树如图4所示。值得注意的是,用户B呼叫过用户A,因为用户A在根节点出现过,若继续将A呼叫的用户插入作为子节点,会使呼叫树中出现重复的通话记录。因此除根节点外的A都作为叶子节点。
在上述实施例中,利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户之间的通话路径具体包括:
根据被叫用户标识在所述各用户的呼叫树中搜索所述被叫用户的第一呼叫树。
搜索到的第一呼叫树中包括以被叫用户为根节点的多条通话路径。
遍历所述第一呼叫树,查找主叫用户,获得以所述被叫用户为根节点,以所述主叫用户为叶子节点的第二呼叫树。
以图4所述呼叫树为例,若主叫用户为P,则得到的第二呼叫树如图5所示,包括路径A-P、路径A-B-E-P和路径A-D-P。即以被叫用户为根节点,以主叫用户为叶子节点的多条通话路径。
本发明实施例4还提供了一种垃圾来电检测设备,参见图6,所述设备包括:
接收单元11,用于接收呼叫请求;所述呼叫请求包括主叫用户标识及被叫用户标识;
确定单元12,用于根据所述呼叫请求,确定主叫用户和被叫用户;
搜索单元13,用于利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户间的直接和间接通话记录;所述通话记录包含各用户间的通话状态数据;
第一计算单元14,用于根据所述直接和间接通信记录中的通话状态数据计算所述被叫用户对所述主叫用户的信任值;
确认单元15,用于在所述信任值小于预设阈值时,确认所述呼叫请求为垃圾来电。
为对垃圾来电进一步处理,所述设备还包括:过滤单元,用于过滤所述垃圾来电;或提示单元,用于发送垃圾来电提示信息至所述被叫用户。
所述设备也可以包括图灵测试单元,用于对所述垃圾来电进行图灵测试,获取图灵测试结果;处理单元,用于根据所述图灵测试结果进行处理。
所述确认单元15,还用于在未搜索到所述主叫用户和所述被叫用户间的直接和间接通话记录时,确认所述呼叫请求为垃圾来电。
在本发明的可选实施例中,所述搜索单元13,还用于利用预存的各用户间的通话记录,搜索所述主叫用户和所述被叫用户之间的通话路径;
所述第一计算单元14包括:
第一计算子单元,用于根据所述通话路径中各路径段上的通话状态数据计算所述路径段的信任值;
乘法单元,用于将同一通话路径中各路径段的信任值相乘,得到所述通话路径的信任值;
加法单元,用于将各通话路径的信任值相加得到所述被叫用户对所述主叫用户的信任值。
为避免某用户对间接用户的信任受其他用户的影响过大,本发明所提供的设备还包括删除单元,用于在所述通话路径中一路径段的信任值高于所述路径段的上一路径段的信任值时,删除所述通话路径;其中,所述路径段比所述上一路径段靠近所述被叫用户。
在本发明的可选实施例中,为方便被叫用户和主叫用户间直接和间接通话记录的搜索及信任值的计算,所述各用户间的通话路径可以以各用户的呼叫树形式存在。呼叫树包括根节点和第一至第N节点,以所述各用户中的某一用户为根节点,以所述用户在一定时间内呼叫的用户为所述根节点的子节点,以所述根节点的子节点为第一节点;以第n节点代表的用户在一定时间内呼叫的用户为第n节点的子节点;以第n节点的子节点为第n+1节点;n不大于N;若第n节点所代表的第n用户在所述根节点或所述第1至第n-2节点中出现过,则所述第n用户的第n节点为叶子节点;其中,所述呼叫树包含所述用户的通话状态数据。
在实施例5中,搜索单元13包括:
第一搜索子单元,用于根据被叫用户标识在所述各用户的呼叫树中搜索所述被叫用户的第一呼叫树;
第二搜索子单元,用于遍历所述第一呼叫树,搜索主叫用户,获得以所述被叫用户为根节点,以所述主叫用户为叶子节点的第二呼叫树。
在本发明中,也可以先对第一呼叫树中各路径段的信任值进行计算,因此所述设备还包括:
第二计算单元,用于依据所述第一呼叫树中的通话状态数据计算所述第一呼叫树中每一路径中各路径段的信任值并保存所述信任值至所述第一呼叫树;
需要说明的是,本发明设备与本发明方法实施例相对应,相关部分参照方法实施例即可,此处不再做详细介绍。
以上对本发明所提供的一种垃圾来电检测方法及设备,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。