CN108924197B - 电子价签系统及其数据通信方法 - Google Patents

电子价签系统及其数据通信方法 Download PDF

Info

Publication number
CN108924197B
CN108924197B CN201810642982.2A CN201810642982A CN108924197B CN 108924197 B CN108924197 B CN 108924197B CN 201810642982 A CN201810642982 A CN 201810642982A CN 108924197 B CN108924197 B CN 108924197B
Authority
CN
China
Prior art keywords
client
server
electronic price
price tag
serial port
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.)
Active
Application number
CN201810642982.2A
Other languages
English (en)
Other versions
CN108924197A (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.)
JD Digital Technology Holdings Co Ltd
Jingdong Technology Holding Co Ltd
Original Assignee
JD Digital Technology Holdings 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 JD Digital Technology Holdings Co Ltd filed Critical JD Digital Technology Holdings Co Ltd
Priority to CN201810642982.2A priority Critical patent/CN108924197B/zh
Publication of CN108924197A publication Critical patent/CN108924197A/zh
Application granted granted Critical
Publication of CN108924197B publication Critical patent/CN108924197B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • 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/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup

Abstract

本发明公开了一种电子价签系统及其数据通信方法,涉及计算机技术领域。本发明一个实施例的电子价签系统,包括服务端、客户端和电子价签,服务端与客户端通过无线连接,客户端与电子价签通过蓝牙模块进行无线连接,且客户端与蓝牙模块之间通过串口进行通信,客户端部署于树莓派上。该实施方式实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统。

Description

电子价签系统及其数据通信方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种电子价签系统及其数据通信方法。
背景技术
电子价签,也叫电子货架标签(Electronic Shelf Label,ESL),是一种带有信息收发功能的电子显示装置,主要应用于超市、便利店、药房等显示价格信息的电子类标签。放置在货架上,可替代传统纸质价格标签的电子显示装置,每一个电子货架标签通过有线或者无线网络与商场计算机数据库相连,并将最新的商品信息通过电子货架标签上的屏显示出来。电子货架标签事实上成功地将货架纳入了计算机程序,摆脱了手动更换价格标签的状况,实现了收银台与货架之间的价格一致性。
电子价签系统一般包括服务端、客户端和电子价签3部分,其中,服务端与门店已有的管理系统对接,导出商品基本信息和价格信息,然后通过以太网或者无线连接,将更新数据发送给门店的专用AP客户端,在完成数据更新后,自动回收数据,最后确认每一次更新成功;专用AP客户端接收门店的修改信息,然后利用无线信号修改每一个商品的价格,最终将修改的信息回传给服务端,这样确保每次传输的成功;电子价签通过无线信号接收专用AP客户端发送的更改信息,修改并显示每一个商品的价格和基本信息。
然而,由于现有的电子价签客户端软件是使用C语言开发的软件程序,只能运行在安装有windows系统的PC机上。因此,现有的电子价签系统至少存在如下问题:
1、可移植性不强,店铺操作系统差异大,如果没有合适的windows系统PC机,就无法安装现有的客户端软件程序;
2、应用范围窄,商铺一般都是专机专用,不易安装新的客户端软件;
3、如果为软件程序配备专门安装有windows系统PC机,就会很大的增加了店铺的使用成本;
4、客户端一般是通过无线方式来控制价签和价签通信的,采用PC电脑的方案会限制安装位置选择,影响无线信号的强度。
发明内容
有鉴于此,本发明实施例提供一种电子价签系统及其数据通信方法,实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统。
为实现上述目的,根据本发明实施例的一个方面,提供了一种电子价签系统。
一种电子价签系统,包括服务端、客户端和电子价签,所述服务端与所述客户端通过无线连接,所述客户端与所述电子价签通过蓝牙模块进行无线连接,且所述客户端与所述蓝牙模块之间通过串口进行通信,所述客户端部署于树莓派上。
可选地,所述服务端与所述客户端通过建立长连接的方式来进行通信。
可选地,所述客户端通过网络通信应用框架来建立与所述服务端的长连接,并且,所述长连接的建立过程包括:所述客户端使用网络通信应用框架创建一个通信连接对象,并调用所述通信连接对象的连接方法来建立与所述服务端的长连接。
可选地,所述网络通信应用框架为Netty框架,并且,所述客户端通过Netty框架来建立与所述服务端的长连接包括:所述客户端使用Netty框架创建一个Bootstrap对象,并调用所述Bootstrap对象的doConnect方法来建立与所述服务端的长连接。
可选地,在所述客户端与所述服务端首次连接成功后,所述网络通信应用框架上报所述客户端的标识以使所述客户端能接收所述服务端的指令。
可选地,当所述客户端与所述服务端的通信空闲时,所述客户端向所述服务端发送心跳包,以保证所述长连接的稳定性。
可选地,通过以下方式来对电子价签进行点名:在接收到所述服务端发来的点名指令时,所述客户端将与其建立连接的电子价签上报给所述服务端;或者,所述客户端定时将与其建立连接的电子价签上报给所述服务端;其中,电子价签通过扫描蓝牙模块根据低功耗蓝牙协议发出的广播指令以与所述蓝牙模块连接的客户端建立连接。
可选地,所述客户端与所述蓝牙模块之间通过串口进行通信包括:所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块;以及,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息。
可选地,所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块包括:所述客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将所述二进制数据流发送给所述蓝牙模块;并且,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息包括:通过串口连接对象的串口监听器接收所述蓝牙模块返回的二进制数据流,并将所述二进制数据流转换为消息。
根据本发明实施例的另一方面,提供了一种电子价签系统的数据通信方法。
一种电子价签系统的数据通信方法,所述服务端与所述客户端通过无线连接,所述客户端与所述电子价签通过蓝牙模块进行无线连接,且所述客户端与所述蓝牙模块之间通过串口进行通信,所述客户端部署于树莓派上。
可选地,所述服务端与所述客户端通过建立长连接的方式来进行通信。
可选地,所述客户端通过网络通信应用框架来建立与所述服务端的长连接,并且,所述长连接的建立过程包括:所述客户端使用网络通信应用框架创建一个通信连接对象,并调用所述通信连接对象的连接方法来建立与所述服务端的长连接。
可选地,所述网络通信应用框架为Netty框架,并且,所述客户端通过Netty框架来建立与所述服务端的长连接包括:所述客户端使用Netty框架创建一个Bootstrap对象,并调用所述Bootstrap对象的doConnect方法来建立与所述服务端的长连接。
可选地,在所述客户端与所述服务端首次连接成功后,所述网络通信应用框架上报所述客户端的标识以使所述客户端能接收所述服务端的指令。
可选地,当所述客户端与所述服务端的通信空闲时,所述客户端向所述服务端发送心跳包,以保证所述长连接的稳定性。
可选地,通过以下方式来对电子价签进行点名:在接收到所述服务端发来的点名指令时,所述客户端将与其建立连接的电子价签上报给所述服务端;或者,所述客户端定时将与其建立连接的电子价签上报给所述服务端;其中,电子价签通过扫描蓝牙模块根据低功耗蓝牙协议发出的广播指令以与所述蓝牙模块连接的客户端建立连接。
可选地,所述客户端与所述蓝牙模块之间通过串口进行通信包括:所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块;以及,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息。
可选地,所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块包括:所述客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将所述二进制数据流发送给所述蓝牙模块;并且,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息包括:通过串口连接对象的串口监听器接收所述蓝牙模块返回的二进制数据流,并将所述二进制数据流转换为消息。
根据本发明实施例的又一方面,提供了一种电子价签系统的数据通信的电子设备。
一种电子价签系统的数据通信的电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所提供的电子价签系统的数据通信方法。
根据本发明实施例的再一方面,提供了一种计算机可读介质。
一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例所提供的电子价签系统的数据通信方法。
上述发明中的一个实施例具有如下优点或有益效果:提供了一种电子价签系统,包括服务端、客户端和电子价签,其中,服务端与客户端通过无线连接,客户端与电子价签通过蓝牙模块进行无线连接,且客户端与蓝牙模块之间通过串口进行通信,客户端部署于树莓派上,实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统;通过使用具有可跨平台部署特性的语言来开发客户端软件,即可解决电子价签客户端软件程序的不可移植、不易安装、成本过高和对安装位置有限制等问题。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的电子价签系统的系统架构图;
图2是本发明实施例的电子价签系统的数据通信原理示意图;
图3是本发明实施例的串口通信的流程示意图;
图4是本发明实施例可以应用于其中的示例性系统架构图;
图5是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
为了解决现有的电子价签客户端软件的不可移植、不易安装、硬件成本过高,以及对安装位置有限制等问题,本发明提供了一种电子价签系统及其数据通信方法,通过使用可跨平台部署的语言替代C语言来开发电子价签客户端软件以便将电子价签客户端软件部署在树莓派上的方案,实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统。
在本发明的实施例中,使用的可跨平台部署的语言例如是JAVA语言,由于JAVA语言具有可跨平台部署和有大量开源框架支持的特点,故而可以缩短开发时间,提高软件程序的稳定性和健壮性。根据本发明的技术方案,所使用的可跨平台部署的语言并不局限于JAVA,也可以是其他语言,本发明不做限制。
在本发明的实施例中,将电子价签的客户端软件部署在树莓派硬件上。由于用JAVA语言开发出的客户端程序是可以安装在所有安装了JDK1.8的操作系统上的,包括安装了windows系统的电脑和安装了Linux系统的各种硬件设备。故而,在选择硬件时,通过对系统的稳定性、安装的方便性和设备容易购买的角度多方面综合考虑后,最终选定了树莓派作为电子价签客户端的硬件设备。通过使用树莓派原装的Raspbian操作系统,这是一种针对树莓派特点开发的Linux发行版本,并且在树莓派上预先安装JDK1.8操作系统,使得可以在树莓派上安装使用JAVA语言开发的电子价签客户端软件。该方案利用了树莓派的以下特点:
1、Liunx系统,预先安装JDK1.8,可以和JAVA语言开发的客户端软件匹配;
2、成本较低,300元左右;
3、国内有专门厂商生产,可以满足大批量使用需求;
4、处理能力能够满足电子价签客户端程序的需要;
5、安装部署灵活,长宽高分别为85.60mm、56mm、21mm,重45g,有WIFI和网线两种方式连接网络,可以安装在店铺的大部分位置,故而便于选择蓝牙信号覆盖广,信号强度高的位置安装设备。
通过将开发好的客户端程序安装到树莓派上,然后配置好树莓派与服务端连接的WIFI信息,并使用串口连接线与蓝牙模块连接,就可以替代现有的将客户端安装在windows上的电子价签系统,实现部署灵活,降低成本等方面的优势。
另外,本发明的技术方案也适用于其他与树莓派具有类似特性(如小型、便于安装、成本低等)的硬件设备上。
下面结合附图介绍本发明的具体实施过程。
图1是根据本发明实施例的电子价签系统的系统架构图。如图1所示,本发明实施例的电子价签系统包括服务端、客户端和电子价签,其中,服务端与客户端通过无线连接,客户端与电子价签通过蓝牙模块进行无线连接,且客户端与蓝牙模块之间通过串口进行通信,客户端部署于树莓派上。
服务端与客户端在通过无线进行连接时,例如可以是通过无线网WIFI进行连接。具体地,服务端与客户端通过建立长连接的方式来进行通信。长连接,指的是在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。客户端与蓝牙模块之间通过串口连接线进行连接,以便客户端与蓝牙模块可以通过串口进行通信。
图2是本发明实施例的电子价签系统的数据通信原理示意图。如图2所示,电子价签客户端通过网络通信应用框架来建立与服务端的长连接,并且,长连接的建立过程具体可以包括:客户端使用网络通信应用框架创建一个通信连接对象,并调用通信连接对象的连接方法来建立与服务端的长连接。
在本发明的一个实施例中,选用的网络通信应用框架为Netty框架,并且,客户端通过Netty框架来建立与服务端的长连接的过程具体可以包括:客户端使用Netty框架创建一个Bootstrap对象,并调用Bootstrap对象的doConnect方法来建立与服务端的长连接。其中,创建的Bootstrap对象可以用于注册空闲的处理器、解码器等,然后通过调用Bootstrap对象的doConnect方法即可实现客户端与服务端建立长连接。
在本发明的一个实施例中,使用Netty作为长连接基础框架,Netty客户端位于电子价签系统的客户端上,Netty服务端位于电子价签系统的服务端上。Netty客户端会随着安装在树莓派上的客户端程序启动,以与服务端建立长连接。当电子价签的客户端与服务端的通信空闲(即:连接读写空闲)时,客户端向服务端发送心跳包,以保证长连接的稳定性。当因各种原因导致网络不通,或者服务器重启的时候,电子价签的客户端内的Netty客户端会每隔一段时间(例如:10秒,可根据需要设定)尝试一次连接。
在电子价签系统的客户端与服务端首次连接成功后,网络通信应用框架会上报客户端的标识以使客户端能接收服务端的指令。其中,客户端的标识例如包括但不限于客户端对应的硬件设备的MAC地址、IP地址、系统编号等。具体地,在电子价签系统的客户端通过Netty客户端与电子价签系统的服务端首次连接成功后,Netty客户端会上报能够识别当前部署了电子价签客户端的树莓派身份的标识,以保证能够正确的从服务器接收指令。
本领域技术人员应当知道,网络通信应用框架并不局限于Netty,也可以使用其他的框架,例如mina或者自行实现的其他框架等,本发明对此不做限定。对于不同的网络通信应用框架,所创建的通信连接对象及调用的连接方法也不相同。例如,在使用mina作为网络通信应用框架时,可通过创建一个NioSocketConnector对象,然后调用该NioSocketConnector对象的connect方法来建立电子价签系统客户端和服务端的长连接。
如图2所示,在本发明的实施例中,电子价签系统的客户端底层使用串口通信框架来实现客户端与蓝牙模块的通信功能。客户端与蓝牙模块之间通过串口进行通信的过程主要包括:客户端通过串口通信框架创建的串口连接对象将指令发送给蓝牙模块;以及,通过串口连接对象的串口监听器接收蓝牙模块返回的消息。
客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块包括:
所述客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将所述二进制数据流发送给所述蓝牙模块;
并且,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息包括:
通过串口连接对象的串口监听器接收所述蓝牙模块返回的二进制数据流,并将所述二进制数据流转换为消息。
图3是本发明实施例的串口通信的流程示意图。如图3所示,在本发明的实施例中,客户端通过串口通信框架创建的串口连接对象将指令发送给蓝牙模块具体可以包括:客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将二进制数据流发送给蓝牙模块;并且,通过串口连接对象的串口监听器接收蓝牙模块返回的消息具体可以包括:通过串口连接对象的串口监听器接收蓝牙模块返回的二进制数据流,并将二进制数据流转换为消息。
在本发明的一个实施例中,使用PureJavaComm框架作为串口通信的基础框架。串口即串行接口,是采用串行通信方式的扩展接口,本发明的电子价签客户端与蓝牙模块之间即通过串口连接线进行连接,当客户端程序启动时,与其通过串口连接线连接的蓝牙模块也会随着启动。PureJavaComm框架是不依赖于操作系统(例如:Windows或者linux)的通信组件。当客户端程序启动时,串口通信连接也会随客户端程序的启动而启动,客户端程序启动后,会生成一个串口连接对象,并等待接收二进制数据流。串口连接对象具有一个串口监听器,负责监听串口返回的二进制数据。以PureJavaComm框架为例,生成的串口连接对象例如为SerialPort对象,通过使用SerialPort对象的addEventListener(SerialPortEventListener var1)方法即可生成一个串口监听器,其中,SerialPortEventListener接口可通过自定义的SerialListener监听器来实现。由于串口数据的发送和接收是异步的,故而所有消息都具有相应的消息识别码id,以保证接收到的反馈消息能够正确匹配到发送的消息。
当客户端接收到服务端的指令(例如是Json格式的指令)后,将使用String的byte[]getBytes(Charset charset)方法将Json格式的指令转换为二进制数据流,然后调用串口连接对象,将二进制数据流发送到蓝牙模块,以便蓝牙模块再与电子价签通信,实现点名或者变价的功能。当蓝牙模块通过串口返回消息时,串口连接对象的串口监听器会异步接收来自蓝牙模块的二进制数据流,通过将二进制数据流转换为字符串格式的消息,可以得到点名或者变价的结果反馈。
其中,电子价签系统的点名和变价功能都是利用蓝牙4.2的低功耗蓝牙协议特性来实现的。根据本发明实施例的技术方案,可以通过以下方式来对电子价签进行点名:
在接收到服务端发来的点名指令时,客户端将与其建立连接的电子价签上报给所述服务端;
或者,客户端定时将与其建立连接的电子价签上报给服务端;
其中,电子价签通过扫描蓝牙模块根据低功耗蓝牙协议发出的广播指令以与蓝牙模块连接的客户端建立连接。
根据本发明的一个实施例,客户端在定时向服务端上报与其连接的可用的电子价签时,可发送可用的电子价签的副本,同时,仍然发送广播指令,以随时更新可用的电子价签,如此,即可将电子价签的人为移动和信号强弱的变化定时地反馈给服务端。
当需要对商品信息(如:价格、库存、优惠等)进行变动时,电子价签系统需执行变价功能。具体地,是由服务端将需要进行变价的电子价签的标识及变价信息发送给该电子价签对应的客户端,然后,再由客户端将变价信息通过蓝牙模块发送给对应的电子价签,以便电子价签根据变价信息执行商品信息变更。其中,当一个电子价签通过蓝牙可以与多个客户端连接时,服务端会根据连接信号的强弱,选择与该电子价签的连接信号最强的客户端作为该电子价签对应的客户端,并将变价信息发送给该客户端。
具体地,在进行电子价签点名时,客户端和电子价签之间可以按照以下过程来建立连接:
a)客户端通过与其连接的蓝牙模块发出点名的广播指令,其中包含此次点名的索引值和指令名称,其中,索引值用于区分每次点名;
b)电子价签通过安装在其内的另一蓝牙模块定时扫描,当发现有广播指令时,判断索引值是否与本地保存的相同,如果相同,则不作处理;如果不相同,则尝试通过客户端的蓝牙模块与客户端建立连接;
c)建立连接后,电子价签会把其自身的MAC地址、信号强度、电量等信息发送给客户端的蓝牙模块;
d)客户端的蓝牙模块接收到完整的电子价签信息后,断开与电子价签的连接;
e)客户端的蓝牙模块继续发送点名的广播指令,由于客户端对周围包含多少电子价签是不知道的,因此会设置超时时间,超时后将不再点名。
具体地,当需要对商品进行变价时,客户端与电子价签之间可以按照以下过程来实施变价:
a)客户端通过与其连接的蓝牙模块发出变价的广播指令,其中包含了电子价签的MAC地址和指令名称等;
b)电子价签扫描到和自己MAC地址对应的变价指令后,通过与客户端连接的蓝牙模块与客户端建立连接;
c)客户端和电子价签建立连接后,通过蓝牙模块向电子价签发送变价信息;
d)电子价签接收到完整的变价信息后,根据变价信息进行商品变价,并返回变价结果给客户端,然后通知客户端的蓝牙模块断开连接,并将变价后的商品信息更新到显示屏上。
根据如上所述的电子价签系统,即可解决价签客户端软件程序的不可移植、不易安装、成本过高和对安装位置有限制等问题,实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统。
另外,本发明还提供了一种电子价签系统的数据通信方法,该方法包括:服务端与客户端通过无线连接,客户端与电子价签通过蓝牙模块进行无线连接,且客户端与蓝牙模块之间通过串口进行通信,客户端部署于树莓派上。
其中,服务端与客户端通过建立长连接的方式来进行通信。
根据本发明的技术方案,客户端通过网络通信应用框架来建立与服务端的长连接,并且,长连接的建立过程包括:
客户端使用网络通信应用框架创建一个通信连接对象,并调用通信连接对象的连接方法来建立与服务端的长连接。
根据本发明的一个实施例,网络通信应用框架为Netty框架,并且,客户端通过Netty框架来建立与服务端的长连接包括:
客户端使用Netty框架创建一个Bootstrap对象,并调用Bootstrap对象的doConnect方法来建立与服务端的长连接。
具体地,在客户端与服务端首次连接成功后,网络通信应用框架上报客户端的标识以使客户端能接收所述服务端的指令。
并且,当客户端与服务端的通信空闲时,客户端向服务端发送心跳包,以保证长连接的稳定性。
根据本发明的实施例,可以通过以下方式来对电子价签进行点名:
在接收到服务端发来的点名指令时,客户端将与其建立连接的电子价签上报给服务端;
或者,客户端定时将与其建立连接的电子价签上报给服务端;
其中,电子价签通过扫描蓝牙模块根据低功耗蓝牙协议发出的广播指令以与蓝牙模块连接的客户端建立连接。
根据本发明的技术方案,客户端与蓝牙模块之间通过串口进行通信具体包括:
客户端通过串口通信框架创建的串口连接对象将指令发送给蓝牙模块;
以及,通过串口连接对象的串口监听器接收蓝牙模块返回的消息。
在本发明的一个实施例中,客户端通过串口通信框架创建的串口连接对象将指令发送给蓝牙模块具体可以包括:
客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将二进制数据流发送给蓝牙模块;
并且,通过串口连接对象的串口监听器接收蓝牙模块返回的消息包括:
通过串口连接对象的串口监听器接收蓝牙模块返回的二进制数据流,并将二进制数据流转换为消息。
根据本发明实施例的技术方案,提供了一种电子价签系统,包括服务端、客户端和电子价签,其中,服务端与客户端通过无线连接,客户端与电子价签通过蓝牙模块进行无线连接,且客户端与蓝牙模块之间通过串口进行通信,客户端部署于树莓派上,实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统;通过使用具有可跨平台部署特性的语言来开发客户端软件,即可解决电子价签客户端软件程序的不可移植、不易安装、成本过高和对安装位置有限制等问题。
图4示出了可以应用本发明实施例的电子价签系统的数据通信方法示例性系统架构400。
如图4所示,系统架构400可以包括终端设备401、402、403,网络404和服务器405。网络404用以在终端设备401、402、403和服务器405之间提供通信链路的介质。网络404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备401、402、403通过网络404与服务器405交互,以接收或发送消息等。终端设备401、402、403上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备401、402、403可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器405可以是提供各种服务的服务器,例如对用户利用终端设备401、402、403所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的电子价签系统的数据通信方法一般由服务器405执行。
应该理解,图4中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图5,其示出了适于用来实现本发明实施例的终端设备或服务器的计算机系统500的结构示意图。图5示出的终端设备或服务器仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:所述服务端与所述客户端通过无线连接,所述客户端与所述电子价签通过蓝牙模块进行无线连接,且所述客户端与所述蓝牙模块之间通过串口进行通信,所述客户端部署于树莓派上。
根据本发明实施例的技术方案,提供了一种电子价签系统,包括服务端、客户端和电子价签,其中,服务端与客户端通过无线连接,客户端与电子价签通过蓝牙模块进行无线连接,且客户端与蓝牙模块之间通过串口进行通信,客户端部署于树莓派上,实现了一种可灵活部署、低成本、稳定性和健壮性高的电子价签系统;通过使用具有可跨平台部署特性的语言来开发客户端软件,即可解决电子价签客户端软件程序的不可移植、不易安装、成本过高和对安装位置有限制等问题。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (20)

