查找联系人的方法和相关设备与流程

文档序号:26787470发布日期:2021-09-28 21:46阅读:365来源:国知局
查找联系人的方法和相关设备与流程
查找联系人的方法和相关设备
1.本技术要求于2020年03月26日提交中国专利局、申请号为202010223693.6、申请名称为“一种语音识别人名的方法和设备”的中国专利申请的优先权,其全部内容通过引用结合在本技术中。
技术领域
2.本技术涉及人工智能和自然语言处理领域,更具体地,涉及查找联系人的方法。


背景技术:

3.终端设备中通常保存有联系人列表,该联系人列表中保存有联系人的多种信息,例如电话号码、邮箱、住址等信息。
4.目前,查找联系人通常是在终端设备中输入联系人标识的文字搜索对应的联系人或者直接从联系人列表中手动寻找需要联系的联系人。这些查找方式效率较低,而且可能不适用于一些不便于手动操作终端设备的场景。


技术实现要素:

5.本技术提供一种查找联系人的方法和相关设备,可以通过语音指令的方式查找对应的联系人并执行相应的操作。
6.第一方面,本技术实施例提供一种查找联系人的方法。该方法包括:获取语音指令中包含的人名;从联系人列表中查询与该人名匹配的多个联系人,其中,该多个联系人包括至少一个精确联系人和至少一个模糊联系人,该精确联系人的联系人标识与该人名精确匹配,该模糊联系人的联系人标识与该人名模糊匹配;提示查询到的该多个联系人。
7.上述技术方案可以利用语音指令确定联系人,并根据确定的联系人进行相应的操作。利用语音指令,可以快速的查找语音指令中包含的联系人。此外,上述技术方案还适用于一些不便于手动操作终端设备的场景,例如驾驶场景等。
8.有些时候用户可能忘记保存的联系人标识的具体内容。上述技术方案可以同时查找到与语音指令中精确匹配和模糊匹配的联系人。用户不必说出与存储的联系人标识完全相同的人名就可以查找到希望查找到的联系人。
9.此外,上述技术方案同时查找精确匹配联系人和模糊匹配联系人,从而避免因只执行一种匹配方式(例如仅执行精确匹配或者仅执行模糊匹配)造成的联系人遗漏的情况发生。上述技术方案可以提供给用户更加全面的匹配结果,给用户更多选择。因此,上述技术方案可以提高用户查找到希望查找到的联系人的概率,提高用户体验。
10.在一些实施例中,在提示该多个联系人时,精确联系人可以排在模糊联系人之前,这样可以提升用户体验,便于用户更快地查找到希望查找的联系人。
11.结合第一方面,在第一方面的一种可能的实现方式中,该精确联系人的联系人标识与该人名精确匹配,包括:该精确联系人的联系人标识的文字与该人名的文字完全相同,或,该精确联系人的联系人标识的发音与该人名的发音完全相同;该模糊联系人的联系人
标识与该人名模糊匹配,包括:该模糊联系人的联系人标识与该人名的相关且不完全相同。
12.结合第一方面,在第一方面的一种可能的实现方式中,该模糊联系人的联系人标识包括该人名的部分单词或全部单词的昵称、全称、缩写,或者身份的同义替换词;该模糊联系人的联系人标识包括该人名中的部分或全部单词;该人名包括该模糊联系人的联系人标识包括的部分或全部单词的昵称、全称、缩写,或者身份的同义替换词;和/或该人名包括该模糊联系人的联系人标识包括的部分或全部单词。
13.结合第一方面,在第一方面的一种可能的实现方式中,在该多个联系人中同时包括联系人标识的文字与该人名的文字完全相同的精确联系人和联系人标识的发音与该人名的发音完全相同的精确联系人的情况下,该提示查询到的该多个联系人,包括:按照该联系人标识的文字与该人名的文字完全相同的精确联系人在先,该联系人标识的发音与该人名的发音完全相同的精确联系人在后的方式提示该多个联系人。上述技术方案中,与语音指令中的人名文字完全相同的排名更为靠前。这样,可以提升用户体验,便于用户更快地找到希望找到的联系人。
14.结合第一方面,在第一方面的一种可能的实现方式中,在该多个联系人中同时包括联系人标识包括的单词数目与该人名包括的单词数目相同的模糊联系人、联系人标识包括的单词数目大于该人名包括的单词数目的模糊联系人,或联系人标识包括的单词数目小于该人名包括的单词数目的模糊联系人中的至少一种的情况下,该提示查询到的该多个联系人包括:按照该联系人标识包括的单词数目与该人名包括的单词数目相同的模糊联系人、该联系人标识包括的单词数目大于该人名包括的单词数目的模糊联系人、该联系人包括的单词数目小于该人名包括的单词数目的模糊联系人中的顺序提示多个该联系人。
15.结合第一方面,在第一方面的一种可能的实现方式中,在该多个联系人中包括多个该联系人标识包括的单词数目与该人名包括的单词数目相同的模糊联系人、多个该联系人标识包括的单词数目大于该人名包括的单词数目的模糊联系人、或者多个该联系人包括的单词数目小于该人名包括的单词数目的模糊联系人的情况下,该提示查询到的该多个联系人,包括:根据多个同种模糊联系人中与该人名匹配的单词位置、字符占比和/或字母顺序对该多个同种模糊联系人进行排序;根据排序结果,提示该多个同种模糊联系人。
16.上述技术方案中,与语音指令中的人名匹配度更高的模糊联系人排序更为靠前。这样,可以提升用户体验,便于用户更快地找到希望找到的联系人。
17.结合第一方面,在第一方面的一种可能的实现方式中,该人名为印欧语系中的人名。例如,人名可以是英语、法语、西班牙语等印欧语系中的人名。这几大语种是使用人说较多的语种。此外,这些语种的人的人名都有共通的人名构成。人名来源也基本都是来自于圣人圣徒、性格外貌、动植物名、自然地理、职业职务等。这些语种的人名都是由拉丁字母组成的单词构成。人名的格式是一样的,通常包括前缀名、首名、中名、末名和后缀名。
18.结合第一方面,在第一方面的一种可能的实现方式中,该方法还包括:获取用户的选择指令,该选择指令用于选择该多个联系人中的一个联系人;对该选择指令选择的联系人执行该语音指令中的命令,该命令包括打电话、发送短信、发送邮件,或者发送即时通信消息。
19.第二方面,本技术实施例提供一种电子设备,该电子设备包括用于实现第一方面或第一方面的任一种可能的实现方式的单元。
20.第三方面,本技术实施例提供一种电子设备,该电子设备包括处理器,该处理器用于与存储器耦合,读取并执行该存储器中的指令和/或程序代码,以使得该电子设备执行第一方面或第一方面的任一种可能的实现方式。
21.第四方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有程序代码,当该计算机存储介质在计算机上运行时,使得计算机执行如第一方面或第一方面的任一种可能的实现方式。
附图说明
22.图1是应用本技术实施例的系统的示意图。
23.图2是保存联系人信息的方法的示意性流程图。
24.图3是联系人编辑界面的示意图。
25.图4是语音指令包含的人名为abraham的提示结果的示意图。
26.图5是语音指令包含的人名为smith的提示结果的示意图。
27.图6是语音指令包含的人名为jack abraham的提示结果的示意图。
28.图7是语音指令包含的人名为jack abraham的另一提示结果的示意图。
29.图8是语音指令包含的人名为jack abraham的另一提示结果的示意图。
30.图9是根据本技术实施例提供的一种查找联系人的方法的示意性流程图。
31.图10是根据本技术实施例提供的一种电子设备的示意性结构框图。
32.图11是根据本技术实施例提供的一种电子设备的示意性结构框图。
具体实施方式
33.下面将结合附图,对本技术中的技术方案进行描述。
34.本技术将围绕可包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
35.另外,在本技术实施例中,“示例的”、“例如”等词用于表示作例子、例证或说明。本技术中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
36.本技术实施例中,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
37.本技术实施例中,有时候下标如w1可能会笔误为非下标的形式如w1,在不强调其区别时,其所要表达的含义是一致的。
38.本技术实施例描述的网络架构以及业务场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
39.在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的
jones),贝拉克
·
琼斯是其别名,贝拉克
·
琼斯的别名也可以是科比(barack)。
52.又如,小詹姆斯
·
厄尔
·
泰勒(james earl taylor jr.)的别名可以是吉米
·
泰勒(jimmy taylor)。
53.又如,乔治
·
沃克
·
布朗(george walker brown)的别名可以是小布朗(brown junior),其父乔治
·
赫伯特
·
沃克
·
布朗(george herbert walker brown)的别名可以是老布朗(brown senior)。
54.本技术实施例中的人名是还可以是其他用于称呼人的称呼,例如还可以包括家属称呼,例如父亲(father)、爸爸(dad)、母亲(mother)、妈妈(mum)等;又如,还可以包括职位称呼,例如经理(manager)、秘书(secretary)等。
55.同音字可以分为两类:一类是严格相同的同音字,这类同音字是指音标完全相同但是是拼写不同的字或词。例如,knew和new是一组严格相同的同音字(音标均为/nju:/),mark和marc是一组严格相同的同音字(音标均为/m
ɑ
:k/)。另一类是音标不完全相同,但是因发音近似可能会被语音识别系统/软件判断为是同音字的字或词。例如,mary(音标为)和marry(音标为),又如ship(音标为/∫ip/)和sheep(音标为/∫i:p/)。
56.本技术实施例中所称的通信录可以是终端设备的通信录,也可以是终端设备中安装的拨号和/或短信应用(application,app)中的通信录,也可以是及时通信app(例如微信、飞书信(facebook messenger)、连我(line)等)中的通信录。
57.本技术实施例中所称的终端设备可以是手机、也可以是能够安装拨号、短信和/或通信app并且能够接收语音信号输入的电子设备(例如,平板电脑、笔记本电脑等)。
58.图1是应用本技术实施例的系统的示意图。如图1所示,系统100包括用户适应的终端设备101。系统100还可以包括数据服务器102。
59.图2是保存联系人信息的方法的示意性流程图。
60.201,终端设备获取联系人信息。
61.联系人信息可以包括联系人标识和联系方式,其中,联系方式可以包括该联系人的固定电话号码、手机号码、邮箱地址和/或社交网站(例如脸书(facebook)、推特(twitter)等)的账号。
62.可选的,联系人信息还可以包括联系人的公司、住址等信息。
63.联系人标识是指保存在终端设备内的联系人的称呼。
64.联系人标识可以是该联系人的全名、昵称、缩写、别名等。
65.假设联系人的全名为赫伯特
·
侯赛因
·
弗里曼二世(herbert hussein freeman ii),那么该联系人在联系人信息中的联系人标识可以是该联系人的全名,也可以是该联系人的别名(例如赫伯特
·
弗里曼(herbert freeman)、赫伯特(herbert)、赫伯特
·
h.
·
弗里曼(herbert h.freeman)、赫伯特
·
侯赛因
·
弗里曼(herbert hussein freeman)、也可以称他为弗里曼教授(professor freeman))、也可以是该联系人的缩写freeman,h.h。
66.假设联系人的全名为小詹姆斯
·
厄尔
·
泰勒(james earl taylor jr.),那么该联系人在联系人标识可以是该联系人的全名,也可以是该联系人的别名可(例如吉米
·
泰勒(jimmy taylor),也可以是该联系人的昵称(例如吉米(jimmy))。
67.假设联系人的全名为菲利普
·
道格拉斯
·
杰克逊(philip douglas jackson),那么该联系人在联系人标识可以是该联系人的全名,也可以是该联系人的别名(例如菲尔
·
杰克逊(phil jackson)),也可以是该联系人的昵称(例如菲尔(phil)或者禅师(zen master))。
68.联系人标识也可以是该联系人的家人称呼,例如父亲(father)、母亲(mother)、祖父(grandfather)等。
69.此外,联系人标识也可以是用户自己起的能够分辨联系人的名称。该名称可以不遵守标准的前缀、后缀、昵称、别名、和/或缩写方式。例如,赫伯特
·
侯赛因
·
弗里曼二世的联系人标识可以是f.hh。又如,菲利普
·
道格拉斯
·
杰克逊的联系人标识为z master。又如,乔治
·
沃克
·
布朗(george walker brown)的联系人标识可以是brown ii,乔治
·
赫伯特
·
沃克
·
布朗(george herbert walker brown)的联系人标识可以是brown i。
70.在一些实施例中,终端设备可以获取用户输入的联系人信息。例如,用户可以在通信录中新建联系人,并输入联系人信息。用户输入联系人信息的方式可以是通过语音输入,也可以是手动输入。又如,终端设备可以通过拍摄名片的方式获取联系人信息。
71.在另一些实施例中,终端设备中的app可以从该终端设备中的通信录中导入联系人信息,或者,也可以是终端设备中的通信录从app中导入联系人信息。
72.在另一些实施例中,终端设备也可以接收另一终端设备发送的联系人信息。例如,终端设备a将联系人a的联系人信息(即终端能设备a中保存的联系人a的联系人信息)发送给终端设备b;终端设备b接收并保存来自于终端设备a的联系人a的联系人信息。
73.202,该终端设备保存获取到的联系人信息。
74.如上所述,联系人信息可以包括联系人标识、联系方式、公司、或住址等中的一个或多个。这些信息可以保存在不同的字段中。如果用户没有输入其中一个信息,那么该信息的字段内容为空。
75.例如,联系人信息包括如下信息:联系人标识:william j smith o'rourke junior;联系人电话:917

8681868;联系人电子邮箱:worourke@huawei.com;联系人的公司为华为(huawei)。那么该终端设备可以通过以下格式保存该联系人信息:
76.fn:william j smith o'rourke junior;
77.tele:917

8681868;
78.email:worourke@huawei.com
79.co.:huawei
80.其中,fn字段中的内容是该联系人标识,tele字段中的内容是该联系人的电话,email字段中的内容是该联系人的电子邮箱地址,co.字段中是该联系人的公司名称。
81.203,该终端设备将联系人标识上传至数据服务器。
82.在一些实施例中,该终端设备可以在保存完联系人信息后就将联系人标识上传至数据服务器。
83.在另一些实施例中,该终端设备可以在启动语音助手app或者语音助手app切换到前台的情况下,将联系人标识上传至数据服务器。
84.在另一些实施例中,该终端设备可以在切换语言之后,将联系人标识上传至数据服务器。
85.例如,该终端设备可以在系统切换语言之后,将联系人标识上传至该数据服务器。
86.又如,该终端设备可以在语音助手app切换语言之后,将联系人标识上传至该数据
服务器。
87.在另一些实施例中,该终端设备可以在该终端设备的接入点发生变化的时候,将联系人标识上传至该数据服务器。
88.例如,该终端设备可以在开始漫游后(例如从归属地接入网设备切换到拜访地接入网设备后),将联系人标识上传至数据服务器。
89.又如,该终端设备可以在从移动网络(例如第四代(4
th generation,4g)系统、第五代(5
th generation,5g)系统等)的接入点切换到无线保真(wireless fidelity,wi

fi)的接入点后,将联系人标识上传至数据服务器。
90.204,数据服务器根据接收到的联系人标识,确定与该联系人标识对应的联系人身份信息。
91.联系人身份信息可以包括原始联系人身份信息和自定义联系人身份信息中的至少一个。
92.在一些实施例中,原始联系人身份信息可以包括拆分后的联系人标识。数据服务器可以将联系人标识中的各个名(前缀名、首名、中名、末名和后缀名中的一个或多个)保存在对应的字段中。这些字段可以包括:前缀名字段、首名段、中名字段、末名字段和后缀名字段。
93.前缀名和后缀名都有一些固定形式,例如典型的前缀名有:mr.,ms.,prof.;典型的后缀名有:junior,ii,iv。因此,数据服务器可以确定联系人标识中是否包括这些固定形式的名字,如果有,则将相应的名称保存在对应的字段中;如果没有,那么对应的字段中为不保存信息。
94.如果联系人标识中除了前缀名和后缀名外只有一个单词,那么可以将该单词存储在首名字段。在此情况下,中名字段和末名字段不保存信息。
95.如果联系人标识中除了前缀名和后缀名之外有两个单词,那么第一个单词可以存储在首名字段,第二个单词可以存储在末名字段。在此情况下,中名字段不保存信息。
96.如果联系人标识中除了前缀名和后缀名之外有三个单词,那么第一个单词可以存储在首名字段,第二个单词可以存储在中名字段,第三个单词可以存储在末名字段。
97.如果联系人标识中除了前缀名和后缀名之外有四个单词或者四个以上的单词,那么第一个单词可以存储在首名字段,最后一个单词可以存储在末名字段,其他单词可以存储在中名字段。
98.联系人标识中的数字也作为和字母同等的字符处理。
99.在一些情况下,联系人标识中还可以包括一些特殊字符。该特殊字符是除了正常字母和数字以外的字符。这些特殊字符可以删除。
100.此外,如果符号“'”和前后单词之间都没有空格,那么可以不认为符号“'”是一个特殊字符。符号“'”前后单词之间没有空格可以作为一个单词。例如,o'rourke中的符号“'”前后均没有空格,那么可以不认为符号“'”是一个特殊字符。在此情况下,o'rourke可以作为一个单词。又如,o'rourke中的符号“'”之前存在一个空格,那么可以确定符号“'”是一个特殊字符。在此情况下,o'rourke不可以作为一个单词。
101.例如,表1是“professor herbert hussein freeman ii”,“george herbert walker brown”,“jimmy taylor”,和“william j smith o'rourke junior”在用于保存联
系人的字段中的内容。
102.表1
[0103][0104][0105]
表1中的
“‑”
表示该字段中没有保存信息。
[0106]
用于保存联系人标识的各个字段可以使用指定的符号(例如分号“;”或者星号“*”等分隔)。
[0107]
例如,如表1所示的四个联系人分字段保存后可以是如下形式:
[0108]
professor;herbert;hussein;freeman;ii
[0109]
;george;herbert walker;brown
[0110]
;jimmy;;taylor;;
[0111]
;william j;smith;o'rourke;junior;。
[0112]
数据服务器中通常会保存多个不同的联系人的联系人身份信息。为了区分不同的联系人,可以为每个联系人身份信息分配一个标识(可以称为身份信息标识),不同的联系人的身份信息标识不同。
[0113]
在一些实施例中,数据服务器中还可以对保存的联系人身份信息进行计数。原始联系人身份信息中还可以包括相应的计数值。
[0114]
在一些实施例中,原始联系人身份信息还可以包括还可以包括未拆分的联系人标识。
[0115]
例如,如表1所示的三个原始联系人身份信息可以通过以下格式保存:
[0116][0117][0118]
uid字段中为身份信息标识,fn字段是未拆分的联系人标识,n字段中是按照前缀名、首名、中名、末名和后缀名拆分后的联系人标识;x

numbercount字段是联系人计数值。
[0119]
又如,如表1所示的三个原始联系人身份信息可以通过以下格式保存:
[0120][0121]
uid字段中为身份信息标识,fn字段是未拆分的联系人标识,pn是前缀名字段,gn是首名字段,mn是中名字段,ln是末名字段,sn是后缀名字段,x

numbercount字段是联系人计数值。
[0122]
上述实施例中,终端设备向数据服务器发送的联系人标识是未拆分的联系人标
识。
[0123]
在另一些实施例中,终端设备向数据服务器发送的联系人标识是已经按照不同类型的名字拆分好的联系人标识。
[0124]
例如,用户在终端设备中输入联系人标识的时候,就是分前缀名、首名、中名、末名和后缀名的方式输入的。此时,终端设备中就是分字段保存联系人标识。
[0125]
例如,图3是联系人编辑界面的示意图。如图3所示,联系人william j smith o'rourke junior的不同类型的名字被填入了不同的条目中。这样,终端设备可以直接按照条目将名字保存在对应的字段中。例如,将图3中的首名条目中的名字william保存在首名字段中,将中名j smith保存在中名字段中,以此类推。
[0126]
又如,终端设备接收到的另一终端设备发送的联系人标识是分字段表示的。在此情况下,该终端设备也可以直接分字段保存该联系人标识。
[0127]
在分字段保存联系人标识的情况下,william j smith o'rourke junior的联系人信息格式可以如下:
[0128]
n:;william j;smith;o'rourke;junior;
[0129]
tele:917

8681868;
[0130]
email:worourke@huawei.com
[0131]
co.:huawei。
[0132]
在另一些实施例中,终端设备向数据服务器发送的联系人标识也可以是部分按照不同类型的名字拆分好的联系人标识。
[0133]
例如,用户在保存联系人标识的时候,对联系人的部分名字进行了拆分。例如用户在保存william j smith o'rourke junior的名字时使用逗号将后缀名分隔,即用联系人标识为以下格式:william j smith o'rourke,junior。
[0134]
对于这种部分拆分的情况,数据服务器也可以按照上述规则将未拆分的部分拆分为不同类型的名字,并保存。
[0135]
在一些实施例中,如果数据服务器接收到的是拆分好的联系人标识,数据服务器也可以按照前缀名、首名、中名、末名和后缀名的顺序,将拆分好的联系人标识合并为一个完整的联系人标识,并保存在原始联系人身份信息中。
[0136]
自定义联系人身份信息中可以包括联系人标识中的各个名字的替换词。名字的替换词可以是名字的昵称、全称、身份的同义替换词或者其他常见的替代称呼。
[0137]
例如,george的替换词可以包括:georgie和jorge;jimmy的替换词可以包括james,jamie和jim。junior的替换词可以包括jr和ii。
[0138]
又如,替换词可以是单词的缩写。单词的缩写可以是单词的首字母,例如herbert hussein的替换词可以是h.h.,单词的缩写也可以是单词的部分字母,例如abraham的缩写可以是abr.。
[0139]
又如,替换词可以是身份的同义替换词。例如,daddy的身份的同义替换词可以是father或者dad。
[0140]
数据服务器可以通过可转换词表的方式确定每个名字的替换词。例如,数据服务器可以确定可转换词表中是否有目标单词(也可以称为热词)对应的数组(即是否有一个数组中包括该目标名字),如果有与该目标单词对应的数组,可以将该数组中包括的所有名字
作为该目标单词的替换词。
[0141]
表2是一个可转换词表的示意。
[0142]
表2
[0143]
序号数组234james,jamie,jimmy,jim235william,will,bill236george,georgie,jorge237herbert,herbie,herb238junior,jr,ii239father,daddy,dad240abraham,abram,abr.,bram
[0144]
假设george是目标单词。如表2所示,序号236中的数组中包含有george,因此可以将该数组中的全部单词作为george的替换词。又如,假设herbert为热词,那么由于序号237的数组中包含有herbert,因此可以将该数组中的全部单词作为herbert的替换词。
[0145]
目标单词以及该目标单词的替换词可以保存在替换词字段中。替换词字段中的任意两个词都可以称为是对方的替换词。例如,假设替换词字段中包含william,will,bill,那么可以称william是will的替换词,也可以称will是william的替换词。
[0146]
在一些实施例中,数据服务器中可以包括多个可转换词表。不同的可转换词表对应于不同的语言。例如,可转换词表1是英语的可转换词表,可转换词表2是西班牙语的可转换词表,可转换词表3是法语的可转换词表。可转换词表对应的语言可以作为可转换词表的一个属性。用于记录可转换词表对应的语言的属性可以称为语言属性。
[0147]
在一些实施例中,终端设备还可以向数据服务器发送语言信息。该语言信息用于指示该终端设备的系统的语言。例如,如果该终端设备的系统的语言为英语,那么该语言信息指示的语言英语。又如,如果该终端设备的系统的语言为法语,那么该语言信息指示的语言为法语。数据服务器可以根据接收到的语言信息,确定使用的可转换词表。数据服务器确定的可转换词表对应的语音与语言信息所指示的语言相同。例如,如果语言信息指示的是英语,那么可转换词表是英语的可转换词表。如果语言信息指示的是西班牙语,那么可转换词表是西班牙语的可转换词表。
[0148]
在另一些实施例中,数据服务器可以根据联系人标识确定使用的可转换词表。例如,数据服务器可以判断联系人标识是否是常见的某一语言的名字,如果是的话,则可以确定使用该语言的可转换词表。例如,garc
í
a,fern
á
ndez和gonz
á
lez是常见的西班牙姓氏,如果数据服务器确定联系人标识中包含上述单词,则可以确定使用西班牙语的可转换词表。又如,william、whilhelm、guillaume和guillermo是同源的人名,其中william是英语中的名字,whilhelm是德语中的名字,guillaume是法语中的名字,guillermo是西班牙语中的名字。如果数据服务器确定联系人标识中包含guillermo,则可以确定使用西班牙语的可转换词表。另外,数据服务器也可以使用预先训练好的人工智能模型判断联系人标识是哪个国家的人名。
[0149]
在另一些实施例中,数据服务器也可以结合语言信息和联系人标识确定使用的可转换词表。如果语言信息指示的语言和数据服务器根据联系人标识判断的语言一致,则可
以使用该语言的可转换词表。例如,预先信息指示的语言是西班牙语且数据服务器根据联系人标识确定的语言也是西班牙语,那么可以确定使用西班牙语的可转换词表。如果语言信息指示的语言和数据服务器根据联系人标识判断的语言不一致,则可以以语言信息指示的语言为准。例如,语言信息指示的语言是西班牙语,而数据服务器根据联系人标识确定的语言是英语,那么可以确定使用西班牙语的可转换词表。
[0150]
可转换词表可以由数据服务器的管理员进行维护。管理员可以定期或不定期更新可转换词表。更新可转换词表可以包括以下中的任一个或多个操作:增加新的条目、删除已有的条目、增加已有条目中的单词,或者删除已有条目中的单词。
[0151]
在一些实施例中,可转换词表中可以包括时间属性,该时间属性记录了可转换词表被修改/创建的时间。这个时间属性可以也称为可转换词表更新时间戳。数据服务器在根据可转换词表确定热词的替换词后,也可以记录一个时间属性。该时间属性记录了根据可转换词表确定热词的完成时间。这个时间属性可以称为处理时间戳。数据服务器可以比较处理时间戳和可转换词表更新时间戳。如果可转换词表更新时间戳晚于处理时间戳,则可以根据当前的可转换词表再次确定并保存每个热词的替换词,然后更新处理时间戳;如果可转换词表更新时间戳不晚于处理时间戳,则可以不进行任何操作。
[0152]
例如,假设管理员在2020年1月1日18:00更新了可转换词表。在此情况下,可转换词表更新时间戳可以记为2020

01

01 18:00。假设处理时间戳为2019

10

01 09:00。可见,处理时间戳早于可转换词表更新时间戳。在此情况下,数据服务器可以根据更新后的可转换词表,重新确定热词的替换词。假设数据服务器在2020年1月1日20:00完成了重新确定替换词的操作,则可以将处理时间戳更新为2020

01

01 20:00。
[0153]
例如,表2是更新前的可转换词表,表3是更新后的可转换词表。
[0154]
表3
[0155]
序号数组234james,jamie,jimmy,jim235william,will,bill,bell,billy236george,georgie,jorge237herbert,herbie,herb238junior,jr,ii239father,daddy,dad240abraham,abram,abr.,bram
[0156]
假设热词为william,更新前william的替换词有will和bill,更新后william的替换词包括will,bill,bell和billy。
[0157]
在一些实施例中,热词的替换词还可以包含热词的首字母。例如假设热词为william,那么william的替换词也可以是w。又如,假设热词为harry,那么该热词的替换词也可以是h。类似的,也可以称w的替换词是william,h的替换词是harry。
[0158]
在一些实施例中,自定义联系人信息中还可以包括标识字段,该标识字段中的标识可以与对应的原始联系人信息中标识信息相同。
[0159]
在一些实施例中,自定义联系人中还可以包括联系人标识全称字段,该字段包括联系人标识中除了特殊字符以外的全部内容。
[0160]
在一些实施例中,自定义联系人信息中还可以包括计数字段,该技术字段中的计数值可以与对应的原始联系人信息中的计数值相同。
[0161]
在一些实施例中,自定义联系人信息中还可以包括缩写字段,该缩写字段包含由联系人标识中的单个字母和该单个字母之前的单词组成的词组,和/或,由该单个字母和该单个字母之后的单词组成的词组。这个词组可以称为联系人标识的缩写。
[0162]
例如,联系人标识为william j smith o'rourke junior,那么对应的缩写字段可以包括以下两个词组中的任一个或全部,第一个词组为william j,第二个词组为j smith。
[0163]
此外,在一些实施例中,在确定缩写字段时,如果单个字母只有前面有单词或者只有后面有单词,那么只输出一个词组。
[0164]
例如,联系人标识为william j,那么缩写字段中的词组为william j。
[0165]
以william j smith o'rourke junior为例,william j smith o'rourke junior的原始联系人身份信息为:
[0166][0167]
其中"fn"字段中除了william j smith o'rourke junior还包括两个特殊字符%和&,这两个特殊字符是用户在输入联系人标识的时候误输入的,在对联系人标识进行拆分后,可以删除这些误输入的字符。
[0168]
假设采用如表2所示的可转换词表,那么william j smith o'rourke junior的自定义联系人身份信息为:
[0169][0170]
其中,name字段为联系人标识全称字段,nlupt为替换词字段,asrpt为缩写字段,phonenumnbercount为计数字段。name字段中的符号%和&是用户在输入联系人标识的时候误输入的,在确定替换词字段中的替换词以及确定缩写字段中的缩写时,可以不需要考虑这些误输入的字符。
[0171]
在一些实施例中,联系人标识全称字段的所有字母可以均为小写。例如,上述name字段可以为:"name":"william j smith o'rourke junior%&"。
[0172]
在一些实施例中,替换词字段中的所有字母可以均为小写。例如上述nlupt字段可以为:“nlupt”:["william","will","bill"],["j"],["smith"],["o'rourke"],["junior","jr"]。
[0173]
在一些实施例中,缩写字段中的所有字母可以均为小写。例如,上述asrpt字段可以为:“asrpt”:["william j"],["j smith"]。
[0174]
在一些实施例中,缩写字段还可以包括联系人的某一个名称字段的全称以及其他名称字段的首字母。例如,可以是首名全称,中名和末名的首字母。以william j smith o'rourke为例,其的缩写字段还可以包括:william j.s.o。又如,可以是末名的全称,首名和中名的首字母。还以william j smith o'rourke为例,其缩写字段还可以包括o'rourke w.j.s.。
[0175]
在一些实施例中,原始联系人身份信息中各个字段的所有字母可以均为小写。
[0176]
在一些实施例中,如果字母中有声调符号(例如法语中的
é

ù
等),在保存原始联系人信息和/或自定义联系人信息的时候可以将声调符号删除。例如,fr
é
d
é
ric可以保存为:frederic。
[0177]
在图2所示的实施例中,终端设备将联系人标识上传至数据服务器,该数据服务器根据接收到的联系人标识确定并保存对应的联系人身份信息。
[0178]
在另一些实施例中,终端设备也可以自行根据联系人标识确定对应的联系人身份信息,然后将确定的联系人身份信息上传至数据服务器。数据服务器可以保存接收到的联系人身份信息。在此情况下,终端设备可以内置可转换词表。此外,终端设备还可以从服务器(例如数据服务器或者其他服务器)下载并更新可转换词表。可选的,该终端设备还可以定期或者不定期(例如用户手动触发或者保存新的联系人信息后)查询服务器中的可转换词表是否更新,如果更新,则下载并更新本地保存的可转换词表。可选的,服务器也可以在更新了可转换词表后,主动将更新的可转换词表推送给终端设备。
[0179]
本技术实施例提供一种查找联系人的方法。该方法可以根据语音指令确定需要执行的响应操作以及响应操作中的对象。上述过程可以由四个模块实现:模块1,语音转文本服务;模块2,意图理解服务;模块3,对话管理服务;模块4,数据服务。
[0180]
模块1,语音转文本服务
[0181]
语音转文本服务的主要功能是负责将语音转换为对应的文本。
[0182]
在一些实施例中,语音转文本服务还可以对终端设备保存的联系人标识中的人名的具有较高的识别率。
[0183]
语音识别任务根据不同的任务可以划分为不同的垂类。例如,电话垂类、音乐垂类、电影垂类等。每个垂类可以有一个对应的语言模型。采用某一垂类对应的语言模型对该垂类的语音识别准确率较高。例如,采用电话垂类的语音模型可以对联系人人名以及与电话相关的指令(例如拨打电话、发送短信等)的识别具有较高的准确率;采用音乐垂类的语音模型可以对歌名、歌手以及与播放音乐相关的指令(例如重复播放、下一首等)的识别具有较高的准确率。
[0184]
用于负责语音转换的语言模型可以是电话垂类的语言模型。用于训练该语言模型的语料可以是与拨打电话相关的指令。用于训练该语言模型的语料还可以包括由人名组成的人名语料库。语音转文本服务可以在确定获取的语音指令中包括与人名语料库中的人名匹配的声音信号的情况下,确定该声音信号对应的文本是人名。
[0185]
在一些实施例中,该人名语料库可以包含常见的人名。
[0186]
在另一些实施例中,不同的终端设备可以使用不同的人名语料库来训练该语言模
型。用于训练语言模型的人名语料库由该终端设备内的联系人标识组成。人名语料库可以由模块4数据服务提供。数据服务可以将原始联系人信息中的分字段保存的各个字段中的名字、自定义联系人信息中的替换词字段中的名字和/或自定义联系人信息中的缩写字段中的名字作为人名语料库中的人名。
[0187]
例如,终端设备a中保存有100个联系人信息,终端设备b保存有200个联系人信息,终端设备a使用的语言模型可以通过包含其保存的100个联系人标识(或者根据这100个联系人标识确定的替换词、联系人标识的缩写和/或分字段保存的名字)的人名语料库训练得到,终端设备b使用的语言模型可以通过包含其保存的200个联系人标识(或者根据这200个联系人标识确定的替换词、联系人标识的缩写和/或分字段保存的名字)的人名语料库训练得到。
[0188]
上述技术方案可以提高识别人名的准确率。例如,如果用户因为口音等原因将mary的发音发成了marry的发音,那么通过上述技术方案得到的语言模型也可以将该发音识别为常见的人名mary。又如,终端设备中保存的联系人标识为marc,如果该终端设备使用的语言模型是使用该终端设备保存的联系人标识训练得到的,那么用户发出的语音指令中的/m
ɑ
k/会被识别为marc而不是同音字mark。
[0189]
在一些实施例中,语音转文本服务还可以识别同音字。如果终端设备保存两个或两个以上的联系人标识为同音字且用户发出的语音指令中包含该同音字的发音,那么语音转文本服务可以识别出含该两个或两个以上的联系人。例如,假设终端设备保存的联系人1的联系人标识为marc,联系人2的联系人标识为mark。如果用户的语音指令中包含/m
ɑ
k/,那么该语音转文本服务可以识别出发音/m
ɑ
:k/对应的人名包含marc和mark。
[0190]
在一些实施例中,如果语音转文本服务中识别出两个或两个以上的同音字,那么语音转文本服务输出到意图识别服务的文本可以包括该两个或两个以上的同音字中的一个,该两个或两个以上的同音词可以作为推荐人名输入至对话管理服务。
[0191]
例如,假设终端设备保存的联系人1的联系人标识为marc,联系人2的联系人标识为mark。如果用户的语音指令为/m
ɑ
:k/,语音转文本服务输出的文本为:call mark,输出的推荐人名为:mark,marc。call mark可以作为输入到意图识别服务的文本,mark和marc可以作为输入到对话管理服务的文本。
[0192]
在另一些实施例中,如果语音转文本服务识别出两个或两个以上的同音字,那么语音转文本服务可以将识别出的同音字都作文输出文本中的内容。多个同音字可以用特定的符号进行标记,例如“/”,“#”或“*”等。
[0193]
例如,假设终端设备保存的联系人1的联系人标识为marc,联系人2的联系人标识为mark。如果用户的语音指令为/m
ɑ
:k/,语音转文本服务输出的文本为:call mark/marc。
[0194]
在一些实施例中,对于不同的口音,语音转文本服务也能提供准确的识别结果。例如,对于英国口音的语音指令和美国口音的语音指令,语音转文本服务都能转换为相应的文本。
[0195]
在一些实施例中,语音转文字服务在进行语言到文字的转换时可以删除变音符号。例如,语音指令中包含人名val
é
ry,语音转文字服务转换后得到的文字为valery。这样,对于西班牙语或法语等中的带有不同变音符号的相同的字母,语音转文本服务也能够提供
正确的文本。
[0196]
在一些实施例中,对于连字(例如和),在语音转文字服务时可以转换为一个字母。
[0197]
模块2,意图理解服务
[0198]
意图理解服务是根据语音转文本服务提供的文本识别出用户的意图,并提取文本中的人名和对应的意图。例如,语音转文本服务提供的文本是call mark。那么,可以确定call就是意图,mark是人名。相应的,人名mark也是意图call的槽位。
[0199]
意图理解服务可以进一步分为意图识别和槽位填充两个任务。
[0200]
意图识别是为了判断用户希望做什么。槽位填充包括命名实体识别和槽位预测。命名实体识别是指确定意图的对象,槽位预测是指确定槽位的位置。在确定了槽位的位置后,可以将识别出的命名实体填入预测出的槽位。
[0201]
例如,语音转文本服务提供的文本是:我想给我的爸爸打电话。通过意图识别,可以确定意图是“打电话”,通过槽位填充,可以确定槽位是“我的爸爸”。
[0202]
在一些情况下,槽位和命名实体可能包括多个。例如,假设语音转文本服务提供的文本为“给爸爸发短信告诉他我不回家吃晚饭”,意图是发短信,槽位有两个,槽位1是发短信的对象;槽位2是短信内容。槽位1的命名实体是“爸爸”,槽位2的命名实体是“我不回家吃饭”。
[0203]
电话场景的意图比较固定,例如通常只有打电话、发短信、发微信、视频通话等有限的几项,而且槽位的位置通常也都是固定的。因此,可以基于电话场景确定意图识别和槽位预测的实现方式。命名实体通常是终端设备通信录中保存的联系人标识,因此,可以根据通信录中保存的联系人标识确定出命名实体。
[0204]
另外,意图理解服务还可以确定文本中是否包括用特定符号隔开的多个人名,如果包括该多个人名,可以将这多个人名都作为槽位的命名实体。
[0205]
例如,语音转文本服务输出的文本为:call mark/marc,那么槽位共有两个命名实体,分别为mark和marc。
[0206]
模块3,对话管理服务
[0207]
对话管理服务识对别出的人名和对应的意图执行相应的操作。
[0208]
例如,假设意图是打电话,槽位是mark,且终端设备保存的联系人列表中包括一个标识为mark的联系人且该联系人只有一个手机号码,那么执行对应的操作是拨打联系人标识为mark的手机号码。
[0209]
又如,假设意图是发短信,槽位1是爸爸且终端设备保存的联系人列表中只有一个标识为爸爸的联系人且该联系人只有一个手机号码,槽位2是晚上不回家吃饭,那么执行对应的操作是给联系人标识为爸爸的联系人的手机号码发短信,短信内容是晚上不回家吃饭。
[0210]
上述意图对应的对象(例如人名以及电话号码)都是唯一且完全匹配的,这样对话管理服务可以直接执行相应的操作。
[0211]
在另一些情况下,意图对应的对象可能不是唯一的。例如,意图理解服务确定的意图是打电话,槽位是mark,但是联系人列表中只包括联系人标识为mark smith的联系人,没有包括联系人标识为mark的联系人。又如,意图理解服务确定的意图是打电话,槽位是
martin freeman),该语音指令中包含人名martin freeman,那么如表4所示的序号9的联系人martin freeman就是该人名的第一精确联系人。
[0221]
又如,假设用户发出的语音指令为给val
é
ry打电话(make a call to val
é
ry),该语音指令中包含人名val
é
ry。语音转文字服务在进行语音到文本转换时删除了变音符号,得到的名字为valery。由此可见,如表4所示的序号为16的联系人valery就是该人名的第一精确联系人。
[0222]
又如,假设用户a发出的语音指令为给tom smith打电话(make a call to tom smith)且用户a的语音指令中tom的发音是英国口音假设用户b发出的语音指令也为给tom smith打电话(make a call to tom smith),但是用户b的语音指令中tom发音是美国口音/t
ɑ
:m/。虽然用户a和用户b的口音不同,但是语音转文字服务都可以得到名字tom smith。在此情况下,如表4所示的序号为4的联系人tom smith就是该人名的第一精确联系人。
[0223]
此外,如果两个人名的区别仅是变音符号不同或者一个包含变音符号而另一个不包含变音符号,那么也可以认为这两个人名是文字精确匹配。
[0224]
例如,假设用户发出的语音指令为给val
é
ry打电话(make a call to val
é
ry),该语音指令中包含人名val
é
ry。语音转文字服务在进行语音到文本转换时保留了变音符号,得到的名字为val
é
ry。此时,可以确定如表4所示的序号为16的联系人valery就是该人名val
é
ry的第一精确联系人。
[0225]
第二精确联系人的联系人标识的发音与人名的发音完全相同。
[0226]
例如,假设用户发出的语音指令为给/m
ɑ
:k//sm
i
θ/打电话(make a call to/m
ɑ
:k//sm
i
θ/),该语音指令中包含的人名的音标为/m
ɑ
:k//sm
i
θ/。如表4所示的序号为2的联系人mark smith和序号为3的联系人marc smith的音标都与语音指令中的人名的音标相同。因此,可以确定序号为2的联系人mark smith和序号为3的联系人marc smith是语音指令包含的人名的第二精确联系人。
[0227]
根据模糊联系人包括的单词和人名包括的单词的关系,模糊联系人可以有以下几种情况:
[0228]
情况1,模糊联系人的联系人标识包括人名的部分单词或全部单词的昵称、全称、缩写,或者身份的同义替换词;
[0229]
情况2,模糊联系人的联系人标识包括人名中的部分或全部单词;
[0230]
情况3,人名包括模糊联系人的联系人标识包括的部分或全部单词的昵称、全称、缩写,或者身份的同义替换词;
[0231]
情况4,人名包括模糊联系人的联系人标识包括的部分或全部单词。
[0232]
此外,模糊联系人包括的单词数目可以等于、大于或者小于人名包括的单词数目。
[0233]
为了便于描述,可以将模糊联系人分为三种,分别称为第一模糊联系人、第二模糊联系人和第三模糊联系人。
[0234]
第一模糊联系人包括的单词数目与人名包括的单词数目相同,且第一模糊联系人包括该人名的部分或者全部单词的昵称、全称、缩写或者身份的同义替换词。换句话说,第一模糊联系人通过替换词转换后能够得到与人名的文字精确匹配的联系人标识。
[0235]
例如,语音指令为给will打电话(make a call to will),语音指令中包含的人名
为will。根据如表2所示的可转换词表,william是will的替换词。因此,如表4所示的序号为5的联系人william是语音指令中的人名的第一模糊联系人。
[0236]
又如,语音指令为给joe abraham打电话(make a call to joe abraham),语音指令中包含人名joe abraham。abraham是abram的替换词。这样,如表4所示的序号为18的联系人joe abram是语音指令中的人名的第一模糊联系人。
[0237]
例如,语音指令为给daddy打电话(make a call to daddy),语音指令中包含的人名为daddy。根据如表2所示的可转换词表,daddy是father的家人称呼的同意替换。因此,如表4所示的序号为7的联系人father是语音指令中的人名的第一模糊联系人。
[0238]
又如,语音指令为给cindy h s打电话(make a call to cindy h s),语音指令中包含人名cindy h s。假设词的替换词还可以包含该词的首字母,那么hyde的替换词包括字母h,smith的替换词包括字母s。这样,如表4所示的序号为8的联系人cindy hyde smith是语音指令中的人名的第一模糊联系人。
[0239]
第二模糊联系人包括的单词数目大于人名包括的单词数目,且第二模糊联系人包括人名中的部分或全部单词的昵称、全称、缩写或者身份的同义替换词。换句话说,人名包括的单词或人名包括的单词的替换词为第二模糊联系人包括的单词的子集。
[0240]
例如,语音指令为给cindy打电话(make a call to cindy),该语音指令中包含人名cindy。cindy是如表4所示的序号为8的联系人标识cindy hyde smith的子集。因此,表4所示的序号为8的联系人标识cindy hyde smith是人名cindy的第二模糊联系人。
[0241]
又如,语音指令为给abram打电话(make a call to abram),该语音指令中包含人名abram。abram的替换词是abr.和abraham。abr.是如表4所示的序号为11的联系人标识的子集,abraham是如表4所示的序号为13和14的联系人标识的子集,abram是如表4所示的序号为6和18的联系人的子集。因此,表4所示的序号为6、11、13、14和18是人名abram的第二模糊联系人。此外,如表4所示的序号为15的联系人还是人名abram的第一模糊联系人。
[0242]
又如,语音指令为给will打电话(make a call to will),该语音指令中包含人名will。will的替换词是willson。will是如表4所示的序号为19的联系人标识的子集。因此,表4所示的序号19是人名will的第二模糊联系人。此外,如表4所示的序号为5的联系人还是人名will的第一模糊联系人。
[0243]
第三模糊联系人包括的单词数目小于人名包括的单词数目,且人名包括第三模糊联系人中的部分或全部单词的昵称、全称、缩写或者身份的同义替换词。换句话说,第三模糊联系人包括的单词为人名包括的单词的子集。
[0244]
例如,语音指令为给william hudson打电话(make a call to william hudson),该语音指令中包含人名william hudson。如表4所示的序号为5的联系人标识william是william hudson的子集。因此,表4所示的序号为5的联系人标识william是人名william hudson的第三模糊联系人。
[0245]
在一些实施例中,可以先执行第一查询规则,确定是否有精确匹配的联系人。如果有精确匹配的联系人,那么可以执行相应的操作;如果没有精确匹配的联系人,那么可以执行第二查询规则,确定是否有模糊匹配的联系人;如果有模糊匹配的联系人,那么根据匹配到的联系人数目确定提示执行语音指令中的命令或者提示查找到的联系人。
[0246]
语音指令中的命令可以由意图理解服务确定的意图和槽位决定的。例如,意图是
打电话,槽位是jack smith,那么需要执行的命令就是给jack smith拨打电话。又如,意图是发短信,槽位1是“爸爸”,槽位2是“我不回家吃饭”,那么需要执行的命令是给爸爸发送内容是“我不回家吃饭”的短信。
[0247]
如果有且仅有一个精确匹配的联系人,那么可以直接执行语音指令中的命令或者提示用户是否执行语音指令中的命令。
[0248]
例如,语音指令为给jack smith打电话(make a call to jack smith),该语音指令中包含人名jack smith,联系人列表中只有一个与该人名精确匹配的联系人标识,即序号为1的联系人标识,且该联系人只有一个电话号码。在此情况下,可以执行该语音指令中的命令,拨打jack smith的电话号码+16102448950,或者也可以询问用户是否拨打jack smith的电话号码+16102448950。
[0249]
又如,语音指令为给tom smith打电话(make a call to tom smith),该语音指令中包含人名tom smith,联系人列表中只有一个与该人名精确匹配的联系人标识,即序号为1的联系人标识。然而,该联系人有两个电话号码。在此情况下,终端设备可以通过屏幕或者语音提示两个电话号码并询问用户拨打哪个电话。用户可以通过终端设备的输入装置(例如触摸屏或者键盘等)选择需要拨打的电话号码。用户也可以通过语音指令来指示需要拨打的电话号码。例如,如果用户继续发出语音指令“拨打第一个”或者“第一个”,那么该终端设备可以拨打电话号码+13158161986;如果用户继续发出语音指令“拨打第二个”或者“第二个”,那么该终端设备可以拨打电话号码+16102384437。
[0250]
如果有至少两个精确匹配的联系人,那么可以提示用户查找到该至少两个联系人,并询问用户拨打哪个联系人的电话号码。
[0251]
例如,假设用户发出的语音指令为给/m
ɑ
:k//sm
i
θ/打电话(make a call to/m
ɑ
:k//sm
i
θ/),该语音指令中包含的人名的音标为/m
ɑ
:k//sm
i
θ/。联系人列表中有两个联系人与该人名精确匹配,联系人1为序号为2的联系人mark smith,联系人2为序号为3的联系人marc smith。此时,终端设备可以通过屏幕或者语音提示查找到两个叫做/m
ɑ
:k//sm
i
θ/的联系人并询问用户拨打哪个/m
ɑ
:k//sm
i
θ/的电话。用户可以通过终端设备的输入装置(例如触摸屏或者键盘等)选择需要拨打的电话号码。用户也可以通过语音指令来指示需要拨打的电话号码。例如,如果用户继续发出语音指令“拨打第一个”或者“第一个”,那么该终端设备可以拨打mark smith的电话号码;如果用户继续发出语音指令“拨打第二个”或者“第二个”,那么该终端设备可以拨打marc smith的电话号码。
[0252]
此外,如果存在至少两个精确匹配的联系人,且该至少两个精确匹配的联系人中包含至少一个第一精确联系人和至少一个第二精确联系人,那么可以按照第一精确联系人在先,第二精确联系人在后的顺序程序该至少两个精确匹配的联系人。
[0253]
如果没有精确匹配的联系人,但是有且只有一个模糊匹配的联系人,那么可以提示用户是否执行语音指令中的命令。
[0254]
例如,语音指令为给cindy打电话(make a call to cindy),该语音指令中包含人名cindy,联系人列表中只有一个与该人名模糊匹配的联系人标识,即序号为8的联系人标识,且该联系人只有一个电话号码。在此情况下,终端设可以通过屏幕或者语音提示用户是否拨打cindy hyde smith的电话号码。
[0255]
又如,语音指令为给/nil/打电话(make a call to/nil/),该语音指令中包
含人名/nil/。语音转文本服务可以确定该人名的读音的文本为o’neal。联系人列表中只有一个与该人名模糊匹配的联系人标识,即序号为17的联系人标识,且该联系人只有一个电话号码。在此情况下,终端设可以通过屏幕或者语音提示用户是否拨打shaquille o'neal的电话号码。
[0256]
在另一些实施例中,如果没有精确匹配的联系人,但是有且只有一个模糊匹配的联系人,那么可以直接执行语音指令中的命令。
[0257]
如有没有精确匹配的联系人,但是有多个模糊匹配的联系人,那么可以提示该多个模糊匹配的联系人。
[0258]
例如,假设用户发出的语音指令为给abraham打电话(make a call to abraham),该语音指令中包含的人名abraham。如表2所示,abraham的替换词包括:bram,abram和abr.。联系人列表中有一个联系人与该人名精确匹配,即序号为15的联系人abraham。除此之外,联系人列表中还有五个联系人与该人名模糊匹配,分别是序号为6的联系人tom w.abram,序号为11的联系人jack abr.,序号为13的联系人jack abraham,jr,序号为14的联系人jack abraham和序号为18的联系人joe abram。此时,终端设备可以通过屏幕或者语音提示查找到六个叫abraham或者对应的全称是abraham的联系人并询问用户拨打哪个abraham的电话。用户可以通过终端设备的输入装置(例如触摸屏或者键盘等)选择需要拨打的电话号码。用户也可以通过语音指令来指示需要拨打的电话号码。例如,如果用户继续发出语音指令“joe abram”,那么该终端设备可以拨打joe abram的电话号码;如果用户继续发出语音指令“jack abraham”,那么该终端设备继续提示用户是拨打jack abraham电话还是jack abraham,jr的电话。
[0259]
在一些实施例中,如果存在多个模糊匹配的联系人,可以按照:第一模糊联系人、第二模糊联系人和第三模糊联系人是顺序提示用户。如果存在多个第一模糊联系人,则可以按照以下规则呈现该多个联系人:规则1,完全匹配的单词出现位置越靠前,则排序越靠前;规则2,在规则1执行结果相同时,按照字符匹配占比从高到低排序;规则3,在规则1和规则2执行结构都相同时,按照字母顺序排序。类似的,如果存在多个第二模糊联系人,该多个第二模糊联系人也可以按照上述规则1至规则3排序。类似的,如果存在多个第三模糊联系人,该多个第三模糊联系人也可以按照上述规则1至规则3排序。
[0260]
图4是语音指令包含的人名为abraham的提示结果的示意图。
[0261]
以与abraham匹配的六个联系人为例。该六个联系人分别为:abraham、tom w.abram、jack abr.、jack abraham,jr、jack abraham和joe abram。
[0262]
六个联系人中,联系人abraham是与语音指令中的人名精确匹配的联系人,即第一精确联系人,除联系人abraham以外的其他五个联系人(即tom w.abram、jack abr.、jack abraham,jr、jack abraham和joe abram)都是与语音指令中的人名模糊匹配的联系人。语音指令中的人名是这五个模糊匹配的联系人的子集。因此,这五个联系人都是abraham的第二模糊联系人。
[0263]
由于联系人abraham是第一精确联系人,因此,联系人abraham排在五个模糊匹配的联系人之前。
[0264]
abraham在jack abr.、jack abraham,jr、jack abraham和joe abram这四个联系人中都是第二个名字,在tom w.abram中是第三个名字。因此,tom w.abram排序是最后的。
此外,abraham在jack abr.、jack abraham和joe abram的占比相同,在jack abraham,jr的占比小于前三个联系人标识。因此,对于jack abr.、jack abraham和joe abram的排序需要按照规则3排序,这三个联系人标识的首字母均为j。因此,可以继续比较第二个字母。这三个联系人标识的第二个字母分别为a,a和o,joe abram可以排在最后。继续比较联系人jack abr.和jack abraham,可以发现这两个联系人标识的前7个字母都相同,不同之处在于联系人jack abr.的第八个字符是符号"."。可以认为符号的优先级高于字母的优先级。因此,可以将jack abr.排在jack abraham之前。综上,终端设备可以按照以下顺序提示:1)abraham;2)jack abr.;3)jack abraham;4)joe abram;5)jack abraham,jr;6)tom w.abram。
[0265]
在另一些实施例中,如果存在多个第一模糊联系人/多个第二模糊联系人/多个第三模糊联系人,则可以按照联系人在联系人列表中的序号顺序提示多个联系人。
[0266]
图5是语音指令包含的人名为smith的提示结果的示意图。
[0267]
以与smith模糊匹配的五个联系人为例。该五个联系人分别为:序号为1的联系人jack smith,序号为2的联系人mark smith,序号为3的联系人marc smith,序号为4的联系人tom smith和序号为8的联系人cindy hyde smith。那么,终端设备可以按照以下顺序提示:1)jack smith;2)mark smith;3)marc smith;4)tom smith;5)cindy hyde smith。
[0268]
上述实施例是在执行第一查询规则后,根据确定结果来判断是否执行第二查询规则。换句话说,上述实施例中如果确定有精确匹配的联系人则不需要执行第二查询规则,如果没有精确匹配的联系人,才需要执行第二查询规则。
[0269]
例如,假设用户发出的语音指令为给jack打电话(make a call to jack),该语音指令中包含的人名jack。联系人列表中有一个联系人与该人名精确匹配,即序号为12的联系人jack。此时,终端设备可以直接拨打jack的电话号码,或者,提示用户是否拨打jack的电话号码。可见,在此情况下,不需要查找除与语音指令中的人名jack模糊匹配的联系人(例如联系人jack smith,jack abr.等)。
[0270]
在另一些实施例中,可以同时执行第一查询规则和第二查询规则确定查询结果;如果查询结果有且仅有一个匹配的联系人,那么可以直接执行语音指令中的命令或者提示用户是否执行语音指令中的命令;如果查询结果有多个匹配的联系人,那么可以提示该多个匹配的联系人。
[0271]
查询结果有且仅有一个匹配的联系人可以包括查询结果有且仅有一个精确匹配的联系人。查询结果有且仅有一个匹配的联系人也可以包括查询结果有且仅有一个模糊匹配的联系人。
[0272]
查询结果有多个匹配的联系人可以包括:查询结果包括一个精确匹配的联系人和一个模糊匹配的联系人;查询结果包括多个精确匹配的联系人和一个模糊匹配的联系人;查询结果包括一个精确匹配的联系人和多个模糊匹配的联系人;查询结果多个精确匹配的联系人和多个模糊匹配的联系人;查询结果包括多个精确匹配的联系人;查询结果包括多个模糊匹配的联系人。
[0273]
如果该多个匹配的联系人中既有精确匹配的联系人也有模糊匹配的联系人,则可以将精确匹配的联系人排在模糊匹配的联系人之前,或者,可以使用不同的方式显示这两类联系人(例如,精确匹配的联系人高亮显示,模糊匹配的联系人非高亮显示;又如,精确匹
配的联系人与模糊匹配的联系人采用不同颜色的文字显示)。
[0274]
图6是语音指令包含的人名为jack abraham的提示结果的示意图。
[0275]
例如,假设用户发出的语音指令为给jack abraham打电话(make a call to jack abraham),该语音指令中包含的人名jack abraham。联系人列表中有一个联系人与该人名精确匹配,即序号为14的联系人jack abraham。除此之外,联系人列表中还包括多个模糊匹配的联系人。该多个模糊匹配的联系人包括序号为11的联系人jack abr.,序号为12的联系人jack,序号为13的联系人jack abraham,jr和序号为15的联系人abraham。此时,终端设备可以按照如下顺序提示查找到的联系人:1)jack abraham;2)jack abr.;3)jack;4)jack abraham,jr;5)abraham。
[0276]
该多个匹配的联系人可以按照第一精确联系人、第二精确联系人、第一模糊联系人、第二模糊联系人和第三模糊联系人的顺序进行排序。如果存在多个同一类型的联系人,也可以按照上述规则1至规则3对多个联系人进行排序。
[0277]
图7是语音指令包含的人名为jack abraham的另一提示结果的示意图。
[0278]
还以指令中的人名为jack abraham为例,如果按照上述规则,那么五个联系人jack abraham、jack abr.、jack、jack abraham,jr中的jack abraham是第一精确联系人,jack abr.是第一模糊联系人,jack和abraham是第三模糊联系人,jack abraham,jr是第二模糊联系人。因此,终端设备可以按照如下顺序提示查找到的联系人:1)jack abraham;2)jack abr.;3)jack abraham,jr;4)jack;5)abraham,其中jack和abraham都是第三模糊联系人,但是jack在人名jack abraham完全匹配的位置比abraham完全匹配的位置靠前,因此先提示jack。
[0279]
图8是语音指令包含的人名为jack abraham的另一提示结果的示意图。
[0280]
还以指令中的人名为jack abraham为例,假设通信列表中包含以下几个联系人:jack abram,jack abr.,jack abraham,jack abraham,jr和mr.jack abraham。那么,jack abraham是第一精确联系人,jack abram和jack abr.是第一模糊联系人,jack abraham,jr和mr.jack abraham是第二模糊联系人。因此,终端设备可以按照如下顺序提示查找到的联系人:1)jack abraham;2)jack abram.;3)jack abr.;4)jack abraham,jr;5)mr.jack abraham,其中jack abram和jack abr.都是第一模糊联系人,且这两个名字的前七个字母都相同,假设符号的顺序要低于字母的顺序,因此先提示jack abram;jack abraham,jr和mr.jack abraham都是第二模糊联系人,但是jack abraham,jr在人名jack abraham完全匹配的位置比mr.jack abraham靠前,因此先提示jack abraham,jr。
[0281]
上述实施例中,模糊匹配的对象包括第一模糊联系人、第二模糊联系人和第三模糊联系人。在另一些实施例中,模糊匹配的对象也可以仅包括第一模糊联系人、第二模糊联系人和第三模糊联系人中的部分。
[0282]
在另一些实施例中,如果存在多个匹配的联系人,也可以直接根据联系人标识的首字母的先后顺序进行排序。
[0283]
在另一些实施例中,如果存在多个匹配的联系人,也可以根据联系人标识包括的字母数目排序。
[0284]
图9是根据本技术实施例提供的一种查找联系人的方法的示意性流程图。
[0285]
901,获取语音指令中包含的人名。
[0286]
902,从联系人列表中查询与该人名匹配的多个联系人,其中,该多个联系人包括至少一个精确联系人和至少一个模糊联系人,该精确联系人的联系人标识与该人名精确匹配,该模糊联系人的联系人标识与该人名模糊匹配。
[0287]
903,提示查询到的该多个联系人。
[0288]
图9所示的同时查找精确匹配联系人和模糊匹配联系人,这样可以提供给用户更加全面的匹配结果。从而避免因只执行一种匹配方式(例如仅执行精确匹配或者仅执行模糊匹配)造成的联系人遗漏的情况发生。
[0289]
还以表4所示的联系人列表为例。例如,假设用户发出的语音指令中包含的人名为abraham,如果仅执行精确匹配,那么可能只会找到一个联系人,即表4中与语音指令中完全相同的人名abraham,或者,最多查找包含abraham的联系人,即jack abraham,jr和jack abraham。但是,本技术的技术方案还可以查找到联系人标识中包含abraham的昵称和缩写的联系人。本技术技术方案可以查找到六个联系人,分别为abraham、tom w.abram、jack abr.、jack abraham,jr、jack abraham和joe abram。
[0290]
由此可见,本技术的技术方案提供到的查询结果更为全面,这样可以给用户更多的选择。因此,上述技术方案可以提高用户查找到希望查找到的联系人的概率,提高用户体验。
[0291]
在一些实施例中,图9所示的方法可以由终端设备实现。
[0292]
例如,终端设备可以通过语音转文本服务,将接收到的语音指令转换为对应的文本;然后通过意图理解服务识别出文本中的人名和对应的意图。该终端设备可以根据事先确定的联系人身份信息,从联系人列表中查询与该人名匹配的多个联系人并提示查询到的多个联系人。该联系人身份信息可以是该终端设备确定的,也可以是由数据服务器确定的。数据服务器可以在确定了联系人身份信息后,将确定的联系人身份信息发送给该终端设备。该终端设备保存接收到的联系人身份信息。
[0293]
在另一些实施例中,图9所示的方法也可以由服务器和终端设备联合实现。
[0294]
例如,终端设备可以将接收到的语音指令直接发送给服务器。该服务器可以通过语音转文本服务,将接收到的语音指令转换为对应的文本;然后通过意图理解服务识别出文本中的人名和对应的意图。该服务器可以根据事先确定的联系人身份信息查询与该人名匹配的多个联系人。最后,该服务器可以将查询到的多个联系人发送给终端设备,终端设备可以提示查询到的多个联系人。联系人身份信息可以是由数据服务器确定的。该服务器可以是该数据服务器,也可以是不同于该数据服务器的另一个服务器。如果该服务器与数据服务器是两个不同的服务器,那么数据服务器可以将确定的联系人身份信息发送给该服务器。该联系人身份信息也可以是由终端设备确定并发送至该服务器的。
[0295]
例如,终端设备可以通过语音转文本服务,将接收到的语音指令转换为对应的文本;然后通过意图理解服务识别出文本中的人名和对应的意图。该终端设备可以将确定的人名发送给服务器。该服务器可以根据事先确定的联系人身份信息查询与该人名匹配的多个联系人。最后,该服务器可以将查询到的多个联系人发送给终端设备,终端设备可以提示查询到的多个联系人。该联系人身份信息可以是由数据服务器确定的。该服务器可以是该数据服务器,也可以是不同于该数据服务器的另一个服务器。如果该服务器与数据服务器是两个不同的服务器,那么数据服务器可以将确定的联系人身份信息发送给该服务器。该
联系人身份信息也可以是由该终端设备确定并发送至该服务器的。
[0296]
该精确联系人的联系人标识与该人名精确匹配可以包括:该精确联系人的联系人标识的文字与该人名的文字完全相同,或,该精确联系人的联系人标识的发音与该人名的发音完全相同。
[0297]
该模糊联系人的联系人标识与该人名模糊匹配可以包括:该模糊联系人的联系人标识与该人名的相关且不完全相同。可选的,该模糊联系人的联系人标识包括该人名的部分单词或全部单词的昵称、全称、缩写,或者身份的同义替换词;该模糊联系人的联系人标识包括该人名中的部分或全部单词;该人名包括该模糊联系人的联系人标识包括的部分或全部单词的昵称、全称、缩写,或者身份的同义替换词;和/或,该人名包括该模糊联系人的联系人标识包括的部分或全部单词。
[0298]
终端设备或服务器中除了保存联系人列表外,还可以保存黄页信息。在一些实施例中,如果没有与人名精确匹配的联系人,还可以确定黄页信息中是否有与人名精确匹配的黄页。例如,黄页信息中可以记录中国移动的客服电话10086、中国联通的克服电话10010、国家电网的客服电话95598等。如果用户语音指令为“给中国移动打电话”,那么可以确定该语音指令中的人名“中国移动”与黄页信息中的“中国移动”匹配。在此情况下,可以确定相应的响应操作为拨打中国移动的客服电话10086。
[0299]
在一些实施例中,该多个联系人中可以同时包括联系人标识的文字与该人名的文字完全相同的精确联系人和联系人标识的发音与该人名的发音完全相同的精确联系人,即多个联系人中同时包括第一精确联系人和第二精确联系人,在此情况下,可以按照该联系人标识的文字与该人名的文字完全相同的精确联系人在先,该联系人标识的发音与该人名的发音完全相同的精确联系人在后的方式提示该多个联系人。
[0300]
在另一些实施例中,在该多个联系人中同时包括联系人标识包括的单词数目与该人名包括的单词数目相同的模糊联系人、联系人标识包括的单词数目大于该人名包括的单词数目的模糊联系人,或联系人标识包括的单词数目小于该人名包括的单词数目的模糊联系人中的至少两种。在此情况下,可以按照该联系人标识包括的单词数目与该人名包括的单词数目相同的模糊联系人、该联系人标识包括的单词数目大于该人名包括的单词数目的模糊联系人、该联系人包括的单词数目小于该人名包括的单词数目的模糊联系人中的顺序提示多个该联系人。换句话说,如果该多个联系人可以同时包括第一模糊联系人、第二模糊联系人或第三模糊联系人中的任意两个或全部,那么可以按照第一模糊联系人、第二模糊联系人和第三模糊联系人的顺序提示该多个联系人。
[0301]
在一些实施例中,在该多个联系人中包括多个该联系人标识包括的单词数目与该人名包括的单词数目相同的模糊联系人、多个该联系人标识包括的单词数目大于该人名包括的单词数目的模糊联系人、或者多个该联系人包括的单词数目小于该人名包括的单词数目的模糊联系人的情况下,可以根据多个同种模糊联系人中与该人名匹配的单词位置、字符占比和/或字母顺序对该多个同种模糊联系人进行排序;根据排序结果,提示该多个同种模糊联系人。
[0302]
换句话说,如果该多个联系人同时包括多个第一模糊联系人,那么可以按照多个第一模糊联系人与该人名匹配的单词位置、字符占比和/或字母顺序对该多个第一模糊联系人进行排序;如果多个联系人同时包括多个第二模糊联系人,那么可以按照多个第二模
糊联系人与该人名匹配的单词位置、字符占比和/或字母顺序对该多个第二模糊联系人进行排序;同时包括多个第三模糊联系人,那么可以按照多个第三模糊联系人与该人名匹配的单词位置、字符占比和/或字母顺序对该多个第三模糊联系人进行排序。
[0303]
可选的,在一些实施例中,该人名为印欧语系中的人名。
[0304]
可选的,在提示完该多个联系人后,该方法还包括:获取用户的选择指令,该选择指令用于选择该多个联系人中的一个联系人;对该选择指令选择的联系人执行该语音指令中的命令,该命令包括打电话、发送短信、发送邮件,或者发送即时通信消息。
[0305]
图9所示方法的具体实现方式可以参见上述实施例,为了简洁,在此就不再赘述。
[0306]
图10是根据本技术实施例提供的一种电子设备的示意性结构框图。如图10所示,电子设备1000包括获取单元1001、查询单元1002和提示单元1003。
[0307]
获取单元1001,用于获取语音指令中包含的人名。
[0308]
查询单元1002,用于从联系人列表中查询与该人名匹配的多个联系人,其中,该多个联系人包括至少一个精确联系人和至少一个模糊联系人,该精确联系人的联系人标识与该人名精确匹配,该模糊联系人的联系人标识与该人名模糊匹配。
[0309]
提示单元1003,用于提示查询到的多个联系人。
[0310]
获取单元1001、查询单元1002和提示单元1003的具体功能和有益效果可以参见上述实施例的描述,为了简洁,在此就不再赘述。
[0311]
可选的,如图10所示的电子设备还可以包括处理单元,该处理单元可以用于对用户选择的联系人执行语音指令中的命令,该命令可以包括打电话、发送短信、发送邮件或者发送即时通信消息。
[0312]
如图10所示的电子设备可以是如图1所示的系统100中的终端设备101或者终端设备101中的部件(例如芯片或者片上系统(system on chip,soc))。如图10中的部分单元(例如获取单元1001和查询单元1002)也可以是如图1所示的系统中的数据服务器102或者数据服务器102中的部件(例如芯片或soc)。
[0313]
图11是根据本技术实施例提供的一种电子设备的示意性结构框图。电子设备1100包括总线1101、处理器1102、通信模块1103和存储器1104。处理器1102、存储器1104和通信模块1103之间通过总线1101通信。其中,处理器1102可以是编程门阵列(field programmable gate array,fpga),可以是专用集成芯片(application specific integrated circuit,asic),还可以是系统芯片(system on chip,soc),还可以是中央处理器(central processor unit,cpu),还可以是网络处理器(network processor,np),还可以是数字信号处理电路(digital signal processor,dsp),还可以是微控制器(micro controller unit,mcu),还可以是可编程控制器(programmable logic device,pld)、其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,或其他集成芯片。存储器1104中存储有可执行代码,处理器1102读取存储器1104中的该可执行代码以上述实施例所示的方法。存储器1104中还可以包括操作系统等其他运行进程所需的软件模块。操作系统可以为android
tm
,linux
tm
,ios
tm
等。
[0314]
联系人标识可以通过无线通信模块1103发送至数据服务器,并通过无线通信模块1103接收来自于数据服务器的联系人身份信息。通信模块1103可以提供应用在电子设备1100上的包括2g/3g/4g/5g等无线通信的解决方案,无线通信模块1103还可以提供应用在
电子设备1100的无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi

fi)网络)、蓝牙(bluetooth,bt)等无线通信的解决方案。
[0315]
电子设备1100还可以包括麦克风1105、扬声器1106和显示屏1107。麦克风1105可以用于接收用户发送的语音指令。扬声器1106和/或显示屏1107可以用于提示查找到的多个联系人。
[0316]
本技术实施例还提供一种芯片系统,包括:逻辑电路,所述逻辑电路用于与输入/输出接口耦合,通过所述输入/输出接口传输数据,以执行上述方法。
[0317]
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0318]
应注意,本技术实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0319]
可以理解,本技术实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read

only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
[0320]
根据本技术实施例提供的方法,本技术还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行上述实施例所述的方法。
[0321]
根据本技术实施例提供的方法,本技术还提供一种计算机可读介质,该计算机可读介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行上述实施例所述的方法。
[0322]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0323]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0324]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0325]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0326]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0327]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0328]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1