基于虚拟机器人的应用程序调用方法、装置和设备与流程

文档序号:20081098发布日期:2020-03-10 10:40阅读:267来源:国知局
基于虚拟机器人的应用程序调用方法、装置和设备与流程

本发明涉及车辆控制技术领域,尤其涉及一种基于虚拟机器人的应用程序调用方法、装置、设备、车辆和存储介质。



背景技术:

随着车辆控制技术的发展,人们越来越频繁的使用安装在车载多媒体上的应用程序,各类应用程序为用户提供了辅助驾驶、车辆诊断和休闲娱乐等方面的帮助。比如,用户在空闲时可以打开安装在车载多媒体上的音乐播放器听音乐等。

相关技术中,用户通过手动点击车载多媒体触摸屏上的应用程序图标调用应用程序,而由于车载多媒体上的应用程序是独立存在的,用户打开一个应用程序后,如果需要使用另一个应用程序,需要先退出当前应用程序,返回至车载多媒体主页,然后点击打开另一个应用程序。该应用程序的调用方法,在用户调用多个应用程序时,需要在多个应用程序间手动切换,操作步骤繁琐,智能化水平较低。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的第一个目的在于提出一种基于虚拟机器人的应用程序调用方法。该方法通过虚拟机器人调用目标应用程序的编程接口,使目标应用程序执行用户发送的控制指令,从而使虚拟机器人根据用户的控制指令自动调用应用程序,避免了用户操控不同的应用程序时,手动打开、返回和退出各应用程序的繁琐步骤,通过语音指令等方式调用应用程序,解放了用户的双手,提高了用户调用应用程序的便利性和智能性。

本发明的第二个目的在于提出一种基于虚拟机器人的应用程序调用装置。

本发明的第三个目的在于提出一种电子设备。

本发明的第四个目的在于提出一种非临时性计算机可读存储介质。

为达上述目的,本发明第一方面实施例提出了一种基于虚拟机器人的应用程序调用方法包括以下步骤:

控制虚拟机器人获取第一控制指令;

根据第一控制指令识别待调用的目标应用程序;

获取目标应用程序对应的目标应用程序编程接口api;

控制通过目标api调用目标应用程序执行第一控制指令。

另外,根据本发明上述实施例的基于虚拟机器人的应用程序调用方法方法,还可以具有如下附加的技术特征:

在本发明一个实施例中,获取所述目标应用程序对应的目标应用程序编程接口api,包括:识别所述目标应用程序的类型信息,查询与所述类型信息匹配的api列表,从所述类型信息匹配的api列表中,根据所述目标应用程序的标识,获取到所述目标api。

在本发明一个实施例中,获取第一控制指令之前,还包括:在安装应用程序时,从所述应用程序的安装包中,提取所述应用程序对应的api标识;根据所述应用程序的类型信息,将所述应用程序对应的api标识添加到与所述类型信息匹配的api列表中。

在本发明一个实施例中,基于虚拟机器人的应用程序调用方法还包括:在对所述应用程序进行更新时,从所述应用程序的更新安装包中,提取所述应用程序对应的api标识,如果所述应用程序对应的api标识与上一次提取的所述应用程序对应的api标识不一致时,利用当前提取的所述应用程序对应的api标识,对所述api列表进行更新。

在本发明一个实施例中,根据所述第一控制指令,识别待调用的目标应用程序,包括:对所述第一控制指令进行识别,从所述第一控制指令中提取关键字;从所有的目标应用程序中,根据所述关键字匹配出所述目标应用程序。

在本发明一个实施例中,控制通过所述目标api调用所述目标应用程序之后,还包括:获取所述目标应用程序当前的运行状态;根据所述当前的运行状态,确定所述虚拟机器人的第一展示形态,并控制所述虚拟机器人进行展示。

在本发明一个实施例中,控制通过所述目标api调用所述目标应用程序执行所述第一控制指令之后,还包括:获取对所述目标应用程序当前的运行状态进行调整的第二控制指令;控制所述目标应用程序执行所述第二控制指令,以更新所述目标应用程序的当前运行状态。

在本发明一个实施例中,当所述类型信息指示所述目标应用程序为第三方开发的应用程序时,所述控制通过所述目标api调用所述目标应用程序执行所述第一控制指令之前,还包括:判断所述虚拟机器人是否具有调用所述目标api的权限;如果所述虚拟机器人具有调用所述目标api的权限,则执行控制通过所述目标api调用所述目标应用程序执行所述第一控制指令的步骤;如果所述虚拟机器人未具有调用所述目标api的权限,则控制开启所述目标应用程序。

在本发明一个实施例中,获取第一控制指令之前,还包括:接收到用于开启所述虚拟机器人的开启指令;开启后判断所述虚拟机人上是否有新安装的应用程序;如果存在新安装的应用程序,则新安装的应用程序添加所述应用程序列表中。

