一种推送消息播报方法、计算机可读存储介质及终端设备与流程

文档序号:15847131发布日期:2018-11-07 09:14阅读:139来源:国知局
一种推送消息播报方法、计算机可读存储介质及终端设备与流程

本发明属于计算机技术领域,尤其涉及一种推送消息播报方法、计算机可读存储介质及终端设备。

背景技术

目前常用的推送消息通常为文字消息,一些重要的实时消息,如股票账户的买卖信息,在用户无法查看手机时,消息的实时性得不到保证,可能造成用户的经济损失。为了解决这一问题,部分厂商采用了将推送消息进行语音转化,并以语音形式播报推送消息的做法,但这种做法可能会使周边的其他人也听到该推送消息,私密性差,极易造成用户隐私的泄露。



技术实现要素:

有鉴于此,本发明实施例提供了一种推送消息播报方法、计算机可读存储介质及终端设备,以解决现有的推送消息播报方法私密性差,极易造成用户隐私的泄露的问题。

本发明实施例的第一方面提供了一种推送消息播报方法,可以包括:

接收消息推送服务器下发的推送消息;

采集预设的时间段内的语音信息;

判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令;

若所述语音信息中包含用于指示播报所述推送消息的预设指令,则提取所述语音信息中的声纹特征向量;

计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度,所述基准声纹特征向量为从指定用户的语音中提取的声纹特征向量;

若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于预设的匹配度阈值,则以语音形式播报所述推送消息。

本发明实施例的第二方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如下步骤:

接收消息推送服务器下发的推送消息;

采集预设的时间段内的语音信息;

判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令;

若所述语音信息中包含用于指示播报所述推送消息的预设指令,则提取所述语音信息中的声纹特征向量;

计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度,所述基准声纹特征向量为从指定用户的语音中提取的声纹特征向量;

若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于预设的匹配度阈值,则以语音形式播报所述推送消息。

本发明实施例的第三方面提供了一种推送消息播报终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如下步骤:

接收消息推送服务器下发的推送消息;

采集预设的时间段内的语音信息;

判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令;

若所述语音信息中包含用于指示播报所述推送消息的预设指令,则提取所述语音信息中的声纹特征向量;

计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度,所述基准声纹特征向量为从指定用户的语音中提取的声纹特征向量;

若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于预设的匹配度阈值,则以语音形式播报所述推送消息。

本发明实施例与现有技术相比存在的有益效果是:本发明实施例在接收消息推送服务器下发的推送消息之后,首先播报预设的消息提示音,然后采集预设的时间段内的语音信息,并判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令,若所述语音信息中包含用于指示播报所述推送消息的预设指令,则提取所述语音信息中的声纹特征向量,并计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度,若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于预设的匹配度阈值,则以语音形式播报所述推送消息。通过本发明实施例,在收到推送消息时,会用消息提示音来提醒用户,若用户认为当前环境不存在隐私泄露的危险,则可以发出用于指示播报所述推送消息的预设指令,若该指令核实无误,则进一步通过声纹匹配判断发出指令的是否为指定用户,从而大大提高了推送消息播报的私密性,减少了用户隐私泄露的几率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例中一种推送消息播报方法的一个实施例流程图;

图2为消息队列的示意图;

图3为已读消息队列和未读消息队列的示意图;

图4为提取声纹特征向量的示意流程图;

图5为本发明实施例中一种推送消息播报装置的一个实施例结构图;

图6为本发明实施例中一种推送消息播报终端设备的示意框图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1,本发明实施例中一种推送消息播报方法的一个实施例可以包括:

步骤s101、接收消息推送服务器下发的推送消息。

优选地,所述推送消息可以以队列的形式存储在终端设备中。在其中的一种具体实现中,可以配置一个消息队列r,该消息队列r用于存储终端设备接收到的推送消息,该消息队列中的多个消息可以按照接收时间顺序依次存储,如图2所示,可以将终端设备最近接收到的推送消息,也即消息p存储至消息队列r的队尾。

进一步地,如图3所示,该消息队列r还可以进一步划分为:已读消息队列和未读消息队列,其中,未读消息队列中存储的消息均为未读消息,即未被播报过的消息,已读消息队列中存储的消息为已播报过的消息。终端设备每接收到一个推送消息,可以为该推送消息分配一个播报标签,该播报标签的初始值为:未读,并将该推送消息存储至未读消息队列的队尾;终端设备每播报完一个未读消息队列中的消息,即可将该播报过的消息的播报标签更新为:已读,并将该播报过的消息存储至已读消息队列的队尾。例如,当终端设备播报完未读消息队列中的未读消息0后,可以将该未读消息0标记为已读,并存储至已读消息队列的队尾。

