终端控制的方法、装置及计算机可读存储介质与流程

文档序号:14774008发布日期:2018-06-23 02:30阅读:132来源:国知局
终端控制的方法、装置及计算机可读存储介质与流程

本发明涉及计算机技术领域,尤其涉及一种终端控制的方法、装置及计算机可读存储介质。



背景技术:

随着智能终端技术的发展,越来越多的智能终端可以通过网络和不同的用户或用户终端进行交互,实现丰富灵活的个性化定制功能,提升用户体验。

在现有技术中,智能终端厂商提供终端控制协议和终端接口,不同用户终端的软件开发商需要根据终端控制协议和终端接口实现复杂的代码逻辑。软件开发商在实现过程中,由于终端控制协议较难理解,需要和厂商反复沟通,容易出错而且开发和维护成本高。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

本发明的主要目的在于提供一种终端控制的方法、装置和可读存储介质,旨在解决现有技术中终端控制协议较难理解、开发和维护成本高的技术问题。

为实现上述目的,本发明提供一种终端控制的方法,所述终端控制的方法包括如下步骤:

在终端接收到控制信号时,获取所述控制信号中的控制关键词和控制参数值,所述控制信号以自然语言的方式发送;

调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令;

控制所述终端响应所述机器指令。

优选地,所述调用预设的转换脚本将所述控制关键词和控制参数转换为机器指令步骤包括:

获取所述终端型号;

调用预设的转换脚本;

通过所述转换脚本以及所述终端型号将所述关键词和控制参数值转换为机器指令。

优选地,所述调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令步骤包括:

获取所述终端的控制协议信息;

调用预设的转换脚本;

通过所述转换脚本以及所述控制协议信息将所述关键词和控制参数值转换为机器指令。

优选地,所述通过所述转换脚本以及所述控制协议信息将所述关键词和控制参数值转换为机器指令的步骤包括:

通过所述转换脚本以及终端的型号和控制协议信息将所述关键词和控制参数值转换为机器指令。

优选地,所述获取控制信号中的控制关键词和控制参数值步骤之后包括:

判断所述控制信号中的控制参数值是否超过预设的数值范围;

若所述控制参数值未超过预设的数值范围,执行调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令的步骤。

优选地,所述终端控制步骤包括:

获取终端当前状态对应的机器代码;

调用预设转换脚本;

通过所述预设转换脚本将所述机器代码转换为状态信号,并发送所述状态信号,所述状态信号为自然语言的形式。

优选地,所述通过所述预设转换脚本将所述机器代码转换为状态信号步骤包括:

获取终端型号;

调用预设的转换脚本;

通过所述转换脚本以及所述终端型号将所述机器指令转换成状态信号。

优选地,所述通过所述预设转换脚本将所述机器代码转换为状态信号步骤包括:

获取终端控制协议信息;

调用预设的转换脚本;

通过所述转换脚本以及所述终端控制协议将所述机器指令转换成状态信号。

此外,为实现上述目的,本发明还提供所述终端控制的装置,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的终端控制的程序,所述终端控制的程序被所述处理器执行时实现如上所述的终端控制的方法的步骤。

此外,为实现上述目的,本发明还提出一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有终端控制程序,所述终端控制程序被处理器执行时实现如上所述的终端控制方法的步骤。

本发明实施例提出的一种终端控制的方法、装置和可读存储介质,在终端接收到控制信号时,获取所述控制信号中的控制关键词和控制参数值,所述控制信号以自然语言的方式发送;调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令;控制所述终端响应所述机器指令。

本发明通过调用脚本实现了用户或用户设备终端和智能终端之间用自然语言进行交互,从而使用户终端软件开发商无需解析晦涩难懂的智能终端控制协议,提高了开发效率,同时提升了用户体验。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;

图2为本发明空调送风方法第一实施例的流程示意图;

图3为本发明空调送风方法第二实施例的流程示意图;

图4为本发明空调送风方法第三实施例的流程示意图;

图5为本发明空调送风方法第四实施例的流程示意图;

图6为本发明空调送风方法第五实施例的流程示意图;

图7为本发明空调送风方法第六实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案是:在终端接收到控制信号时,获取所述控制信号中的控制关键词和控制参数值,所述控制信号以自然语言的方式发送;调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令;控制所述终端响应所述机器指令。

由于现有技术中,在控制终端的用户端软件开发过程中,需要以复杂的逻辑实现晦涩难懂的终端控制协议,既容易出错,开发和维护的成本又高。

本发明提供一种解决方案,通过调用脚本实现自然语言形式的终端控制请求和终端机器指令之间的转换,实现了控制终端的用户或用户端软件以自然语言形式和终端之间的交互,降低了开发和维护的成本。

如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。

本发明实施例终端为终端控制的装置。

