一种消息显示的方法及终端设备与流程

文档序号:16631384发布日期:2019-01-16 06:36阅读:179来源:国知局
一种消息显示的方法及终端设备与流程

本发明实施例涉及智能家居技术领域,尤其涉及一种消息显示的方法及终端设备。



背景技术:

在物联网深入人们生活的大潮流下,智能家居产品拥有前景广阔的市场,结合目前移动物联网的飞速发展,基于移动物联网的智能家居技术更是拥有巨大的潜力。

智能家居产品与传统家居的不同在于可以连接移动端与物联网即时通信,并能通过移动端与智能家居的物联实现智能家居产品全部搬到手机上。通过手机即可实现家庭内智能家居产品的控制及远程控制,个性化定制场景等。同时,当智能家居产品的设备状态发生改变或传感器检测到家中有人闯入时,需要服务器推送消息至手机用户,以引起用户的注意。

而在目前移动端所提供的服务中,信息交互的方式中消息推送是必不可少的,消息推送为服务器单方面的通知手机,并能在手机弹出提示框并伴随着提示音,由此实现在软件未在前台运行的情况下通知用户。比如今日头条,关注感兴趣消息后会推送符合用户喜好的消息;或者腾讯新闻,每日推送实时讯息至手机端;或者微信实时推送微信消息至客户端等。

对于智能家居应用(application,app),如果传感器检测到家中煤气漏气或网关摄像头检测到家中有人闯入或智能门锁检测到撬锁等影响到用户安全的告警信息时,服务器会下发推送消息至手机。而现如今手机会安装众多app,都有消息推送功能。用户不可能关注每条推送通知,还有可能出现智能家居app推送的告警消息会被其他app推送通知快速淹没的情况。另外,有些用户非常讨厌推送通知,在下载安装app后会首先关掉通知开关。显然推送通知栏的消息对于用户来讲重视程度并不高,那如何在用户主动打开app的行为习惯前提下,快速便捷的让用户了解重要消息并查看设备状态是需要解决的问题。



技术实现要素:

本发明实施例提供一种消息显示的方法及终端设备,用以实现快捷查看推送信息,避免遗漏重要消息。

本发明实施例提供的一种消息显示的方法,包括:

终端设备接收应用对应的应用服务器推送的提示消息,并确定所述应用的消息通知开关是否为打开状态,所述提示消息包括消息类型信息;

若是,则所述终端设备在确定所述应用位于系统前台且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

终端设备通过判断应用位于系统前台且是告警类的提示消息时,以弹出框的形式进行显示,可以让用户在当前页面及时看到告警信息,可以避免遗漏重要消息。

可选的,还包括:

所述终端设备在确定所述应用位于系统前台且所述消息类型信息为非告警类时,将所述非告警类的提示消息以提示语的形式进行显示,并存入消息中心。

可选的,还包括:

所述终端设备在确定所述应用位于系统后台时,将所述提示消息以通知栏的形式进行显示。

可选的,还包括:

所述终端设备在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动时,确定用户是否为点击系统通知栏进入所述应用,若是,则进入消息中心,否则在确定所述系统通知栏上包含所述告警类的提示消息时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,还包括:

所述终端设备若确定所述应用的消息通知开关为未打开状态,则在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述提示消息还包括与所述应用管理的设备的设备标识;

在所述终端设备将所述告警类的提示消息以弹出框的形式进行显示之后,还包括:

所述终端设备在接收用户点击弹出框的查看指令之后,根据所述设备标识,查找到与所述设备标识对应的设备控制页;

所述终端设备将所述设备控制页进行显示。

可选的,所述终端设备在接收应用对应的应用服务器推送的提示消息,包括:

若所述终端设备为ios系统,则所述终端设备通过第一消息通道或第二消息通道接收所述应用对应的应用服务器推送的提示消息;

若所述终端设备为android系统,则所述终端设备通过所述第二消息通道接收所述应用对应的应用服务器直接推送的提示消息;

