一种数字媒体设备的软件升级和部署的方法及装置与流程

文档序号:29562260发布日期:2022-04-09 01:19阅读:144来源:国知局
一种数字媒体设备的软件升级和部署的方法及装置与流程

1.本技术涉及数字媒体技术的领域,尤其是涉及一种数字媒体设备的软件升级和部署的方法及装置。


背景技术:

2.目前,户外数字媒体几乎所有都是软硬件一体化服务,从对硬件每个部件的管理到每个展示逻辑的控制,都已经很成熟和广泛化。虽然在户外数字媒体还存在各种标准没有被统一,但是对于单个服务商而言,各自的标准化、产品化都已经很完善了。
3.然而,在户外数字媒体规模化部署广泛化应用的背后,却存在如下运维服务问题,使户外数字媒体平台化运营落地和推广难以被相关部门通过,具体如下:(1)设备更换新软件系统困难;由于运营需要,常常需要更换设备软件系统,一旦设备的生产厂家不再提供服务,将无法进行新的软件系统更换;(2)存在严重的安全隐患;一方面,无论windows系统还是安卓系统,都存在安全漏洞,容易受到攻击,恶意软件被安装;另一方面,出于安全考虑,几乎所有的户外数字媒体都是局域网联网,而户外数字媒体厂商提供的软件升级和部署通常是云服务,且只对自己的软件定制运维服务,不支持其他软件的升级和部署,导致需要对户外数字媒体客户端应用进行维护时,需要运维人员到现场通过软件工具连接本身的开放性wifi进行部署,存在严重的安全隐患;(3)运维操作专业性要求和运维成本高;户外数字媒体数量越大,运维成本越高,且受网络环境影响甚至不能远程维护,必须现场,成本更高;对于软件操作的专业性要求很高,而为了节约成本,维护人员一般为当地的第三方代理运维,导致代理运维的效率和人员要求达不到,直接影响售后服务;综上所述,亟需一种用于户外数字媒体的软件升级和部署方案,以解决目前运维中存在的安全、效率、低成本的问题。


技术实现要素:

