# go-im **Repository Path**: zhongzz/go-im ## Basic Information - **Project Name**: go-im - **Description**: go实现简易版的im,主要是为了学习。 - **Primary Language**: Go - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2021-03-22 - **Last Updated**: 2021-03-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # go-im #### 介绍 本项目是为了练习go语言,写的demo,im的简易功能已实现,如若用于生成环境,请务必充分测试! 作者QQ:346025425,欢迎建议和交流 #### 软件架构 使用go1.15开发 #### 安装教程 - 编译并启动服务端 ```shell go build main.go server.go user.go ./main ``` - 暂未开发客户端,测试使用nc命令测试 ```shell nc 127.0.0.1 8888 ``` #### 使用说明 当使用nc 127.0.0.1 8888 连接上后 - 使用`who`, 查看当前自己登陆的用户名 - 使用`list`, 查看当前服务器在线的用户 - 使用`rename`, 将自己的昵称更名; 具体格式为 rename|张三 - 使用`to`,私聊功能,格式为 to|张三|你好啊 ![Alt](images/who-list-rename-to.jpg) - 超时强踢下线功能,当前代码里设置的是300s,如果当前客户端300s内无任何动作,将会被踢下线 ![Alt](images/force_offline.png) #### 下一步计划 - [ ] 群聊功能 - 搜索群聊房间 - 创建群聊 - 加入群聊 - 群聊发消息 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request