断线重连恢复通信

时间: 2023-10-04 admin IT培训

断线重连恢复通信

断线重连恢复通信

一、前言

在我们日常使用聊天软件进行通信的时候,可能有时候会由于我们的网络环境问题而导致没有网可用,也就是暂时性的断网。那么此时你的聊天软件发送信息,就不能被接收到了。但是当网络恢复后,我们的聊天就又可以继续了。在这里有一个非常重要的保持通信的手段,就是断线重连。以此来保证在网络以及以其他原因导致断线后,可以在网络恢复后,通信也可以随时恢复。如果,没有这样的功能,那么你就需要退出登录再重新连接了。

那么,接下来使我们使用定时监测连接状态的方式,来判断是否保持良好的链接,如果断开则进行重连恢复通信。

二、流程设计

  • 从上述流程中我们看到,当网络连接断开以后,会像服务端发送重新链接的请求。
  • 那么在这个发起链接的过程,和系统的最开始链接有所区别。断线重连是需要将用户的 ID 信息一同发送给服务端,好让服务端可以去更新用户与通信管道 Channel 的绑定关系。
  • 同时还需要更新群组内的重连信息,把用户的重连加入群组映射中。此时就可以恢复用户与好友和群组的通信功能。

三、工程代码

根据我们的工程图稿,会涉及到代码块如下;

序号系统工程工程名称功能代码描述
1itstack-naive-chat-server-agreement协议包