4.为了解决户外的数字媒体设备运维中存在的安全、效率、低成本的问题,本技术提供了一种数字媒体设备及数字媒体设备的软件升级和部署的方法。
5.第一方面,本技术提供的一种数字媒体设备的软件升级和部署的方法采用如下的技术方案:一种数字媒体设备的软件升级和部署的方法,包括:在数字媒体设备开机时启动固化安装在所述数字媒体设备上的虚拟机,进入虚拟桌面;获取所述数字媒体设备的硬件编码,并上报服务端进行所述硬件编码的入网校验;接收到校验成功消息后,与服务端之间建立scoket通道;其中,所述校验成功消息
为所述服务器根据接收的所述硬件编码进行入网校验并在校验成功时发送的消息;定时对虚拟机运行文件进行扫描,获取虚拟桌面上安装和运行的软件;通过scoket通道从服务端获取的远程部署软件列表;其中,所述远程部署软件列表记录数字媒体设备能够安装软件的安装和运行情况的表;根据所述服务端获取的远程部署软件列表判断虚拟桌面上安装和运行的每个软件是否是所述远程部署软件列表中软件;如果是所述远程部署软件列表中软件,保持所述软件的安装和运行;如果不是所述远程部署软件列表中软件,对所述软件直接执行隔离、禁用、卸载或删除操作。
6.可选的,在所述接收到校验成功消息后,与服务端之间建立scoket通道之后,还包括:在通过scoket通道接收所述服务端发送的远程部署指令时,向所述服务端查询获取远程部署软件列表;其中,所述远程部署指令为所述服务端在接收上传的合法签名的软件安装包并创建完成本次软件安装包的远程部署任务以及更新所述远程部署软件列表时向对应数字媒体设备发送的指令;根据所述远程部署软件列表从服务端下载对应软件安装包到所述虚拟机,并自动化执行静默安装和运行操作在所述虚拟桌面安装应用,在安装和运行完成后向所述服务端发送安装或升级成功的反馈信息。
7.可选的,在所述获取所述数字媒体设备的硬件编码,并上报服务端进行所述硬件编码的入网校验时,还包括对获取的所述硬件编码采用加密算法进行加密,再将加密后的所述硬件编码上报服务端进行所述硬件编码的入网校验。
8.可选的,所述远程部署软件列表包括对应数字媒体设备上已安装运行或需要安装运行的软件名称、对应的软件安装包下载地址、安装标识以及软件状态;所述安装标识包括表示对应软件在所述数字媒体设备上未安装的未安装状态和表示对应软件在所述数字媒体设备上已安装完成的已安装状态;所述软件状态包括表示软件可在所述数字媒体设备上安装运行的上架状态和表示软件不可在所述数字媒体设备上安装运行的下架状态。
9.可选的,在所述接收到校验成功消息后,与服务端之间建立scoket通道之后,还包括:在通过scoket通道接收来自所述服务端的远程卸载指令时,向所述服务端获取远程部署软件列表;其中,所述远程卸载指令为所述服务端在对所述远程部署软件列表中软件的软件状态改为所述下架状态时向对应数字媒体设备发送的指令;查询所述远程部署软件列表,并将所述远程部署软件列表中软件状态为下架状态的软件从所述虚拟桌面上自动卸载或删除;在软件状态为下架状态的软件卸载或删除完成后,向所述服务端返回卸载或删除完成的反馈信息。
10.可选的,在在所述接收到校验成功消息后,与服务端之间建立scoket通道之后,还包括:定时通过scoket通道向所述服务端查询所述远程部署软件列表;检测所述远程部署软件列表中是否存在软件状态为上架状态、安装状态为未安装
的软件以及软件状态为下架状态、安装状态为已安装的软件;如果在远程部署软件列表中存在软件状态为上架状态、安装状态为未安装的软件,根据远程部署软件列表下载对应软件安装包到虚拟机上,并执行静默安装和运行,在完成安装和运行后向服务端返回安装和运行成功的反馈消息;如果在远程部署软件列表中存在软件状态为下架状态、安装状态为已安装的软件,根据所述远程部署软件列表对表中软件状态为下架状态的软件自动执行软件的静默卸载或删除操作;并在软件从虚拟桌面上卸载或删除完成后向所述服务端返回卸载或删除成功的反馈信息。
11.可选的,所述如果在远程部署软件列表中存在软件状态为上架状态、安装状态为未安装的软件,根据远程部署软件列表下载对应软件安装包到虚拟机上,包括:如果在远程部署软件列表中存在软件状态为上架状态、安装状态为未安装的软件,对虚拟机运行文件进行扫描,获取虚拟桌面上安装和运行的软件;判断虚拟桌面上是否安装和运行有远程部署软件列表中软件状态为上架状态、安装状态为未安装的所述软件;如果存在,向所述服务端返回安装和运行成功的反馈信息;如果不存在,根据所述远程部署软件列表下载对应软件安装包到虚拟机上。
12.可选的,所述如果在远程部署软件列表中存在软件状态为下架状态、安装状态为已安装的软件,根据所述远程部署软件列表对表中软件状态为下架状态的软件自动执行软件的静默卸载或删除操作,包括:如果在远程部署软件列表中存在软件状态为下架状态、安装状态为已安装的软件,对虚拟机运行文件进行扫描,获取虚拟桌面上安装和运行的软件进行扫描;判断虚拟桌面上是否安装运行有远程部署软件列表中软件状态为下架状态、安装状态为已安装的软件;如果存在,返回卸载或删除成功的反馈信息;如果不存在,根据远程部署软件列表对表中软件状态为下架状态的软件自动执行软件的静默卸载或删除操作。
13.可选的,如果在对所述软件直接执行隔离、禁用、卸载或删除操作时,对应软件无法被隔离、禁用、卸载或删除,还包括:通过二级安全机制对运行所述软件的数字媒体设备对应屏幕型号进行关闭;如果所述数字媒体设备的屏幕被强制开启后,二级安全机制发现所述软件仍然存在,触发执行三级安全机制对所述数字媒体设备主机进行关机,并修改主机的登录密码。
14.第二方面,本技术提供一种数字媒体设备的软件升级和部署的装置采用如下的技术方案:一种数字媒体设备的软件升级和部署的装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至9中任意一项所述的数字媒体设备的软件升级和部署的方法。
15.综上所述,本技术包括以下至少一种有益技术效果:1.本技术中所有数字媒体设备软件升级和部署都基于固化安装在数字媒体设备上的虚拟机,基于系统原始权限接口的二次封装,比系统初始桌面权限更加可控,只要软件是服务端认证的合法软件,就能进行远程部署、升级、软件状态的监控等一系列的运维操
作,不仅帮助户外的数字媒体设备采购方解决软件系统被厂家在出厂绑架销售且不可以被替代的问题,而且方案简单、全自动化,有效提供运维效率,降低运维成本;2.由于虚拟机与数字媒体设备进行了绑定和固化,数字媒体设备与外界的所有交互操作都能够被监控,避免不合法软件在数字媒体设备上安装,提高软件部署和升级的安全性;3.回归户外媒体设备本身的硬件运维生态管理中来,通过安全链路的加密通信,保证运维安全性,也不再受运维人员专业性、远距离的限制,回归软件运维的最核心操作中来;4.能够服务于公共数字媒体的安全性管控与维护,出厂预设永久绑定,通信多层加密,软硬互信验证机制,为远程的实施提供最低成本的实施策略;同时保证数字媒体运行过程中,对于硬件风险和内容播放风险的全流程自动化管控。
附图说明
16.图1是本技术提供的一种字媒体设备的软件升级和部署的方法的流程图;图2是本技术提供的一种字媒体设备的软件升级和部署的装置的结构框图。
具体实施方式
17.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图1-2及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
18.本技术实施例公开一种数字媒体设备的软件升级和部署的方法。参照图1,本技术采用c/s架构,即运维系统的服务端和配套的在每台户外数字媒体设备出厂即固化安装的虚拟机(不允许被删除、卸载、停用等操作,确保虚拟机与服务端的通信),并将虚拟机的虚拟桌面设置为默认桌面,数字媒体设备启动联网后虚拟机启动运行,这样只要监控虚拟机就能监控在数字媒体设备上软件的安装和卸载,防止不法软件的任意安装,有效提高安全性和监控的可靠性,该方法应用于固化安装有虚拟机的每个数字媒体设备,包括:步骤s100、在数字媒体设备开机时启动固化安装在所述数字媒体设备上的虚拟机,进入虚拟桌面,使虚拟桌面为数字媒体设备的默认桌面,这样只要在虚拟桌面上对软件进行安装、运行、卸载、禁用等操作都能通过监控虚拟机软件的运行文件被监控。
19.步骤s200、虚拟机启动运行进入虚拟桌面后,获取该虚拟机所在数字媒体设备的硬件编码上报服务端进行硬件编码的入网校验;本实施例通过虚拟机本身软件与其载体设备(数字媒体设备)硬件的接口交互获取户外的数字媒体设备的硬件编码,并通加密算法加密后进行上报服务器。
20.运维系统的服务端负责对所有户外的数字媒体设备的硬件编码进行入库和销售给对应客户的关系管理表(即该设备卖给了谁)以及该硬件编码授权入网许可。所以在接收到本方法上报的硬件编码时,会根据接收的硬件编码查询入关系管理表,匹配对应的客户信息,如果匹配成功,在客户的系统端显示对应的数字媒体设备为已经在线并属于授权入网状态,并向对应应用本方法的数字媒体设备发送校验成功消息,如果匹配失败,则表示设备未入网或者非法设备将不予联网服务,在客户的系统端显示对应数字媒体设备已经在线
并属于授权入网状态(当数字媒体设备未启动或者数字媒体设备上的虚拟机未启动时,在客户的系统端至少显示对应数字媒体设备未在线,此时也无法建立专用通道)发送校验失败消息。本实施例在进行硬件编码入库时,对硬件编码采用加密算法进行加密。服务器和应用本方法的数字媒体设备的加密算法可以相同也可以不同,相同时直接在数据库查询是否存在与加密后序列相同的加密序列;不同时,服务器对接收的加密硬件编码进行解码,然后对解密得到的硬件编码采用本地的加密算法进行加密,并查询数据库中是否存在与加密后得到的序列相同的加密序列。
21.步骤s300、在接收到服务端发送的校验成功消息后,与服务端之间建立scoket通道,用于软件的自动化远程部署以及监控(包括新软件的部署、已部署软件的更新和卸载以及不合法软件在虚拟桌面的安装);本实施例如果入网校验不通过,取消建立scoket通道,并无法执行软件的自动化远程部署和监控。
22.步骤s400、定时(如每隔1小时扫描一次或者每天6点、12点、18点和24点分别扫描一次)对虚拟机运行文件进行扫描,获取虚拟桌面上安装和运行的软件。
23.步骤s500、通过scoket通道从服务端获取的远程部署软件列表。其中,远程部署软件列表记录数字媒体设备能够安装软件的安装和运行情况的表;在本实施例中,远程部署软件列表是在服务端生成的;服务端接收并存储上传的合法签名的软件安装包(如apk)并创建本次软件安装包的远程部署任务;然后选择本次软件安装包远程部署任务推送的数字媒体设备列表(可以是全部授权联网的数字媒体设备、也可指定部分授权联网的数字媒体设备)、远程部署日期和时间,并向本次软件安装包远程部署任务推送的数字媒体设备发送远程部署指令,更新生成每个数字媒体设备的远程部署软件列表;在本实施例中远程部署软件列表至少包括对应数字媒体设备上已安装运行或需要安装运行的软件名称、对应软件的安装包下载地址以及安装标识。本实施例更新生成每个数字媒体设备的远程部署软件列表包括:(1)在远程部署软件列表添加新的软件名称、对应软件的安装包下载地址以及安装标识;(2)在远程部署软件列表更新已有软件对应软件的安装包下载地址以及安装标识;(3)从远程部署软件列表中删除已下架的已有软件名称、对应软件的安装包下载地址以及安装标识。
24.步骤s600、根据服务端获取的远程部署软件列表判断虚拟桌面上安装和运行的每个软件是否是远程部署软件列表中软件;如果是,说明软件为合法软件,允许安装和运行在虚拟桌面上,执行步骤s700;否则,说明软件为不合法软件,不是通过远程部署安装的,执行步骤s800。
25.步骤s700、保持该软件在虚拟机上的安装和运行。
26.步骤s800、对软件直接执行隔离、禁用、卸载或删除操作,确保数字媒体设备非法安装的应用不能被安装和运行。
27.本技术在数字媒体设备启动时,启动固化安装在数字媒体设备上的虚拟机,进入虚拟桌面,所有数字媒体设备软件升级和部署都基于虚拟机,基于原始权限接口的二次封装,比数字媒体设备的初始桌面权限更加可控,只有软件是服务端认证的合法软件,才能进
行远程部署、升级、软件状态的监控等一系列的运维操作,对于自行安装在虚拟桌面的软件实现自动卸载、删除或禁用等操作,对数字媒体设备安装和运营的软件进行合法性校验,保证每个数字媒体设备上安装运行的软件与被允许安装的软件一致,没有非法应用(主要是每个数字媒体设备本地自主安装的应用),不仅帮助户外的数字媒体设备采购方解决软件系统被厂家在出厂绑架销售且不可以被替代的问题,而且方案简单、全自动化,有效提供运维效率,降低运维成本,另外采用建立的专属通道进行软件部署和升级相关数据的传输,数据传输稳定性、安全性有效提高。
28.在本技术中为进一步保证安装的软件为合法软件,本技术实施例以通过scoket通道发送远程部署指令结合远程部署软件列表的方式实现软件的远程部署,在步骤s300之后,还包括软件远程部署程序,软件远程部署程序包括:在通过scoket通道接收服务端发送的远程部署指令时,并向服务端查询获取远程部署软件列表。本实施例服务端对上传的应用的安装包进行签名的合法性验证,当合法性验证为不合法时,不对该软件进行自动化的远程部署;只对安装包加密和\或签名合法的软件进行远程部署,服务端在接收上传的合法签名的软件安装包并创建完成本次软件安装包的远程部署任务以及更新所述远程部署软件列表,并向对应数字媒体设备发送的远程部署指令。本实施例的安装包包括但不限于新上架软件的安装包或者已有软件的升级包,当然也可能是操作系统的安装包或升级包,在此不做限制。
29.根据远程部署软件列表从服务端下载对应软件安装包到所述虚拟机,并自动化执行静默安装和运行操作在虚拟桌面安装应用,在安装和运行完成后向服务端发送安装或升级成功的反馈信息。服务端接收到反馈信息后会更新对应数字媒体设备的远程部署软件列表,将远程部署软件列表中的安装标识改为已安装。
30.在本实施例中,远程部署软件列表还包括软件状态,当软件状态为上架状态时,表示软件可在该数字媒体设备(实际上是虚拟桌面)上安装运行,当软件状态为下架状态时,表示软件不可在该数字媒体设备上安装运行。
31.当服务端接收新的安装包时,在创建本次安装包的远程部署任务的同时,更新远程部署软件列表,即当新的安装包为数字媒体设备未安装的软件,在远程部署软件列表中添加新软件的名称、安装包下载地址,并将软件状态设置上架状态,将安装标识设置为未安装状态;当新的安装包为数字媒体设备已安装软件的升级包,在远程部署软件列表修改对软件的安装包下载地址,并将安装标识设置为未安装状态,然后服务端向需要部署本次软件的所有数字媒体设备发送远程部署指令;当在虚拟桌面完成新应用的安装后发送反馈信息,服务端根据反馈信息更新对应的远程部署软件列表,将远程部署软件列表中对应软件的安装标识变更为已安装。
32.当软件达到部署日期和时间或者应客户要求撤销该软件在部分数字媒体设备中的部署时,更新这些数字媒体设备的远程部署软件列表,将远程部署软件列表中对应软件的软件状态变更为下架状态,并向改为下架状态的数字媒体设备发送远程卸载指令;接收到卸载指令后获取远程部署软件列表,根据远程部署软件列表将软件状态为下架状态的软件从虚拟桌面上自动卸载或删除,并在卸载或删除完成后,返回卸载或删除完成的反馈信息,服务端接收到卸载或删除完成的反馈信息从该数字媒体设备的远程部署软件列表中删除关于已删除软件的所有记录。
33.在本实施例中,为了保证数字媒体设备与远程部署软件列表记载的软件状态一致,在步骤s300之后,还包括远程部署软件列表核查程序,远程部署软件列表核查程序包括:定时通过scoket通道向服务端查询远程部署软件列表;检测获取的远程部署软件列表中是否存在软件状态为上架状态、安装状态为未安装的软件以及软件状态为下架状态、安装状态为已安装的软件。
34.如果远程部署软件列表中存在软件状态为上架状态、安装状态为未安装的软件,根据远程部署软件列表下载对应安装包到虚拟机上,并执行软件在虚拟桌面上的静默安装和运行,并在完成安装和运行后像服务端返回安装成功的反馈消息,以便服务端根据安装成功的反馈消息更新远程部署软件列表,将该软件的安装状态改为已安装。本实施例根据远程部署软件列表下载对应安装包前还包括对虚拟机的运行文件进行扫描,获取虚拟桌面上安装和运行的软件,判断虚拟桌面上是否安装运行有远程部署软件列表中软件状态为上架状态、安装状态为未安装的软件,如果存在,返回安装和运行成功的反馈信息,以便服务端根据安装成功的反馈信息更新远程部署软件列表,将该软件的安装状态改为已安装;如果不存在,再根据远程部署软件列表下载对应安装包。
35.如果远程部署软件列表中存在软件状态为下架状态、安装状态为已安装的软件;根据远程部署软件列表对表中软件状态为下架状态的软件自动执行软件在虚拟桌面上的静默卸载或删除操作;如果卸载或删除完成向服务端返回卸载或删除成功的反馈信息,以便服务端根据卸载或删除完成的反馈信息从该数字媒体设备的远程部署软件列表中删除关于已卸载或删除软件的所有记录。本实施例在根据远程部署软件列表对表中软件状态为下架状态的软件自动执行软件的静默卸载或删除操作之前,还包括对虚拟机运行文件进行扫描,获取虚拟桌面上安装和运行的软件,判断虚拟桌面上是否安装运行有远程部署软件列表中软件状态为下架状态、安装状态为已安装的软件,如果存在,返回卸载或删除成功的反馈信息,以便服务端根据卸载或删除成功的反馈信息更新远程部署软件列表,将已卸载或删除的软件的相关记录从该数字媒体设备的远程部署软件列表中删除;如果不存在,再根据远程部署软件列表对表中软件状态为下架状态的软件自动执行软件的静默卸载或删除操作。
36.在本实施例中,如果非法软件和下架软件无法被隔离、禁用、卸载或删除,为保证数字媒体设备安全,通过二级安全机制对运行该软件的数字媒体设备对应屏幕型号进行关闭;如果数字媒体设备的屏幕被强制开启后,二级安全机制发现已下架软件或非法软件还在,触发执行三级安全机制,对数字媒体设备主机进行关机,并修改主机的登录密码。
37.本实施例还设置有安全退出机制,在进行虚拟机退出时需要输入退出凭证,当输入的退出凭证正确时,虚拟机才会退出到数字媒体设备的系统原始桌面,否则,只能运行在虚拟桌面之上,确保数字媒体设备的系统权限的保护。
38.对于服务器的远程部署软件列表,同样同步存储在数字媒体设备本地的加密隐藏目录,即使在断网情况下,依然可以从本地获取远程部署软件列表,进行软件远程部署的相关操作。
39.综上所述,本技术实施例通过固化和绑定在数字媒体设备上的虚拟机实现对系统中所有数字媒体设备软件升级和部署,这种基于系统原始权限接口的二次封装,比系统初
始桌面权限更加可控,只要软件是服务端认证的合法软件,就能进行远程部署、升级、软件状态(下载、安装、卸载等状态)的监控等一系列的运维操作,且数字媒体设备本身联网注册,而是不依赖于某个应用客户端的注册模式;不仅帮助户外的数字媒体设备采购方解决软件系统被厂家在出厂绑架销售且不可以被替代的问题,而且方案简单、全自动化,有效提供运维效率,降低运维成本;另外,由于虚拟机与数字媒体设备进行了绑定和固化,数字媒体设备与外界的所有交互操作都能够被监控,避免不合法软件在数字媒体设备上安装,提高软件部署和升级的安全性。
40.如图2所示,本技术还提供了一种数字媒体设备的软件升级和部署的装置,部署在固化有虚拟机的数字媒体设备上,包括存储器100、处理器200以及在存储器上并可在处理器上运行的计算机程序;计算机程序存储在存储器100上并可在处理器200上运行;处理器200执行计算机程序时实现如本技术提供的数字媒体设备的软件升级和部署的方法;例如,执行以上描述的图1中的方法步骤s100至步骤s800。
41.以上均为本技术的较佳实施例,并非依此限制本技术的保护范围,本说明书(包括摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1