如图1所示,该装置可以包括:处理器1001,例如CPU,通信总线1002,存储器1003。其中,通信总线1002用于实现这些组件之间的连接通信。存储器1003可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1003可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1003中可以包括操作系统和终端控制程序。

在图1所示的装置中,处理器1001可以用于调用存储器1003中存储的终端控制处理程序,并执行以下操作:

在终端接收到控制信号时,获取所述控制信号中的控制关键词和控制参数值,所述控制信号以自然语言的方式发送;

调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令;

控制所述终端响应所述机器指令。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

获取所述终端型号;

调用预设的转换脚本;

通过所述转换脚本以及所述终端型号将所述关键词和控制参数值转换为机器指令。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

获取所述终端的控制协议信息;

调用预设的转换脚本;

通过所述转换脚本以及所述控制协议信息将所述关键词和控制参数值转换为机器指令。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

通过所述转换脚本以及终端的型号和控制协议信息将所述关键词和控制参数值转换为机器指令。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

判断所述控制信号中的控制参数值是否超过预设的数值范围;

若所述控制参数值未超过预设的数值范围,执行调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令的步骤。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

获取终端当前状态对应的机器代码;

调用预设转换脚本;

通过所述预设转换脚本将所述机器代码转换为状态信号,并发送所述状态信号,所述状态信号为自然语言的形式。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

获取终端型号;

调用预设的转换脚本;

通过所述转换脚本以及所述终端型号将所述机器指令转换成状态信号。

进一步地,处理器1001可以调用存储器1003中存储的终端控制程序,还执行以下操作:

获取终端控制协议信息;

调用预设的转换脚本;

通过所述转换脚本以及所述终端控制协议将所述机器指令转换成状态信号。

参照图2,本发明第一实施例提供一种终端控制的方法,所述方法包括:

步骤S10,在终端接收到控制信号时,获取所述控制信号中的控制关键词和控制参数值,所述控制信号以自然语言的方式发送。

自然语言通常是指一种自然地随文化演进的语言,是人们用于交流的主要表达方式,例如英语、汉语、日语。自然语言简单好懂,易于理解。

终端控制信号有多种自然语言的发送形式,比如用户直接用语音发送控制信号,或者通过终端用户控制软件发送文本形式的控制信号。通过自然语言方式发送控制信号提供了一种友好、易于理解和操作的人机交互控制方式。根据控制信号所采取的不同的通信方式,比如有线网络、移动网络、WIFI、蓝牙或红外,终端以对应的通信方式处理接收到的控制信号。

当终端收到自然语言形式的控制信号时,终端先通过语音信号处理或者文本文件处理得到用户发出的控制语句,再通过语义解析从控制信号中获取控制关键词和控制参数值,最后调用预设的转换脚本,将控制关键词和控制参数值转换为机器指令。

为了提高自然语言处理的效率和正确率,可以通过建立大量的自然语言控制语句数据库和控制命令对应的关键词词典,还可以在终端的显示屏显示或者通过终端相关的应用端软件推送推荐的终端控制语句或词汇,提示用户使用。例如若终端为空调,推荐的控制词汇有:打开空调、关闭空调、打开显示屏、关闭显示屏、调整为自动模式、调整为睡眠模式、风速升高一级,风速降低一级等。

步骤S20,调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令。

在调用转换脚本将控制关键词和控制参数值转换为机器指令之前,需要先通过转换脚本将控制关键词和控制参数转换成统一的数据格式。可以选取JSON(JavaScript Object Notation)数据交换格式。

JSON是一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。JSON采用兼容性很高的、完全独立于语言文本格式,同时也具备类似于C语言的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)体系的行为,可在不同平台之间进行数据交换。这些特性使JSON成为理想的数据交换语言。

预设的转换脚本可以用多种流行的脚本语言实现,比如Lua、Python、Perl等,选取的脚本语言需要使用简单,兼容多种主流的平台。

步骤S30,控制所述终端响应所述机器指令。

下面举例说明空调终端受以自然语言方式发送的控制信号控制的具体过程。

用户在回家途中打开手机APP,说出控制请求:“现在请打开空调,把温度降到26度,谢谢!”,手机处理语音信号得到控制语句后,进一步通过语义解析得到控制关键词为:打开空调、制冷、温度,得到控制参数值为26。

根据代码的风格,将识别出的控制关键词翻译为英文,调用预设的转换脚本转变为JSON数据格式如下所示:

{“power”:”on”,”temperature”:20,”mode”:”cool”}

预设的转换脚本进一步将JSON数据转换为二进制的机器指令:

00000001 00010100 00000100

手机APP在得到控制请求对应的机器指令后,将机器指令通过移动网络发送给家中的空调。空调接收到该命令后启动制冷并将室内温度降到用户制定的26度。

在本实施例中,通过以自然语言的方式发出控制终端的请求,使用脚本将控制请求转换为终端的机器指令,为用户提供了一种方便快捷的人机交互方式,同时为用户终端软件的开发者提供了简便高效的开发方式。

进一步的,参照图3,本发明第二实施例基于第一实施例提供一种终端控制的方法,本实施例在步骤S20包括:

步骤S210,获取所述终端型号

步骤S220,调用预设的转换脚本。

步骤S230,通过所述转换脚本和所述终端型号将所述关键词和控制参数值转换为机器指令。

由于不同类型的终端的控制协议不同,对于相同控制关键词的控制语句,不同类型终端的机器指令不一样。当用户需要控制多台不同类型的终端时,需要调用不同的转换脚本,或者在执行兼容多种类型终端的转换处理脚本时,转换脚本根据终端的型号走不同的处理分支。

由于预设转换脚本有多种运行方式,所以对应获取终端型号也有多种方式,下面逐一说明:

1)预设转换脚本运行在用户终端上:

当由用户终端来实现控制指令和机器指令相互转换功能时,用户终端的软件中首先需要获取预设转换脚本。出于终端使用安全的考虑,即避免泄露终端控制协议,由终端厂商提供预设转换脚本对应的函数库。当终端的型号众多时,函数库代码量较大且版本多,为了提高函数库管理效率,终端厂商可以将函数库放置于网络服务器上供用户终端软件开发商下载。

在用户终端软件调用转换脚本进行转换之前,需要软件提示用户输入需要控制的终端的型号,或者在用户终端软件和终端首次建立通信连接时,由终端主动给用户终端软件返回其型号。

2)预设转换脚本运行在终端上:

当预设转换脚本运行在终端上时,用户终端软件只需要以自然语言方式发送终端控制信号,不需要做转换,降低了用户终端软件实现复杂度。

预设转换脚本调用终端底层接口即可获取终端型号。

3)预设转换脚本运行在网络服务器上:

网络服务器接收用户终端发出的自然语言形式的控制请求,网络服务器将其转换为受控终端的机器指令,以控制终端。网络服务器在与联网终端建立连接时,从终端的应答消息中获取终端的型号。

网络服务器作为一个集中转换点,可以更高效的实现自然语言控制请求和机器指令的相互转换。例如网络服务器提供终端联网后自动注册和维护状态的机制,将待控制终端有效的管理起来。网络服务器可以从接收的大量用户常用的自然语言形式的控制信号中自动学习常用关键语句和关键词,用于建立自然语言控制语句数据库和控制命令对应的关键词词典,以供从控制信号中提取控制关键词和控制参数值时使用。网络服务器还可以向用户终端进行版本代码更新推送、展示新的控制功能等等。当一些复杂度高、消耗大量处理资源的语音识别或者自然语言解析功能不适合放在用户终端实现时,可以在服务器上实现。

在本实施例中,通过获取终端型号,通过转换脚本和终端型号将关键词和控制参数值转换为机器指令,实现了用户通过统一的软件界面即可实现对不同类型终端的控制。

进一步的,参照图4,本发明第三实施例基于第一实施例提供一种终端控制的方法,本实施例在步骤S20包括:

步骤S240,获取所述终端的控制协议信息。

步骤S250,调用预设的转换脚本。

步骤S260,通过所述转换脚本以及所述控制协议信息将所述关键词和控制参数值转换为机器指令。

即使是相同型号的终端,由于其所支持的协议随着硬件的升级或者功能的扩展在不断更新,会导致不同用户使用的相同型号的终端所支持的协议版本不一样。例如随着终端处理器资源的升级,可以处理的机器指令的位宽变长,对应的机器指令就不同了,从而导致控制协议的变更。

被调用的转换脚本需要获取终端所支持的控制协议信息,根据对应的协议将控制请求转换成终端的机器指令。

在本实施例中,通过获取终端控制协议信息,通过转换脚本和终端控制协议信息将关键词和控制参数值转换为机器指令,实现了用户通过统一的软件界面即可实现对支持不同协议的终端的控制。

进一步的,参照图5,本发明第四实施例基于第一、第二或第三实施例提供一种终端控制的方法,本实施例在步骤S20包括:

步骤S270,获取所述终端的型号和控制协议信息。

步骤S280,调用预设的转换脚本。

步骤S290,通过所述转换脚本以及终端的型号和控制协议信息将所述关键词和控制参数值转换为机器指令。

出于共用代码和维护成本的考虑,终端厂商对于属于同一个系列的不同型号的产品,会提供统一的转换脚本。转换脚本在执行因不同的产品型号和协议信息而有差异的转换操作时,根据终端的型号和控制协议信息选择执行对应的转换操作。

在本实施例中,通过转换脚本以及终端型号和终端控制协议信息将关键词和控制参数值转换为机器指令,实现了用户通过统一的软件界面即可实现对不同类型的、支持不同协议的终端的控制。

