本项目是基于Swoft的练手项目,主要使用框架中的Http,WebSocket构建,用于新手熟悉Swoft框架。
- 用户登陆退出功能(todo 注册功能)
- 登陆认证中间件
- 同一用户,打开多个窗口,可以实现聊天记录同步接受,即支持多端登陆。
- 好友列表(todo 新增好友功能)
- WebSocket端已支持群聊功能(todo Http端需要做逻辑和界面处理)
$ composer create-project ohhink/swoft-im
APP_DEBUG=0
SWOFT_DEBUG=0
REDIS_ONLINE_USER=online-user
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
DATABASE_HOST=192.168.10.10
DATABASE_USERNAME=homestead
DATABASE_PASSWORD=secret
DATABASE_TABLE=swoft
DATABASE_CHARSET=utf8mb4
$ php bin/swoft migrate:up
# 添加用户
INSERT INTO `user`(`id`, `name`, `username`, `password`, `avatar`, `online`, `created_at`, `updated_at`) VALUES (1, '程心', 'user1', '2bbff72ba88f1c6a17f43819b09806ac', '/image/avatar2.jpg', 0, NULL, NULL);
INSERT INTO `user`(`id`, `name`, `username`, `password`, `avatar`, `online`, `created_at`, `updated_at`) VALUES (2, '三体', 'user2', '2bbff72ba88f1c6a17f43819b09806ac', '/image/avatar1.jpg', 0, NULL, NULL);
# 添加好友关系
INSERT INTO `friend`(`id`, `user_id_a`, `user_id_b`, `created_at`, `updated_at`) VALUES (1, 1, 2, NULL, NULL);
INSERT INTO `friend`(`id`, `user_id_a`, `user_id_b`, `created_at`, `updated_at`) VALUES (2, 2, 1, NULL, NULL);
$ php bin/swoft ws:start
# 热更新启动,适合开发使用
$ php swoftcli.phar run -c ws:start
http://192.168.10.10:18308/login
# 账号:user1
# 密码123123
# 账号:user2
# 密码123123
非常欢迎你的加入! 有任何问题或者想要贡献代码,请提交 issue
MIT © OhhInk