进一步地,还可以配置对应于消息类型的至少两个消息队列,同样的,每个消息队列也可以进一步划分为已读消息队列和未读消息队列。终端设备在接收消息推送服务器下发的推送消息之后,将所述推送消息与预设的关键词集合中的关键词依次进行匹配,并将与匹配成功的关键词对应的消息类型确定为所述推送消息的消息类型,然后,将所述推送消息存储至与所述推送消息的消息类型对应的未读消息队列中。所述关键词集合中包括与预设的各种消息类型分别对应的各个关键词子集,每个关键词子集中包括一个以上的关键词。例如,可以将推送消息分为广告类、新闻资讯类、系统通知类等消息类型,每种类型的推送信息均设置与之对应的关键词子集。例如,广告类的关键词子集中可以包括:“广告”、“促销”、“优惠”、“降价”等关键词。

优选地,还可以为各个消息队列设置优先级,例如,可以将系统通知的优先级设为最高,新闻资讯的优先级次之,广告的优先级最低。

通过多个消息队列对不同消息类型的推送消息进行分类存储,便于实现对推送消息的分类管理和播报,进一步提高了消息播报控制时的灵活性。

优选地,在接收消息推送服务器下发的推送消息之后,还可以播报预设的消息提示音。该提示音的音频内容可以为默认的固定配置,也可以由用户根据自己的喜好自主设置,本发明实施例对此不做限定。该提示音用于指示终端设备接收到了推送消息,若用户听到了该提示音,并希望以语音的形式收听该推送消息,则可以通过语音触发播报消息的指令,终端设备可以根据该指令播报所述推送消息,由此即可保证用户在方便收听消息的时候不会错过所述推送消息。

步骤s102、采集预设的时间段内的语音信息。

所述时间段可以根据实际情况进行设置,一般地,可以将其设置为播报消息提示音后的半分钟或者1分钟之内。通过终端设备的麦克风采集该时间段内终端设备的外部环境中的语音信息。

步骤s103、判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令。

用于指示播报所述推送消息的预设指令可以根据实际情况进行设置,例如,可以将其设置为语音“播报消息”、“播报”、“语音消息”等等。

若所述语音信息中不包含用于指示播报所述推送消息的预设指令,则执行步骤s104,若所述语音信息中包含用于指示播报所述推送消息的预设指令,则执行步骤s105及其后续步骤。

步骤s104、确定不对所述推送消息进行播报。

步骤s105、提取所述语音信息中的声纹特征向量。

具体地,步骤s105可以包括如图4所示的过程:

步骤s1051、将所述语音信息划分为m个语音子段。

其中,m为大于1的整数。

步骤s1052、计算各个语音子段的梅尔频谱倒频系数向量。

具体地,可以根据下式计算各个语音子段的梅尔频谱倒频系数向量:

melvecm=mfccfuc(subvoicem)

其中,m为语音子段的序号,1≤m≤m,subvoicem为第m个语音子段,mfccfuc为预设的梅尔频谱倒频系数计算函数,melvecm为第m个语音子段的梅尔频谱倒频系数向量,且melvecm=(melcoem,1,melcoem,2,......,melcoem,n,......,melcoem,n),n为梅尔频谱倒频系数的序号,1≤n≤n,n为梅尔频谱倒频系数向量的预设维度,melcoem,n为第m个语音子段的第n个梅尔频谱倒频系数。

步骤s1053、计算各个语音子段的权重系数。

具体地,可以根据下式计算各个语音子段的权重系数:

其中,weightm为第m个语音子段的权重系数。

步骤s1054、构造所述语音信息中的声纹特征向量。

具体地,可以根据下式构造所述语音信息中的声纹特征向量:

voprintvec=(vpelem1,vpelem2,......,vpelemn,......,vpelemn)

其中,vpelemn为所述语音信息中的声纹特征向量的第n个元素,

voprintvec为所述语音信息中的声纹特征向量。

步骤s106、计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度。

所述基准声纹特征向量为从指定用户(例如,终端设备的主人)的语音中提取的声纹特征向量,其具体的计算过程与步骤s105类似,在此不再赘述。

优选地,可以根据下式计算所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度:

其中,stvpelemn为所述基准声纹特征向量的第n个元素,matdeg为所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度。

步骤s107、判断所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度是否大于预设的匹配度阈值。

