一种实现云音箱工作的方法及系统与流程

文档序号:18899213发布日期:2019-10-18 21:42阅读:1226来源:国知局
一种实现云音箱工作的方法及系统与流程

本发明涉及电子产品领域,尤其涉及一种实现云音箱工作的方法及系统。



背景技术:

网上支付是电子支付的一种形式,它是通过第三方提供的与银行之间的支付接口进行的即时支付方式,这种方式的好处在于可以直接把资金从用户的银行卡中转账到网站账户中,汇款马上到账,不需要人工确认。客户和商家之间可采用信用卡、电子钱包、电子支票和电子现金等多种电子支付方式进行网上支付,采用在网上电子支付的方式节省了交易的开销。在现有技术中,一个应用场景对应于一个支付网关,例如卖菜商户利用二维码进行收款,顾客通过手机扫码后,通过支付网关完成支付过程,最后卖菜商户手机上会收到“支付宝收款*元、微信收款*元、银联收款*元”等的语音提醒,如果客户再去饭店进行线下消费,则需要另一个支付网关去实现,在不同应用场景进行消费时如均要有语音提醒,就需要用不同的支付网关来完成,使用不便;且该消费提醒只有商户手机有提醒而客户手机无提醒,在一般情况下,商户要随身携带手机,如商户手机不在支付现场时,则没有支付提醒,商户无法获知支付结果,用户体验极差。而且商户手机有时因为网络不稳定会延迟播报,影响播报结果。



技术实现要素:

本发明的目的是为了克服现有技术的不足,提供一种实现云音箱工作的方法及系统。

本发明提供了一种实现云音箱工作的方法,所述方法适用于包含物联平台和云音箱的系统,所述物联平台包括消息服务器、推送服务器和缓存服务器,所述方法包括:

步骤s1:当物联平台的消息服务器检测到播报接口被调用时,所述消息服务器根据播报接口的参数验证播报操作的合法性,如合法则执行步骤s2,否则通过播报接口返回错误信息;

步骤s2:所述消息服务器根据播报接口的参数中的云音箱设备号从缓存服务器中获取对应长连接的推送服务器地址;

步骤s3:所述消息服务器判断与所述推送服务器地址对应的推送服务器中是否有对应的长连接信息,是则执行步骤s4,否则将当前播报信息的状态设置为离线状态;

步骤s4:所述消息服务器根据所述云音箱设备号、播报接口的参数中的支付金额和付款方式生成推送消息并发送给与所述推送服务器地址对应的推送服务器;

步骤s5:当所述推送服务器接收到推送消息时,所述推送服务器根据推送消息中的云音箱设备号判断是否保存有对应的长连接信息和上下文,是则执行步骤s6,否则给所述消息服务器返回错误信息;

步骤s6:所述推送服务器将推送消息中的支付金额和付款方式生成播报信息并发送给对应于所述云音箱设备号的云音箱;

步骤s7:所述云音箱解析接收到的播报信息并根据语音模板进行播报,并将播报结果发送给所述推送服务器。

进一步地,所述步骤s1之前还包括:所述云音箱与所述推送服务器建立连接。

进一步地,所述云音箱与所述推送服务器建立连接包括:

步骤t0:所述云音箱开机后检查是否联网,是则执行步骤t2,否则提示网络故障;

步骤t1:所述云音箱根据保存的云音箱设备号从共享数据库中获取对应的银行的所述语音模板和配置信息;

步骤t2:所述云音箱判断是否第一次联网,是则与配置服务器协商密钥,并保存协商好的密钥,配置服务器将协商好的密钥与云音箱设备号一一对应保存到共享数据库中,执行步骤t3,否则执行步骤t3;

步骤t3:所述云音箱生成账号,根据保存的密钥和账号生成密码,将云音箱设备号、账号和密码生成连接请求并发送给推送服务器;

步骤t4:所述推送服务器接收到连接请求后,对云音箱合法性进行验证,如合法则保存当前云音箱对应的上下文和连接信息,执行步骤t5,否则给云音箱返回拒绝连接响应;

步骤t5:所述推送服务器将云音箱设备号对应的长连接所在的推送服务器地址发送给缓存服务器;

步骤t6:所述缓存服务器接收到云音箱设备号对应的长连接所在的推送服务器地址后进行保存,并给推送服务器返回保存成功信息;

步骤t7:所述推送服务器接收到保存成功信息后给云音箱返回连接成功响应;

