代码拉取完成,页面将自动刷新
websocket实现的聊天室功能,根据业务可以进行拓展
1、RoomManager是房间管理类,俗称业务类
2、server是服务器类
3、inc头文件、json.h暂未使用,使用是jsoncpp库,log日志类
4、server中on*函数,例如on_open函数,当客户端连接时会自动调用该函数
大房间:所说的广播,client一链接就会创建大房间加入,client断开时退出
暂时未加入数据库服务
已实现功能:登录、加入房间、离开房间、一对一发消息、房间内群发、广播
已接入线程池
数据格式:
登录
{
"msgid": 1,
"id": 11, //用户id
"account": 2019, //账号
"password": "666" //密码
}
加入房间
{
"msgid": 1,
"id": 12,
"roomId": "zhihuishu" //房间号
}
离开房间
{
"msgid": 2,
"id": 12,
"leaveRoomId": "xxxx" //离开的房间号
}
一对一聊天
{
"msgid": 5, //消息类型
"id": 11, //发送者id
"from": 11, //来自谁,一般是id,后面可以改成用户昵称
"to": 12, //接收者id
"message": "这是一条测试消息" //消息
}
房间内聊天
{
"msgid": 6,
"id": 11,
"message": "发送给某个房间的所有成员"
}
server和client如何编译:
1、cd server/build
2、make
3、.exe位于bin路径下
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。