在本发明一个实施例中,基于虚拟机器人的应用程序调用方法还包括:实时获取所述虚拟机人的第一状态数据和/或车辆的第二状态数据,根据所述第一状态数据和/或第二状态数据确定所述虚拟机器人当前所处的状态,获取与所述当前状态匹配的第二展示形态,并控制所述虚拟机器人展示所述第二展示形态。

在本发明一个实施例中,控制所述虚拟机器人展示所述第二展示形态之后,还包括:继续获取所述虚拟机器人的第一状态数据和/或车辆的第二状态数据,根据所述第一状态数据和/或第二状态数据,控制所述虚拟器人进行状态切换

本发明实施例的基于虚拟机器人的应用程序调用方法,首先控制虚拟机器人获取第一控制指令,然后根据第一控制指令识别待调用的目标应用程序,并获取目标应用程序对应的目标应用程序编程接口api,进而控制通过目标api调用目标应用程序执行第一控制指令。该方法通过虚拟机器人调用目标应用程序的编程接口,使目标应用程序执行用户发送的控制指令,从而使虚拟机器人根据用户的控制指令自动调用应用程序,避免了用户操控不同的应用程序时,在不同应用程序间进行切换的繁琐步骤,提高了用户调用应用程序的便利性和智能性。

为达上述目的,本发明第二方面实施例提出了一种基于虚拟机器人的应用程序调用装置,包括:

第一获取模块,用于控制虚拟机器人获取第一控制指令;

识别模块,用于根据所述第一控制指令,识别待调用的目标应用程序;

第二获取模块,用于获取所述目标应用程序对应的目标应用程序编程接口api;

控制模块,用于控制通过所述目标api调用所述目标应用程序执行所述第一控制指令。

本发明实施例的基于虚拟机器人的应用程序调用装置,首先控制虚拟机器人获取第一控制指令,然后根据第一控制指令识别待调用的目标应用程序,并获取目标应用程序对应的目标应用程序编程接口api,进而控制通过目标api调用目标应用程序执行第一控制指令。该装置通过虚拟机器人调用目标应用程序的编程接口,使目标应用程序执行用户发送的控制指令,从而使虚拟机器人根据用户的控制指令自动调用应用程序,避免了用户操控不同的应用程序时,在不同应用程序间进行切换的繁琐步骤,提高了用户调用应用程序的便利性和智能性。

为了实现上述目的,本发明第三方面实施例提出一种电子设备,包括处理器和存储器,其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如上述实施例所述的基于虚拟机器人的应用程序调用方法。

为了实现上述目的,本发明第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的基于虚拟机器人的应用程序调用方法。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例所提供的一种虚拟机器人与外部设备的连接示意图;

图2为本发明实施例所提供的一种基于虚拟机器人的应用程序调用方法流程示意图;

图3为本发明实施例所提供的一种具体的基于虚拟机器人的应用程序调用方法流程示意图;

图4为本发明实施例所提供的另一种具体的基于虚拟机器人的应用程序调用方法流程示意图;

图5为本发明实施例提供的一种虚拟机器人状态迁移示意图;

图6为本发明实施例提供的一种基于虚拟机器人的应用程序调用装置的结构示意图;以及

图7为本发明实施例提出的一种电子设备的结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参考附图描述本发明实施例的基于虚拟机器人的应用程序调用方法、装置和设备。

其中,本发明实施例的基于虚拟机器人的应用程序调用方法,可以由本发明实施例提出的一种车载虚拟机器人执行。图1为本发明实施例所提供的一种虚拟机器人与外部设备的连接示意图,如图1所示,该虚拟机器人运行在车载多媒体上,车载多媒体作为虚拟机器人的主要运行载体,可以通过移动4g/5g网络或无线接入网络与人工智能平台建立连接,以使虚拟机器人获取网络中的数据,并与人工智能平台进行交互。整车电子设备通过can网关接入整车can网络,进而与车载多媒体建立连接,以使虚拟机器人获取车辆的状态数据和行驶数据等本地数据。车载多媒体还可以通过有线或无线的方式与音频设备建立连接,以使虚拟机器人获取用户的语音指令并向用户发送语音信息。

图2为本发明实施例所提供的一种基于虚拟机器人的应用程序调用方法流程示意图。如图2所示,该方法包括:

步骤101,获取第一控制指令。

其中,第一控制指令是用户根据实际需要发送的调用目标应用程序的指令,其中,目标应用程序可以是安装在车辆上的媒体设备的控制程序,比如车载收音机的控制程序,可以是车辆设备的控制程序,比如车窗控制程序,也可以是安装在车载多媒体上的第三方应用,比如,导航软件、社交应用等。根据实际情况的不同,第一控制指令可以是用户发送的语音信息,也可以是用户的肢体动作等。