步骤t8:所述云音箱在空闲时间内根据所述配置信息中的心跳时间给推送服务器发送心跳包,维护长连接状态。

进一步地,所述步骤t4中对云音箱合法性进行验证,包括:所述推送服务器根据连接请求中的云音箱设备号在所述共享数据库中获取对应的密钥,根据获取的密钥和连接请求中的账号生成密码,判断生成的密码和连接请求中的密码是否一致,是则合法,否则不合法。

进一步地,所述步骤s1中的所述消息服务器根据播报接口的参数验证播报操作的合法性,包括:所述消息服务器判断播报接口的参数的长度是否合法、判断所述共享数据库中是否保存了商户编号或云音箱设备号、根据云音箱的设备状态判断云音箱是否可用,如判断均为是则播报操作合法,否则不合法。

进一步地,所述播报接口的参数中包括云音箱设备号,所述步骤s3具体为:所述消息服务器判断推送服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤s4,否则将当前播报信息的状态设置为离线状态。

进一步地,所述播报接口的参数中还包括商户编号,所述步骤s3判断为是后还可以包括:所述消息服务器将商户与云音箱进行绑定。

进一步地,所述将商户与云音箱进行绑定包括:当所述消息服务器检测到绑定接口被调用时,所述消息服务器将商户编号与云音箱设备号进行对应绑定,并返回绑定结果。

进一步地,所述播报接口的参数中包括商户编号,所述步骤s3具体为:所述消息服务器根据商户编号查找对应的云音箱设备号,如找到判断推送服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤s4,否则将当前播报信息的状态设置为离线状态。

进一步地,所述步骤s7之后还包括:

步骤s8:所述推送服务器根据接收到的播报结果更新记录的当前播报信息的状态和播报时间。

进一步地,所述步骤s8之前还包括:所述推送服务器判断在预设时间内是否接收到播报结果,如收到则判断播报结果是否为已播报,是则执行s8,否则报错,如未收到则判断补推次数是否大于预设值,是则报错,否则保存播报消息并重新发送推送消息给云音箱,更新补推次数,返回步骤s7。

进一步地,在步骤s1之前还包括:当支付服务器接收到终端发送的付款请求时,所述支付服务器验证付款请求是否合法,是则将支付请求中的付款方账户付款金额转入收钱码账户,将付款请求中的云音箱设备号、支付金额和付款方式作为参数调用物联平台的播报接口,否则报错。

本发明又提供了一种实现云音箱工作的系统,包含物联平台和云音箱,所述物联平台包括消息服务器、推送服务器和缓存服务器,

所述消息服务器包括:

检测判断模块,用于当检测到播报接口被调用时,根据播报接口的参数验证播报操作的合法性,如合法则触发第一获取模块,否则通过播报接口返回错误信息;

所述第一获取模块,用于根据播报接口的参数中的云音箱设备号从缓存服务器中获取对应长连接的推送服务器地址;

判断设置模块,用于判断与所述第一获取模块获取的推送服务器地址对应的推送服务器中是否有对应的长连接信息,是则触发第一发送模块,否则将当前播报信息的状态设置为离线状态;

所述第一发送模块,用于根据所述云音箱设备号、播报接口的参数中的支付金额和付款方式生成推送消息并发送给与所述推送服务器地址对应的推送服务器;

所述缓存服务器,用于保存推送服务器地址;

所述推送服务器包括:

接收判断模块,用于接收所述消息服务器发送的推送消息,根据推送消息中的云音箱设备号判断所述推送服务器中是否保存有对应的长连接信息和上下文,是则触发生成发送模块,否则给所述消息服务器返回错误信息;

所述生成发送模块,用于将推送消息中的支付金额和付款方式生成播报信息并发送给对应于所述云音箱设备号的云音箱;

第一接收模块,用于接收所述云音箱返回的播报结果;

所述云音箱包括:

接收发送模块,用于接收所述推送服务器的播报信息,将播报结果发送给所述推送服务器;

解析播报模块,用于解析所述接收发送模块接收到的播报信息并根据语音模板进行播报得到所述播报结果。

进一步地,所述云音箱还包括:第一建立模块,用于所述将云音箱与所述推送服务器建立连接;

所述推送服务器还包括:第二建立模块,用于将所述推送服务器与所述云音箱建立连接。

进一步地,所述第一建立模块包括:

