CN110166576A - 一种实现云音箱消息补推的方法及系统 - Google Patents

一种实现云音箱消息补推的方法及系统 Download PDF

Info

Publication number
CN110166576A
CN110166576A CN201910576060.0A CN201910576060A CN110166576A CN 110166576 A CN110166576 A CN 110166576A CN 201910576060 A CN201910576060 A CN 201910576060A CN 110166576 A CN110166576 A CN 110166576A
Authority
CN
China
Prior art keywords
message
broadcasted
cloud speaker
push server
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910576060.0A
Other languages
English (en)
Other versions
CN110166576B (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201910576060.0A priority Critical patent/CN110166576B/zh
Publication of CN110166576A publication Critical patent/CN110166576A/zh
Application granted granted Critical
Publication of CN110166576B publication Critical patent/CN110166576B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Abstract

本发明提供了一种实现云音箱消息补推的方法及系统,所述方法包括:推送服务器接收请求,判断请求类型,当接收到的请求为消息推送请求时,解析消息推送请求获取云音箱第二信息以及待播报消息,判断待播报消息是否符合第二预设条件,当符合时,判断推送服务器和云音箱是否连接,如果是,播报待播报消息,否则,执行连接过程;当推送服务器接收到云音箱返回的播报成功响应时,判断播报列表中是否还存在待播报消息,如果是,进行播报。

Description

一种实现云音箱消息补推的方法及系统
技术领域
本发明涉及信息安全领域,尤其涉及一种实现云音箱消息补推的方法及系统。
背景技术
随着科技的不断发展,移动支付在生活中得到越来越普遍的应用;目前,用户在进行移动支付时,商户可能需要音响播报来节约时间和精力确认用户支付金额,云音箱的应用为商户提供了方便和快捷的方式;云音箱在使用过程中,需要与消息推送服务器长连接,当连接断开时,云音箱就接收不到消息推送服务器推送的消息,因此无法播报,会出现消息漏报或者错报的情况。
发明内容
根据本发明,提供了一种实现云音箱消息补推的方法,包括:
步骤s1:推送服务器等待接收请求,当接收到请求时,判断请求的类型,如果是设备连接请求,执行步骤s2;如果是消息推送请求,执行步骤s4;
可选地,判断请求的类型具体为:推送服务器监听端口,当从第一端口接收到请求时,请求为设备连接请求;当从第二端口接收到请求时,请求为消息推送请求。
可选地,步骤s1还包括:
如果推送服务器接收到的请求是其他请求,根据接收到的请求执行相关操作。
步骤s2:推送服务器解析设备连接请求,获取云音箱第一信息,判断云音箱第一信息是否符合第一预设条件,如果是,执行步骤s3;否则,拒绝连接,返回步骤s1;
可选地,步骤s2中的获取云音箱第一信息具体为:
推送服务器获取云音箱的云音箱标识、用户名、密码以及云音箱的第一登录次数。
可选地,步骤s2中判断第一信息是否满足第一预设条件具体包括:
步骤s2-1:推送服务器从自身数据库中获取第二登录次数,判断第一登录次数是否大于云音箱的第二登录次数,如果是,执行步骤s2-2;否则,拒绝连接,返回步骤s1;
步骤s2-2:推送服务器根据云音箱的密钥验证用户名和密码是否合法,如果是,执行步骤s3;否则,拒绝连接,返回步骤s1。
可选地,推送服务器根据用户名获取云音箱的第一登录次数具体为:推送服务器解析用户名获取第一登录次数。
可选地,第二登录次数为推送服务器中保存的云音箱的登录次数。
步骤s3:推送服务器更新云音箱的登录状态为已连接,保存云音箱第一信息,执行步骤s7;
可选地,步骤s3中保存云音箱第一信息具体为推送服务器保存云音箱第一信息中的云音箱的第一登录次数。
步骤s4:推送服务器解析消息推送请求,获取云音箱第二信息以及待播报消息,将获取到的待播报消息添加到云音箱对应的播报列表中;判断播报列表中的待播报消息是否符合第二预设条件,如果是,执行步骤s5;否则,删除不符合第二预设条件的待播报消息,执行步骤s5;
可选地,推送服务器解析消息推送请求,获取云音箱第二信息具体为:推送服务器解析消息推送请求,获取云音箱的云音箱标识。
可选地,步骤s4中判断播报列表中的待播报消息是否符合第二预设条件具体包括:
步骤s4-1:推送服务器逐一判断播报列表中的待播报消息的保存时间是否超过第一阈值,如果是,删除超时的待播报消息,执行步骤s4-2;否则,执行步骤s4-2;
步骤s4-2:推送服务器判断播报列表中的待播报消息的数量是否超过第二阈值,如果是,删除播报列表中的从第一条待播报消息开始的超过第二阈值数量的待播报消息,执行步骤s5;否则,执行步骤s5。
步骤s5:推送服务器根据云音箱第二信息判断是否已与云音箱建立连接,如果是,执行步骤s6;否则,返回步骤s1;
可选地,步骤s5具体为:
推送服务器根据云音箱标识判断云音箱的登录状态是否为已连接,如果是,云音箱建立连接,执行步骤s6;否则,云音箱未建立连接,返回步骤s1。
步骤s6:推送服务器将播报列表中的第一条待播报消息发送至云音箱,当接收到云音箱返回的播报成功响应时,推送服务器将播报列表中的第一条待播报消息标记为已播报;
可选地,步骤s6还包括:
当推送服务器未接收到云音箱返回的播报成功响应时,推送服务器重新发送播报列表中的第一条待播报消息,经过预设时间未接收到响应,断开连接,返回步骤s1。
可选地,步骤s6中当推送服务器将播报列表中的第一条待播报消息发送至云音箱后,接收到云音箱返回的已播报响应之前,该方法还包括:
步骤s6-1:云音箱解析接收到的待播报消息,获取待播报消息ID、金额和待播报消息类型;
步骤s6-2:云音箱根据待播报消息ID判断消息是否已播报,如果是,向推送服务器返回消息播报成功响应;否则,播报待播报消息,向推送服务器返回消息播报成功响应。
可选地,步骤s6中推送服务器将播报列表中的第一条待播报消息标记为已播报之后,还包括:
推送服务器从播报列表中删除第一条待播报消息。
步骤s7:推送服务器判断播报列表中是否还存在待播报消息,如果是,返回步骤s6;否则,返回步骤s1。
一种实现云音箱消息补推的系统,包括:
推送服务器
其中,推送服务器包括:
第一接收模块,用于接收请求;
第一判断模块,用于判断第一接收模块接收到的请求的类型;
第一解析模块,用于解析第一接收模块接收到的设备连接请求,当第一判断模块判断出第一接收模块接收到的为设备连接请求时,第一解析模块获取云音箱第一信息;
第二判断模块,用于判断解析模块获取到的云音箱第一信息是否符合第一预设条件;
更新模块,用于当第二判断模块判断出云音箱第一信息符合第一预设条件时,更新云音箱的登录状态为已连接;
保存模块,用于保存云音箱第一信息,触发第四判断模块;
第一解析模块还用于解析第一接收模块接收到的消息推送请求,获取云音箱第二信息以及待播报消息,将获取到的待播报消息添加到云音箱对应的播报列表中;
第三判断模块,用于判断播报列表中的待播报消息是否符合第二预设条件,还用于当判断出播报列表中的待播报消息符合第二预设条件时,根据云音箱第二信息判断推送服务器是否已与云音箱建立连接;
发送模块,用于当第三判断模块判断出推送服务器已与云音箱建立连接时,将播报列表中的第一条待播报消息发送至云音箱;
接收模块还用于接收云音箱返回的播报成功响应;
标记模块,用于当接收模块接收到云音箱返回的播报成功响应时,将播报列表中的第一条待播报消息标记为已播报;
第四判断模块,用于判断播报列表中是否还存在待播报消息,当判断出还存在待播报消息时,触发发送模块。
可选地,第一判断模块具体用于监听端口,当从第一端口接收到请求时,该请求为设备连接请求;当从第二端口接收到请求时,该请求为消息推送请求。
可选地,推送服务器还包括:
执行模块,用于当第一判断模块判断出接收模块接收到的请求为其他类型时,根据请求执行相应操作。
可选地,第一解析模块具体用于解析设备连接请求,获取云音箱的云音箱标识、用户名、密码以及云音箱的第一登录次数。
可选地,第二判断模块包括:
获取子模块,用于从自身数据库中获取第二登录次数;
第一判断子模块,用于判断解析模块获取到的云音箱的第一登录次数是否大于云音箱的第二登录次数;
验证子模块,用于当第一判断子模块判断出云音箱的第一登录次数大于云音箱的第二登录次数时,根据云音箱的密钥验证用户名和密码是否合法。
可选地,解析模块具体用于解析用户名获取第一登录次数。
可选地,获取子模块还具体用于获取推送服务器的数据库中保存的云音箱的第二登录次数。
可选地,第一解析模块具体用于解析消息推送请求,获取云音箱的云音箱标识。
可选地,第三判断模块具体包括:
第二判断子模块,用于逐一判断播报列表中的待播报消息的保存时间是否超过第一阈值;
删除子模块,用于当第二判断子模块判断出播报列表中存在保存时间超过第一阈值的待播报消息时,删除超时的待播报消息;
第二判断子模块还用于判断播报列表中的待播报消息的数量是否超过第二阈值;
删除子模块还用于当第二判断子模块判断出播报列表中的待播报消息的数量超过第二阈值时,删除播报列表中的从第一条待播报消息开始的超过第二阈值数量的待播报消息。
可选地,第三判断模块还具体用于根据云音箱标识判断云音箱的登录状态是否为已连接。
可选地,发送模块还用于当接收模块未接收到云音箱返回的播报成功响应时,重新发送播报列表中的第一条待播报消息。
可选地,保存模块具体用于保存第一信息中的第一登录次数。
可选地,删除模块还用于当标记模块将播报列表中的第一条待播报消息标记为已播报之后删除第一条待播报消息。
一种实现云音箱消息补推的系统,还包括云音箱;
云音箱具体包括:
第二接收模块,用于接收推送服务器发送的播报列表中的第一条待播报消息;
第二解析模块,用于解析第二接收模块接收到的待播报消息获取待播报消息的消息ID、金额和待播报消息的类型;
第五判断模块,用于根据第二解析模块获取到的待播报消息的消息ID判断该条消息是否已播报;
返回模块,用于当第五判断模块判断出消息已播报时,向推送服务器返回消息播报成功响应;
播报模块,用于当第五判断模块判断出消息未播报时,播报待播报消息。
通过本发明中的方案,当云音箱再次和消息推送服务器连接时,消息推送服务器会将缓存的消息补推给云音箱,避免了消息播报的遗漏。
附图说明
图1为根据本发明实施例一提供的一种实现云音箱消息补推的方法的流程图;
图2为根据本发明实施例二提供的一种实现云音箱消息补推的方法的流程图;
图3为根据本发明实施例三提供的一种实现云音箱消息补推的方法的线程图;
图4为根据本发明实施例四提供的一种实现云音箱消息补推的系统的连接示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
根据本发明实施例一,提供一种实现云音箱消息补推的方法,如图1所示,包括:
步骤s1:推送服务器等待接收请求,当接收到请求时,判断请求的类型,如果是设备连接请求,执行步骤s2;如果是消息推送请求,执行步骤s4;
可选地,判断请求的类型具体为:推送服务器监听端口,当从第一端口接收到请求时,请求为设备连接请求;当从第二端口接收到请求时,请求为消息推送请求。
可选地,步骤s1还包括:
如果推送服务器接收到的请求是其他请求,根据接收到的请求执行相关操作。
步骤s2:推送服务器解析设备连接请求,获取云音箱第一信息,判断云音箱第一信息是否符合第一预设条件,如果是,执行步骤s3;否则,拒绝连接,返回步骤s1;
可选地,步骤s2中的云音箱第一信息具体为:
云音箱的云音箱标识、用户名、密码以及云音箱的第一登录次数。
可选地,步骤s2中判断云音箱第一信息是否满足第一预设条件具体包括:
步骤s2-1:推送服务器从自身数据库中获取云音箱的第二登录次数,判断云音箱的第一登录次数是否大于云音箱的第二登录次数,如果是,执行步骤s2-2;否则,拒绝连接,返回步骤s1。
步骤s2-2:推送服务器根据云音箱的密钥验证用户名和密码是否合法,如果是,执行步骤s3;否则,拒绝连接,返回步骤s1。
可选地,推送服务器根据用户名获取云音箱的第一登录次数具体为:推送服务器解析用户名获取所述云音箱的第一登录次数。
可选地,云音箱的第二登录次数为所述推送服务器中保存的云音箱的登录次数。
步骤s3:推送服务器更新云音箱的登录状态为已连接,保存云音箱第一信息,执行步骤s7;
可选地,步骤s3中保存云音箱第一信息具体为推送服务器保存云音箱第一信息中的云音箱的第一登录次数。
步骤s4:推送服务器解析消息推送请求,获取云音箱第二信息以及待播报消息,将获取到的待播报消息添加到云音箱对应的播报列表中;判断播报列表中的待播报消息是否符合第二预设条件,如果是,执行步骤s5;否则,删除不符合第二预设条件的待播报消息,执行步骤s5;
可选地,推送服务器解析消息推送请求,获取云音箱第二信息具体为:推送服务器解析消息推送请求,获取云音箱的云音箱标识。
可选地,步骤s4中判断播报列表中的待播报消息是否符合第二预设条件具体包括:
步骤s4-1:推送服务器逐一判断播报列表中的待播报消息的保存时间是否超过第一阈值,如果是,删除超时的待播报消息,执行步骤s4-2;否则,执行步骤s4-2;
步骤s4-2:推送服务器判断播报列表中的待播报消息的数量是否超过第二阈值,如果是,删除播报列表中从第一条待播报消息开始的超过第二阈值数量的待播报消息,执行步骤s5;否则,执行步骤s5。
步骤s5:推送服务器根据云音箱第二信息判断是否已与云音箱建立连接,如果是,执行步骤s6;否则,返回步骤s1;
可选地,步骤s5具体为:
推送服务器根据云音箱标识判断云音箱的登录状态是否为已连接,如果是,云音箱建立连接,执行步骤s6;否则,云音箱未建立连接,返回步骤s1。
步骤s6:推送服务器将播报列表中的第一条待播报消息发送至云音箱,当接收到云音箱返回的播报成功响应时,推送服务器将播报列表中的第一条待播报消息标记为已播报;
可选地,步骤s6还包括:
当推送服务器未接收到云音箱返回的播报成功响应时,推送服务器重新发送播报列表中的第一条待播报消息,经过预设时间未接收到响应,断开连接,返回步骤s1。
可选地,步骤s6中当推送服务器将播报列表中的第一条待播报消息发送至云音箱后,接收到云音箱返回的已播报响应之前,该方法还包括:
步骤s6-1:云音箱解析接收到的待播报消息,获取待播报消息ID、金额和待播报消息类型;
步骤s6-2:云音箱根据待播报消息ID判断消息是否已播报,如果是,向推送服务器返回消息播报成功响应;否则,播报待播报消息,向推送服务器返回消息播报成功响应。
可选地,步骤s6中推送服务器将播报列表中的第一条待播报消息标记为已播报之后,还包括:
推送服务器从播报列表中删除第一条待播报消息。
步骤s7:推送服务器判断播报列表中是否还存在待播报消息,如果是,返回步骤s6;否则,返回步骤s1。
实施例二
根据本发明实施例二,提供一种实现云音箱消息补推的方法,如图2所示,包括:
步骤s101:推送服务器等待接收请求;
步骤s102:当推送服务器接收到请求时,判断请求的类型;当接收到设备连接请求时,执行步骤s103;当接收到消息推送请求时,执行步骤s107;当接收到的请求为其他请求时,执行相关操作,返回步骤s101;
可选地,其他请求可以为:发布新版本请求;当推送服务器接收到的请求为发布新版本请求时,向相关的设备推送一条OTA升级提醒,向云音箱发送新版本信息及固件下载地址;
可选地,步骤s102具体为:推送服务器监听接收请求的端口,当接收到请求时,判断该请求是从哪个端口接收到,如果从第一端口接收到,则为设备连接请求,执行步骤s103;如果从第二端口接收到,则为消息推送请求,执行步骤s107;
例如,推送服务器监听接收请求的端口,从第一端口接收到的连接请求为:104500044D51545404CE0064000D31303131393037323030303438001441774141414570666148526863484270636C4A7600149DFE69F0819FEE729938FC3E009FF5A630D79FFB;
从第二端口接收到的推送请求为:102000044D51545404040064000D3130313139303732303030343800023231000131;
步骤s103:推送服务器解析设备连接请求获取云音箱设备标识、用户名和密码,获取数据库中保存的云音箱的密钥以及云音箱的第一登录次数;
例如:推送服务器解析连接请求104500044D51545404CE0064000D31303131393037323030303438001441774141414570666148526863484270636C4A7600149DFE69F0819FEE729938FC3E009FF5A630D79FFB获取到的云音箱标识为1011907200048,用户名为3000000057774B50576A34685A6C71,密码为9DFE69F0819FEE729938FC3E009FF5A630D79FFB;获取数据库中保存的云音箱的密钥为EAA35A489E97449311A6809368DF71F18CF995ADE78F0573DD04B42D57205938;云音箱的第一登录次数为47次;
步骤s104:推送服务器根据数据库中保存的设备密钥验证用户名和密码是否合法,如果是,执行步骤s105;否则,连接失败,返回步骤s101;
可选地,推送服务器使用密钥对用户名和密码进行验签,判断验签是否成功,如果是,用户名和密码合法,执行步骤s105;否则,用户名和密码不合法,连接失败,返回步骤s101;
可选地,推送服务器使用密钥对用户名和密码进行验签,判断验签是否成功具体包括:
推送服务器使用密钥对用户名进行sha256计算得出第一签名值,判断第一签名值和密码是否相等,如果是,验签成功,用户名和密码合法;否则,验签失败,用户名和密码不合法。
步骤s105:推送服务器根据用户名获取自身数据库中保存的云音箱的第二登录次数,判断第一登录次数是否大于第二登录次数,如果是,执行步骤s106;否则;连接失败,返回步骤s101;
例如,推送服务器根据用户名3000000057774B50576A34685A6C71的前四个字节获取到签名次数为48次,判断出签名次数大于设备登录次数,执行步骤s106。
步骤s106:推送服务器修改云音箱的登录状态为已连接状态,更新并保存云音箱的第二登录次数,执行步骤s112;
可选地,步骤s106具体为:推送服务器修改设备的登录状态为已连接状态,更新云音箱的第二登录次数加1并保存,执行步骤s112;
例如:推送服务器修改设备的登录状态为已连接状态,更新设备登录次数为48,并保存该设备登录次数,执行步骤s112。
步骤s107:推送服务器解析播报消息请求,获取云音箱标识以及待播报消息,保存待播报消息;
例如,推送服务器解析播报消息请求102000044D51545404040064000D3130313139303732303030343800023231000131,获取设备标识1011907200048以及包括支付类型以及支付金额的待播报消息。
步骤s108:推送服务器查询自身数据库,判断播报列表中的待播报消息的缓存时间是否超过第一阈值,如果是,删除超时的待播报消息;否则,执行步骤s109;
可选地,步骤s108具体为:推送服务器逐一查询数据库播报列表中的待播报消息,获取待播报消息的保存时间,逐一判断待播报消息的保存时间是否超过第一阈值,如果是,删除超时待播报消息;否则,执行步骤s109;
可选地,第一阈值为10分钟。
步骤s109:推送服务器判断自身数据库播报列表中缓存的待播报消息的数量是否超过第二阈值,如果是,删除第一条待播报消息;否则,执行步骤s110;
可选地,待播报消息按照时间顺序进行逐一保存。
步骤s110:推送服务器根据云音箱标识判断云音箱是否已建立连接,如果是,执行步骤s111;否则,返回步骤s101;
可选地,步骤s110具体为:推送服务器解析播报消息请求,获取云音箱标识,根据设备标识判断对应的云音箱的登录状态是否为已连接状态,如果是,云音箱和推送服务器已经连接,执行步骤s111;否则,云音箱和推送服务器未连接,执行步骤s107;
例如:第一阈值为10分钟。
步骤s111:推送服务器获取第一条待播报消息发送给云音箱,当接收到云音箱返回的已播报响应时,将该条待播报消息标记为已播报,并从播报列表中删除该条播报消息;
可选地,步骤s111还包括:推送服务器获取第一条待播报消息推送给云音箱之后,开启定时器,如果定时器经过第一预设时间还未收到云音箱返回的播报响应时,推送服务器再将第一条待播报消息推送给云音箱,并将推送次数加1,保存推送次数;当推送次数达到阈值时,推送服务器断开和云音箱的链接,返回步骤s101。
可选地,当推送服务器将第一条播报消息推送给云音箱,云音箱接收到播报消息之后,云音箱执行以下操作:
云音箱解析接收到的播报消息,获取播报消息的id,金额和类型,根据播报消息的id判断该播报消息是否播报过,如果是,向推送服务器返回消息已播报响应;否则,播报该播报消息,向推送服务器返回消息已播报响应;
步骤s112:推送服务器判断播报列表中是否还存在待播报消息,如果是,返回步骤s111;否则,返回步骤s101。
实施例三
根据本发明实施例三,提供一种实现云音箱消息推送的方法,如图3所示,包括:
步骤s201:应用服务器向推送服务器发送消息推送请求;
步骤s202:推送服务器接收并解析消息推送请求,获取云音箱标识和待播报消息;
步骤s203:推送服务器检查自身数据库,判断数据库中是否存在云音箱对应的播报列表,如果是,执行步骤s204;否则,创建该云音箱的播报列表,执行步骤s204;
步骤s204:推送服务器将待播报消息添加至播报列表最后一行;
步骤s205:推送服务器检查播报列表,判断播报列表中待播报消息的缓存时间是否超过第一阈值,如果是,依次清除超时待播报消息,执行步骤s206;否则,执行步骤s206;
步骤s206:推送服务器判断播报列表中缓存的待播报消息数量是否超过第二阈值,如果是,删除播报列表中的第一条待播报消息,执行步骤s207;否则,执行步骤s207;
步骤s207:推送服务器判断云音箱连接状态是否为已连接,如果是,执行步骤s208;否则,返回步骤s202;
步骤s208:推送服务器从播报列表中获取第一条待播报消息,向云音箱发送第一条待播报消息;
步骤s209:云音箱解析接收到的待播报消息,获取待播报消息ID,金额以及播报类型;
步骤s210:云音箱根据待播报消息ID判断该消息是否已播报过,如果是,向推送服务器返回消息已播报响应;否则,播报该条待播报消息,并向推送服务器返回消息已播报响应;
步骤s211:推送服务器接收消息已播报响应,将该条消息的状态修改为已播报,从播报列表中删除;
步骤s212:推送服务器判断播报列表中是否存在待播报消息,如果是,返回步骤s208;否则,返回步骤s202。
实施例四
根据本发明实施例四,提供一种实现云音箱消息补推的系统,如图4所示,包括:
推送服务器
其中,推送服务器包括:
第一接收模块,用于接收请求;
第一判断模块,用于判断第一接收模块接收到的请求的类型;
第一解析模块,用于解析第一接收模块接收到的设备连接请求,当第一判断模块判断出第一接收模块接收到的为设备连接请求时,第一解析模块获取云音箱第一信息;
第二判断模块,用于判断解析模块获取到的云音箱第一信息是否符合第一预设条件;
更新模块,用于当第二判断模块判断出第一信息符合第一预设条件时,更新云音箱的登录状态为已连接;
保存模块,用于保存云音箱第一信息,触发第四判断模块;
第一解析模块还用于解析第一接收模块接收到的消息推送请求,获取云音箱第二信息以及待播报消息,将获取到的待播报消息添加到云音箱对应的播报列表中;
第三判断模块,用于判断播报列表中的待播报消息是否符合第二预设条件,还用于当判断出播报列表中的待播报消息符合第二预设条件时,根据云音箱第二信息判断推送服务器是否已与云音箱建立连接;
发送模块,用于当第三判断模块判断出推送服务器已与云音箱建立连接时,将播报列表中的第一条待播报消息发送至云音箱;
接收模块还用于接收云音箱返回的播报成功响应;
标记模块,用于当接收模块接收到云音箱返回的播报成功响应时,将播报列表中的第一条待播报消息标记为已播报;
第四判断模块,用于判断播报列表中是否还存在待播报消息,当判断出还存在待播报消息时,触发发送模块。
可选地,第一判断模块具体用于监听端口,当从第一端口接收到请求时,该请求为设备连接请求;当从第二端口接收到请求时,该请求为消息推送请求。
可选地,推送服务器还包括:
执行模块,用于当第一判断模块判断出接收模块接收到的请求为其他类型时,根据请求执行相应操作。
可选地,第一解析模块具体用于解析设备连接请求,获取云音箱的云音箱标识、用户名、密码以及云音箱的第一登录次数。
可选地,第二判断模块包括:
获取子模块,用于根据用户名获取云音箱的第一登录次数,从自身数据库中获取第二登录次数;
第一判断子模块,用于判断获取子模块获取到的第一登录次数是否大于云音箱的第二登录次数;
验证子模块,用于当第一判断子模块判断出第一登录次数大于第二登录次数时,根据云音箱的密钥验证用户名和密码是否合法。
可选地,获取子模块具体用于解析用户名获取第一登录次数。
可选地,获取子模块还具体用于获取推送服务器的数据库中保存的云音箱的登录次数。
可选地,第一解析模块具体用于解析消息推送请求,获取云音箱的云音箱标识。
可选地,第三判断模块具体包括:
第二判断子模块,用于逐一判断播报列表中的待播报消息的保存时间是否超过第一阈值;
删除子模块,用于当第二判断子模块判断出播报列表中存在保存时间超过第一阈值的待播报消息时,删除超时的待播报消息;
第二判断子模块还用于判断播报列表中的待播报消息的数量是否超过第二阈值;
删除子模块还用于当第二判断子模块判断出播报列表中的待播报消息的数量超过第二阈值时,删除播报列表中从第一条待播报消息开始的超过第二阈值数量的待播报消息;
可选地,第三判断模块还具体用于根据云音箱标识判断云音箱的登录状态是否为已连接。
可选地,发送模块还用于当接收模块未接收到云音箱返回的播报成功响应时,重新发送播报列表中的第一条待播报消息。
可选地,保存模块具体用于保存第一信息中的第一登录次数。
可选地,删除模块还用于当标记模块将播报列表中的第一条待播报消息标记为已播报之后删除第一条待播报消息。
一种实现云音箱消息推送的系统还包括云音箱;
云音箱具体包括:
第二接收模块,用于接收推送服务器发送的播报列表中的第一条待播报消息;
第二解析模块,用于解析第二接收模块接收到的待播报消息获取待播报消息的消息ID、金额和待播报消息的类型;
第五判断模块,用于根据第二解析模块获取到的待播报消息的消息ID判断该条消息是否已播报;
返回模块,用于当第五判断模块判断出消息已播报时,向推送服务器返回消息播报成功响应;
播报模块,用于当第五判断模块判断出消息未播报时,播报待播报消息。

Claims (28)

1.一种实现云音箱消息补推的方法,其特征在于,包括:
步骤s1:推送服务器等待接收请求,当接收到请求时,判断所述请求的类型,如果是设备连接请求,执行步骤s2;如果是消息推送请求,执行步骤s4;
步骤s2:所述推送服务器解析所述设备连接请求,获取云音箱第一信息,判断所述云音箱第一信息是否符合第一预设条件,如果是,执行步骤s3;否则,拒绝连接,返回步骤s1;
步骤s3:所述推送服务器更新所述云音箱的登录状态为已连接,保存所述云音箱第一信息,执行步骤s7;
步骤s4:所述推送服务器解析所述消息推送请求,获取云音箱第二信息以及待播报消息,将获取到的待播报消息添加到云音箱对应的播报列表中;判断所述播报列表中的待播报消息是否符合第二预设条件,如果是,执行步骤s5;否则,删除不符合所述第二预设条件的待播报消息,执行步骤s5;
步骤s5:所述推送服务器根据所述云音箱第二信息判断是否已与所述云音箱建立连接,如果是,执行步骤s6;否则,返回步骤s1;
步骤s6:所述推送服务器将所述播报列表中的第一条待播报消息发送至所述云音箱,当接收到所述云音箱返回的播报成功响应时,所述推送服务器将所述播报列表中的第一条待播报消息标记为已播报;
步骤s7:所述推送服务器判断所述播报列表中是否还存在待播报消息,如果是,返回步骤s6;否则,返回步骤s1。
2.如权利要求1所述的方法,其特征在于,所述判断所述请求的类型具体为:所述推送服务器监听端口,当从第一端口接收到请求时,所述请求为设备连接请求;当从第二端口接收到请求时,所述请求为消息推送请求。
3.如权利要求1所述的方法,其特征在于,所述步骤s1还包括:
如果所述推送服务器接收到的请求是其他请求,根据接收到的请求执行相关操作。
4.如权利要求1所述的方法,其特征在于,所述步骤s2中的所述获取所述云音箱第一信息具体为:
所述推送服务器获取所述云音箱的云音箱标识、用户名、密码以及所述云音箱的第一登录次数。
5.如权利要求4所述的方法,其特征在于,所述步骤s2中判断所述云音箱第一信息是否满足第一预设条件具体包括:
步骤s2-1:所述推送服务器从自身数据库中获取第二登录次数,判断所述第一登录次数是否大于所述云音箱的第二登录次数,如果是,执行步骤s2-2;否则,拒绝连接,返回步骤s1;
步骤s2-2:所述推送服务器根据所述云音箱的密钥验证所述用户名和所述密码是否合法,如果是,执行步骤s3;否则,拒绝连接,返回步骤s1。
6.如权利要求4所述的方法,其特征在于,所述推送服务器获取所述云音箱的第一登录次数具体为:
所述推送服务器解析所述用户名获取所述云音箱的第一登录次数。
7.如权利要求5所述的方法,其特征在于,所述推送服务器从自身数据库获取第二登录次数具体为:所述推送服务器获取所述自身数据库中保存的云音箱的登录次数。
8.如权利要求1所述的方法,其特征在于,所述推送服务器解析所述消息推送请求,获取所述云音箱第二信息具体为:所述推送服务器解析所述消息推送请求,获取所述云音箱的云音箱标识。
9.如权利要求1所述的方法,其特征在于,所述步骤s4中所述判断所述播报列表中的待播报消息是否符合第二预设条件具体包括:
步骤s4-1:所述推送服务器逐一判断播报列表中的待播报消息的保存时间是否超过第一阈值,如果是,删除超时的待播报消息,执行步骤s4-2;否则,执行步骤s4-2;
步骤s4-2:所述推送服务器判断所述播报列表中的待播报消息的数量是否超过第二阈值,如果是,删除播报列表中从第一条待播报消息开始的超过第二阈值数量的待播报消息,执行步骤s5;否则,执行步骤s5。
10.如权利要求1所述的方法,其特征在于,所述步骤s5具体为:
所述推送服务器根据云音箱标识判断所述云音箱的登录状态是否为已连接,如果是,所述云音箱建立连接,执行步骤s6;否则,所述云音箱未建立连接,返回步骤s1。
11.如权利要求1所述的方法,其特征在于,所述步骤s6还包括:
当所述推送服务器未接收到所述云音箱返回的播报成功响应时,所述推送服务器重新发送所述播报列表中的第一条待播报消息,经过预设时间未接收到响应,断开连接,返回步骤s1。
12.如权利要求1所述的方法,其特征在于,所述步骤s6中当所述推送服务器将所述播报列表中的第一条待播报消息发送至所述云音箱后,接收到所述云音箱返回的已播报响应之前,所述方法还包括:
步骤s6-1:所述云音箱解析接收到的待播报消息,获取待播报消息ID、金额和待播报消息类型;
步骤s6-2:所述云音箱根据所述待播报消息ID判断所述消息是否已播报,如果是,向所述推送服务器返回消息播报成功响应;否则,播报所述待播报消息,向所述推送服务器返回消息播报成功响应。
13.如权利要求1所述的方法,其特征在于,所述步骤s3中所述保存云音箱第一信息具体为所述推送服务器保存所述云音箱第一信息中的第一登录次数。
14.如权利要求1所述的方法,其特征在于,所述步骤s6中所述推送服务器将所述播报列表中的第一条待播报消息标记为已播报之后,还包括:
所述推送服务器从所述播报列表中删除第一条待播报消息。
15.一种实现云音箱消息补推的系统,其特征在于,包括:
推送服务器;
所述推送服务器包括:
第一接收模块,用于接收请求;
第一判断模块,用于判断所述第一接收模块接收到的请求的类型;
第一解析模块,用于解析所述第一接收模块接收到的设备连接请求,当所述第一判断模块判断出所述第一接收模块接收到的为设备连接请求时,所述第一解析模块获取云音箱第一信息;
第二判断模块,用于判断所述解析模块获取到的云音箱第一信息是否符合第一预设条件;
更新模块,用于当所述第二判断模块判断出所述云音箱第一信息符合第一预设条件时,更新所述云音箱的登录状态为已连接;
保存模块,用于保存所述云音箱第一信息,触发第四判断模块;
第一解析模块还用于解析第一接收模块接收到的消息推送请求,获取云音箱第二信息以及待播报消息,将获取到的待播报消息添加到云音箱对应的播报列表中;
第三判断模块,用于判断所述播报列表中的待播报消息是否符合第二预设条件,还用于当判断出所述播报列表中的待播报消息符合所述第二预设条件时,根据所述云音箱第二信息判断所述推送服务器是否已与所述云音箱建立连接;
发送模块,用于当所述第三判断模块判断出所述推送服务器已与所述云音箱建立连接时,将所述播报列表中的第一条待播报消息发送至所述云音箱;
所述第一接收模块还用于接收所述云音箱返回的播报成功响应;
标记模块,用于当所述接收模块接收到所述云音箱返回的播报成功响应时,将所述播报列表中的第一条待播报消息标记为已播报;
所述第四判断模块,用于判断所述播报列表中是否还存在待播报消息,当判断出还存在待播报消息时,触发所述发送模块。
16.如权利要求15所述的系统,其特征在于,所述第一判断模块具体用于监听端口,当从第一端口接收到请求时,所述请求为设备连接请求;当从第二端口接收到请求时,所述请求为消息推送请求。
17.如权利要求15所述的系统,其特征在于,还包括:
执行模块,用于当所述第一判断模块判断出所述接收模块接收到的请求为其他类型时,根据所述请求执行相应操作。
18.如权利要求15所述的系统,其特征在于,所述解析模块具体用于解析所述设备连接请求,获取所述云音箱的云音箱标识、用户名、密码以及所述云音箱的第一登录次数。
19.如权利要求18所述的系统,其特征在于,所述第二判断模块包括:
获取子模块,用于从自身数据库中获取第二登录次数;
第一判断子模块,用于判断所述解析模块获取到的所述云音箱的第一登录次数是否大于所述云音箱的第二登录次数;
验证子模块,用于当所述第一判断子模块判断出所述云音箱的第一登录次数大于所述云音箱的第二登录次数时,根据所述云音箱的密钥验证所述用户名和所述密码是否合法。
20.如权利要求18所述的系统,其特征在于,所述解析模块具体用于解析所述用户名获取所述第一登录次数。
21.如权利要求19所述的系统,其特征在于,所述获取子模块具体用于获取所述推送服务器的数据库中保存的云音箱的第二登录次数。
22.如权利要求15所述的系统,其特征在于,所述解析模块具体用于解析所述消息推送请求,获取所述云音箱的云音箱标识。
23.如权利要求15所述的系统,其特征在于,所述第三判断模块具体包括:
第二判断子模块,用于逐一判断播报列表中的待播报消息的保存时间是否超过第一阈值;
删除子模块,用于当所述第二判断子模块判断出所述播报列表中存在保存时间超过所述第一阈值的待播报消息时,删除超时的待播报消息;
所述第二判断子模块还用于判断所述播报列表中的待播报消息的数量是否超过第二阈值;
所述删除子模块还用于当所述第二判断子模块判断出所述播报列表中的待播报消息的数量超过所述第二阈值时,删除所述播报列表中的从第一条待播报消息开始的超过第二阈值数量的待播报消息。
24.如权利要求15所述的系统,其特征在于,所述第三判断模块还具体用于根据所述云音箱标识判断所述云音箱的登录状态是否为已连接。
25.如权利要求15所述的系统,其特征在于,所述发送模块还用于当所述接收模块未接收到所述云音箱返回的播报成功响应时,重新发送所述播报列表中的第一条待播报消息。
26.如权利要求15所述的系统,其特征在于,还包括:
云音箱;
所述云音箱具体包括:
第二接收模块,用于接收所述推送服务器发送的所述播报列表中的第一条待播报消息;
第二解析模块,用于解析所述第二接收模块接收到的待播报消息获取所述待播报消息的消息ID、金额和待播报消息的类型;
第五判断模块,用于根据所述第二解析模块获取到的所述待播报消息的消息ID判断所述消息是否已播报;
返回模块,用于当所述第五判断模块判断出所述消息已播报时,向所述推送服务器返回消息播报成功响应;
播报模块,用于当所述第五判断模块判断出所述消息未播报时,播报所述待播报消息。
27.如权利要求15所述的系统,其特征在于,所述保存模块具体用于保存所述云音箱第一信息中的第一登录次数。
28.如权利要求15所述的系统,其特征在于,所述删除模块还用于当所述标记模块将所述播报列表中的第一条待播报消息标记为已播报之后删除所述第一条待播报消息。
CN201910576060.0A 2019-06-28 2019-06-28 一种实现云音箱消息补推的方法及系统 Active CN110166576B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910576060.0A CN110166576B (zh) 2019-06-28 2019-06-28 一种实现云音箱消息补推的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910576060.0A CN110166576B (zh) 2019-06-28 2019-06-28 一种实现云音箱消息补推的方法及系统

Publications (2)

Publication Number Publication Date
CN110166576A true CN110166576A (zh) 2019-08-23
CN110166576B CN110166576B (zh) 2022-07-01

Family

ID=67637008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910576060.0A Active CN110166576B (zh) 2019-06-28 2019-06-28 一种实现云音箱消息补推的方法及系统

Country Status (1)

Country Link
CN (1) CN110166576B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114598555A (zh) * 2022-05-09 2022-06-07 飞天诚信科技股份有限公司 一种不同平台可切换的播报实现方法及系统

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201111054Y (zh) * 2007-08-27 2008-09-03 北京飞天诚信科技有限公司 一种带信息安全功能的数字媒体播放装置
WO2011041969A1 (zh) * 2009-10-10 2011-04-14 中兴通讯股份有限公司 一种支持数据报文主动推送能力的实现方法及系统
CN102523177A (zh) * 2011-12-19 2012-06-27 北京新媒传信科技有限公司 一种消息推送服务的实现方法与系统
CN103944979A (zh) * 2014-04-09 2014-07-23 Tcl集团股份有限公司 一种消息推送方法、装置及系统
CN105187450A (zh) * 2015-10-08 2015-12-23 飞天诚信科技股份有限公司 一种基于认证设备进行认证的方法和设备
CN105245588A (zh) * 2015-09-28 2016-01-13 浪潮(北京)电子信息产业有限公司 一种web业务端口分离处理的方法
CN105323251A (zh) * 2015-11-13 2016-02-10 飞天诚信科技股份有限公司 一种实现语音播报认证的方法及其云认证服务器
CN105657000A (zh) * 2015-12-25 2016-06-08 北京奇虎科技有限公司 消息传送方法及装置
CN105897550A (zh) * 2015-12-23 2016-08-24 乐视致新电子科技(天津)有限公司 一种推送离线消息的方法及设备
US20160337461A1 (en) * 2013-06-07 2016-11-17 Apple Inc. Managing Notifications Across Multiple Devices
CN106790454A (zh) * 2016-12-07 2017-05-31 努比亚技术有限公司 离线消息推送方法与装置
CN107395767A (zh) * 2017-08-31 2017-11-24 北京奇虎科技有限公司 基于长连接的消息推送系统及方法
CN108600330A (zh) * 2018-03-29 2018-09-28 努比亚技术有限公司 离线消息推送方法、设备及计算机可读存储介质
CN108881310A (zh) * 2018-08-15 2018-11-23 飞天诚信科技股份有限公司 一种注册系统及其工作方法
CN109150541A (zh) * 2018-08-15 2019-01-04 飞天诚信科技股份有限公司 一种认证系统及其工作方法

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201111054Y (zh) * 2007-08-27 2008-09-03 北京飞天诚信科技有限公司 一种带信息安全功能的数字媒体播放装置
WO2011041969A1 (zh) * 2009-10-10 2011-04-14 中兴通讯股份有限公司 一种支持数据报文主动推送能力的实现方法及系统
CN102523177A (zh) * 2011-12-19 2012-06-27 北京新媒传信科技有限公司 一种消息推送服务的实现方法与系统
US20160337461A1 (en) * 2013-06-07 2016-11-17 Apple Inc. Managing Notifications Across Multiple Devices
CN103944979A (zh) * 2014-04-09 2014-07-23 Tcl集团股份有限公司 一种消息推送方法、装置及系统
CN105245588A (zh) * 2015-09-28 2016-01-13 浪潮(北京)电子信息产业有限公司 一种web业务端口分离处理的方法
CN105187450A (zh) * 2015-10-08 2015-12-23 飞天诚信科技股份有限公司 一种基于认证设备进行认证的方法和设备
CN105323251A (zh) * 2015-11-13 2016-02-10 飞天诚信科技股份有限公司 一种实现语音播报认证的方法及其云认证服务器
CN105897550A (zh) * 2015-12-23 2016-08-24 乐视致新电子科技(天津)有限公司 一种推送离线消息的方法及设备
CN105657000A (zh) * 2015-12-25 2016-06-08 北京奇虎科技有限公司 消息传送方法及装置
CN106790454A (zh) * 2016-12-07 2017-05-31 努比亚技术有限公司 离线消息推送方法与装置
CN107395767A (zh) * 2017-08-31 2017-11-24 北京奇虎科技有限公司 基于长连接的消息推送系统及方法
CN108600330A (zh) * 2018-03-29 2018-09-28 努比亚技术有限公司 离线消息推送方法、设备及计算机可读存储介质
CN108881310A (zh) * 2018-08-15 2018-11-23 飞天诚信科技股份有限公司 一种注册系统及其工作方法
CN109150541A (zh) * 2018-08-15 2019-01-04 飞天诚信科技股份有限公司 一种认证系统及其工作方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114598555A (zh) * 2022-05-09 2022-06-07 飞天诚信科技股份有限公司 一种不同平台可切换的播报实现方法及系统
CN114598555B (zh) * 2022-05-09 2022-07-29 飞天诚信科技股份有限公司 一种不同平台可切换的播报实现方法及系统

Also Published As

Publication number Publication date
CN110166576B (zh) 2022-07-01

Similar Documents

Publication Publication Date Title
KR100576956B1 (ko) 통신 네트워크에서 제1 통신 가입자의 인증을 검사하는방법 및 시스템
CN102970362B (zh) 一种云端数据共享的方法及装置
EP1605663B1 (en) Method for re-establishing a session of an IMPS client in a mobile terminal
EP2611226A1 (en) Processing method and system for over-the-air bootstrap
WO2017107830A1 (zh) 一种安装应用软件的方法、装置及电子设备
CN105119877A (zh) 语音验证方法、装置以及系统
KR20080090976A (ko) 콘텐츠 처리 방법 및 그 단말
CN104580085A (zh) 业务数据更新方法、系统、客户端及服务器
CN102546538B (zh) 业务连续性实现方法和系统
DK2040497T3 (en) Tracking of mobile communication devices
CN105165035B (zh) 兼具文本消息传输的多媒体消息传输
KR20130066901A (ko) 데이터 분석 시스템에서 맬웨어를 분석하기 위한 장치 및 방법
CN107508746B (zh) 好友添加方法、装置及电子设备
CN110166576A (zh) 一种实现云音箱消息补推的方法及系统
KR100642998B1 (ko) 단말의 정책을 업그레이드하기 위한 정책메시지 전송방법
CN102170630A (zh) 一种防止移动终端锁网被非法破解的方法及系统
CN113396600B (zh) 信息验证方法、装置、设备及存储介质
JP3583357B2 (ja) ディレクトリサーバでの端末機動作判断装置及びその方法
CN110650055A (zh) 广电网络设备监测方法及系统
CN101867918B (zh) 实名制登记状态的获取方法和装置、以及终端
CN101964833A (zh) 一种显示个性化签名的方法、系统及设备
KR20140099389A (ko) 금융 피싱 사기 문자 탐지 및 차단 시스템 및 그 금융 피싱 사기 문자 탐지 및 차단 방법
CN109041139A (zh) 一种数据传输方法及移动设备
CN111246479B (zh) 抵御假冒运营商攻击的方法、装置、终端设备及存储介质
CN115002779B (zh) 基于区块链和安全芯片的伪基站防治方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant