无中心服务器的即时通讯方法与流程
- 国知局
- 2024-09-05 14:53:44
本发明涉及即时通讯,具体涉及一种无中心服务器的即时通讯方法。
背景技术:
1、即时通讯系统已经被广泛应用于电子办公的方方面面,在互联网场景下,有着多种多样的即时通讯方法,可以处理文字、图片、视频等。目前,即时通讯系统需要有服务器的支撑才能完成即时通讯功能,比如需要由服务器完成用户注册、用户信息保存、用户关系保存、用户音视频通话等。即时通讯通常的实现方法为:
2、建立服务器端和客户端
3、服务器端,用于提供中心服务器功能,用于保存用户的个人基本信息、用户和用户之间的关系、用户群组关系等数据以及提供相应的通讯服务等。
4、客户端,用于从服务器端通过接口获取用户的基本信息、获取用户的联系人列表、获取群组消息、完成用户音频和视频的通话等。
5、将上述应用在互联网场景下的即时通讯系统应用到局域网场景下,通过上述方法搭建的中心服务器难以有效、快速的满足企业用户的即时通讯需求,主要存在以下缺陷:
6、1、一旦中心服务器宕机,将无法使用即时通讯的用户注册、登录、沟通等功能,给企业带来影响;
7、2、在局域网中搭建中心服务器,对于规避较大的企业,需要大量的服务器器硬件资源和人力资源,维护成本很高;
8、3、对于一些保密性要求较高的即时通讯,无法达到阅后即焚的效果,存在数据泄露的风险。
技术实现思路
1、本发明以实现无中心服务下的即时通讯,降低即时通讯系统搭建成本,并提高通讯安全性为目的,提供了一种无中心服务器的即时通讯方法。
2、为达此目的,本发明采用以下技术方案:
3、提供一种无中心服务器的即时通讯方法,步骤包括:
4、s1,在客户端本地注册用户后登录所述客户端;
5、s2,在局域网环境下发现用户;
6、s3,发现用户后,通过第一策略添加好友,和/或通过第二策略创建群组,和/或通过第三策略进行单聊或群聊。
7、作为优选,步骤s1中,在客户端本地注册用户的方法包括步骤:
8、s11,打开所述客户端后激活注册密码;
9、s12,加密所激活的注册密码,加密方法具体为:
10、对所述注册密码加随机数后得到随机密码;
11、使用加密算法对所述随机密码进一步加密得到加密后的密文作为对所述注册密码的加密结果。
12、作为优选,步骤s11中,激活注册密码的方法为:用户在所述客户端提供的用户界面的指定区域连续点击指定次数。
13、作为优选,所述注册密码为所述客户端运行的终端的mac地址或关联所述mac地址的用户登录密码。
14、作为优选,使用aes加密算法进一步加密所述随机密码。
15、作为优选,所述注册密码为运行所述客户端的终端的mac地址,对所述mac地址加随机数得到所述随机密码的方法为:
16、提取所述mac地址中的最后两位数的数值;
17、将提取的所述数值转换为十进制;
18、为所述终端分配一个随机数;
19、将转换的十进制数值与所述随机数拼接,拼接结果作为用户登录在所述终端登录所述客户端的登录密码,并将所述拼接结果作为加随机数的所述随机密码。
20、作为优选,步骤s2中,发现用户的方法包括步骤:
21、s21,连接局域网路由器,获取用户所登录的所述客户端所运行的终端的本地ip地址
22、s22,定义用户上线命令和用户上线参数;
23、s23,所述终端加入组播,并向组播发送上线消息,所述上线消息的内容包括所述上线命令和所述用户上线参数;
24、s24,接收其他终端对于所述上线消息的反馈,反馈消息中包含执行反馈的其他终端的终端设备信息和登录该终端的其他用户的用户信息。
25、作为优选,发现其他用户后可添加对方为好友,步骤s3中,添加好友的所述第一策略、具体包括步骤:
26、a1,第一用户打开运行在第一终端的第一客户端中的个人信息页面,获取本人个人信息二维码或表征个人信息的数字编码;
27、a2,第二用户打开运行在第二终端中的第二客户端的图像扫描或数字编码录入功能,扫取所述第一用户打开的所述本人个人信息二维码或录入所述第一用户的所述数字编码后,所述第二终端生成好友验证信息推送给所述第一终端;
28、a3,所述第一客户端接收到所述好友验证信息后生成验证界面显示给所述第一用户,所述第一用户在所述验证界面通过或拒绝好友验证,通过验证后,所述第二用户被添加值所述第一用户在所述第一客户端中的好友列表中。
29、作为优选,步骤s3中,创建群组的所述第二策略具体包括步骤:
30、b1,第一用户点击所登录的第一客户端提供的群组创建按钮后跳转到所述用户的好友列表页面;
31、b2,在跳转的所述好友列表页面中选择拟邀请加入群组的好友并点击确认后,所述第一客户端生成邀请消息并群发给被邀请的第二用户所登录的第二客户端;
32、b3,每个所述第二客户端接收到所述邀请消息后生成邀请界面显示给所述第二用户,所述第二用户在所述邀请界面接收或拒绝邀请后,所述第二客户端生成第一反馈消息反馈给所述第一客户端;
33、b4,所述第一客户端将反馈结果为“通过”的每个所述第二用户加入到所创建的群组中;
34、发现用户后,进行单聊或群聊的所述第三策略包括如下步骤:
35、c1,在所述第一客户端提供的群组选择界面中选择拟发送消息的群组;
36、c2,在所述第一客户端提供的消息输入界面中输入拟发送的消息内容,包括文本、图片、文件、音频、视频等内容中的任意一种或多种;
37、c3,所述第一客户端从本地保存的群聊用户库中获取关联步骤c1选中的群组的群聊用户列表;
38、c4,所述第一客户端将步骤c2输入的拟发送的消息标记为群聊消息,并赋予所述群聊消息相对应的群聊id,所述群聊id为步骤c1选择的所述群组的唯一组id,并将赋予所述群聊id后的所述群聊消息保存在本地;
39、c5,所述第一用户在所述消息输入界面中点击“消息发送”按钮后,所述第一客户端从本地获取相对应的所述群聊消息,并根据所述群聊消息中携带的所述群聊id获取所述群组中的所有成员登录的所述第二终端的ip地址,并根据ip地址将所述群聊消息发送给通过相应的所述第二客户端推送给相应的所述第二用户;
40、c6,接收到所述群聊消息的每个所述第二客户端获取对应的所述第二用户的消息读取状态,并将接收状态和读取状态反馈给所述第一客户端。
41、本发明通过在客户端本地注册用户和在局域网环境下发现用户的方式,实现了无中心服务器下的局域网场景下的终端间的即时通讯。提供了一套创新的在客户端本地注册用户的方法,提高了局域网环境下即时沟通的安全性;提供了一套在局域网环境下发现用户的方法,互相信任的客户端才能发现彼此,才能互相交流。另外,即时通讯产生的数据都保存在客户端本地,无需对数据进行云上维护,运行客户端的终端关机,通讯数据即被清楚,通讯安全性更高。
本文地址:https://www.jishuxx.com/zhuanli/20240905/288745.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表