其中,所述第一消息通道为所述终端设备与所述ios系统的苹果推送通知服务apns服务器建立的消息通道,所述第二消息通道为所述终端设备与所述应用服务器建立的消息通道。

可选的,所述所述终端设备通过第一消息通道或第二消息通道接收所述应用对应的应用服务器推送的提示消息之前,还包括:

所述终端设备在确定用户通过帐号登录所述应用时,向所述应用对应的应用服务器注册所述第一消息通道和/或所述第二消息通道,并在确定所述用户退出所述应用时,请求所述应用对应的应用服务器摧毁所述第一消息通道和/或所述第二消息通道。

相应的,本发明实施例还提供了一种消息显示的终端设备,包括:

接收单元,用于接收应用对应的应用服务器推送的提示消息,并确定所述应用的消息通知开关是否为打开状态,所述提示消息包括消息类型信息;

处理单元,用于若确定所述应用的消息通知开关为打开状态,则在确定所述应用位于系统前台且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述处理单元还用于:

在确定所述应用位于系统前台且所述消息类型信息为非告警类时,将所述非告警类的提示消息以提示语的形式进行显示,并存入消息中心。

可选的,所述处理单元还用于:

在确定所述应用位于系统后台时,将所述提示消息以通知栏的形式进行显示。

可选的,所述处理单元还用于:

在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动时,确定用户是否为点击系统通知栏进入所述应用,若是,则进入消息中心,否则在确定所述系统通知栏上包含所述告警类的提示消息时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述处理单元还用于:

若确定所述应用的消息通知开关为未打开状态,则在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述提示消息还包括与所述应用管理的设备的设备标识;

所述处理单元还用于:

在将所述告警类的提示消息以弹出框的形式进行显示之后,在接收用户点击弹出框的查看指令之后,根据所述设备标识,查找到与所述设备标识对应的设备控制页;

将所述设备控制页进行显示。

可选的,所述接收单元具体用于:

若终端设备为ios系统,则通过第一消息通道或第二消息通道接收所述应用对应的应用服务器推送的提示消息;

若终端设备为android系统,则通过所述第二消息通道接收所述应用对应的应用服务器直接推送的提示消息;

其中,所述第一消息通道为所述终端设备与所述ios系统的苹果推送通知服务apns服务器建立的消息通道,所述第二消息通道为所述终端设备与所述应用服务器建立的消息通道。

可选的,所述处理单元还用于:

在通过第一消息通道或第二消息通道接收所述应用对应的应用服务器推送的提示消息之前,在确定用户通过帐号登录所述应用时,向所述应用对应的应用服务器注册所述第一消息通道和/或所述第二消息通道,并在确定所述用户退出所述应用时,请求所述应用对应的应用服务器摧毁所述第一消息通道和/或所述第二消息通道。

相应的,本发明实施例还提供了一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述消息显示的方法。

相应的,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述消息显示的方法。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种系统架构的示意图;

图2为本发明实施例提供的ios系统的消息传输的示意图;

图3为本发明实施例提供的android系统的消息传输的示意图;

图4为本发明实施例提供的消息显示的方法的流程示意图;

图5为本发明实施例提供的监控视频的示意图;

图6为本发明实施例提供的消息显示的终端设备的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

图1示例性的示出了本发明实施例提供的消息显示的方法所适用的系统架构,如图1所示,该系统架构可以包括智能家居设备100、应用服务器200、终端设备300、苹果推送通知服务(applepushnotificationservice,apns)服务器400。

该智能家居设备100可以为智能家电、智能控制设备、智能监控设备等设备。智能家居设备100可以通过网络与应用服务器200进行通信,通过安装终端设备300上与该智能家居设备100关联的app,可以实现对该智能家居设备100的控制。

该应用服务器200可以分别与apns服务器400、终端设备300进行通信,该应用服务器200为终端设备300上安装的app所对应的应用服务器。