具体实施时,虚拟机器人可以通过不同的方式获取第一控制指令。作为一种可能的实现方式,当第一控制指令为语音形式时,虚拟机器人可以通过麦克风等音频设备获取第一控制指令,比如,用户通过麦克风输入“打开音乐播放器”的语音信息后,麦克风把模数转换后的第一控制指令通过有线或无线的方式发送给虚拟机器人。

作为另一种可能的实现方式,当车辆中安装摄像头等图像采集设备时,用户可以通过预设的肢体动作发送第一控制指令,比如,预先设置用户不同的手势形态对应的应用程序,以及不同的手势动作对应的功能操作,摄像头采集用户的手势信息后将图像信息发送给虚拟机器人,虚拟机器人经过分析获取第一控制指令。

步骤102,根据第一控制指令识别待调用的目标应用程序。

具体的,根据实际应用的不同,虚拟机器人可以通过不同的方式识别第一控制指令中包含的目标应用程序,便于后续调用该目标应用程序。

作为一种示例,虚拟机器人可以在第一控制指令中提取出关键字,其中,关键字可以是目标应用程序的名称信息或者是目标应用程序的功能描述等,比如,若用户发送的第一控制指令是“请打开音乐播放器”的语音信息,则提取出的关键字为“音乐播放器”,或者,若用户发送的第一控制指令是“请立即播放歌曲”的语音信息,则提取出的关键字为“播放歌曲”。进而,虚拟机器人在所有应用程序中,确定与关键字匹配的目标应用程序,比如,若提取出的关键字是目标应用程序的名称信息,则虚拟机器人在所有应用程序的名称信息中,筛选出与关键字符合的应用程序,若提取出的关键字是目标应用程序的功能描述,则虚拟机器人获取所有的应用程序的功能简介,在各应用程序的功能简介中筛选出可以实现功能描述中的功能的应用程序为目标应用程序。由此,虚拟机器人在本地识别出第一控制指令,减少了识别待调用的目标应用程序的步骤,提高了识别待调用应用程序的效率,减小了用户调用目标应用程序的等待时间。

作为另一种示例,虚拟机器人还可以通过4g/5g网络将第一控制指令发送给人工智能平台,人工智能平台接收到第一控制指令后,通过云计算分析第一控制指令,结合人工智能平台中存储的大量示例数据以及用户的历史行为记录识别出第一控制指令中包含的待调用的目标应用程序。从而,在第一控制指令较复杂,无法在本地进行识别时,通过人工智能平台识别待调用的目标应用程序,结合人工智能平台的云计算提高了识别待调用的目标应用程序的准确性和可靠性。

步骤103,获取目标应用程序对应的目标应用程序编程接口api。

其中,应用程序编程接口(applicationprogramminginterface,简称api)是预先设置的调用应用程序的函数,虚拟机器人获取目标应用程序的api后,可以通过访问目标应用程序的api而直接调用目标应用程序,使目标应用程序执行用户发送的第一控制指令。

具体实施时,根据实际应用的不同,虚拟机器人可以通过不同的方式获取目标应用程序对应的目标应用程序编程接口。

继续参照上述示例,当虚拟机器人在本地识别第一控制指令时,虚拟机器人可以首先识别目标应用程序的类型信息,其中,类型信息是预设的区分应用程序所属类别的信息,比如,当应用程序是车载收音机控制程序时,类型信息为媒体控制程序,当应用程序是车窗、空调和雨刷器等设备的控制程序时,类型信息为车辆设备控制程序,当应用程序是车载多媒体上安装的第三方应用时,类型信息为第三方应用,根据应用程序的类型信息可以将应用程序的api相应的划分为不同的类别,从而统计属于不同类别的所有应用程序的api,生成该类别的api列表。然后,虚拟机器人查询与目标应用程序的类型信息匹配的api列表,在该api列表中根据目标应用程序的名称信息或标号等标识,匹配出目标应用程序的api。由此,虚拟机器人在本地获取目标应用程序对应的api,提高了获取目标应用程序对应的api的效率,减小了用户调用目标应用程序的等待时间。

作为第二种示例,当虚拟机器人将第一控制指令发送给人工智能平台,人工智能平台识别出待调用的目标应用程序后,人工智能平台利用网络资源查询目标应用程序对应的api,并将查询到的目标应用程序对应的api返回给虚拟机器人,从而使虚拟机器人通过人工智能平台获取第一控制指令中包含的目标应用程序的api,结合人工智能平台的网络资源提高了获取待调用的目标应用程序对应的api的准确性和可靠性。

步骤104,通过目标api调用目标应用程序执行第一控制指令。

