一种基于地理位置与空间范围的多用户通讯方法

文档序号:8489938阅读:396来源:国知局
一种基于地理位置与空间范围的多用户通讯方法
【技术领域】
[0001]本发明涉及数据通讯技术领域,尤其涉及一种基于地理位置与空间范围的多用户通讯方法。
【背景技术】
[0002]目前,对于特定空间范围内、受众比较广泛且比较正式的通知、公告,一般采用比较传统的方式进行信息传播,比如,社区内的通知、公告等,一般是通过张贴或橱窗的形式传播,又比如,园区、市区内的通知、公告等,一般是通过报纸、广播等形式告知。
[0003]而现在社会,随着互联网技术和各种移动终端技术的不断发展,人们已经习惯于使用移动终端,通过互联网传播信息,而对于上述传统的信息传播方式,显得越来越淡漠,且不乐于使用。
[0004]为了适应现在社会中人们对于信息传播的习惯,急需一种信息传播方法,基于地理位置信息和空间范围,利用互联网移动终端技术来完成对受众比较广泛且比较正式的通知、公告等信息的传播。
[0005]另外,目前的一些通讯软件一般是针对于好友或熟悉的人之间进行交流使用,通过添加好友一对一通讯,或者出于某个目的,比如相同的爱好,建立好友群进行通讯,而对于非好友或不熟悉的人之间没有合适的软件使用。
[0006]人们所处的地理位置反应了人们居住与工作环境、社会活动的区域,从一个层面也体现了其社会交往、经济活动的特征,所以,处于同一地理区域范围内的人们之间,即便没有相同的目的,也具有交互的需求,而目前的通讯软件中,对于没有相同的目的,比如兴趣爱好的人们之间无法建立通讯联系,进行交互。
[0007]所以,针对上述这些情况,需要一种基于地理位置与空间范围的可进行多用户之间通讯的方法。

【发明内容】