检查提示单元,用于当所述云音箱开机后检查所述云音箱是否联网,是则触发第一获取单元,否则提示网络故障;

所述第一获取单元,用于根据保存的云音箱设备号从共享数据库中获取对应的银行的语音模板和配置信息;

判断保存单元,用于判断所述云音箱是否第一次联网,是则与配置服务器协商密钥,并保存协商好的密钥,触发生成发送单元,否则触发生成发送单元;

所述生成发送单元,用于生成账号,根据保存的密钥和所述账号生成密码,将云音箱设备号、账号和密码生成连接请求并发送给推送服务器;

发送维护单元,用于接收推送服务器发送连接成功响应之后,在空闲时间内根据所述配置信息中的心跳时间给推送服务器发送心跳包,维护长连接状态;

所述物联平台还包括:配置服务器,用于与所述云音箱进行协商密钥并将协商好的密钥与云音箱设备号一一对应保存到共享数据库中;

所述第二建立模块,包括:

验证保存单元,用于当所述推送服务器接收到连接请求后,对云音箱合法性进行验证,如合法则保存当前云音箱对应的上下文和连接信息,触发第一发送单元,否则给云音箱返回拒绝连接响应;

所述第一发送单元,用于将云音箱设备号对应的长连接所在的推送服务器地址发送给缓存服务器;

所述接收返回单元,用于接收所述缓存服务器返回的保存成功信息后给云音箱返回连接成功响应;

所述缓存服务器,还用于在接收到云音箱设备号对应的长连接所在的推送服务器地址后将其对应于云音箱设备号进行保存,并给所述推送服务器返回保存成功信息。

进一步地,所述验证保存单元具体用于根据连接请求中的云音箱设备号在所述共享数据库中获取对应的密钥,根据获取的密钥和连接请求中的账号生成密码,判断生成的密码和连接请求中的密码是否一致,是则保存当前云音箱对应的上下文和连接信息,触发第一发送单元,否则给云音箱返回拒绝连接响应。

进一步地,所述检测判断模块具体用于当检测到播报接口被调用时,判断所述播报接口的参数的长度是否合法、判断所述共享数据库中是否保存了商户编号或云音箱设备号、根据云音箱的设备状态判断云音箱是否可用,如判断均为是则触发第一获取模块,否则通过播报接口返回错误信息。

进一步地,所述判断设置模块具体用于判断所述推送服务器中是否有对应于云音箱设备号的长连接信息,是则触发第一发送模块,否则将当前播报信息的状态设置为离线状态。

进一步地,所述播报接口的参数中还包括商户编号,所述消息服务器还包括:第一绑定模块,用于当所述判断设置模块判断为是时,将商户与云音箱进行绑定。

进一步地,所述第一绑定模块具体用于当检测到绑定接口被调用时,将商户编号与云音箱设备号进行对应绑定,并返回绑定结果。

进一步地,所述播报接口的参数中包括商户编号,所述判断设置模块具体用于根据商户编号查找对应的云音箱设备号,如找到则判断推送服务器中是否有对应于云音箱设备号的长连接信息,是则触发第一发送模块,否则将当前播报信息的状态设置为离线状态。

进一步地,所述推送服务器还包括:

更新模块,用于根据所述第一接收模块接收到的播报结果更新记录的当前播报信息的状态和播报时间。

进一步地,所述推送服务器还包括:

第一判断模块,用于判断所述第一接收模块在预设时间内是否接收到播报结果,如收到则判断播报结果是否为已播报,是则触发所述更新模块,否则报错;如未收到则判断补推次数是否大于预设值,是则报错,否则保存播报消息并重新发送推送消息给云音箱,更新补推次数,触发所述接收发送模块。

进一步地,所述系统还包括:支付服务器,用于接收终端发送的付款请求,并验证所述付款请求是否合法,是则将支付请求中的付款方账户付款金额转入收钱码账户,将付款请求中的云音箱设备号、支付金额和付款方式作为参数调用物联平台的播报接口,否则报错。

本发明与现有技术相比,具有以下优点:

本发明提供的云音箱为一个独立的收款播报设备,可以适用于任何消费应用场景,云音箱与后台服务器建立长连接,播报更稳定,速度更快,无需随身携带,方便商户使用。

附图说明

图1为本发明实施例一提供的一种实现云音箱工作的方法流程图;

图2为本发明实施例二提供的一种实现云音箱工作的方法流程图;

图3为本发明实施例三提供的一种实现云音箱工作的方法流程图;