进一步的,参照图6,本发明第五实施例基于第一至第四实施例的任一实施例提供一种终端控制的方法,本实施例在步骤S10之后包括:

步骤S40,判断所述控制信号中的控制参数值是否超过预设的数值范围。

步骤S50,若所述控制参数值未超过预设的数值范围,执行调用预设的转换脚本,以将所述关键词和控制参数值转换为机器指令的步骤。

用户在通过语音或者文字输入生成对终端的控制信号时,有时会对终端发出错误的控制信号,转换脚本需要对接收到的控制信号中的控制参数进性检测,判断其是否超出了预设的数值范围。例如用户发出的控制信号中设定的温度超出了空调预设的最高温度,用户设置的风速超出了空调预设的最高风速,或者用户想设置的运行模式不存在。

当终端判断出控制信号中的控制参数值超出了预设的数值范围时,将控制信号错误的信息反馈给用户。

在本实施例中,通过对控制信号中控制参数值是否超过预设数值范围的检测,将异常检测过程前置,避免了终端正常的运行过程受到错误的控制指令的打断,保证了终端正常平稳的运作和服务。

进一步的,参照图7,本发明第六实施例基于第一实施例提供一种终端控制的方法,本实施例包括:

步骤S60,获取终端当前状态对应的机器代码。

步骤S70,调用预设转换脚本。

步骤S80,通过所述预设转换脚本将所述机器代码转换为状态信号,并发送所述状态信号,所述状态信号为自然语言的形式。

终端在长期使用过程中难免出现故障,终端因为故障而导致用户服务受到影响,一方面取决于终端故障是否能被及时发现,另一方面取决于在出现故障时是否能被及时诊断和解决,后者尤其依赖于维修人员的响应速度及维修经验。

为了降低终端故障对用户体验带来的影响,在终端出现故障时,获取故障状态对应的机器代码,通过预设的转换脚本将机器代码转换为自然语言形式的状态信号并发送。

例如,当空调发生温度保险丝断开保护的故障时,对应的十六进制机器代码为0xEB。预设的转换脚本将其机器代码转换成如下所示的JSON数据:

{“Thermal cutoff”:”breakdown”}

转换脚本进一步将该JSON数据转换成中文语句“请注意,空调出现故障,温度保险丝断开,请尽快维修!”并生成对应的状态信号进行发送。

当预设转换脚本运行在用户终端上时,终端将状态信号在用户终端上直接显示;当预设转换脚本运行在终端上,终端将状态信号发送给用户终端;预设转换脚本运行在网络服务器上时,由网络服务器将状态信号发送给用户终端。

此外,终端在检测到用户发送的控制信号不正确时,也需要调用预设的转换脚本将终端无法处理接收控制信号的对应的机器代码转换成“收到控制信号不正确”的状态信号反馈给用户。

通过预设转换脚本将机器代码转换为状态信号的具体过程根据应用场景的不同有以下三种:

1)获取终端型号,调用预设转换脚本,通过转换脚本以及终端型号将机器指令转换成状态信号。

由于不同类型的终端的机器代码不一样,要实现对不同型号终端机器代码和状态信号之间的转换,一是可以提供不同类型终端的转换脚本,二是提供统一的转换脚本,根据终端的型号走不同的处理分支。所以需要先获取终端型号,调用不同的转换脚本或者在统一的转换脚本运行中根据终端的型号将机器代码转换成对应的状态信号。

2)获取终端控制协议信息,调用预设转换脚本,通过转换脚本以及终端控制协议将机器指令转换成状态信号。

对于同样型号的终端,随着硬件的升级和功能的扩展,所支持的控制协议也会不一样。预设转换脚本在进行转换之前,通过获取终端的控制协议信息,在执行转换操作时根据控制协议信息选择对应的转换操作。

3)获取终端型号和控制协议信息,调用预设转换脚本,通过转换脚本以及终端型号和控制协议信息将机器指令转换成状态信号。

当统一的转换脚本兼容支持多种型号的终端时,该转换脚本需要同时获取终端的信号和控制协议信息,在执行转换操作时先根据终端型号确定终端所属的控制协议大类,再根据终端的控制协议信息确定控制协议版本。

在本实施例中,通过获取终端当前状态对应的机器代码,调用预设的转换脚本把机器代码转换成状态信号并发送,实现了及时发现终端故障状态,为快速修复终端故障创造了良好的条件,降低终端故障状态给用户服务带来的影响,提升了用户体验。

本发明还提供一种终端控制的装置,该装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的终端控制程序,所述终端控制程序被所述处理器执行时实现所述的终端控制方法的步骤。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有终端控制程序,所述终端控制程序被处理器执行时实现所述的终端控制方法的步骤。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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