[0008]本发明的目的在于提供一种基于地理位置与空间范围的多用户通讯方法,从而解决现有技术中存在的前述问题。
[0009]为了实现上述目的,本发明采用的技术方案如下:
[0010]一种基于地理位置与空间范围的多用户通讯方法,包括如下步骤:
[0011]SI,将一个地区所覆盖的范围划分成若干不交叠的区域块;
[0012]S2,获取每个区域块的所有邻居块以及连接权重,所述连接权重为区域块与邻居块之间的距离;
[0013]S3,获取每个区域块内的所有用户;
[0014]S4,确定发送信息的用户所在的区域块和信息传播距离权限;
[0015]S5,比较发送信息的用户所在的区域块的连接权重和信息传播距离权限之间的大小,确定接收信息的邻居块;
[0016]S6,将信息发送至所述接收信息的邻居块和发送信息的用户所在的区域块内的所有用户。
[0017]优选地,SI包括如下步骤:
[0018]S101,设定划分区域块的起点P,并将起点P的二维坐标置为:x = 0,y = O ;
[0019]S102,以起点P为地区的左上角起点,划分出长度为Height、宽度为Width的区域块;
[0020]S103,比较起点P的X坐标与地区宽度范围值的大小,如果起点P的X坐标大于地区宽度范围值,则执行S104,否则转到S102 ;其中,X坐标为:x = x+ffidth ;
[0021]S104,将起点P的X坐标置为0,比较起点P的y坐标与地区高度范围值的大小,如果起点P的y坐标大于地区高度范围值,则结束,否则转到S102 ;其中,y的坐标为:y =y+Height。
[0022]优选地,区域块的Height和Width根据地区人口稠密度进行取值,人口越稠密取值越低,人口越稀疏取值高,Height的取值为:100-500m,Width的取值为:100_500m。
[0023]进一步地,S102中还包括步骤,指定所述区域块的编号属性和位置范围属性,其中,编号属性为生成的UUID编号,位置范围属性包括起点、长度和宽度。
[0024]优选地,S2包括如下步骤:
[0025]S201,建立区域块的邻居列表NeighborList,并初始化邻居列表,邻居列表包含O个表项;
[0026]S202,建立区域块的边列表BorderList,并初始化边列表,边列表的每一个表项存储区域块的一条边,将区域块的所有边均放入边列表中;设置添加数量计数器AddedCount,且置为 O ;
[0027]S203,获取与边列表BorderList中的边相交,且不在邻居列表NeighborList中的所有区域块,并放入到列表TestList之中;
[0028]S204,从列表TestList中取出一个区域块放入变量TempArea中;
[0029]S205,计算变量TempArea的中心点到区域块中心点的距离,如果该距离小于设定的最大邻居阈值MaxDistance,则执行S026,否则执行S207 ;
[0030]S206,构造一个邻居列表的表项,邻居编号为TempArea的编号,连接权重为TempArea中心点到Area中心点的距离,将该表项加入到邻居列表NeighborList中;将TempArea 的所有边加入到 BorderList 之中,AddedCount = AddedCount+Ι ;
[0031]S207,判断TestList中是否还存在区域块,如果有,则转到S204,否则转到S208 ;
[0032]S208,判断AddedCount是否大于0,如果是,则转到S203,否则结束。
[0033]优选地,S3包括如下步骤:
[0034]S301,获取用户所在的地理位置;
[0035]S302,根据用户所在的地理位置,确定覆盖用户所在的地理位置的区域块;
[0036]S303,将用户ID添加到区域块对应的用户列表中,根据用户列表,获取区域块内的所有用户。
[0037]进一步地,S303之后还包括步骤S304:对每个用户列表进行定时轮询和更新。
[0038]优选地,S304包括如下步骤:
[0039]S3041,等待轮询时间;
[0040]S3042,从原用户列表中取出一个用户放入变量user之中;
[0041]S3043,判断变量user的地理位置是否在原用户列表对应的区域块所覆盖的范围内,如果否,则转到S3044,否则转到S3046 ;
[0042]S3044,根据变量user的地理位置,确定覆盖变量user的地理位置的区域块,并将变量user的ID添加到该区域块对应的用户列表中
[0043]S3045,在原用户列表中删除放入变量user中的用户;
[0044]S3046,遍历原用户列表中的所有用户,重复执行S3042-S3045。
[0045]具体地,S4中,所述信息传播距离权限由用户设定或由服务商设定。
[0046]优选地,S5具体为:如果连接权重小于信息传播距离权限,则该连接权重对应的邻居块为接收信息的邻居块。
[0047]本发明的有益效果是:采用本发明实施例提供的基于地理位置与空间范围的多用户通讯方法,使用户在发出信息之后,该信息可以在其周边一定空间、时间范围内进行传播,处于该范围内的用户可以接收到该信息;还可以设定发出信息传播的距离权限,利用该权限可以控制消息的传播距离。因此,可以使得邻居之间、同一街道社区之间、同一办公大楼或园区之间的用户进行大范围的交互通讯、同时在区域内可以发布知、公告、广告;带来较好的用户体验。
【附图说明】
[0048]图1是本发明实施例一提供的基于地理位置与空间范围的多用户通讯方法的流程不意图;
[0049]图2是本发明实施例二提供的划分区域块的方法;
[0050]图3是本发明实施例二提供的区域块的结构示意图;
[0051]图4是本发明实施例三提供的获取每个区域块的所有邻居块以及连接权重的方法的流程示意图;
[0052]图5是本发明实施例四提供的获取每个区域块内的所有用户方法的流程示意图;
[0053]图6是本发明实施例四提供的用户列表轮询更新的方法流程示意图;
[0054]图7是本发明实施例五提供的向邻居块发送消息的方法流程示意图。
【具体实施方式】
[0055]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的【具体实施方式】仅仅用以解释本发明,并不用于限定本发明。
[0056]随着计算机技术的发展,通过计算机和移动互联网终端进行通讯变得更加容易。人们也逐渐适应了使用这种通讯方式进行信息的传播。
[0057]通讯软件的用户所在地理位置反映了其居住与工作环境、社会活动的区域,从一个层面也体现了其社会交往、经济活用的特征,因此在通讯过程中利用地理位置与空间范围可以进一步为用户提供更加贴近其需求的使用体验,而且可以带来基于一定区域内的通知、公告、广告的便利,具有重要的社会与经济价值。
[0058]目前,已经出现了一些具备一定地理位置处理功能通讯软件,在软件中,可以通过“查找周边的用户”或者“按距离远近进行排序”向用户提供备选好友的列表,用户可以基于该列表,选择一对一交流或者建立群组进行交流。
[0059]但是,这些软件需要与用户进行交互,通过用户选择交流对象或者管理者允许用户进入,用户才能参与在一定空间范围内的多用户之间的交流,如果用户未加入该群组,或者管理者未同意该用户加入,则用户无法接收到所处空间范围内的信息,从而导致公告或通知无法及时的送达到该区域的所有用户,比如,一个社区内的所有用户,只能都加入社区管委会建立的社区交流群组,才能使社区内的所有用户均能接收到社区对所有用户发送的通知或公告,而实际生活中,有很多社区业主不知
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1