1.一种电子价签系统,其特征在于,包括服务端、客户端和电子价签,所述服务端与所述客户端通过网络通信应用框架进行无线连接,所述网络通信应用框架的客户端位于所述电子价签系统的客户端上,所述网络通信应用框架的服务端位于所述电子价签系统的服务端上,所述网络通信应用框架的客户端随着所述电子价签系统的客户端启动以与位于所述电子价签系统上的所述网络通信应用框架的服务端建立无线连接;
所述客户端与所述电子价签通过蓝牙模块进行无线连接,且所述客户端与所述蓝牙模块之间通过串口进行通信,使用具有可跨平台部署特性的语言来开发客户端软件以使所述客户端部署于树莓派上。
2.根据权利要求1所述的电子价签系统,其特征在于,所述服务端与所述客户端通过建立长连接的方式来进行通信。
3.根据权利要求1或2所述的电子价签系统,其特征在于,所述客户端通过网络通信应用框架来建立与所述服务端的长连接,并且,所述长连接的建立过程包括:
所述客户端使用网络通信应用框架创建一个通信连接对象,并调用所述通信连接对象的连接方法来建立与所述服务端的长连接。
4.根据权利要求3所述的电子价签系统,其特征在于,所述网络通信应用框架为Netty框架,并且,所述客户端通过Netty框架来建立与所述服务端的长连接包括:
所述客户端使用Netty框架创建一个Bootstrap对象,并调用所述Bootstrap对象的doConnect方法来建立与所述服务端的长连接。
5.根据权利要求2所述的电子价签系统,其特征在于,在所述客户端与所述服务端首次连接成功后,所述网络通信应用框架上报所述客户端的标识以使所述客户端能接收所述服务端的指令。
6.根据权利要求2所述的电子价签系统,其特征在于,当所述客户端与所述服务端的通信空闲时,所述客户端向所述服务端发送心跳包,以保证所述长连接的稳定性。
7.根据权利要求1所述的电子价签系统,其特征在于,通过以下方式来对电子价签进行点名:
在接收到所述服务端发来的点名指令时,所述客户端将与其建立连接的电子价签上报给所述服务端;
或者,所述客户端定时将与其建立连接的电子价签上报给所述服务端;
其中,电子价签通过扫描蓝牙模块根据低功耗蓝牙协议发出的广播指令以与所述蓝牙模块连接的客户端建立连接。
8.根据权利要求1所述的电子价签系统,其特征在于,所述客户端与所述蓝牙模块之间通过串口进行通信包括:
所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块;
以及,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息。
9.根据权利要求8所述的电子价签系统,其特征在于,
所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块包括:
所述客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将所述二进制数据流发送给所述蓝牙模块;
并且,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息包括:
通过串口连接对象的串口监听器接收所述蓝牙模块返回的二进制数据流,并将所述二进制数据流转换为消息。
10.一种电子价签系统的数据通信方法,其特征在于,所述电子价签系统包括服务端、客户端和电子价签,所述服务端与所述客户端通过无线连接,所述客户端与所述电子价签通过蓝牙模块进行无线连接,且所述客户端与所述蓝牙模块之间通过串口进行通信,使用具有可跨平台部署特性的语言来开发客户端软件以使所述客户端部署于树莓派上;
在对商品信息进行变更时,由服务端将需进行商品信息变动的电子价签的标识及变价信息发送给所述电子价签对应的客户端;
由所述客户端将所述变价信息通过所述蓝牙模块发送给所述电子价签,以便所述电子价签根据所述变价信息执行商品信息变更。
11.根据权利要求10所述的数据通信方法,其特征在于,所述服务端与所述客户端通过建立长连接的方式来进行通信。
12.根据权利要求10或11所述的数据通信方法,其特征在于,所述客户端通过网络通信应用框架来建立与所述服务端的长连接,并且,所述长连接的建立过程包括:
所述客户端使用网络通信应用框架创建一个通信连接对象,并调用所述通信连接对象的连接方法来建立与所述服务端的长连接。
13.根据权利要求12所述的数据通信方法,其特征在于,所述网络通信应用框架为Netty框架,并且,所述客户端通过Netty框架来建立与所述服务端的长连接包括:
所述客户端使用Netty框架创建一个Bootstrap对象,并调用所述Bootstrap对象的doConnect方法来建立与所述服务端的长连接。
14.根据权利要求12所述的数据通信方法,其特征在于,在所述客户端与所述服务端首次连接成功后,所述网络通信应用框架上报所述客户端的标识以使所述客户端能接收所述服务端的指令。
15.根据权利要求11所述的数据通信方法,其特征在于,当所述客户端与所述服务端的通信空闲时,所述客户端向所述服务端发送心跳包,以保证所述长连接的稳定性。
16.根据权利要求10所述的数据通信方法,其特征在于,通过以下方式来对电子价签进行点名:
在接收到所述服务端发来的点名指令时,所述客户端将与其建立连接的电子价签上报给所述服务端;
或者,所述客户端定时将与其建立连接的电子价签上报给所述服务端;
其中,电子价签通过扫描蓝牙模块根据低功耗蓝牙协议发出的广播指令以与所述蓝牙模块连接的客户端建立连接。
17.根据权利要求10所述的数据通信方法,其特征在于,所述客户端与所述蓝牙模块之间通过串口进行通信包括:
所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块;
以及,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息。
18.根据权利要求17所述的数据通信方法,其特征在于,
所述客户端通过串口通信框架创建的串口连接对象将指令发送给所述蓝牙模块包括:
所述客户端通过串口通信框架创建的串口连接对象将指令转换为二进制数据流,并将所述二进制数据流发送给所述蓝牙模块;
并且,通过串口连接对象的串口监听器接收所述蓝牙模块返回的消息包括:
通过串口连接对象的串口监听器接收所述蓝牙模块返回的二进制数据流,并将所述二进制数据流转换为消息。
19.一种电子价签系统的数据通信的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求10-18中任一所述的方法。
20.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求10-18中任一所述的方法。
CN201810642982.2A 2018-06-21 2018-06-21 电子价签系统及其数据通信方法 Active CN108924197B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810642982.2A CN108924197B (zh) 2018-06-21 2018-06-21 电子价签系统及其数据通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810642982.2A CN108924197B (zh) 2018-06-21 2018-06-21 电子价签系统及其数据通信方法

Publications (2)

Publication Number Publication Date
CN108924197A CN108924197A (zh) 2018-11-30
CN108924197B true CN108924197B (zh) 2020-12-22

Family

ID=64420025

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810642982.2A Active CN108924197B (zh) 2018-06-21 2018-06-21 电子价签系统及其数据通信方法

Country Status (1)

Country Link
CN (1) CN108924197B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109766071B (zh) 2019-01-02 2020-12-01 京东方科技集团股份有限公司 条形电子货架标签的显示调整方法及装置
CN111506285B (zh) * 2019-01-30 2023-09-01 北京沃东天骏信息技术有限公司 电子价签更新方法、装置、电子设备及可读介质
CN109831510A (zh) * 2019-02-19 2019-05-31 广州鹰云电子科技有限公司 物联网数据处理系统及方法
CN110166967B (zh) * 2019-05-30 2022-04-15 深圳云里物里科技股份有限公司 一种电子货架标签的数据通信方法、系统及相关组件
CN113301064A (zh) * 2020-02-24 2021-08-24 汉朔科技股份有限公司 电子价签控制器、终端、通信系统及方法
CN111950307B (zh) * 2020-07-02 2024-01-19 深圳创烽物联网技术有限公司 一种基于电磁信号的电子价签唤醒系统及方法
CN112783049B (zh) * 2020-12-31 2022-08-26 西安邮电大学 一种基于微服务的灯联网远程控制系统
CN113691601A (zh) * 2021-08-16 2021-11-23 深圳网联光仪科技有限公司 一种外接设备与服务终端之间的交互方法及相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101888399A (zh) * 2010-04-12 2010-11-17 福建工程学院 基于移动通信网络的物联网系统
CN104408901A (zh) * 2014-10-31 2015-03-11 广东工业大学 一种智能制造通用蓝牙串口数据采集方法
CN106412118A (zh) * 2016-11-22 2017-02-15 深圳市节点加科技有限责任公司 一种基于物联网的联网装置及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8622285B2 (en) * 2011-12-19 2014-01-07 Symbol Technologies, Inc. Context based scanning and reading systems and methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101888399A (zh) * 2010-04-12 2010-11-17 福建工程学院 基于移动通信网络的物联网系统
CN104408901A (zh) * 2014-10-31 2015-03-11 广东工业大学 一种智能制造通用蓝牙串口数据采集方法
CN106412118A (zh) * 2016-11-22 2017-02-15 深圳市节点加科技有限责任公司 一种基于物联网的联网装置及方法

