消息推送方法、装置、终端设备及存储介质
技术领域
本发明涉及信息推送技术领域,尤其涉及一种消息推送方法、装置、终端设备及存储介质。
背景技术
目前,用户在游览景区、博物馆等场景时,主要关注的信息大致有:展品、景点介绍信息;区域内公共设施信息;参观路线信息;纪念品信息等。用户获取上述信息的主要方式有区域内指示牌、地图、询问工作人员、扫固定二维码等。但是,上述获取信息的方式较为缺乏灵活性和指向性,用户往往无法第一时间获得自己感兴趣的信息类别。
发明内容
本发明的主要目的在于提供一种消息推送方法、装置、终端设备及存储介质,旨在提升场景消息推送的灵活性和指向性,方便用户对特定场景消息的获取。
为实现上述目的,本发明提供一种消息推送方法,包括:
发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;
所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
可选地,所述信息识别码为随机识别码,所述发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息的步骤包括:
所述发送端在获取到待广播信息后,为所述待广播信息配置频道识别码,并生成随机识别码,用以标识所述待广播信息;
将所述待广播信息转换为预设编码格式的码序列;
对转换为码序列的待广播信息进行分割,获得所述待广播信息被分割后的消息字节序列;
为每个消息字节序列配置顺序位;
将所述频道识别码、随机识别码、顺序位及对应的消息字节序列填充至BLE广播数据结构中,得到一组BLE广播消息,其中,每个消息字节序列和顺序位对应一条BLE广播消息,所述顺序位包括:所述待广播信息对应的BLE广播组的总BLE广播消息条数、当前BLE广播消息在所属BLE广播组中的序号。
可选地,所述BLE广播消息为BLE Beacon广播消息,所述BLE广播数据结构中还包括:基本属性信息填充位,所述基本属性信息包括:Beacon类型、机具id、固定头中的一种或多种。
可选地,一条所述BLE Beacon广播消息具有31个字节,其中,所述基本属性信息占据其中的前6个字节,剩余的25个字节依次配置所述频道识别码、随机识别码、顺序位及对应的消息字节序列。
此外,本发明实施例还提出一种消息推送方法,包括:
接收端在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码;
获取所述BLE广播消息的频道识别码;
将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;
若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
可选地,所述接收端在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息的步骤之前还包括:
所述接收端接收用户在所述接收端上触发的订阅指令;
根据所述订阅指令订阅用户感兴趣的频道信息。
可选地,所述接收端上安装有场景应用,所述接收端接收用户在所述接收端上触发的订阅指令的步骤包括:
接收用户在所述接收端上的场景应用内触发的订阅指令。
可选地,所述接收端上设置有频道信息订阅选项,所述接收用户在所述接收端上触发的订阅指令的步骤包括:
接收用户在所述接收端上选择所述频道信息订阅选项触发的订阅指令。
可选地,所述信息识别码为随机识别码,所述接收端基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容的步骤包括:
所述接收端根据所述随机识别码获得相关联的一组BLE广播消息;
对所述一组BLE广播消息中的每一条BLE广播消息进行解析,获得每一条BLE广播消息中的顺序位及对应的消息字节序列;
根据每一条BLE广播消息中的顺序位,对各条BLE广播消息中的消息字节序列进行排序;
将排序后的各条BLE广播消息中的消息字节序列按照顺序拼接,得到拼接后的消息字节序列;
将拼接后的消息字节序列按照预设解码格式进行解码,还原得到所述发送端对外广播的消息内容。
此外,本发明实施例还提出一种消息推送装置,所述消息推送装置包括:
编码模块,用于在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;
广播模块,用于将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户;
或者,所述消息推送装置包括:
接收模块,用于在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码;
获取模块,用于获取所述BLE广播消息的频道识别码;
匹配模块,用于将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;
解码模块,用于若所述匹配模块匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
此外,本发明实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的消息推送程序,所述消息推送程序被所述处理器执行时实现如上所述的消息推送方法的步骤。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有消息推送程序,所述消息推送程序被处理器执行时实现如上所述的消息推送方法的步骤。
本发明实施例提出的消息推送方法、装置、终端设备及存储介质,发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。本发明实施例方案使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。此外,本发明实施例方案,将BLE广播应用于近场消息传输,尤其是将BLE广播应用于数据量较小的文字传输场景,使得消息传输不再依赖于网络连接,提升了消息传输场景的实时性与灵活性,降低了对环境的依赖,实现了近场消息的及时有效传输。
附图说明
图1为本发明消息推送装置所属终端的功能模块示意图;
图2为本发明消息推送方法一示例性实施例的流程示意图;
图3为本发明实施例中BLE Beacon广播消息格式示意图;
图4为本发明消息推送方法另一示例性实施例的流程示意图;
图5为本发明消息推送方法再一示例性实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。本发明实施例方案使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。
本发明实施例涉及的专业术语包括:
BLE,(Bluetooth Low Energy,低功耗蓝牙),是蓝牙技术联盟设计和销售的一种个人局域网技术。相较传统的经典蓝牙,低功耗蓝牙的优点在于:最大化的待机时间、快速连接和低峰值的发送/接收功耗,由此使得低功耗蓝牙在保持同等通信范围的同时,可以显著降低功耗和成本。
具体而言,移动终端的蓝牙模块类型可以包括:经典蓝牙(BT)和低功耗蓝牙(BLE),其中:
经典蓝牙(BT):泛指支持蓝牙协议在4.0以下的模块,一般用于数据量比较大的传输,如:语音、音乐等较高数据量传输。
低功耗蓝牙(BLE):是指支持蓝牙协议4.0或更高的模块,也称为BLE模块,最大的特点是成本和功耗的降低,应用于实时性要求比较高的产品中。
本发明实施例方案主要是利用低功耗蓝牙广播实现近场文字消息的推送,以提升消息传输的灵活性与及时性。
BLE Beacon(Bluetooth low energy beacon,低功耗蓝牙信标),是建立在低功耗蓝牙协议基础上的一种广播协议。
本申请实施例考虑到,相关技术中,用户获取展品、景点介绍,区域内公共设施,参观路线,纪念品等场景信息的方式缺乏灵活性和指向性,使得用户往往无法第一时间获得自己感兴趣的信息类别。
由此,本发明实施例提出一种解决方案,可以提升场景消息推送的灵活性和指向性,方便用户对特定场景消息的获取。
具体地,参照图1,图1为本发明消息推送装置所属终端的功能模块示意图。该终端可以为手机、平板电脑等具有蓝牙通讯功能的移动终端,可以实现消息的广播,或者广播消息的接收,上述消息推送装置可以通过硬件或软件的形式承载于上述终端上。因此,上述终端可以为蓝牙消息广播端,也可以为蓝牙消息接收端。
在本实施例中,上述消息推送装置所属终端至少包括输出模块110、第一处理器120、第一存储器130以及第一通信模块140。
第一存储器130中存储有第一操作系统以及消息推送程序,其中,对消息广播的发送端而言,发送端获取的待广播信息,以及将所述待广播信息编码成的预设格式的BLE广播消息均可以存储于该第一存储器130中。对于接收广播消息的接收端而言,接收端接收的BLE广播消息可以存储于该第一存储器130中。
输出模块110可为显示屏、扬声器等,显示屏用于显示终端相关信息。第一通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过第一通信模块140与外部终端设备或服务器进行通信。
作为一种实施方式,其中,第一存储器130中的消息推送程序被处理器执行时实现以下步骤:
发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;
所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
进一步地,第一存储器130中的消息推送程序被处理器执行时还实现以下步骤:
所述发送端在获取到待广播信息后,为所述待广播信息配置频道识别码,并生成随机识别码,用以标识所述待广播信息;
将所述待广播信息转换为预设编码格式的码序列;
对转换为码序列的待广播信息进行分割,获得所述待广播信息被分割后的消息字节序列;
为每个消息字节序列配置顺序位;
将所述频道识别码、随机识别码、顺序位及对应的消息字节序列填充至BLE广播数据结构中,得到一组BLE广播消息,其中,每个消息字节序列和顺序位对应一条BLE广播消息,所述顺序位包括:所述待广播信息对应的BLE广播组的总BLE广播消息条数、当前BLE广播消息在所属BLE广播组中的序号。
作为一种实施方式,其中,第一存储器130中的消息推送程序被处理器执行时实现以下步骤:
接收端在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码;
获取所述BLE广播消息的频道识别码;
将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;
若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
进一步地,第一存储器130中的消息推送程序被处理器执行时还实现以下步骤:
所述接收端接收用户在所述接收端上触发的订阅指令;
根据所述订阅指令订阅用户感兴趣的频道信息。
进一步地,第一存储器130中的消息推送程序被处理器执行时还实现以下步骤:
接收用户在所述接收端上的场景应用内触发的订阅指令。
进一步地,第一存储器130中的消息推送程序被处理器执行时还实现以下步骤:
接收用户在所述接收端上选择所述频道信息订阅选项触发的订阅指令。
进一步地,第一存储器130中的消息推送程序被处理器执行时还实现以下步骤:
所述接收端根据所述随机识别码获得相关联的一组BLE广播消息;
对所述一组BLE广播消息中的每一条BLE广播消息进行解析,获得每一条BLE广播消息中的顺序位及对应的消息字节序列;
根据每一条BLE广播消息中的顺序位,对各条BLE广播消息中的消息字节序列进行排序;
将排序后的各条BLE广播消息中的消息字节序列按照顺序拼接,得到拼接后的消息字节序列;
将拼接后的消息字节序列按照预设解码格式进行解码,还原得到所述发送端对外广播的消息内容。
本实施例通过上述方案,使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。
基于上述终端架构但不限于上述终端架构,提出本发明方法实施例。
参照图2,图2为本发明消息推送方法一示例性实施例的流程示意图。该实施例应用于发送BLE广播消息的发送端。在该实施例中,该消息推送方法包括:
步骤S101,发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;
本实施例方案主要是利用BLE广播实现景点或展品等特定场景消息的广播推送。发送BLE广播消息的发送端可以是安装在各个场景重要区域的蓝牙Beacon发射装置,通过蓝牙Beacon发射装置因地制宜地发送不同频道的蓝牙Beacon消息,可以为每条BLE广播消息设置频道识别码。例如在景点或展品旁边发送相应的介绍信息,频道设定为景点/展品介绍频道,并配置对应的频道识别码;在主干道上发送卫生间、餐厅等的位置信息,频道设定为公共信息频道,并配置对应的频道识别码;在入口处、电梯处等发送参观路线信息,频道设定为参观助手频道,并配置对应的频道识别码等。
对于待广播的消息内容可以预先提供给发送端,其提供方式可以是场景负责人员拷贝给发送端,或者通过外部设备发送给该发送端,本实施例对此不作限定。
发送端在获取到待广播信息后,根据BLE广播消息的数据结构特点,将所述待广播信息编码成预设格式的BLE广播消息。
其中,所述BLE广播消息可以包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码。
其中,所述BLE广播消息的内容可以包括:对应景点或展品介绍的景点/展品介绍频道消息,对应公共区域位置的公共信息频道消息,对应参观路线推送的参观助手频道消息等。
其中,本实施例设置用以标识所述待广播信息的信息识别码是考虑到:待广播信息的内容比较多,一条BLE广播消息无法一次承载需要广播的文字信息,而是需要多条BLE广播消息才能完成一次完整场景信息的广播,因此,本实施例为每条待广播信息设置信息识别码,用以标识该条待广播信息,信息识别码即为该条待广播信息的身份识别码。
此外,将待广播信息分割为多个不同的部分,分别填充到多条BLE广播消息中对外发送,其中,多条BLE广播消息均携带有此信息识别码,以便接收端接收到BLE广播消息后,通过该信息识别码,还原完整的整条原始场景广播信息。
具体地,所述信息识别码可以为随机识别码,以随机识别码为例,所述发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息的具体实现方案如下:
首先,所述发送端在获取到待广播信息后,为所述待广播信息配置频道识别码,并生成随机识别码,用以标识所述待广播信息;
然后,将所述待广播信息转换为预设编码格式(比如UTF-8)的码序列;
对转换为码序列的待广播信息进行分割,获得所述待广播信息被分割后的消息字节序列;
然后,为每个消息字节序列配置顺序位;并将所述频道识别码、随机识别码、顺序位及对应的消息字节序列填充至BLE广播数据结构中,得到一组BLE广播消息。
其中,每个消息字节序列和顺序位对应一条BLE广播消息,所述顺序位包括:所述待广播信息对应的BLE广播组的总BLE广播消息条数、当前BLE广播消息在所属BLE广播组中的序号。
以BLE广播消息为BLE Beacon广播消息为例,所述BLE广播数据结构中还包括:基本属性信息填充位,所述基本属性信息包括:Beacon类型、机具id、固定头中的一种或多种。
具体地,如图3所示,一条BLE Beacon广播消息具有31个字节,其中,所述基本属性信息占据其中的前6个字节,剩余的25个字节依次配置所述频道识别码、随机识别码、顺序位及对应的消息字节序列。
也就是说,在一条蓝牙Beacon的31个字节中,除去前缀的6个字节(包含beacon类型、机具id、固定头等),将剩余的25个字节用于承载需要传输的文字信息(包含频道识别码、消息的身份识别码(即随机识别码)、该消息被分割成的Beacon组的总Beacon条数、当前Beacon在所属Beacon组的序号、以及文字消息被分割后的字节序列)。
如图3所示,其中,频道识别码为两个字节,用于标识不同的消息频道。随机识别码为发送端动态随机生成,用于标识不同的场景待广播消息,该广播消息可以是文字消息。
随机识别码占据5个字节;顺序位为1个字节,其中前4个bit为该待广播消息被分割成的Beacon组的总Beacon条数,后4个bit为当前Beacon在所属Beacon组中的序号。
预留17个字节填充消息字节序列。
由此,通过上述蓝牙Beacon数据结构填充相应的数据,构成一条完整的蓝牙Beacon广播消息。
步骤S102,所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
发送端在完成BLE广播消息的编码后,将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,根据用户的订阅喜好,确定是否推送该广播消息给用户,如果确定推送,则可以从所述BLE广播消息中解码获得发送端广播的场景信息推送给用户。
其中,在用户侧,用户可以根据自身喜好预先订阅相应的频道信息。
作为一种实施方式,终端系统设置有相应的特定场景信息订阅选项,用户可以通过终端系统上的特定场景信息订阅选项来预先订阅相应的频道信息。
作为另一种实施方式,可以基于不同的场景开发相应的应用软件,并安装在终端上,由此,用户可以操作终端上安装的场景应用,来预先订阅自己感兴趣的频道信息。
举例如下:
用户可以在手机设备上选择自己感兴趣的若干个频道(订阅),然后用户手机会开启蓝牙Beacon扫描。当用户进入某个蓝牙Beacon发射装置的信号发射范围时,用户手机会根据用户之前选择的感兴趣的频道信息,对收到的蓝牙Beacon的频道识别码进行判断。如果不是用户选择的感兴趣频道,则忽略;若是用户感兴趣的频道,则会向用户推送相关的信息。
具体地,在接收端侧,接收端在接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
其中,接收端基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容的具体实现方案可以为:
以信息识别码为随机识别码举例,首先,所述接收端根据所述随机识别码获得相关联的一组BLE广播消息;
然后,对所述一组BLE广播消息中的每一条BLE广播消息进行解析,获得每一条BLE广播消息中的顺序位及对应的消息字节序列;
然后,根据每一条BLE广播消息中的顺序位,对各条BLE广播消息中的消息字节序列进行排序;
然后,将排序后的各条BLE广播消息中的消息字节序列按照顺序拼接,得到拼接后的消息字节序列;
最后,将拼接后的消息字节序列按照预设解码格式(比如UTF-8)进行解码,还原得到所述发送端对外广播的消息内容。
本实施例通过上述方案,发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。本发明实施例方案使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。此外,本发明实施例方案,将BLE广播应用于近场消息传输,尤其是将BLE广播应用于数据量较小的文字传输场景,使得消息传输不再依赖于网络连接,提升了消息传输场景的实时性与灵活性,降低了对环境的依赖,实现了近场消息的及时有效传输。
参照图4,图4为本发明消息推送方法另一示例性实施例的流程示意图。该实施例应用于接收BLE广播消息的接收端,在该实施例中,该消息推送方法包括:
步骤S201,接收端在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码;
具体地,在接收端侧,用户开启终端蓝牙Beacon扫描后,当用户进入某个蓝牙Beacon发射装置的信号发射范围时,会接收到当前场景下,蓝牙Beacon发射装置广播的BLE广播消息。
其中,所述BLE广播消息包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码,进一步地,根据BLE广播消息的数据结构,所述BLE广播消息还可以包括:Beacon类型、机具id、固定头、顺序位等。
步骤S202,获取所述BLE广播消息的频道识别码;
步骤S203,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;
步骤S204,若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
其中,信息识别码具体可以为发送端随机生成的随机识别码。
具体地,接收端接收到所述BLE广播消息后,根据用户的订阅喜好,确定是否推送该广播消息给用户,如果确定推送,则可以从所述BLE广播消息中解码获得发送端广播的场景信息推送给用户。
在本实施例中,用户可以根据自身喜好预先订阅相应的频道信息。
作为一种实施方式,终端系统设置有相应的特定场景信息订阅选项,用户可以通过终端系统上的特定场景信息订阅选项来预先订阅相应的频道信息。
作为另一种实施方式,可以基于不同的场景开发相应的应用软件,并安装在终端上,由此,用户可以操作终端上安装的场景应用,来预先订阅自己感兴趣的频道信息。
举例如下:
用户可以在手机设备上选择自己感兴趣的若干个频道(订阅),然后用户手机会开启蓝牙Beacon扫描。当用户进入某个蓝牙Beacon发射装置的信号发射范围时,用户手机会根据用户之前选择的感兴趣的频道信息,对收到的蓝牙Beacon的频道识别码进行判断。如果不是用户选择的感兴趣频道,则忽略;若是用户感兴趣的频道,则会向用户推送相关的信息。
接收端在接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
其中,对于蓝牙Beacon广播数据结构,如图3所示,一条BLE Beacon广播消息具有31个字节,其中,所述基本属性信息(包含beacon类型、机具id、固定头等)占据其中的前6个字节,剩余的25个字节依次配置BLE Beacon广播消息的频道识别码、随机识别码(即信息识别码)、顺序位及对应的消息字节序列。
也就是说,在一条蓝牙Beacon的31个字节中,除去前缀的6个字节(包含beacon类型、机具id、固定头等),将剩余的25个字节用于承载需要传输的文字信息(包含频道识别码、消息的身份识别码(即随机识别码)、该消息被分割成的Beacon组的总Beacon条数、当前Beacon在所属Beacon组的序号、以及文字消息被分割后的字节序列)。
如图3所示,其中,频道识别码为两个字节,用于标识不同的消息频道。随机识别码为发送端动态随机生成,用于标识不同的场景待广播消息,该广播消息可以是文字消息。
随机识别码占据5个字节;顺序位为1个字节,其中前4个bit为该待广播消息被分割成的Beacon组的总Beacon条数,后4个bit为当前Beacon在所属Beacon组中的序号。
预留17个字节填充消息字节序列。
由此,通过上述蓝牙Beacon广播数据结构填充相应的数据,构成一条完整的蓝牙Beacon广播消息。
接收端在基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容时,具体实现方案可以为:
以信息识别码为随机识别码举例,首先,所述接收端根据所述随机识别码获得相关联的一组BLE广播消息;
然后,对所述一组BLE广播消息中的每一条BLE广播消息进行解析,获得每一条BLE广播消息中的顺序位及对应的消息字节序列;
然后,根据每一条BLE广播消息中的顺序位,对各条BLE广播消息中的消息字节序列进行排序;
然后,将排序后的各条BLE广播消息中的消息字节序列按照顺序拼接,得到拼接后的消息字节序列;
最后,将拼接后的消息字节序列按照预设解码格式(比如UTF-8)进行解码,还原得到所述发送端对外广播的消息内容。
本实施例通过上述方案,接收端在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码;获取所述BLE广播消息的频道识别码;将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。本发明实施例方案使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。
参照图5,图5为本发明消息推送方法再一示例性实施例的流程示意图。基于上述图4所示的实施例,在该实施例中,在上述步骤S101,接收端在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息之前还包括:
步骤S2001,所述接收端接收用户在所述接收端上触发的订阅指令;
步骤S2002,根据所述订阅指令订阅用户感兴趣的频道信息。
相比上述图4所示的实施例,本实施例还包括:用户订阅频道信息的方案。
具体地,在本实施例中,用户可以根据自身喜好预先订阅相应的频道信息。
作为一种实施方式,接收端系统设置有相应的特定场景信息订阅选项,用户可以通过该终端系统上的特定场景信息订阅选项来预先订阅相应的频道信息。由此,接收端接收用户在所述接收端上选择频道信息订阅选项触发的订阅指令。
作为另一种实施方式,可以基于不同的场景开发相应的应用软件,并安装在终端上,由此,用户可以操作终端上安装的场景应用,来预先订阅自己感兴趣的频道信息。接收端接收用户在接收端上的场景应用内触发的订阅指令。
举例如下:
用户可以在手机设备上选择自己感兴趣的若干个频道(订阅),然后用户手机会开启蓝牙Beacon扫描。当用户进入某个蓝牙Beacon发射装置的信号发射范围时,用户手机会根据用户之前选择的感兴趣的频道信息,对收到的蓝牙Beacon的频道识别码进行判断。如果不是用户选择的感兴趣频道,则忽略;若是用户感兴趣的频道,则会向用户推送相关的信息。
接收端在接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
相比现有技术,本发明实施例方案可以根据用户喜好订阅用户感兴趣的场景频道信息,使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。
此外,本发明实施例还提出一种消息推送装置,所述消息推送装置包括:
编码模块,用于在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;
广播模块,用于将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户;
或者,所述消息推送装置包括:
接收模块,用于在开启蓝牙扫描后,接收当前场景下预设BLE信号发射范围内的发送端广播的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述发送端的待广播信息的内容以及用以标识所述待广播信息的信息识别码;
获取模块,用于获取所述BLE广播消息的频道识别码;
匹配模块,用于将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;
解码模块,用于若所述匹配模块匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。
本实施例消息推送装置可以通过硬件或软件的形式承载于终端上。该终端可以为蓝牙消息广播端和/或蓝牙消息接收端。本实施例消息推送装置采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本发明实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的消息推送程序,所述消息推送程序被所述处理器执行时实现如上述实施例所述的消息推送方法的步骤。
由于本消息推送程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有消息推送程序,所述消息推送程序被处理器执行时实现如上述实施例所述的消息推送方法的步骤。
由于本消息推送程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本发明实施例提出的消息推送方法、装置、终端设备及存储介质,发送端在获取到待广播信息后,将所述待广播信息编码成预设格式的BLE广播消息,所述BLE广播消息至少包括:所述BLE广播消息的频道识别码、所述待广播信息的内容以及用以标识所述待广播信息的信息识别码;所述发送端将所述BLE广播消息对外广播,以便接收端接收到所述BLE广播消息后,获取所述BLE广播消息的频道识别码,将所述BLE广播消息的频道识别码与用户预设的频道信息进行匹配;若匹配成功,则获取所述BLE广播消息的信息识别码,基于所述信息识别码解码所述BLE广播消息得到发送端对外广播的消息内容,并推送至接收端用户。本发明实施例方案使得用户在景区、博物馆等场景下,能够更方便、更灵活地获取各类自己感兴趣的信息、屏蔽自己不感兴趣的信息,也使得场景方可以更精准地投放相关信息,提升了用户体验。相比现有技术,本发明实施例方案利用BLE蓝牙实现了一种基于用户兴趣的频道订阅与消息推送的方案,提升了信息传输的灵活性与指向性。此外,本发明实施例方案,将BLE广播应用于近场消息传输,尤其是将BLE广播应用于数据量较小的文字传输场景,使得消息传输不再依赖于网络连接,提升了消息传输场景的实时性与灵活性,降低了对环境的依赖,实现了近场消息的及时有效传输。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本发明每个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。