所述匹配度阈值可以根据实际情况进行设置,例如,可以将其设置为70%、80%或者90%等等。

若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度小于或等于所述匹配度阈值,则说明发出播报指令的并不是所述指定用户,此时应执行步骤s104。

若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于所述匹配度阈值,则说明发出播报指令的就是所述指定用户,此时执行步骤s108。

步骤s108、以语音形式播报所述推送消息。

具体地,首先选取预设的优先级最高且队列不为空的未读消息队列作为当前消息队列,以语音形式播报队头消息,并将所述队头消息从所述当前消息队列中删除,所述队头消息为排列在所述当前消息队列的队头位置的推送消息,然后判断所述当前消息队列是否为空,若所述当前消息队列不为空,则返回执行所述以语音形式播报队头消息的步骤,直至所述当前消息队列为空为止,若所述当前消息队列为空,则返回执行所述选取预设的优先级最高且队列不为空的未读消息队列作为当前消息队列的步骤,直至各个未读消息队列均为空为止。

进一步地,除了上述的用于指示播报所述推送消息的预设指令之外,还可以设置其它的指令,例如,用于指示播报上一条消息的指令、用于指示播报下一条消息的指令、用于指示重播消息的指令以及用于指示停止播报消息的指令等等。

当终端设备接收到用于指示播报上一条消息的指令时,若终端设备当前正在播报某一消息队列中的未读消息,则终端设备可以接着播报该消息队列中最后存入的已读消息;若当前正在播报某一消息队列中的已读消息,则终端设备可以接着播报该消息队列中位于当前正在播报的已读消息之前的已读消息。

例如,假设终端设备当前正在播报未读消息队列中的未读消息p,则当终端设备接收到用于指示播报上一条消息的指令时,可以获取并播报已读消息队列中的已读消息p-1。或者,若终端设备接收到该用于指示播报上一条消息的指令时,没有正在播报的消息,且最近一次播报的消息为已读消息队列中的已读消息p-1,则终端设备可以根据该播报控制指令播报已读消息队列中的已读消息p-2。

当终端设备接收到用于指示播报下一条消息的指令时,终端设备可以播报当前正在播报的消息队列中位于当前正在播报的消息之后待播报的消息。

例如,假设终端设备当前正在播报消息队列r中未读消息队列的未读消息p,则当终端设备接收到用于指示播报下一条消息的播报指令时,可以获取未读消息队列中的未读消息p+1,并进行播报。若终端设备当前正在播报消息队列r中已读消息队列的已读消息0,则当终端设备接收到用于指示播报下一条消息的播报指令时,可以获取该已读消息队列中的已读消息1,并进行播报。

当终端设备接收到用于指示重播消息的指令时,终端设备可以重复播报当前正在播报的消息队列中最近一次播报过的消息。

例如,假设终端设备在接收到用于指示重播消息的指令时,最近播报过的消息为消息队列r中已读消息队列的已读消息p-1,则该终端设备可以重复播报该已读消息队列的已读消息p-1。

当终端设备接收到用于指示停止播报消息的指令时,终端设备可以停止播报,并且清除终端设备中缓存的推送消息。

需要说明的是,若终端设备接收到用于指示播报消息的指令时,消息队列中未读消息队列中没有存储消息,或者,终端设备在接收到用于指示播报上一条消息的指令时,终端设备已经播报至消息队列的队首;或者,终端设备在接收到用于指示播报下一条消息的播报控制指令时,终端设备已经播报至消息队列的队尾,则终端设备可以返回提示信息,该提示信息可以为语音消息“无更多消息”,用于提示用户没有可供播报的消息。

综上所述,本发明实施例在接收消息推送服务器下发的推送消息之后,首先播报预设的消息提示音,然后采集预设的时间段内的语音信息,并判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令,若所述语音信息中包含用于指示播报所述推送消息的预设指令,则提取所述语音信息中的声纹特征向量,并计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度,若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于预设的匹配度阈值,则以语音形式播报所述推送消息。通过本发明实施例,在收到推送消息时,会用消息提示音来提醒用户,若用户认为当前环境不存在隐私泄露的危险,则可以发出用于指示播报所述推送消息的预设指令,若该指令核实无误,则进一步通过声纹匹配判断发出指令的是否为指定用户,从而大大提高了推送消息播报的私密性,减少了用户隐私泄露的几率。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

对应于上文实施例所述的一种推送消息播报方法,图5示出了本发明实施例提供的一种推送消息播报装置的一个实施例结构图。

本实施例中,一种推送消息播报装置可以包括:

