统一消息推送系统、方法和介质与流程

文档序号:30495535发布日期:2022-06-22 04:15阅读:150来源:国知局
统一消息推送系统、方法和介质与流程

1.本发明属于通信技术领域,特别涉及帮助传统计算机系统使用移动设备功能的统一消息推送系统、方法和介质。


背景技术:

2.现代移动设备功能越来越强大、越来越普及,可以通过移动设备方便地实现各种任务,例如拍照、拍视频、扫条码、nfc交互、电子签名等。而传统的计算机系统也有大量的类似需求,但是传统计算机系统要实现各种需求通常都要购买特定设备,并将设备装在pc电脑上,这样既增加了设备成本,适配各类设备又增加了系统的复杂度。
3.如果传统业务系统要利用移动设备功能也存在着一些难点:网络连接是业务系统计算机和移动设备共同具有的连接方式,但是为安全性考虑通常业务系统处于封闭的内网,而移动设备通常处于公网,通过网络难以直接连接;如果业务系统能够连接到移动设备,还存在如何与指定设备交互、如何多系统共享等问题。
4.因此,需要一种使业务系统能够方便的使用移动设备的功能完成自身业务需求的方法和系统。


技术实现要素:

5.鉴于以上技术问题,本发明提出了一种统一消息推送系统、方法和介质。
6.根据本发明的一个方面,提供了一种统一消息推送系统,包括客户端和服务器,其中所述客户端被配置成响应于用户输入对业务系统生成的二维码进行扫描并将获得的信息作为登录密钥发送给服务器以尝试建立连接;所述服务器被配置成:将所述登录密钥转发给所述业务系统验证可用性并从所述业务系统接收验证结果;在所述验证结果为验证通过时通过所述客户端的建立连接尝试以与所述客户端建立长连接;接收来自所述业务系统的操作指令;以及将所述操作指令发送给所述客户端;并且所述客户端还被配置成在接收到所述操作指令后完成指定操作。
7.根据一个示例实施例,所述操作指令包括客户端id和操作类型。
8.根据一个示例实施例,所述服务器还被配置成:在接收到来自所述业务系统的操作指令后,查询指定客户端的连接状态,如果连接状态为已连接则将所述操作指令发送给所述指定客户端,并且如果连接状态为未连接则向所述业务系统报告尚未与所述指定客户端建立连接。
9.根据一个示例实施例,所述客户端还被配置成在接收到所述操作指令后显示需做什么操作的提示,并响应于用户点击所述提示完成相应的操作。
10.根据一个示例实施例,所述客户端还被配置成在操作完成后将操作结果发送给所述服务器。
11.根据一个示例实施例,所述服务器还被配置成将接收到的所述操作结果发送给所述业务系统。
12.根据本发明的另一方面,提供了一种统一消息推送方法,包括:客户端响应于用户输入对业务系统生成的二维码进行扫描并将获得的信息作为登录密钥发送给服务器以尝试建立连接;所述服务器将所述登录密钥转发给所述业务系统验证可用性并从所述业务系统接收验证结果;在所述验证结果为验证通过时所述服务器通过所述客户端的建立连接尝试以与所述客户端建立长连接;所述服务器接收来自所述业务系统的操作指令并将所述操作指令发送给所述客户端;以及所述客户端在接收到所述操作指令后完成指定操作。
13.根据一个示例实施例,所述操作指令包括客户端id和操作类型。
14.根据一个示例实施例,所述方法还包括:所述服务器在接收到来自所述业务系统的操作指令后,查询指定客户端的连接状态,如果连接状态为已连接则将所述操作指令发送给所述指定客户端,并且如果连接状态为未连接则向所述业务系统报告尚未与所述指定客户端建立连接。
15.根据一个示例实施例,所述方法还包括:所述客户端在接收到所述操作指令后显示需做什么操作的提示,并响应于用户点击所述提示完成相应的操作。
16.根据一个示例实施例,所述方法还包括:所述客户端在操作完成后将操作结果发送给所述服务器。
17.根据一个示例实施例,所述方法还包括:所述服务器将接收到的所述操作结果发送给所述业务系统。
18.根据本发明的再一方面提供了一种非瞬时性计算机可读介质,所述非瞬时性计算机可读介质具有存储在其上的指令,以用于由处理器执行以执行根据本发明所述的统一消息推送方法的步骤。
19.根据本发明的又一方面提供了一种带宽一致性验证装置,包括用于执行本发明所述的统一消息推送方法的步骤的单元。
附图说明
20.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
21.为了更好地理解本公开,并示出如何实现本公开,现在将以举例的方式参照附图描述,其中:
22.图1示出了根据本公开的实施例的用于实现统一消息推送装置的电子设备的框图;
23.图2示出了根据本公开的实施例的示例性统一消息推送系统的结构图;
24.图3示出了根据本公开的实施例的示例性统一消息推送方法的流程图;
25.图4示出了根据本公开的实施例的示例性统一消息推送方法的时序图。
26.注意,在整个附图中,相似的附图标记指代对应的部分。
具体实施方式
27.参考附图进行以下详细描述,并且提供以下详细描述以帮助全面理解本公开的各种示例实施例。以下描述包括各种细节以帮助理解,但是这些细节仅被认为是示例,而不是
为了限制本公开,本公开是由随附权利要求及其等同内容限定的。在以下描述中使用的词语和短语仅用于能够清楚一致地理解本公开。另外,为了清楚和简洁起见,可能省略了对公知的结构、功能和配置的描述。本领域普通技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以对本文描述的示例进行各种改变和修改。
28.图1是示出根据本公开的实施例的电子设备100的示例性配置框图。电子设备100可以用于实现根据本发明的统一消息推送装置。
29.如图1所示,电子设备100包括用户接口20、网络接口21、电源22、外部网络接口23、存储器24和处理器26。用户接口20可以包括但不限于按钮、键盘、小键盘、lcd、crt、tft、led、hd或其它类似的显示设备,包括具有触摸屏能力使得能够进行用户和网关设备之间的交互的显示设备。在一些实施例中,用户接口20可以用于呈现图形用户界面(gui)以接收用户输入。
30.网络接口21可以包括各种网卡以及以软件和/或硬件实现的电路系统,以便能够使用有线或无线协议与用户设备通信。有线通信协议例如是以太网协议、moca规范协议、usb协议或其它有线通信协议中的任何一种或多种。无线协议例如是任何ieee 802.11wi-fi协议、蓝牙协议、低功耗蓝牙(ble)或根据无线技术标准进行操作的其他短距离协议,用于使用任何许可的或未许可的频带(诸如公民宽带无线电服务(cbrs)频带、2.4ghz频带、5ghz频带、6ghz频带或60ghz频带)、rf4ce协议、zigbee协议、z-wave协议或ieee 802.15.4协议在短距离上交换数据。在网络接口21使用无线协议的情况下,在一些实施例中,网络接口21还可以包括一个或多个天线(未示出)或者用于耦合到一个多个天线的电路节点。电子设备100可以通过网络接口21向用户设备提供内部网络。
31.电源22通过内部总线27向电子设备100的内部组件提供电力。电源22可以是自备电源,诸如电池组,其接口通过(例如,直接或通过其他设备)连接到插座的充电器供电。电源22还可以包括可拆卸以供替换的可再充电电池,例如nicd、nimh、li-ion或li-pol电池。外部网络接口23可以包括各种网卡以及以软件和/或硬件实现的电路系统,以实现电子设备100与外部网络的提供者(例如互联网服务提供商或多系统运营商(mso))之间的通信。
32.存储器24包括单个存储器或一个或多个存储器或存储位置,包括但不限于随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、只读存储器(rom)、eprom、eeprom、闪存、fpga的逻辑块、硬盘或存储器层次结构的任何其他各层。存储器24可以用于存储任何类型的指令、软件或算法,包括用于控制电子设备100的一般功能和操作的软件25。
33.处理器26控制电子设备100的一般操作,并执行与网络中的其他设备(诸如用户设备)有关的管理功能。处理器26可以包括但不限于cpu、硬件微处理器、硬件处理器、多核处理器、单核处理器、微控制器、专用集成电路(asic)、dsp或其他类似的处理设备,能够执行根据本公开中描述的实施例的用于控制电子设备100的操作和功能的任何类型的指令、算法或软件。处理器26可以是在计算系统中执行功能的数字电路系统、模拟电路系统或混合信号(模拟和数字的组合)电路系统的各种实现。处理器26可以包括例如诸如集成电路(ic)、单独处理器核心的部分或电路、整个处理器核心、单独的处理器、诸如现场可编程门阵列(fpga)的可编程硬件设备、和/或包括多个处理器的系统。
34.可以使用内部总线27来建立电子设备100的组件(例如20-22、24和26)之间的通
信。
35.尽管使用特定组件来描述电子设备100,但是在替选实施例中,电子设备100中可以存在不同的组件。例如,电子设备100可以包括一个或多个附加控制器、存储器、网络接口、外部网络接口和/或用户接口。另外,电子设备100中可能不存在组件的一个或多个。此外,在一些实施例中,电子设备100可以包括在图1中未示出的一个或多个组件。另外,尽管在图1中示出单独的组件,但是在一些实施例中,给定组件的一些或全部可以集成到电子设备100中的其他组件中的一个或多个中。此外,可以使用模拟和/或数字电路的任何组合来实现电子设备100中的电路和组件。
36.图2示出了根据本发明的实施例的示例性统一消息推送系统200的结构图。如图2所示,所述统一消息推送系统200包括客户端210和服务器220。根据本发明的实施例,所述服务器220可以通过java程序来实现,所述客户端210可以实现为移动设备(例如安卓系统)上可安装的应用程序。所述服务器220和所述客户端210都可以通过图1所示的电子设备来实现。
37.根据本发明的实施例,所述客户端可以被配置成响应于用户输入对业务系统(例如,云南电信crm系统)生成的二维码进行扫描并将获得的信息作为登录密钥发送给服务器以尝试建立连接。根据本发明的实施例,所述统一消息推送系统可以同时接入多个业务系统。使用本发明的统一消息推送系统的各个业务系统需要能够产生包含登录密钥的二维码,并能够提供验证密钥可用性的接口。而本发明的统一消息推送系统的服务器提供有指令接收接口。
38.根据本发明的实施例,所述服务器可以被配置成(例如通过调用业务系统的密钥验证接口)将所述登录密钥转发给所述业务系统验证可用性并从所述业务系统接收验证结果,在所述验证结果为验证通过时通过所述客户端的建立连接尝试以与所述客户端建立长连接,(例如通过服务器的指令接收接口)接收来自所述业务系统的操作指令并将所述操作指令发送给所述客户端。其中所述操作指令可以包括指定客户端id和操作类型(例如拍照、电子签名等),还可以包括其它需要传送给指定客户端的参数。
39.根据本发明的实施例,所述服务器还可以被配置成在接收到来自所述业务系统的操作指令后,查询指定客户端的连接状态,如果连接状态为已连接则将所述操作指令发送给所述指定客户端,并且如果连接状态为未连接则向所述业务系统报告尚未与所述指定客户端建立连接。
40.根据本发明的实施例,所述客户端还可以被配置成在接收到所述操作指令后显示(例如弹出)需做什么操作的提示,并响应于用户点击所述提示而完成相应的操作。
41.根据本发明的实施例,所述客户端还可以被配置成在操作完成后将操作结果发送给所述服务器,并且所述服务器还可以被配置成将接收到的所述操作结果发送给所述业务系统。
42.所述服务器既联通业务系统所处的内网,又联通移动设备所处的公网。所述服务器与业务系统交互的接口都使用ht tp协议,json报文,而客户端和服务器的连接为socket长连接,消息交互使用xmpp协议。此xmpp协议已有多个成熟的开源实现,例如服务器可以使用t inder,客户端可以使用asmack。
43.图3示出了根据本发明的实施例的示例性统一消息推送方法的流程图300。图3所
示的统一消息推送方法可由图2中所示的统一消息推送系统执行。
44.如图3所示,在步骤s310处,客户端响应于用户输入对业务系统生成的二维码进行扫描并将获得的信息作为登录密钥发送给服务器以尝试建立连接。根据本发明的一个示例性实施例,业务系统可以为云南电信crm系统。
45.在步骤s320处,服务器将登录密钥转发给业务系统验证可用性并从业务系统接收验证结果。
46.在步骤s330处,在验证结果为验证通过时,服务器通过客户端的建立连接尝试以与客户端建立长连接。
47.在步骤s340处,服务器接收来自业务系统的操作指令并将操作指令发送给客户端。根据本发明的示例性实施例,操作指令可以包括指定客户端id和操作类型(例如拍照、电子签名等),还可以包括其它需要传送给指定客户端的参数。根据一个优选实施例,服务器可以在接收到来自业务系统的操作指令后,查询指定客户端的连接状态,如果连接状态为已连接则将所述操作指令发送给所述指定客户端,并且如果连接状态为未连接则向所述业务系统报告尚未与所述指定客户端建立连接。
48.在步骤s350处,客户端在接收到操作指令后完成指定操作。根据本发明的示例实施例,客户端在接收到操作指令后完成指定操作包括客户端在接收到所述操作指令后显示(例如弹出)需做什么操作的提示,并响应于用户点击所述提示而完成相应的操作。
49.在步骤s360处,客户端在操作完成后将操作结果发送给服务器。
50.在步骤s370处,服务器将接收到的操作结果发送给业务系统。
51.图4示出了根据本发明的实施例的统一消息推送方法的示例性时序图。如图4所示,所述客户端为安卓系统app,用户通过操控安装在安卓系统的移动设备上的app来完成业务系统借助于服务器与安卓app来完成的一系列操作(例如拍照、签名等)。
52.本发明通过统一消息推送系统使得业务系统能够方便的使用移动设备的功能来完成自身业务需求。在统一消息推送系统的客户端与服务器之间建立的连接为长连接,相较于轮询短连接可以保证消息推送不会有高延时;使用xmpp协议易于实现且可保证程序的可靠性;系统通过指令接收接口和密钥验证接口可以很方便的和任意业务系统配合,共同完成业务系统需求的功能。
53.本公开可以被实现为装置、系统、集成电路和非瞬时性计算机可读介质上的计算机程序的任何组合。可以将一个或多个控制器实现为执行本公开中描述的部分或全部功能的集成电路(ic)、专用集成电路(asic)或大规模集成电路(lsi)、系统lsi、超级lsi或超lsi组件。
54.本公开包括软件、应用程序、计算机程序或算法的使用。可以将软件、应用程序、计算机程序或算法存储在非瞬时性计算机可读介质上,以使诸如一个或多个处理器的计算机执行上述步骤和附图中描述的步骤。例如,一个或多个存储器以可执行指令存储软件或算法,并且一个或多个处理器可以关联执行该软件或算法的一组指令,以根据本公开中描述的实施例提供网络接入设备的网络配置信息管理功能。
55.软件和计算机程序(也可以称为程序、软件应用程序、应用程序、组件或代码)包括用于可编程处理器的机器指令,并且可以以高级过程性语言、面向对象编程语言、功能性编程语言、逻辑编程语言或汇编语言或机器语言来实现。术语“计算机可读介质”是指用于向
可编程数据处理器提供机器指令或数据的任何计算机程序产品、装置或设备,例如磁盘、光盘、固态存储设备、存储器和可编程逻辑设备(pld),包括将机器指令作为计算机可读信号来接收的计算机可读介质。
56.举例来说,计算机可读介质可以包括动态随机存取存储器(dram)、随机存取存储器(ram)、只读存储器(rom)、电可擦只读存储器(eeprom)、紧凑盘只读存储器(cd-rom)或其他光盘存储设备、磁盘存储设备或其他磁性存储设备,或可以用于以指令或数据结构的形式携带或存储所需的计算机可读程序代码以及能够被通用或专用计算机或通用或专用处理器访问的任何其它介质。如本文中所使用的,磁盘或盘包括紧凑盘(cd)、激光盘、光盘、数字多功能盘(dvd)、软盘和蓝光盘,其中磁盘通常以磁性方式复制数据,而盘则通过激光以光学方式复制数据。上述的组合也包括在计算机可读介质的范围内。
57.另外,以上描述提供了示例,而不限制权利要求中阐述的范围、适用性或配置。在不脱离本公开的精神和范围的情况下,可以对所讨论的元件的功能和布置进行改变。各种实施例可以适当地省略、替代或添加各种过程或部件。例如,关于某些实施例描述的特征可以在其他实施例中被结合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1