图4为本发明实施例四提供的一种使用云音箱在停车场进行播报的实现过程流程图;

图5为本发明实施例五提供的一种实现云音箱工作的系统方框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

本发明实施例一提供一种实现云音箱工作的方法,该方法适用于包含物联平台和云音箱的系统,物联平台包括消息服务器、推送服务器和缓存服务器,如图1所示,本实施例的方法包括:

步骤s1:当物联平台的消息服务器检测到播报接口被调用时,消息服务器根据播报接口的参数验证播报操作的合法性,如合法则执行步骤s2,如不合法则通过播报接口返回错误信息;

具体的,在本实施例中,步骤s1中根据播报接口的参数验证播报操作的合法性,包括:消息服务器判断播报接口的参数的长度是否合法、判断共享数据库中是否保存了商户编号或云音箱设备号、根据云音箱的设备状态判断云音箱是否可用,如判断均为是则播报操作合法,否则不合法;

具体的,在步骤s1之前还包括:当支付服务器接收到终端发送的付款请求时,验证付款请求是否合法,是则将支付请求中的付款方账户付款金额转入收钱码账户,将付款请求中的云音箱设备号、支付金额和付款方式作为参数调用物联平台的播报接口,否则报错;

步骤s2:消息服务器根据播报接口的参数中的云音箱设备号从缓存服务器中获取对应长连接的推送服务器地址;

步骤s3:消息服务器判断与推送服务器地址对应的推送服务器中是否有对应的长连接信息,是则执行步骤s4,否则将当前播报信息的状态设置为离线状态;

在本实施例中,如播报接口的参数中包括云音箱设备号,步骤s3具体为:消息服务器判断推送服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤s4,否则将当前播报信息的状态设置为离线状态;

如播报接口的参数中还包括商户编号,步骤s3判断为是后还可以包括:消息服务器将商户与云音箱进行绑定,具体为:当消息服务器检测到绑定接口被调用时,将商户编号与云音箱设备号进行对应绑定,并返回绑定结果;相应的,步骤s3具体为:消息服务器根据商户编号查找对应的云音箱设备号,如找到判断推送服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤s4,否则将当前播报信息的状态设置为离线状态;

步骤s4:消息服务器根据云音箱设备号、播报接口的参数中的支付金额和付款方式生成推送消息并发送给与推送服务器地址对应的推送服务器;

步骤s5:当推送服务器接收到推送消息时,推送服务器根据推送消息中的云音箱设备号判断是否保存有对应的长连接信息和上下文,是则执行步骤s6,否则给消息服务器返回错误信息;

步骤s6:推送服务器将推送消息中的支付金额和付款方式生成播报信息并发送给对应于云音箱设备号的云音箱;

步骤s7:云音箱解析接收到的播报信息并根据语音模板进行播报,并将播报结果发送给推送服务器。

优选的,在本实施例中,步骤s1之前还包括:云音箱与推送服务器建立连接,具体包括:

步骤t0:云音箱开机后检查是否联网,是则执行步骤t2,否则提示网络故障;

步骤t1:云音箱根据保存的云音箱设备号从共享数据库中获取对应的银行的语音模板和配置信息;

步骤t2:云音箱判断是否第一次联网,是则与配置服务器协商密钥,并保存协商好的密钥,配置服务器将协商好的密钥与云音箱设备号一一对应保存到共享数据库中,执行步骤t3,否则执行步骤t3;

步骤t3:云音箱生成账号,根据保存的密钥和账号生成密码,将云音箱设备号、账号和密码生成连接请求并发送给推送服务器;

步骤t4:推送服务器接收到连接请求后,对云音箱合法性进行验证,如合法则保存当前云音箱对应的上下文和连接信息,执行步骤t5,否则给云音箱返回拒绝连接响应;

具体的,对云音箱合法性进行验证,包括:推送服务器根据连接请求中的云音箱设备号在共享数据库中获取对应的密钥,根据获取的密钥和连接请求中的账号生成密码,判断生成的密码和连接请求中的密码是否一致,是则合法,否则不合法;

步骤t5:推送服务器将云音箱设备号对应的长连接所在的推送服务器地址发送给缓存服务器;

步骤t6:缓存服务器接收到云音箱设备号对应的长连接所在的推送服务器地址后进行保存,并给推送服务器返回保存成功信息;

步骤t7:推送服务器接收到保存成功信息后给云音箱返回连接成功响应;