该终端设备300为可以安装app的设备,其可以包括但不限于:手机、手环、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、个人数字助理(personaldigitalassistant,pda)设备、车载设备、可穿戴设备等,而不仅限于通信终端。

apns服务器400为苹果ios系统专有的服务器,其主要是为ios系统用户推送通知服务,ios系统上的所有应用的通知都需要经过该apns服务器400推送给终端设备300。

apns服务器400接收来自应用服务器200的需要被推送的信息,然后推送到指定的ios系统的终端设备300上,然后由终端设备300通知到对应的应用上进行显示。在实现消息推送服务之前,安装应用的终端设备300需要先向apns服务器400进行注册,注册成功之后apns服务器400会返给终端设备300一个devicetoken(设备令牌,devicetoken是对apns服务器400来说的,设备的标识符),得到devicetoken后终端设备300将该devicetoken发给应用对应的应用服务器200。当有需要被推送的消息时,该应用对应的应用服务器200会将消息按指定的格式打包,然后结合设备的devicetoken一并发给apns服务器400,再由apns服务器400推送给终端设备300。具体可以如图2所示的流程。

相对于安装有android系统的终端设备300,其可以直接接收应用服务器200推送的通知消息,智能家居设备100在生成消息后,会发送给应用服务器200,应用服务器200可以直接转发给终端设备300,而无需再经过其它的服务器进行转发,具体可以如图3所示。

基于上述描述,图4示例性的示出了本发明实施例提供的一种消息显示的流程,该流程可以由上述终端设备执行。

如图4所示,该流程具体包括:

步骤401,终端设备接收应用对应的应用服务器推送的提示消息。

终端设备在接收应用对应的应用服务器推送的提示消息之前,还需要注册消息通道,具体可以为:终端设备在确定用户通过帐号登录所述应用时,向应用对应的应用服务器注册第一消息通道和/或第二消息通道,并在确定用户退出应用时,请求应用对应的应用服务器摧毁第一消息通道和/或第二消息通道。该第一消息通道为终端设备与apns服务器建立的消息通道,第二消息通道为终端设备与应用服务器建立的消息通道。

智能家居app消息推送不仅仅针对于ios系统,同样也支持android系统,其中,终端设备为ios系统时,终端设备是通过第一消息通道或第二消息通道接收应用对应的应用服务器推送的提示消息。终端设备为android系统时,终端设备通过第二消息通道接收应用对应的应用服务器直接推送的提示消息。

用户可以使用账号登录及账号管理,在应用启动后,账号登录的情况下,终端根据账号信息向应用服务器请求注册消息通道,注册成功后获取消息通道的标识channel_id。在应用启动后,终端设备会从apns服务器获取到devicetoken,终端设备上的应用通过统一资源定位符(uniformresourcelocator,url)与应用服务器进行信息交互,将devicetoken以及channelid发送至应用服务器。至此,完成了消息通道的注册。

用户在退出应用登录时,需要请求摧毁与应用服务器建立的消息通道,当用户退出登录时,终端设备上的应用通过url与应用服务器进行信息交互,实现摧毁消息通道。

目前智能家居应用所对应的应用服务器已制定的消息的消息类型信息有状态类消息、告警类消息、运营类消息、操作家庭属性消息、家庭内聊天和设备控制消息等。这几种消息模版分别对应不同的格式,可以赋予fomartid值来表示不同的消息类型信息。其中状态消息是用户手动操作了智能家居设备,由智能家居设备上报状态消息至应用服务器,应用服务器根据终端设备的devicetoken将状态消息下发至apns服务器,再由apns服务器根据应用服务器提供的devicetoken来找到指定的终端设备,将消息推送至该终端设备。而告警消息是智能家居设备自身因物理环境所产生的消息,比如家中的燃气灶漏气,燃气传感器会将消息上报至应用服务器。