具体的,虚拟机器人获取目标应用程序对应的api后,在api中通过调用代码调用该应用程序,并按照第一控制指令执行相关的操作。比如,当用户发送的第一控制指令是“打开某社交软件小程序”时,虚拟机器人经过关键字分析识别该社交软件为目标应用程序,并访问第三方应用的api列表,获取该社交软件的api,然后通过api直接调用该社交软件,按照控制指令打开该软件中的搜一搜等界面。又比如,当用户发送的第一控制指令为“打开某购物网站”时,虚拟机器人获取控制指令后,通过上述处理方法自动打开浏览器并进入该购物网站,使用户可以搜索物品和购物。

从而,虚拟机器人根据用户发送的第一控制指令调用目标应用程序,当调用当前的目标应用程序后,若用户需要调用另一应用程序,仅需要以语音等形式重新发送第一控制指令,则虚拟机器人将当前目标应用程序转为后台工作,并根据最新接收到的第一控制指令调用相应的目标应用程序,减少了用户在不同应用程序间来回切换的繁琐步骤。

进一步的,为了更加生动直观的向用户展示目标应用程序的运行结果,在本发明一个实施例中,虚拟机器人还可以通过车载多媒体的显示屏向用户进行动画展示。具体的,虚拟机器人首先获取目标应用程序当前的运行状态,其中,运行状态可以是目标应用程序正在处理的内容,比如,播放器正在播放的歌曲或浏览器当前打开的网页等,也可以是车辆设备或媒体设备的运行参数,比如,空调的运行模式和设置温度,以及车窗的开闭状态等。然后,根据目标应用程序当前的运行状态,确定虚拟机器人的第一展示形态,其中第一展示形态包括展示的物象和展示的事件,通过不同的物象执行相应的事件,生动形象的展示出当前场景下目标应用程序的运行状态。

比如,根据用户的第一控制指令打开音乐播放器播放音乐时,车载多媒体显示屏显示卡通人物打节拍的物象,并且虚拟机器人获取播放器当前播放的歌曲的名称信息,进而根据名称信息确定歌曲的类型信息,然后根据类型信息确定展示的卡通人物的第一展示形态,比如,当歌曲类型是摇滚音乐时,虚拟机器人展示卡通人物拿着吉他摇摆的形态,当歌曲类型是军旅歌曲时,虚拟机器人展示身着军装的卡通人物敬礼的形态。

又比如,当用户的第一控制指令是打开导航地图进行导航时,虚拟机器人以导航地图中显示的路段为运行状态,以确定第一展示形态,比如,导航地图中的当前路段提示有违章摄像时,虚拟机器人展示出卡通机器人扛着摄像机跟拍的第一展示形态,以提醒安全驾驶,或者,当车辆途径学校路段时,虚拟机器人展示出卡通机器人穿着校服过马路的形态,以提醒用户减速行驶。由此,通过车载多媒体展示目标应用程序的运行状态,为用户提供休闲娱乐和辅助驾驶等方面的支持。

可以理解,实际应用中,用户调用目标应用程序执行相应的功能后,还可能根据自身需要调整目标应用程序的运行状态,比如,控制音乐播放器播放下一首曲目或者调整空调的温度,从而,在本发明一个实施例中,虚拟机器人继续获取对目标应用程序当前的运行状态进行调整的第二控制指令,并控制目标应用程序执行第二控制指令,以更新目标应用程序的当前运行状态,进而更新虚拟机器人的第一展示形态,比如,当第二控制指令是将空调的温度由24℃调整到27℃时,虚拟机器人更新空调的运行状态,将第一展示形态中温度计的显示示数由24℃提高到27℃。由此,根据用户的实时控制指令更新虚拟机器人的第一展示形态,提高虚拟机器人展示动画的时效性和准确性。

需要说明的是,实际应用中,在车载多媒体上安装的第三方应用可能没有调用api的权限,当未获取到第三方应用的api调用权限时,虚拟机器人无法调用第三方应用执行应用程序中具体的操作,从而,当目标应用程序为第三方应用时,虚拟机器人根据是否具有调用第三方应用api的权限进行相应的调用操作。

作为一种示例,虚拟机器人首先查询目标应用程序的权限列表,判断是否具有调用目标应用程序api的权限,若虚拟机器人具有调用目标api的权限,则按照上述方法通过目标api调用目标应用程序,并执行第一控制指令,若虚拟机器人未具有调用目标api的权限,则虚拟机器人仅控制目标应用程序开启和关闭,然后根据用户在车载多媒体交互界面上的操作执行第一控制指令。

比如,当目标应用程序为第三方购物软件时,若未获取该购物软件的api调用权限,则虚拟机器人执行打开该购物软件的操作,并提示用户当前应用为未授权应用,无法按照控制指令进行操作,需要用户手动操作搜索物品、查看详细信息和联系客服等;又比如,当目标应用程序为第三方短视频软件时,若未获取该第三方短视频软件的api调用权限,则虚拟机器人打开该短视频软件,提示用户手动搜索短视频;若第三方应用开放了应用程序编程接口,则虚拟机器人可以进行相关api调用,进而按照控制指令进行相应的操作,比如,酒店预定软件,开放了自住接口、预定接口和财务接口等,则虚拟机器人可以根据控制指令通过酒店预定软件的自住接口实现用户办理入住,通过酒店预定软件的预定接口和财务接口进行搜索酒店、预定房间等操作,又比如,同城配送软件,开放了配送员实时定位、配送员接单提醒和配送路线规划等接口,则用户可以通过语音指令控制虚拟机器人获取同城配送系统中的配送员位置和接单提醒等信息。

综上所述,本发明实施例的基于虚拟机器人的应用程序调用方法,首先控制虚拟机器人获取第一控制指令,然后根据第一控制指令识别待调用的目标应用程序,并获取目标应用程序对应的目标应用程序编程接口api,进而控制通过目标api调用目标应用程序执行第一控制指令。该方法通过虚拟机器人调用目标应用程序的编程接口,使目标应用程序执行用户发送的控制指令,从而使虚拟机器人根据用户的控制指令自动调用应用程序,避免了用户操控不同的应用程序时,在不同应用程序间进行切换的繁琐步骤,通过语音指令等方式调用应用程序,解放了用户的双手,提高了用户调用应用程序的便利性和智能性。

基于上述实施例,实际使用中,用户可能会在车载多媒体上安装新的应用程序或者更新待升级的应用等,为了保证虚拟机器人可以识别并调用新安装的应用,本发明实施例还提出了一种具体的基于虚拟机器人的应用程序调用方法。

图3为本发明实施例所提供的一种具体的基于虚拟机器人的应用程序调用方法的流程示意图。如图3所示,该方法包括以下步骤:

步骤201,接收用于开启虚拟机器人的开启指令。

具体的,用户可以通过车载多媒体上的虚拟机器人启动按键或者通过音频设备输入语音开启指令等方式开启虚拟机器人,虚拟机器人接收到开启指令后启动。

步骤202,开启后判断虚拟机器人所在的车载多媒体上是否有新安装的应用程序。

步骤203,如果存在新安装的应用程序,则将新安装的应用程序的api标识添加到api列表中。

具体的,虚拟机器人开启后查询车载多媒体的注册表信息,并与虚拟机器人上次关闭前存储的注册表信息进行对比,对比注册表中的应用程序的数量和注册时间以判断车载多媒体上是否有新安装的应用程序。

进一步的,若确定存在新安装的应用程序,则在注册表中获取该应用程序的配置信息和属性信息,其中,应用程序的配置信息可以包括新安装应用程序的版本信息、适用的系统信息和存储大小等,应用程序的属性信息可以包括新安装应用程序的名称信息和安装时间信息等区别其他应用程序的标识,然后将该应用程序添加到虚拟机器人存储的已安装应用程序列表中,便于后续识别该应用程序。

步骤204,搜索出应用程序的安装包,在应用程序的安装包中,提取应用程序对应的api标识。

具体的,根据新安装应用程序的名称信息和安装时间信息获取该程序对应的安装包,在该安装包的api路径下获取应用程序的api标识。

步骤205,根据应用程序的类型信息,将应用程序对应的api标识添加到与类型信息匹配的api列表中。

具体的,根据获取的新安装应用程序的属性信息确定该应用程序的类型信息,进而将该应用程序对应的api标识添加到与类型信息匹配的api列表中,从而当用户发出调用该应用程序的控制指令时,虚拟机器人可以在api列表中获取该应用程序的api,便于后续通过api调用该应用程序。

需要说明的是,车载多媒体上已安装的应用程序可能会需要更新升级,更新后的应用程序的api可能会发生改变,为了避免虚拟机器人无法通过更新后的api调用应用程序,作为一种可能的实现方式,应用程序进行更新时,虚拟机器人从应用程序的更新安装包中,提取应用程序对应的api标识,如果应用程序对应的api标识与上一次提取的应用程序对应的api标识不一致,则虚拟机器人利用当前提取的应用程序对应的api标识,对api列表进行更新,获取更新后的应用程序的api,便于后续调用更新后的应用程序。

本发明实施例的基于虚拟机器人的应用程序调用方法,在虚拟机器人开启时自动检测是否有新安装的应用程序,若存在新安装的应用程序则在该程序的安装包中获取相应的api标识,并更新api列表。由此,在虚拟机器人初始化时自动获取新安装应用程序的api,便于后续根据用户的控制指令调用该应用程序,从而避免虚拟机器人无法识别新安装的应用程序,提高了虚拟机器人调用应用程序的完整性。