步骤t8:云音箱在空闲时间内根据配置信息中的心跳时间给推送服务器发送心跳包,维护长连接状态。

可选的,本实施例方法的步骤s7之后还包括:

步骤s8:推送服务器根据接收到的播报结果更新记录的当前播报信息的状态和播报时间。

优选的,步骤s8之前还包括:推送服务器判断在预设时间内是否接收到播报结果,如收到则判断播报结果是否为已播报,是则执行s8,否则报错,如未收到则判断补推次数是否大于预设值,是则报错,否则保存播报消息并重新发送推送消息给云音箱,更新补推次数,返回步骤s7。

实施例二

本发明实施例二提供一种实现云音箱工作的方法,该方法中的消息服务器、缓存服务器和推送服务器均设置在物联平台上,如图2所示,本实施例的方法包括:

步骤100:云音箱开机,检查是否联网,是则执行步骤101,否则提示网络故障;

步骤101:云音箱根据保存的云音箱设备号从共享数据库中获取对应的银行的语音模板和配置信息;

在本实施例中,银行的语音模板和配置信息由运营商预先进行设置,语音模板可以为银联文件、支付宝文件、微信文件或其他音频文件;配置信息包括:推送服务器地址、心跳时间;

步骤102:云音箱判断是否第一次联网,是则与配置服务器协商密钥,并保存协商好的密钥,配置服务器将协商好的密钥与云音箱设备号一一对应保存到共享数据库中,执行步骤103,否则执行步骤103;

步骤103:云音箱生成账号,根据保存的密钥和账号生成密码,将云音箱设备号、账号和密码生成连接请求并发送给推送服务器;

在本实施例中,云音箱与ota服务器(配置服务器)第一次进行连接时会协商密钥,云音箱保存协商好的密钥,ota将协商好的密钥对应于云音箱设备号保存在共享数据库中;优选的,本实施例中的账号为一随机数;

步骤104:推送服务器接收到连接请求后,对云音箱合法性进行验证,如合法则保存当前云音箱对应的上下文和连接信息,执行步骤105,否则给云音箱返回拒绝连接响应;

具体的,在本实施例中,对云音箱合法性进行验证,包括:推送服务器根据连接请求中的云音箱设备号在共享数据库中获取对应的密钥,根据获取的密钥和账号生成密码,判断生成的密码和连接请求中的密码是否一致,是则合法,否则不合法;

步骤105:推送服务器将云音箱设备号对应的长连接所在的推送服务器地址发送给缓存服务器;

步骤106:缓存服务器接收到云音箱设备号对应的长连接所在的推送服务器地址后进行保存,并给推送服务器返回保存成功信息;

步骤107:推送服务器接收到保存成功信息后给云音箱返回连接成功响应;

步骤108:云音箱在空闲时间内定时给推送服务器发送心跳包,维护长连接状态;

步骤109:当支付服务器接收到收款信息后,将收款信息作为参数调用播报接口;

在本实施例中,顾客扫描商户二维码后输入支付金额;点击确认付款后将包含支付金额、商户编号或云音箱设备号的收款信息发送给支付服务器;

步骤110:当消息服务器检测到播报接口被调用时,根据播报接口的参数验证播报操作的合法性,如合法则执行步骤111,如不合法则通过播报接口返回错误信息;

具体的,在本实施例中,根据播报接口的参数验证播报操作的合法性,包括:判断播报接口的参数的长度是否合法、判断共享数据库中是否保存了商户编号或云音箱设备号、根据云音箱的设备状态判断云音箱是否可用,如判断均为是则播报操作合法,否则不合法;

在本实施例中,云音箱的设备状态预先导入缓存服务器中,设备状态包括:未初始化、已初始化、禁用、作废;如设备状态为已初始化,则云音箱可用;

步骤111:消息服务器根据云音箱设备号从缓存服务器中获取对应长连接的推送服务器地址;

步骤112:消息服务器判断对应于推送服务器地址的推送服务器中是否有对应的长连接信息,是则将执行步骤113,否则将当前播报信息的状态设置为离线状态;

在本实施例中,如播报接口的参数中包括云音箱设备号,则步骤112具体为:消息服务器判断缓存服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤113,否则将当前播报信息的状态设置为离线状态;可选的,播报接口的参数中还包括商户编号,步骤112判断为是后还可以包括:消息服务器将商户编号与云音箱设备号进行绑定;进行下次推送时消息服务器通过商户编号直接查找对应于云音箱的长连接信息;或在本发明实施例之前将商户与云音箱进行绑定,具体包括:商户应用系统根据商户编号和云音箱设备号调用绑定接口;当消息服务器检测到绑定接口被调用时,将商户编号与云音箱设备号进行对应绑定,并返回绑定结果;

