本发明属于人机交互领域,具体涉及一种智能硬件的跨平台人机交互装置,该系统能够满足人机交互过程中界面控制与展示的需求,并且具备人机交互体验优秀、兼容所有软硬件平台,易于维护和扩展的特点。
背景技术:
目前的人机交互过程中界面控制与展示的实现受限于智能硬件操作系统平台,开发难度大且扩展性差;低成本的解决方案以缩小显示尺寸、降低动画品质实现高效快速开发,牺牲了用户使用体验,难以满足用户对智能硬件优质交互体验的要求。
技术实现要素:
有鉴于此,本发明的主要目的在于提供一种智能硬件的跨平台人机交互装置,该系统能够实现动画图文显示、音视频播放及录制、用户输入等人机交互的功能,满足对智能硬件控制、查询的需要。
一种智能硬件的跨平台人机交互装置,该系统包括网络服务器(101)、浏览器(102)、控制进程(103)组成;网络服务器(101)提供web页面服务(104),并监听控制端口(105);浏览器(102)维持与网络服务器(101)的长连接(106),发起web请求(107),接受web数据(108),解析并执行页面代码,渲染人机交互显示界面(109),并获取用户反馈(110);控制进程(103)通过控制端口(105)连接网络服务器(101),并根据人机交互场景和功能需要,发送控制命令(111)通知网络服务器(101)计算生成相应页面数据,回应浏览器(102)页面访问请求,接收网络服务器回应和消息(112)。
优选地,网络服务器(101)与浏览器(102)运行于同一个硬件平台,也可以运行于不同的硬件平台上。
优选地,网络服务器(101)提供的web页面服务(104),web数据(108)可以通过同步方式返回,也可以通过长连接(106)以异步方式推送至浏览器(102)。
优选地,由网络服务器(101)至浏览器(102)的数据可以是web页面、json数据、xml数据、文件或者其他任意形式数据。
优选地,浏览器(102)主动从网络服务器(101)获取web数据(108)用于渲染人机交互显示界面(109),同时维持长连接(106),等待接受异步推送数据。
优选地,浏览器(102)渲染人机交互界面(109),具有以下多种约束:
1)、浏览器(102)从网络服务器(101)获得的web数据(108)格式,包括但不限于json数据、xml数据、文件、css、html、html5、javascript;
2)、浏览器(102)从网络服务器(101)获得的数据,可以用于在浏览器窗口内展示但不局限于动画、图片、文字、音视频及交互控件;
3)、浏览器(102)可以使用窗口方式、全屏方式显示,可以隐藏窗口标题栏(113);
4)、浏览器(102)可以通过html输入标签直接获得用户输入;
优选地,控制进程(103)和网络服务器(101)之间约定控制协议,由控制进程(103)向网络服务器发送控制命令(111),接收网络服务器回应和消息(112)。
优选地,控制进程(103)和网络服务器(101)之间的通信,具有以下多种约束:
1)、控制进程(103)和网络服务器(101)之间的通信协议可以是但不限于httppost/get请求,基于tcp/ip的连接、共享内存和进程间消息通信;
2)、控制命令(103)指定网络服务器(101)将向浏览器回复或者推送的页面或者数据类型、内容;
3)、网络服务器回应和消息(112)包括用户通过浏览器(102)输入的信息、页面状态及页面代码执行结果。
本发明的有益效果:1、利用本发明,能够实现动画图文显示、音视频播放及录制、用户输入等人机交互的功能,满足对智能硬件控制、查询的需要。
2、利用本发明,实现智能硬件的人机交互装置,具备人机交互体验优秀、兼容所有软硬件平台,易于维护和扩展的特点。
附图说明
图1是本发明提供的智能硬件的跨平台人机交互装置框架图;
图2是本发明提供的基于linux系统的实施方案图;
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
本发明提出的智能硬件的跨平台人机交互装置,能够实现动画图文显示、音视频播放及录制、用户输入等人机交互的功能,满足对智能硬件控制、查询的需要。
图1是本发明提供的智能硬件的跨平台人机交互装置框架图。该系统包括网络服务器(101)、浏览器(102)、控制进程(103)组成;网络服务器(101)提供web页面服务(104),并监听控制端口(105);浏览器(102)维持与网络服务器(101)的长连接(106),发起web请求(107),接受web数据(108),解析并执行页面代码,渲染人机交互显示界面(109),并获取用户反馈(110);控制进程(103)通过控制端口(105)连接网络服务器(101),并根据人机交互场景和功能需要,发送控制命令(111)通知网络服务器(101)计算生成相应页面数据,回应浏览器(102)页面访问请求,接收网络服务器回应和消息(112)。
网络服务器(101)与浏览器(102)运行于同一个硬件平台,也可以运行于不同的硬件平台上。
网络服务器(101)提供的web页面服务(104),web数据(108)可以通过同步方式返回,也可以通过长连接(106)以异步方式推送至浏览器(102)。由网络服务器(101)至浏览器(102)的数据可以是web页面、json数据、xml数据、文件或者其他任意形式数据。
浏览器(102)主动从网络服务器(101)获取web数据(108)用于渲染人机交互显示界面(109),同时维持长连接(106),等待接受异步推送数据。浏览器(102)渲染人机交互界面(109),具有以下多种约束:
1)、浏览器(102)从网络服务器(101)获得的web数据(108)格式,包括但不限于json数据、xml数据、文件、css、html、html5、javascript;
2)、浏览器(102)从网络服务器(101)获得的数据,可以用于在浏览器窗口内展示但不局限于动画、图片、文字、音视频及交互控件;
3)、浏览器(102)可以使用窗口方式、全屏方式显示,可以隐藏窗口标题栏(113);
4)、浏览器(102)可以通过html输入标签直接获得用户输入;控制进程(103)和网络服务器(101)之间约定控制协议,由控制进程(103)向网络服务器发送控制命令(111),接收网络服务器回应和消息(112)。控制进程(103)和网络服务器(101)之间的通信,具有以下多种约束:
1)、控制进程(103)和网络服务器(101)之间的通信协议可以是但不限于httppost/get请求,基于tcp/ip的连接、共享内存和进程间消息通信;
2)、控制命令(103)指定网络服务器(101)将向浏览器回复或者推送的页面或者数据类型、内容;
3)、网络服务器回应和消息(112)包括用户通过浏览器(102)输入的信息、页面状态及页面代码执行结果;
图2是本发明提供的基于linux系统的实施方案图。
在linux系统(201)上,启动一个web服务器(203),为chrome浏览器(205)提供一个阻塞的web页面服务,为控制进程(204)提供一个web管理页面。
控制进程(204)通过系统api接口(202)取得当前系统运行状态,通过web管理页面接口采用httppost/get请求向web服务器(203)发送控制命令。web服务器(203)根据控制命令为chrome浏览器(205)实时生成人机交互页面,通过输入输出设备(206)进行图文显示、音频播放、视频播放、音频录制以及获取用户输入等操作。
上文中,已经描述了智能硬件的跨平台人机交互装置,目标系统的组成、实现方式,以及实现效果。尽管本发明是参照特定实施例来描述的,但很明显,本领域熟练人员,在不偏移权利要求书所限定的发明范围和精神的情况下,还可以对该人机交互装置及实现形式作各种修改和变更。因此,说明书和附图是描述性的,而不是限定性的。