对于ios系统的应用,应用服务器会通过两个消息通道将消息发送至apns服务器,也就是上述第一消息通道和第二消息通道。一个是应用服务器根据终端设备的devicetoken将状态消息下发至apns服务器,再由apns服务器根据应用服务器提供的devicetoken来找到指定的终端设备,将消息推送至该终端设备的消息通道(如图2中黑色实线所示的通道),可以为上述第一消息通道。另一个是应用服务器与终端设备建立的websocket长链接(如图2中黑色虚线所示的通道),可以为上述第二消息通道。当应用在系统的前台时,终端设备使用第二消息通道接收消息。当应用在后台时,终端设备使用第一消息通道接收消息。

对于android系统的应用,应用服务器与手机建立websocket长连接,也就是上述第二消息通道,应用服务器通过第二消息通道将消息直接下发至终端设备(如图3中黑色虚线所示的通道)。此外所有新消息都是存储于应用服务器存储单元中。

需要说明的是,在本发明实施例中,针对于ios系统的终端设备,在接收到一条消息,会通过两个消息通道同时进行,原因是:如果只有第一消息通道,设备状态信息需要满足实时推送,会产生延迟或丢失信息的情况;如果只有第二消息通道,应用在后台长时间滞留时(苹果规定的是10分钟)该应用就会被停止,这样就无法再接收消息,当然除了后台音乐、下载等可向苹果服务器申请在后台应用时不被停止。

步骤402,终端设备确定所述应用的消息通知开关是否为打开状态,若是则转入步骤403,若否,则转入步骤404。

步骤403,终端设备在确定所述应用位于系统前台且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

终端设备接收到的提示消息的类型可以分为两类,消息中心消息和状态消息。状态消息是不需要展示的,本发明实施例针对的是消息中心消息,而这类消息也可分为两种类型,告警类的提示消息和非告警类的提示消息。应用服务器制定了一套消息模版,利用该模版可以区分消息属于哪类消息。消息模版中msgtype字段代表消息类型信息:msgtype=1代表消息中心消息,msgtype=2代表状态消息。formatid代表消息格式id,其中告警类的提示消息对应的formatid=7,其中该格式含如下字段,如表1所示。

表1

对于ios系统的应用,应用服务器下发消息至两个消息通道。需要注意的是消息同时下发至两个消息通道的是msgtype=1这类消息。而msgtype=2这类消息只下发至第二消息通道,目的是考虑了消息存在延时、丢失的情况。

应用在系统前台时,告警类的提示消息是已弹出框的形式显示,也就是展示弹出框。

终端设备在确定应用位于系统前台且消息类型信息为非告警类时,将非告警类的提示消息以提示语的形式进行显示,并存入消息中心。例如可以展示toast提示语。

当终端设备确定应用位于系统后台时,将告警类或非告警类的提示消息以通知栏方式展示,也就是展示在终端设备的通知栏上。

而当终端设备在确定应用是从系统后台跳转到系统前台或应用启动时,确定用户是否为点击系统通知栏进入该应用的,若是,则进入消息中心,否则在确定系统通知栏上包含告警类的提示消息时,将告警类的提示消息以弹出框的形式进行显示。也就是说,如果用户不是通过点击系统通知栏进入应用时,需要判断系统通知栏上是否包含告警类的提示消息,如果有就在系统主页面显示消息提示框。

步骤404,终端设备在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

终端设备在步骤402中确定该应用的消息通知开关为未打开状态时,该终端设备在该应用无论是位于系统前台还是后台,都不会展示消息。只有确定应用是从系统后台切换到系统前台或应用启动时,才会判断是否含有告警类消息,若有则在主页面显示消息提示框。

可选的,上述提示消息还包括与应用管理的设备的设备标识,当终端设备将告警类的提示消息以弹出框的形式进行显示之后,还需要在接收用户点击弹出框的查看指令之后,根据设备标识,查找到与设备标识对应的设备控制页,然后将所述设备控制页进行显示。