如播报接口的参数中包括商户编号,则步骤112具体为:消息服务器根据商户编号查找对应的云音箱设备号,如找到判断缓存服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤113,否则将当前播报信息的状态设置为离线状态;

步骤113:消息服务器根据参数中的云音箱设备号、支付金额和付款方式生成推送消息发送给与推送服务器地址对应的推送服务器;

优选的,本实施例中的推送消息为json格式的数据;

步骤114:推送服务器接收推送消息时,根据推送消息中的云音箱设备号判断是否保存有对应的长连接信息和上下文,是则执行步骤115,否则给消息服务器返回错误信息;

步骤115:推送服务器将推送消息中的支付金额和付款方式生成播报信息,并发送给对应于云音箱设备号的云音箱;

优选的,本实施例中的播报消息为tlv格式的数据;

步骤116:云音箱解析接收到的播报信息并根据语音模板进行播报,并将播报结果发送给推送服务器;

步骤117:推送服务器根据接收到的播报结果更新记录的当前播报信息的状态和播报时间。

优选的,在实施例中,步骤117之前还包括:推送服务器判断在预设时间内是否接收到播报结果,如收到则判断播报结果是否为已播报,是则执行117,否则报错,如未收到则判断补推次数是否大于预设值,是则报错,否则重新发送推送消息给云音箱,更新补推次数,返回步骤116。

实施例三

本发明实施例三提供一种云音箱的工作方法,如图3所示,包括:

步骤200:云音箱开机,检查是否联网,是则执行步骤201,否则提示网络故障;

步骤201:云音箱判断是否第一次联网,是则与物联网平台协商密钥,并保存协商好的密钥,物联网平台将协商好的密钥与云音箱设备号一一对应保存在共享数据库中,执行步骤202,否则执行步骤202;

步骤202:云音箱生成账号,根据保存的密钥和账号生成密码,将云音箱设备号、账号和密码生成连接请求并发送给物联平台;

步骤203:物联平台接收到连接请求后,对云音箱合法性进行验证,如合法则执行步骤204,否则给云音箱返回拒绝连接响应;

具体的,在本实施例中,对云音箱合法性进行验证,包括:物联平台根据连接请求中的云音箱设备号从共享数据库中获取保存的对应密钥,根据获取的密钥和账号生成密钥,判断生成的密钥和连接请求中的密码是否一致,是则合法,否则不合法;

步骤204:物联平台保存对应与云音箱设备号对应的上下文和连接信息,给云音箱返回建立成功响应;

步骤205:云音箱在空闲时间内定时给云平台发送心跳包,维护长连接状态;

步骤206:当支付服务器接收到收款信息后,将收款信息作为参数调用播报接口;

在本实施例中,顾客扫描商户二维码后输入支付金额;点击确认付款后将包含支付金额、商户编号或云音箱设备号的收款信息发送给支付服务器;本实施例中的方法中并不局限于二维码,其他具有码牌编号的码均可实现,例如条形码等等;

步骤207:当物联平台检测到播报接口被调用时,根据播报接口的参数验证播报操作的合法性,如合法则执行步骤208,如不合法则报错;

具体的,在本实施例中,根据播报接口的参数验证播报操作的合法性,包括:判断报接口的参数的长度是否合法、判断共享数据库中是否保存了商户编号或云音箱设备号、根据云音箱的设备状态判断云音箱是否可用,如判断均为是则播报操作合法,否则不合法;

在本实施例中,云音箱的设备状态预先设置,设备状态包括:未初始化、已初始化、禁用、作废;如设备状态为已初始化,则云音箱可用;

步骤208:物联平台判断是否保存有对应于云音箱设备号的长连接信息,是则将执行步骤209,否则将当前播报信息的状态设置为离线状态;

在本实施例中,如播报接口的参数中包括云音箱设备号,则步骤208具体为:物联平台判断缓存服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤209,否则将当前播报信息的状态设置为离线状态;

如播报接口的参数中包括商户编号,则步骤208具体为:物联平台根据商户编号查找对应的云音箱设备号,如找到判断缓存服务器中是否有对应于云音箱设备号的长连接信息,是则将执行步骤209,否则将当前播报信息的状态设置为离线状态;