Also Published As

Publication number Publication date
CN108924197A (zh) 2018-11-30

Similar Documents

Publication Publication Date Title
CN108924197B (zh) 电子价签系统及其数据通信方法
CN101616132B (zh) 一种数据获取方法及其装置和系统
CN107844324A (zh) 客户端页面跳转处理方法和装置
CN105721547B (zh) 协同处理业务的方法和装置
CN109597655A (zh) 配置应用程序的方法及装置
US20210208861A1 (en) Method, User Equipment, and Application Server for Downloading Application
CN107357571A (zh) 设备组件程序的维护方法、系统及组件服务器
CN112817562A (zh) 业务处理的方法和装置
CN114500481A (zh) 业务请求处理方法、系统和装置
CN108076110B (zh) 电子数据交换系统和包含电子数据交换系统的装置
CN115951923B (zh) 订阅事件管理方法、显示系统、设备和存储介质
CN112311818B (zh) 一种小程序数据包的下载方法、装置、终端及存储介质
CN109951528B (zh) 支持多部署模式的业务处理方法、装置及系统
CN111881392A (zh) 展示页面的方法和装置
CN111429127A (zh) 一种应用于缴费的业务管理方法和装置
CN109981546B (zh) 获取应用模块间的远程调用关系的方法和装置
CN102523271A (zh) 一种终端及其通信方法、系统
CN112445987B (zh) 网页更新方法、装置和系统
CN108805379A (zh) 支持多模式履约流程的系统和方法
CN112581069A (zh) 处理任务的系统、方法、装置以及存储介质
CN111078215A (zh) 软件产品应用方法及装置、存储介质及电子设备
CN112559001A (zh) 更新应用的方法和装置
CN110445628A (zh) 一种基于nginx的任务控制方法和装置
CN114253520B (zh) 接口代码生成方法和装置
CN112104733B (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
CB02 Change of applicant information

Address after: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Applicant after: JINGDONG DIGITAL TECHNOLOGY HOLDINGS Co.,Ltd.

Address before: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Applicant before: BEIJING JINGDONG FINANCIAL TECHNOLOGY HOLDING Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Patentee after: Jingdong Technology Holding Co.,Ltd.

Address before: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Patentee before: Jingdong Digital Technology Holding Co.,Ltd.

Address after: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Patentee after: Jingdong Digital Technology Holding Co.,Ltd.

Address before: 101111 Room 221, 2nd Floor, Block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone

Patentee before: JINGDONG DIGITAL TECHNOLOGY HOLDINGS Co.,Ltd.

CP01 Change in the name or title of a patent holder