推送消息接收模块501,用于接收消息推送服务器下发的推送消息;

语音信息采集模块502,用于采集预设的时间段内的语音信息;

指令判断模块503,用于判断所述语音信息中是否包含用于指示播报所述推送消息的预设指令;

声纹特征向量提取模块504,用于若所述语音信息中包含用于指示播报所述推送消息的预设指令,则提取所述语音信息中的声纹特征向量;

匹配度计算模块505,用于计算所述语音信息中的声纹特征向量与预设的基准声纹特征向量之间的匹配度,所述基准声纹特征向量为从指定用户的语音中提取的声纹特征向量;

推送消息播报模块506,用于若所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度大于预设的匹配度阈值,则以语音形式播报所述推送消息。

进一步地,所述声纹特征向量提取模块可以包括:

语音子段划分单元,用于将所述语音信息划分为m个语音子段,其中,m为大于1的整数;

梅尔频谱倒频系数向量计算单元,用于根据下式计算各个语音子段的梅尔频谱倒频系数向量:

melvecm=mfccfuc(subvoicem)

其中,m为语音子段的序号,1≤m≤m,subvoicem为第m个语音子段,mfccfuc为预设的梅尔频谱倒频系数计算函数,melvecm为第m个语音子段的梅尔频谱倒频系数向量,且melvecm=(melcoem,1,melcoem,2,......,melcoem,n,......,melcoem,n),n为梅尔频谱倒频系数的序号,1≤n≤n,n为梅尔频谱倒频系数向量的预设维度,melcoem,n为第m个语音子段的第n个梅尔频谱倒频系数;

权重系数计算单元,用于根据下式计算各个语音子段的权重系数:

其中,weightm为第m个语音子段的权重系数;

声纹特征向量构造单元,用于根据下式构造所述语音信息中的声纹特征向量:

voprintvec=(vpelem1,vpelem2,......,vpelemn,......,vpelemn)

其中,vpelemn为所述语音信息中的声纹特征向量的第n个元素,

voprintvec为所述语音信息中的声纹特征向量。

进一步地,所述匹配度计算模块可以包括:

匹配度计算单元,用于根据下式计算所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度:

其中,stvpelemn为所述基准声纹特征向量的第n个元素,matdeg为所述语音信息中的声纹特征向量与所述基准声纹特征向量之间的匹配度。

进一步地,所述推送消息播报装置还可以包括:

关键词匹配模块,用于将所述推送消息与预设的关键词集合中的关键词依次进行匹配,并将与匹配成功的关键词对应的消息类型确定为所述推送消息的消息类型,所述关键词集合中包括与预设的各种消息类型分别对应的各个关键词子集,每个关键词子集中包括一个以上的关键词;

推送消息存储模块,用于将所述推送消息存储至与所述推送消息的消息类型对应的未读消息队列中。

进一步地,所述推送消息播报模块可以包括:

当前消息队列选取单元,用于选取预设的优先级最高且队列不为空的未读消息队列作为当前消息队列;

队头消息播报单元,用于以语音形式播报队头消息,所述队头消息为排列在所述当前消息队列的队头位置的推送消息;

队头消息删除单元,用于并将所述队头消息从所述当前消息队列中删除;

消息队列判断单元,用于判断所述当前消息队列是否为空。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

图6示出了本发明实施例提供的一种推送消息播报终端设备的示意框图,为了便于说明,仅示出了与本发明实施例相关的部分。

在本实施例中,所述推送消息播报终端设备6可以是手机、平板电脑、智能手表、智能手环以及智能眼镜等计算设备。该推送消息播报终端设备6可包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机可读指令62,例如执行上述的推送消息播报方法的计算机可读指令。所述处理器60执行所述计算机可读指令62时实现上述各个推送消息播报方法实施例中的步骤,例如图1所示的步骤s101至s108。或者,所述处理器60执行所述计算机可读指令62时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块501至506的功能。

示例性的,所述计算机可读指令62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令62在所述推送消息播报终端设备6中的执行过程。

所述处理器60可以是中央处理单元(centralprocessingunit,cpu),还可以是其它通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器61可以是所述推送消息播报终端设备6的内部存储单元,例如推送消息播报终端设备6的硬盘或内存。所述存储器61也可以是所述推送消息播报终端设备6的外部存储设备,例如所述推送消息播报终端设备6上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器61还可以既包括所述推送消息播报终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机可读指令以及所述推送消息播报终端设备6所需的其它指令和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。

在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机可读指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储计算机可读指令的介质。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1