步骤209:物联平台根据参数中的云音箱设备号、支付金额和付款方式生成播报信息,通过与推送服务器地址对应的推送服务器将播报信息发送给云音箱;

优选的,在本实施例中,物联平台根据云音箱设备号、支付金额和付款方式构建tlv格式的播报信息,通过与推送服务器地址对应的推送服务器将播报信息发送给云音箱;

步骤210:云音箱解析接收到的播报信息,并根据语音模板进行播报,构建播报结果并返回给物联平台;

步骤211:物联平台判断在预设时间内是否接收到播报结果,是则执行步骤212,否则执行步骤213;

步骤212:物联平台判断接收到的播报结果是否为已播报,是则根据播报结果更新记录的当前播报消息的状态和播报时间,否则报错;

步骤213:物联平台判断补推次数是否大于预设值,是则报错,否则保存播报消息并重新发送推送消息给云音箱,更新补推次数,返回步骤210。

实施例四

本发明实施例四提供了一种使用云音箱在停车场进行播报的实现过程,如图4所示,包括:

步骤301:停车场商户生成停车场收钱码并发送给支付服务器;

步骤302:支付服务器将提示商户输入云音箱设备号,当接收到云音箱设备号时将其与接收到的停车场收钱码进行绑定;

步骤303:车主到达停车场后,使用手机扫描停车场收钱码,然后输入付款信息,手机根据付款信息生成付款请求发送给支付服务器;

在本实施例中,付款请求包括播报信息、付款方账户信息、收款方账户信息等;播报信息包括云音箱设备号(或收钱码)、支付金额和付款方式等;

步骤304:支付服务器验证付款请求是否合法,是则将支付请求中的付款方账户付款金额转入收钱码账户,转账完成后调用物联平台的播报接口将付款请求中的播报信息发送给消息服务器,否则报错;

步骤305:当消息服务器检测到播报接口被调用时,根据播报接口的参数中的云音箱设备号从缓存服务器中获取对应长连接的推送服务器地址;

步骤306:消息服务器判断与推送服务器地址对应的推送服务器中是否有对应的长连接信息,是则将执行步骤307,否则将当前播报信息的状态设置为离线状态;

步骤307:消息服务器根据云音箱设备号、播报接口的参数中的支付金额和付款方式生成推送消息并发送给与推送服务器地址对应的推送服务器;

步骤308:推送服务器接收推送消息时,根据推送消息中的云音箱设备号判断是否保存有对应的长连接信息和上下文,是则执行步骤309,否则报错;

步骤309:推送服务器将推送消息中的支付金额和付款方式生成播报信息并发送给对应于云音箱设备号的云音箱;

步骤310:云音箱解析接收到的播报信息并根据语音模块进行播报,并将播报结果发送给推送服务器。

本实施例中的三方法同样适用于其他应用场景,例如小卖部等。

实施例五

本发明实施例五提供一种实现云音箱工作的系统,如图5所示,包含物联平台和云音箱1,物联平台包括消息服务器2、推送服务器3和缓存服务器4,

消息服务器2包括:

检测判断模块21,用于当检测到播报接口被调用时,根据播报接口的参数验证播报操作的合法性,如合法则触发第一获取模块22,否则通过播报接口返回错误信息;

在本实施例中,检测判断模块21具体用于当检测到播报接口被调用时,判断播报接口的参数的长度是否合法、判断是否保存了商户编号或云音箱设备号、根据云音箱1的设备状态判断云音箱1是否可用,如判断均为是则触发第一获取模块22,否则通过播报接口返回错误信息;

第一获取模块22,用于根据播报接口的参数中的云音箱设备号从缓存服务器4中获取对应长连接的推送服务器地址;

判断设置模块23,用于判断与第一获取模块22获取的推送服务器地址对应的推送服务器3中是否有对应的长连接信息,是则触发第一发送模块24,否则将当前播报信息的状态设置为离线状态;

在本实施例中,判断设置模块23具体用于判断缓存服务器4中是否有对应于云音箱设备号的长连接信息,是则触发第一发送模块24,否则将当前播报信息的状态设置为离线状态;

第一发送模块24,用于根据云音箱设备号、播报接口的参数中的支付金额和付款方式生成推送消息并发送给与推送服务器地址对应的推送服务器3;