基于上述实施例,为了使用户可以及时、直观的了解车辆的行驶状态,虚拟机器人还可以根据获取到的车辆状态数据在车载多媒体的显示屏上显示车辆当前的状态信息。具体实施时,可以根据上述实施例中的语音指令等虚拟机器人的第一状态数据和车辆的第二状态数据确定虚拟机器人当前所处的状态,并设置不同状态下虚拟机器人相应的卡通形象,通过车辆的状态数据和用户的指令改变虚拟机器人所处的状态,进而虚拟机器人展示相应状态下卡通形象的形态,以陪伴用户驾驶,并向用户提供辅助驾驶等方面的帮助。

具体而言,图4为本发明实施例所提供的另一种具体的基于虚拟机器人的应用程序调用方法的流程示意图。如图4所示,该方法包括以下步骤:

步骤301,实时获取虚拟机人的第一状态数据和/或车辆的第二状态数据。

其中,第一状态数据包括虚拟机器人启动后的时间数据以及用户的语音指令,第二状态数据可以是车辆各部件和系统的状态数据以及车辆的行驶数据等,获取第一状态数据和第二状态数据便于后续确定虚拟机器人的卡通形象的形态。

具体实施时,虚拟机器人启动并初始化后,车载多媒体上的计时装置开始同步计时,以确定虚拟机器人在本次初始化后的运行时间,用户可以通过虚拟机器人中的麦克风等音频设备向虚拟机器人发送语音控制指令。

另一方面,各车载电子模块通过整车can网络与车载多媒体建立连接,其中,车载电子模块可以是检测车辆各部件和系统状态参数的传感器等检测装置,车载电子模块将车辆的状态数据通过can总线发送给整车状态管理装置,整车状态管理装置缓存车辆的状态数据,虚拟机器人可以通过整车状态管理程序的api请求获取车辆状态数据,整车状态管理装置通过api将车辆状态数据发送给虚拟机器人,进而虚拟机器人获取车辆的第二状态数据。

步骤302,根据第一状态数据和/或第二状态数据确定虚拟机器人当前所处的状态。

其中,虚拟机器人的状态包括睡眠、学习、玩耍、工作和事件五个状态,虚拟机器人在每个状态下有不同的展示形态。根据获取到的实时的第一状态数据和/或第二状态数据,可以确定虚拟机器人当前所处的状态。

具体而言,如图5所示,虚拟机器人初始化完成后,进入睡眠状态,同时计时装置开始计时,虚拟机器人获取计时装置发送的时间数据,当虚拟机器人处于睡眠状态超过x小时后,虚拟机器人进入玩耍状态,当虚拟机器人处于玩耍状态超过x小时后进入学习状态,当虚拟机器人处于学习状态超过x小时后,再次进入玩耍状态,当虚拟机器人处于玩耍状态超过y小时后,再次进入睡眠状态,其中,x和y为预设的正整数。

当虚拟机器人在上述三个状态中进行转换时,用户可以通过音频设备发送语音控制指令,虚拟机器人接收到用户的语音指令后进行工作状态,即按照上述实施例所述,根据用户的控制指令调用目标应用程序,并执行用户所需的操作,比如,调用音乐播放器播放音乐或者打开车窗等。进一步的,虚拟机器人完成语音指令后,计时装置计算完成语音指令后的时间,并且虚拟机器人获取车辆第二状态数据中的车速数据以及车辆的驱动状态数据,根据上述数据判断结束工作状态后虚拟机器人返回的状态。具体的,当虚拟机器人完成语音指令后超过10s未接收到新的语音指令,并且当前车速小于10m/s时,则虚拟机器人进入睡眠状态;当虚拟机器人完成语音指令后超过10s未接收到新的语音指令,并且当前车速大于10m/s,同时车辆驱动系统处于电动驱动模式(ev),则虚拟机器人进入学习状态;当虚拟机器人完成语音指令后超过10s未接收到新的语音指令,并且当前车速大于10m/s,同时车辆驱动系统处于混合动力驱动模式(hev),则虚拟机器人进入玩耍状态。

需要说明的是,当虚拟机器人在睡眠状态、学习状态和玩耍状态间切换时,若虚拟机器人接收到车载电子模块发送的车辆状态报警信息或故障信息等车辆的第二状态数据,则虚拟机器人进入事件状态。其中,车辆状态报警信息可以是车辆剩余油量或电量不足时的提醒信息、高级驾驶辅助系统(adas)报警信息或者自动变速器报警信息等,故障信息可以是各传感器发送的车辆部件故障信息,比如,发动机故障信息、照明系统故障信息等。当用户处理完车辆的报警信息和故障信息后,若车辆解除报警或者故障信息被排除,则虚拟机器人返回进入事件状态前的状态。

作为一种示例,当虚拟机器人在玩耍状态时,若虚拟机器人通过can网络接收到高级驾驶辅助系统发送的车辆越线报警信息,则虚拟机器人进入事件状态,并通过卡通形象展示出形态提醒用户车辆偏离行驶车道,当用户纠正车辆返回行驶车道后,高级驾驶辅助系统解除报警状态,则虚拟机器人返回进入事件状态前的玩耍状态。

