具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明语音呼叫检测方法一个实施例的流程示意图,如图1所示,本发明实施例包括如下步骤:
步骤101、获取语音通信中的用户呼叫信息,其中,用户呼叫信息包括用户的呼叫标识以及该呼叫标识相对应的通话时间信息;
其中,对所获取的呼叫标识进行通话监测并对通话监测过程进行周期性中断,每个监测周期形成一个时间窗。
步骤102、计算当前时间所在的时间窗内的用户呼叫信息中的第一通话时间信息与该当前时间所在的时间窗相邻的上一时间窗内的用户呼叫信息中的第二通话时间信息的相关性,获得相关性值;
步骤103、将相关性值进行等级量化得到等级量化结果,对呼叫标识进行与该等级量化结果相对应的呼叫处理。
本发明实施例中的呼叫标识既可以为发起呼叫的主叫终端相对应的主叫标识,也可以为被呼叫的被叫终端相对应的被叫标识。
本发明实施例提供的语音呼叫检测方法,通过对用户呼叫信息中的通话时间信息进行相关性计算,将检测结果进行等级量化得到等级量化结果,通过对呼叫标识进行与该等级量化结果相对应的呼叫处理,有效地防止了表现为异常的呼叫标识对应的终端进行非法语音呼叫,从而维护良好的语音呼叫环境。
图2为本发明语音呼叫检测方法又一个实施例的流程示意图,图3为图2所示实施例中对通话过程进行周期性中断形成的时间窗的示意图,本发明实施例以获取到的语音通信中的用户呼叫信息中的呼叫标识具体为主叫标识进行示例性说明,如图2所示,本发明实施例包括如下步骤:
步骤201、对呼叫标识进行通话监测并对通话监测过程进行周期性中断,每个检测周期形成一个时间窗;
上述步骤201,可以由计时器触发产生周期性中断,由于该周期性中断形成的时间窗对应的时长与计时器的中断周期相等,因此在连续进行语音检测时,由周期性中断形成的多个时间连续的时间窗的长度是相等的,如图3所示,在该呼叫标识的通话监测过程中,计时器分别在t1、t2、t3、t4、…、tn时刻触发周期性中断,中断周期为T,该周期性中断形成的多个连续的时间窗为[t1,t2]、[t2,t3]、[t3,t4]、…、[tn-1,tn],且该多个连续的时间窗的长度均为T;此外,还可以根据实际检测情况通过调整定时器的中断周期调整时间窗的长度;
步骤202、在当前时间所在的时间窗内统计主叫标识在设定呼叫区域内与被叫标识之间的第一通话时间信息,并获取与该当前时间所在的时间窗相邻的上一时间窗内该主叫标识在与设定呼叫区域内的被叫标识之间记录的第二通话时间信息;
具体地,该第一通话时间信息包括了主叫标识在当前时间所在的时间窗内主动呼叫设定呼叫区域内的特定被叫标识的通话时间、主叫标识和该特定被叫标识的总通话时间;该第二通话时间信息包括了主叫标识在上一时间窗内主动呼叫设定呼叫区域内的特定被叫标识的通话时间、主叫标识和该特定被叫标识的总通话时间。
步骤203、计算第一通话时间信息与第二通话时间信息的相关性,获得相关性值;
上述步骤203中,对当前时间所在的时间窗内的主叫标识的通话时间信息建立向量模型,例如:用户A为主叫标识,用户A在设定呼叫区域内呼叫的被叫标识为:用户B1、用户B2、…、用户Bn(n为设定呼叫区域内的用户数目);如图3所示,在时间窗[t1,t2]内建立的第一向量模型D1为[d1,d2,…,dn],其中,d1为用户A在该时间窗[t1,t2]内主动呼叫设定呼叫区域内的用户B1的通话时间与用户A和设定呼叫区域内的用户B1的总通话时间的比值,d2为用户A在该时间窗[t2,t3]内主动呼叫设定呼叫区域内的用户B2的通话时间与用户A和设定呼叫区域内的用户B2的总通话时间的比值,…,dn为用户A在该时间窗[tn,tn+1]内主动呼叫设定呼叫区域内的用户Bn的通话时间与用户A和设定呼叫区域内的用户Bn的总通话时间的比值;
可选地,还可以对当前时间所在的时间窗内的主叫标识的通话时间信息建立如下所述的向量模型,例如:用户A向多个呼叫区域内的用户发送呼叫请求,在时间窗[t1,t2]内建立的第三向量模型D3为[d1,d2,…,dn],此时,d1为用户A在时间窗[t1,t2]内主动呼叫第1个呼叫区域的通话时间与用户A和第1个呼叫区域的总通话时间的比值,d2为用户A在时间窗[t1,t2]内主动呼叫第2个呼叫区域的通话时间与用户A和第2个呼叫区域的总通话时间的比值,…,dn为用户A在时间窗[t1,t2]内主动呼叫第n个设定呼叫区域的通话时间与用户A和第n个设定呼叫区域的总通话时间的比值。
计算当前时间所在的时间窗内的第三向量模型D3与该当前时间所在的时间窗相邻的上一时间窗内记录的第四向量模型D4的相关性,例如:当前时间所在的时间窗[t2,t3],则与时间窗[t2,t3]相邻的上一时间窗为时间窗[t1,t2],在时间窗[t2,t3]得到第三向量模型D3,在时间窗[t2,t3]得到第四向量模型D4,因此计算第三向量模型D3与第四向量模型D4的内积,例如:在计算第三向量模型D3与第四向量模型D4的内积之前,将用户A的第三向量模型D3的向量元素放在相应的位置处,具体地,例如:若用户A在设定时间窗内仅主动呼叫了设定呼叫区域内的用户B1、用户B2、用户B3,则第三向量模型为D3=[d1,d2,d3],若用户A在上一时间窗内记录的仅仅主动呼叫了设定呼叫区域内的用户B3、用户B4、用户B5,则第四向量模型为D4=[b3,b4,b5],将第三向量模型D3=[d1,d2,d3]转化成D3=[d1,d2,d3,0,0],第四向量模型D4=[b3,b4,b5]转化成D4=[0,0,b3,b4,b5],此后,对转化后的第三向量模型D3和第四向量模型D4进行相关性计算:D3·D4=d1×0+d2×0+d3×b3+0×b4+0×b5,其中,“·”表示第三向量模型D3与第四向量模型D4的内积,从而得到相关性值。
步骤204、将相关性值进行等级量化得到等级量化结果,对呼叫标识进行与该等级量化结果相对应的呼叫处理;
上述步骤204中,可以将相关性值与设定阈值进行比较获取等级量化结果,该等级量化结果可以包括:相关性值大于或者等于预设定的第一阈值,相关性值小于预设定的第一阈值,且大于或者等于预设定的第二阈值,…,相关性值小于预设定的第M阈值,其中,预设定的阈值个数M可以依据实际语音监测情况设置,并且预设定的阈值大小可以根据实际的语音呼叫环境设定;表3示出了对相关性值进行等级量化形成的等级量化结果的一个示意。
表3
等级量化结果 |
呼叫处理 |
[V1,+∞) |
放行 |
[V2,V1) |
列入黑名单 |
… |
… |
[0,VM) |
进行禁呼处理 |
如上述表3所示,若相关性值大于或者等于预设定的第一阈值V1,则放行对呼叫标识的语音通话,并且获取与当前的时间窗相邻的下一个时间窗,并将下一个时间窗作为当前的时间窗,继续对通话过程进行监测;若相关性值在预设定的第二阈值V2与预设定的第一阈值V1之间,则可以认定为主叫标识为非法呼叫标识,将该主叫标识列入黑名单;若相关性值在预设定的小于预设定的第M阈值VM,则可以认定为主叫标识为非法呼叫标识,对该主叫标识进行禁呼处理。
本发明实施例提供的语音呼叫检测方法,通过对用户呼叫信息中的通话时间信息进行相关性计算,将检测结果进行等级量化得到等级量化结果,通过对呼叫标识进行与该等级量化结果相对应的呼叫处理,有效地防止了表现为异常的呼叫标识对应的终端进行非法语音呼叫,从而维护良好的语音呼叫环境。
在上述图2所示实施例的基础上,还可以包括:
将等级量化结果中对正常呼叫用户产生危害的呼叫标识列入黑名单。
本发明实施例中的黑名单具体可以为黑名单数据库,凡是被列入黑名单中的呼叫标识,均表示会对合法用户造成损害,例如:采用转向信令(REFER)向正常用户的呼叫转移到黑名单所记录的主叫标识、对被叫标识的用户造成经济损害的主叫标识(例如:实际中的吸费电话等),呼叫标识具体可以为普通电话号码、因特网协议(Internet Protocol,简称:IP)地址、基于因特网协议的语音(Voice over IP,简称:VoIP)域名,通过对相关性值进行等级量化处理,按照等级量化结果对表示非法的呼叫标识进行与该等级量化结果相对应的呼叫处理,并且根据呼叫处理的结果不断更新黑名单,从而确保了正常用户的呼叫安全,避免由于受到恶意攻击或账号被非法使用而主动呼叫黑名单中的呼叫标识,或者接收非法呼叫标识的呼叫请求而受到经济损失或骚扰。
图4为本发明语音呼叫检测装置一个实施例的结构示意图,本发明实施例可以实现图1或者图2所示实施例的方法流程,如图4所示,本发明实施例包括:获取模块41、计算模块42、处理模块43、中断模块44。
获取模块41获取语音通信中的用户呼叫信息,所述用户呼叫信息包括用户的呼叫标识以及所述呼叫标识相对应的通话时间信息;中断模块44对所获取的呼叫标识进行通话监测并对通话监测过程进行周期性中断,其中,每个监测周期形成一个时间窗;计算模块42计算当前时间所在的时间窗内的用户呼叫信息中的第一通话时间信息与所述当前时间所在的时间窗相邻的上一时间窗内的用户呼叫信息中的第二通话时间信息的相关性,获得相关性值;处理模块43将所述相关性值进行等级量化得到等级量化结果,对所述呼叫标识进行与所述等级量化结果相对应的呼叫处理。
本发明实施例提供的语音呼叫检测装置,计算模块42通过对用户呼叫信息中的通话时间信息进行相关性计算,处理模块43将相关性计算结果进行等级量化得到等级量化结果,通过对呼叫标识进行与该等级量化结果相对应的呼叫处理,有效地防止了表现为异常的呼叫标识对应的终端进行非法语音呼叫,从而维护良好的语音呼叫环境。
图5为本发明语音呼叫检测装置又一个实施例的结构示意图,本发明实施例可以实现图1或者图2所示实施例的方法流程,如图5所示,本发明实施例包括:获取模块51、计算模块52、处理模块53、中断模块54、更新模块55。
获取模块51获取语音通信中的用户呼叫信息,所述用户呼叫信息包括用户的呼叫标识以及所述呼叫标识相对应的通话时间信息;中断模块54对所获取的呼叫标识进行通话监测并对通话监测过程进行周期性中断,其中,每个监测周期形成一个时间窗;计算模块52计算当前时间所在的时间窗内的用户呼叫信息中的第一通话时间信息与所述当前时间所在的时间窗相邻的上一时间窗内的用户呼叫信息中的第二通话时间信息的相关性,获得相关性值;处理模块53将所述相关性值进行等级量化得到等级量化结果,对所述呼叫标识进行与所述等级量化结果相对应的呼叫处理;更新模块55将所述等级量化结果中对正常呼叫用户产生危害的主叫标识列入黑名单。
进一步地,获取模块51还可以包括:统计单元511、获取单元512;其中,统计单元511在当前时间所在的时间窗内统计所述主叫标识在与设定呼叫区域内的被叫标识之间的第一通话时间信息;获取单元512获取与该当前时间所在的时间窗相邻的上一时间窗内该主叫标识在与设定呼叫区域内的被叫标识之间记录的第二通话时间信息。
进一步地,计算模块52还可以包括:相关性计算单元521;其中,相关性计算单元521对获取到的主叫标识与所述设定呼叫区域内的被叫标识之间在所述当前时间所在的时间窗内的第一通话时间信息与在所述当前时间所在的时间窗相邻的上一时间窗内记录的第二通信时间信息进行相关性计算,得到所述主叫标识与所述设定呼叫区域内的被叫标识在两个时间窗内通信时间信息相关性值。
进一步地,相关性计算单元521还可以包括:第一建立子单元5211、第一计算子单元5212,和/或,第二建立子单元5213、第二计算子单元5214;其中,第一建立子单元5211对当前时间所在的时间窗内的所述主叫标识的通话时间信息建立第一向量模型,以及对与所述当前时间所在的时间窗相邻的上一时间窗内的所述主叫标识的通话时间信息建立第二向量模型;第一计算子单元5212对所述第一向量模型与所述第二向量模型进行内积计算,从而得到所述主叫标识与所述设定呼叫区域内的被叫标识在两个时间窗内通信时间信息相关性值;第二建立子单元5213根据所述主叫标识向多个呼叫区域内的用户发送的呼叫请求在当前时间窗内建立第三向量模型,以及所述当前时间所在的时间窗相邻的上一时间窗内建立第四向量模型;第二计算子单元5214对所述第三向量模型与所述第四向量模型进行内积计算,从而得到所述主叫标识与所述设定呼叫区域内的被叫标识在两个时间窗内通信时间信息相关性值。
本发明实施例提供的语音呼叫检测装置,计算模块52通过对用户呼叫信息中的通话时间信息进行相关性计算,处理模块53将相关性计算结果进行等级量化得到等级量化结果,通过对呼叫标识进行与该等级量化结果相对应的呼叫处理,有效地防止了表现为异常的呼叫标识对应的终端进行非法语音呼叫,从而维护良好的语音呼叫环境。
图6为本发明实施例所适用的语音呼叫检测系统的结构示意图,图7为图6所示实施例中异常处理的流程示意图,如图6所示,本实施例中的语音呼叫检测系统60包括:计时器中断模块61、异常检测模块62、黑名单数据库63、数据记录模块64;在实际应用中,语音呼叫检测系统60可以通过VoIP服务器接口与VoIP服务器相互配合,实现语音呼叫检测系统60与VoIP服务器的数据传递。
具体地,由于一个VoIP服务器所负责的域的所有呼叫都经由该VoIP服务器,因此,本实施例中的语音呼叫检测系统60中的数据记录模块64提取VoIP服务器的用户呼叫信息,用户呼叫信息具体可以为主叫标识和主叫标识与被叫标识的通话时间;计时器中断模块61在设定时间窗的起始点进行触发,并将该用户呼叫信息通知给数据记录模块64,使得数据记录模块64结束当前设定时间窗内的用户呼叫信息的记录,并进入下一个设定时间窗的统计。
异常检测模块62根据数据记录模块64记录的用户呼叫信息进行上述图1或者图2所示实施例的相关性计算,将相关性值进行等级两户得到等级量化结果后,根据等级量化结果判断是否发生呼叫异常,若发生异常,则通过VoIP服务器接口通知VoIP服务器,使得VoIP服务器根据接收到的不同异常信号,通过VoIP服务器接口查询异常处理集65,以便进行不同的异常处理。此外,对于正常用户主动呼叫黑名单数据库63中呼叫标识的呼叫行为,即:VoIP服务器通过VoIP服务器接口获取异常通知后禁止正常用户主动呼叫黑名单数据库63中的呼叫标识,从而防止了正常用户呼叫时造成经济损失。
VoIP服务器对呼叫标识进行呼叫处理的流程图如图7所示,具体地,由于呼叫主要包括以下三种:主叫标识主动呼叫黑名单中的呼叫标识、主叫标识主动向正常用户发送转移到黑名单的转向(REFER)信令、主叫标识的相关性值小于设定阈值;若根据等级量化结果获取到的检测结果表示相关性值小于设定阈值,则还可以查询预设的异常处理集,以便进一步确定异常呼叫的种类,从而可以对检测结果表示异常的主叫标识根据异常处理集所记录的异常结果进行相应的异常处理。
具体地,根据呼叫行为的严重程度,可以将呼叫处理划分为以下三个等级:
第一等级表示警告音提示(处理异常行为1);第二等级表示重新登录;第三等级表示将用户的密码修改为随机密码,并发送至用户申请时呼叫标识时所记录的邮箱中(或其它申请该呼叫标识时填写的有效联系方式);其中,第三等级为最高异常行为处理等级。
再如图7所示,若某呼叫标识连续两次出现异常行为,对第二次出现的异常行为的处理按两次异常行为处理中对应的较高处理等级加1进行处理(例如:若本次为最高处理等级则按最高处理等级处理);如果进行最高异常处理等级后,紧接着发生异常,则将当前时间窗作为上一时间窗。
如图7所示,本实施例中对检测结果表示异常的主叫标识进行异常处理的流程如下所示:
步骤701、判断是否呼叫黑名单数据库中用户;若是,执行步骤702,若否,执行步骤704;
步骤702、判断前一时间窗是否出现异常行为;若是,执行步骤703;若否,则按异常处理第一等级进行处理;
步骤703、判断对前一时间窗的处理等级是否是最高等级;若是,则以当前时间窗为上一时间窗,若否,则按相邻的两次异常行为较为严重的行为的处理等级加1进行处理;
步骤704、判断是否发送转移到黑名单用户的转向(REFER)信令;若是,则执行步骤705,若否,则执行步骤707;
步骤705、判断前一时间窗是否出现异常行为;若是,则执行步骤706,若否,则按异常处理第二等级进行处理;
步骤706、判断对前一时间窗的处理等级是否是最高等级;若是,则以当前时间窗为标准时间窗,若否,则按相邻的两次异常行为较为严重的行为的处理等级加1进行处理;
步骤707、判断相关性值是否在第一阈值V1和第二阈值V2之间;若是,则执行步骤708,若否,则执行步骤710;
步骤708、判断前一时间窗是否出现异常行为;若是,则执行步骤709,若否,则按异常处理第二等级进行处理;
步骤709、判断对前一时间窗的处理等级是否是最高等级;若是,则以当前时间窗为上一时间窗,若否,则按异常处理第三等级进行处理;
步骤710、判断相关性值是否限于第二阈值V2,若是,则执行步骤711;
步骤711、判断对前一时间窗的处理等级是否是最高等级,若是,则执行步骤712,若否,则按异常处理第三等级进行处理;
步骤712、判断对前一时间窗的处理等级是否是最高等级;若是,则以当前时间窗为上一时间窗,若否,则按异常处理第三等级进行处理。
通过上述实施例流程可知,本发明实施例可以有效防止正常的呼叫标识被非法使用,同时也可限制非法呼叫,从而有利于维护良好VoIP的环境。
上述VoIP仅为本发明实施例的一个示例,并不构成对本发明实施例的限制,只要涉及到语音呼叫检测的系统,均为本发明实施例所适用的系统。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以理解:实现上述实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。