缓存服务器4,用于保存推送服务器地址;

推送服务器3包括:

接收判断模块31,用于接收消息服务器2发送的推送消息,根据推送消息中的云音箱设备号判断推送服务器4中是否保存有对应的长连接信息和上下文,是则触发生成发送模块32,否则给消息服务器2返回错误信息;

生成发送模块32,用于将推送消息中的支付金额和付款方式生成播报信息并发送给对应于云音箱设备号的云音箱1;

第一接收模块33,用于接收云音箱1返回的播报结果;

云音箱1包括:

接收发送模块11,用于接收推送服务器3的播报信息,将播报结果发送给推送服务器3;

解析播报模块12,用于解析接收发送模块11接收到的播报信息并根据语音模板进行播报得到播报结果。

在本实施例中的云音箱1还包括:第一建立模块,用于将云音箱1与推送服务器3建立连接;

相应的,推送服务器3还包括:第二建立模块,用于将推送服务器3与云音箱1建立连接。

具体的,第一建立模块包括:

检查提示单元,用于当云音箱1开机后检查云音箱1是否联网,是则触发第一获取单元,否则提示网络故障;

第一获取单元,用于根据保存的云音箱设备号从共享数据库中获取对应的银行的语音模板和配置信息;

判断保存单元,用于判断云音箱1是否第一次联网,是则与配置服务器协商密钥,并保存协商好的密钥,触发生成发送单元,否则触发生成发送单元;

生成发送单元,用于生成账号,根据保存的密钥和账号生成密码,将云音箱设备号、账号和密码生成连接请求并发送给推送服务器3;

发送维护单元,用于接收推送服务器3发送连接成功响应之后,在空闲时间内根据配置信息中的心跳时间给推送服务器3发送心跳包,维护长连接状态;

物联平台还包括:配置服务器,用于与云音箱1进行协商密钥并将协商好的密钥与云音箱设备号行一一对应保存到共享数据库中;

第二建立模块,包括:

验证保存单元,用于当推送服务器3接收到连接请求后,对云音箱1合法性进行验证,如合法则保存当前云音箱1对应的上下文和连接信息,触发第一发送单元,否则给云音箱1返回拒绝连接响应;

优选的,在本实施例中,验证保存单元具体用于根据连接请求中的云音箱设备号在共享数据库中获取对应的密钥,根据获取的密钥和连接请求中的账号生成密码,判断生成的密码和连接请求中的密码是否一致,是则保存当前云音箱1对应的上下文和连接信息,触发第一发送单元,否则给云音箱1返回拒绝连接响应。

第一发送单元,用于将云音箱设备号对应的长连接所在的推送服务器地址发送给缓存服务器4;

接收返回单元,用于接收缓存服务器4返回的保存成功信息后给云音箱1返回连接成功响应;

缓存服务器4,还用于在接收到云音箱设备号对应的长连接所在的推送服务器地址后将其对应于云音箱设备号进行保存,并给推送服务器3返回保存成功信息。

可选的,在本实施例中,播报接口的参数中还包括商户编号,消息服务器2还包括:第一绑定模块,用于当判断设置模块23判断为是时,将商户与云音箱1进行绑定;第一绑定模块具体用于当检测到绑定接口被调用时,将商户编号与云音箱设备号进行对应绑定,并返回绑定结果。

可选的,播报接口的参数中包括商户编号,判断设置模块23具体用于根据商户编号查找对应的云音箱设备号,如找到判断推送服务器3中是否有对应于云音箱设备号的长连接信息,是则触发第一发送模块24,否则将当前播报信息的状态设置为离线状态。

在本实施例中,推送服务器3还包括:

更新模块,用于根据第一接收模块33接收到的播报结果更新记录的当前播报信息的状态和播报时间。

优选的,推送服务器3还包括:

第一判断模块,用于判断第一接收模块33在预设时间内是否接收到播报结果,如收到则判断播报结果是否为已播报,是则触发更新模块,否则报错,如未收到则判断补推次数是否大于预设值,是则报错,否则保存播报消息并重新发送推送消息给云音箱1,更新补推次数,触发接收发送模块11。

优选的,本实施例中的系统还包括:支付服务器,用于接收终端发送的付款请求,并验证付款请求是否合法,是则将支付请求中的付款方账户付款金额转入收钱码账户,将付款请求中的云音箱设备号、支付金额和付款方式作为参数调用物联平台的播报接口,否则报错。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

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