步骤303,获取与当前状态匹配的第二展示形态,并控制虚拟机器人展示第二展示形态。

其中,第二展示形态包括虚拟机器人的卡通形象的动作、表情和声音等,预先设置虚拟机器人所处的状态与不同的第二展示形态间的映射关系,当确定虚拟机器人所处的状态后,通过第二展示形态可以生动有趣的向用户表明虚拟机器人当前所处的状态。

作为一种可能的实现方式,设定虚拟机器人的卡通形象后,当虚拟机器人处于睡眠状态下,卡通形象露出享受的表情,卡通形象的动作包括打鼾、打哈欠和侧睡等,并且通过车辆扬声器等音频设备发出打哈欠或打呼噜的声音。

当虚拟机器人处于玩耍状态下,卡通形象露出开心的表情,卡通形象的动作包括跳舞、听音乐、捉迷藏、行走、游戏、运动和翻滚等,并且通过车辆的音频设备发出儿童的笑声。

当虚拟机器人处于学习状态下,卡通形象露出皱眉头的表情,卡通形象的动作包括翻书、做笔记和托腮思考等,并且通过车辆的音频设备发出翻书的声音。

当车辆处于工作状态下,虚拟机器人的卡通形象可以根据用户调用的目标应用程序确定第二展示形态,比如,当用户调用导航软件时,卡通形象做出看地图的动作,当用户调用股票查询软件查看股票时,卡通形象露出严肃的表情,并且做出戴上眼镜分析思考的动作,当用户调用火车票订购软件时,卡通形象做出拖着大大的行李箱行走的动作,并且露出吃力的表情,并且车辆的音频设备发出火车的汽笛声。

当车辆处于事件状态下时,虚拟机器人的卡通形象可以根据获取的第二状态数据的内容确定第二展示形态,比如,在车辆行驶的过程中左后方的车门未关,虚拟机器人接收到报警信息后,卡通形象做出惊恐表情,并通过音频设备播放“注意啦,左后门未关,很危险啊”的语音,又比如,车辆行驶过程中车辆超速,adas系统发出超速报警,虚拟机器人接收到报警信息后,卡通形象做出惊恐表情,并通过音频设备播放“哎呀,您超速了,注意行驶安全啊”的语音,再比如,若虚拟机器人接收到车身电子稳定系统(electronicstabilityprogram,简称esp)发送的报警,则卡通形象做出紧握方向盘的动作,并通过音频设备播放“注意啦,esp功能被触发,小心驾驶哦”的语音。

由此,虚拟机器人根据所处的状态,控制卡通形象展示不同的动作、表情并搭配语音信息,提高了用户驾驶车辆的趣味性,并且使用户生动直观的了解到车辆的状态信息,并在车辆处于报警状态或发生故障时,通过卡通形象及时提醒用户,为用户提供车辆诊断和辅助驾驶等方面的帮助。

需要说明的是,虚拟机器人展示第二展示形态之后,还可以继续获取虚拟机器人的第一状态数据和/或车辆的第二状态数据,根据第一状态数据和/或第二状态数据,控制所述虚拟机器人进行状态切换,进而更新虚拟机器人的第二展示形态。

作为一种示例,当虚拟机器人处于玩耍状态时,虚拟机器人的卡通形象露出开心的表情并做出跳舞的动作,同时车辆的音频设备发出孩童般的笑声,在车辆行驶过程中,若虚拟机器人通过can网络接收到高级驾驶辅助系统发送的车辆越线报警信息,则虚拟机器人进入事件状态,进而,虚拟机器人的卡通形象做出惊恐表情,并通过音频设备播放“注意啦,您越线啦,请注意行驶安全啊”,以提醒用户车辆偏离行驶车道,当用户纠正车辆返回行驶车道后,高级驾驶辅助系统解除报警状态,则虚拟机器人返回进入事件状态前的玩耍状态,重新露出开心的表情并做出跳舞的动作。

作为又一种示例,虚拟机器人启动后进入睡眠状态,卡通形象露出享受的表情并做出打鼾的动作,若用户通过麦克风发出“打开导航地图时”,虚拟机器人进入工作状态,进而,虚拟机器人根据用户的控制指令调用导航软件,并且虚拟机器人的卡通形象露出认真的表情,并做出拿着放大镜查看地图的动作。当用户根据导航指示到达目的地后停止车辆,若虚拟机器人在10秒内未接收到用户的语音指令,并检测到车辆停止行驶,则虚拟机器人返回睡眠状态,虚拟机器人的卡通形象重新做出打鼾的动作。

由此,根据虚拟机器人当前的第一状态数据和/或车辆的第二状态数据控制虚拟器人进行状态切换,并更新虚拟机器人的第二展示形态,保证了虚拟机器人的展示形态符合当前的状态,提高了虚拟机器人的第二展示形态的时效性。

本发明实施例的基于虚拟机器人的应用程序调用方法,根据虚拟机器人的第一状态数据和/或车辆的第二状态数据确定虚拟机器人当前所处的状态,进而控制虚拟机器人的卡通形象展示匹配的第二展示形态。由此,生动形象的展示出了车辆当前的状态,当车辆发生故障或行驶过程中产生风险时,通过第二展示形态的动作和语音及时向用户发出警告,在车辆正常行驶过程中根据用户的语音指令和时间数据切换不同的展示形态,从而陪伴用户驾驶,提高了用户驾驶车辆的趣味性。

为了实现上述实施例,本发明实施例还提出一种基于虚拟机器人的应用程序调用装置。图6为本发明实施例提供的一种基于虚拟机器人的应用程序调用方法装置的结构示意图。

如图6所示,该基于虚拟机器人的应用程序调用装置包括:第一获取模块100、识别模块200、第二获取模块300和控制模块400。

其中,第一获取模块100,用于获取第一控制指令。

识别模块200,用于根据第一控制指令,识别待调用的目标应用程序。

第二获取模块300,用于获取目标应用程序对应的目标应用程序编程接口api。

控制模块400,用于控制通过目标api调用目标应用程序执行第一控制指令。

在本发明实施例一种可能的实现方式中,识别模块200具体用于对第一控制指令进行识别,从第一控制指令中提取关键字,然后从所有的目标应用程序中,根据关键字匹配出目标应用程序。

进一步的,第二获取模块300用于识别目标应用程序的类型信息,查询与类型信息匹配的api列表,从类型信息匹配的api列表中,根据目标应用程序的标识,获取到目标api。

更进一步的,在本发明实施例一种可能的实现方式中,控制通过目标api调用目标应用程序之后,控制模块400还用于获取目标应用程序当前的运行状态,根据当前的运行状态,确定虚拟机器人的第一展示形态,并控制虚拟机器人进行展示。并且,通过第一获取模块100获取对目标应用程序当前的运行状态进行调整的第二控制指令,进而控制目标应用程序执行第二控制指令,以更新目标应用程序的当前运行状态。

在本发明实施例一种可能的实现方式中,在获取第一控制指令之前,第一获取模块100还用于接收到用于开启虚拟机器人的开启指令,开启后判断虚拟机人上是否有新安装的应用程序,如果存在新安装的应用程序,则新安装的应用程序添加应用程序列表中。

进而,识别模块200还用于从应用程序的安装包中,提取应用程序对应的api标识,然后根据应用程序的类型信息,将应用程序对应的api标识添加到与类型信息匹配的api列表中。并且,在对应用程序进行更新时,识别模块200还用于从应用程序的更新安装包中,提取应用程序对应的api标识,如果应用程序对应的api标识与上一次提取的应用程序对应的api标识不一致时,利用当前提取的应用程序对应的api标识,对api列表进行更新。

在本发明实施例一种可能的实现方式中,第一获取模块100还用于实时获取虚拟机人的第一状态数据和/或车辆的第二状态数据,根据第一状态数据和/或第二状态数据确定虚拟机器人当前所处的状态,获取与当前状态匹配的第二展示形态,进而,控制模块400并控制虚拟机器人展示所述第二展示形态。

进一步的,第一获取模块100继续获取虚拟机器人的第一状态数据和/或车辆的第二状态数据,控制模块400据第一状态数据和/或第二状态数据,控制虚拟器人进行状态切换。

需要说明的是,前述对基于虚拟机器人的应用程序调用方法实施例的解释说明也适用于该实施例的基于虚拟机器人的应用程序调用装置,此处不再赘述。

综上所述,本发明实施例基于虚拟机器人的应用程序调用装置,首先控制虚拟机器人获取第一控制指令,然后根据第一控制指令识别待调用的目标应用程序,并获取目标应用程序对应的目标应用程序编程接口api,进而控制通过目标api调用目标应用程序执行第一控制指令。该装置通过虚拟机器人调用目标应用程序的编程接口,使目标应用程序执行用户发送的控制指令,从而使虚拟机器人根据用户的控制指令自动调用应用程序,避免了用户操控不同的应用程序时,在不同应用程序间进行切换的繁琐步骤,提高了用户调用应用程序的便利性和智能性。

为了实现上述实施例,本发明还提出一种电子设备。

图7为本申请一实施例提出的一种电子设备的结构示意图。如图7所示,该电子设备120包括:处理器121和存储器122;存储器122用于存储可执行程序代码;处理器121通过读取存储器122中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于实现如上述实施例所述的基于虚拟机器人的应用程序调用方法。

为了实现上述实施例,本发明还提出一种车辆,包括如上述实施例所述的基于虚拟机器人的应用程序调用装置。

为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的基于虚拟机器人的应用程序调用方法。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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