可以如图5所示,当应用从后台切到前台/或者应用启动时,若存在告警消息则显示弹出框,否则不显示。点击弹出框的“去查看”按键可以直接进入设备控制页,省去了消息中心查看消息后,再退出消息中心,到设备列表中查找目标设备的麻烦。

终端设备在接收到提示消息后,根据提示消息的formatid值来区分告警类消息。如果是告警类消息,则显示弹出框,否则不显示。用户通过点击“去查看”可直接进入设备控制页,也可以说是根据提示消息的wifiid或deviceid,到本地数据库的设备列表中查到对应设备的详细信息,这些信息用于打开设备控制页。具体可以为:

(1)、根据提示消息的wifiid或deviceid,到本地数据库的设备列表中查到对应设备的详细信息,拿到的详细信息共包含26个字段,如表2所示。

(2)、根据devicetypecode判断是否加载本地控制页(内置到app中)或服务器控制页(预存到服务器中)。如需本地控制页,则根据devicetypecode字段解析uimodulepath字段的内容,拿到本地控制页的文件夹名字及控制页名字。如需服务器控制页,则直接使用uimodulepath字段的内容。

(3)、使用webview技术加载本地控制页/服务器控制页。同时将这26个字段的内容传递给控制页。因设备控制页需要这26个字段信息做相应的处理,这是设备控制页的逻辑了,这里就不需要写了。

(4)、打开控制页,展示控制页内容。例如,点击图5所示的“去查看”直接跳转到设备的控制页,无需再通过消息中心,点击相应的消息进入设备的控制页。

基于相同的技术构思,图6示例性的示出了本发明实施例提供的一种消息显示的终端设备的结构,该终端设备可以执行消息显示的流程。

如图6所示,该终端设备可以包括:

接收单元601,用于接收应用对应的应用服务器推送的提示消息,并确定所述应用的消息通知开关是否为打开状态,所述提示消息包括消息类型信息;

处理单元602,用于若确定所述应用的消息通知开关为打开状态,则在确定所述应用位于系统前台且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述处理单元602还用于:

在确定所述应用位于系统前台且所述消息类型信息为非告警类时,将所述非告警类的提示消息以提示语的形式进行显示,并存入消息中心。

可选的,所述处理单元602还用于:

在确定所述应用位于系统后台时,将所述提示消息以通知栏的形式进行显示。

可选的,所述处理单元602还用于:

在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动时,确定用户是否为点击系统通知栏进入所述应用,若是,则进入消息中心,否则在确定所述系统通知栏上包含所述告警类的提示消息时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述处理单元602还用于:

若确定所述应用的消息通知开关为未打开状态,则在确定所述应用从所述系统后台跳转到所述系统前台或所述应用启动且所述消息类型信息为告警类时,将所述告警类的提示消息以弹出框的形式进行显示。

可选的,所述提示消息还包括与所述应用管理的设备的设备标识;

所述处理单元602还用于:

在将所述告警类的提示消息以弹出框的形式进行显示之后,在接收用户点击弹出框的查看指令之后,根据所述设备标识,查找到与所述设备标识对应的设备控制页;

将所述设备控制页进行显示。

可选的,所述接收单元601具体用于:

若终端设备为ios系统,则通过第一消息通道或第二消息通道接收所述应用对应的应用服务器推送的提示消息;

若终端设备为android系统,则通过所述第二消息通道接收所述应用对应的应用服务器直接推送的提示消息。

可选的,所述处理单元602还用于:

在通过第一消息通道或第二消息通道接收所述应用对应的应用服务器推送的提示消息之前,在确定用户通过帐号登录所述应用时,向所述应用对应的应用服务器注册所述第一消息通道和/或所述第二消息通道,并在确定所述用户退出所述应用时,请求所述应用对应的应用服务器摧毁所述第一消息通道和/或所述第二消息通道。

基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述消息显示的方法。

基于相同的技术构思,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述消息显示的方法。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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