hyperf-im 开源啦! 基于 hyperf 微服务框架 +layim 开发的一套聊天系统!
感谢sl-im作者提供的demo,自己就是想写一套im,用hyperf重写.
sl-im
hyperf-im
简介
hyperf-im 是基于 Hyperf 微服务协程框架和 Layim 网页聊天系统 所开发出来的聊天室。
体验地址
功能
1.0
- 登录注册(Http)
- 单点登录(Websocket)
- 私聊(Websocket)
- 群聊(Websocket)
- 在线人数(Websocket)
- 获取未读消息(Websocket)
- 好友在线状态(Websocket)
- 好友 查找 添加 同意 拒绝(Http+Websocket)
- 群 创建 查找 添加 同意 拒绝(Http+Websocket)
- 聊天记录存储
- 心跳检测
- 消息重发
- 断线重连
- 发送图片及文件
1.1
- webrtc(视频聊天)
Requirement
部署方式
Composer
composer update
env配置
vim .env
WS_URL=wss://im.jayjay.cn/im
STORAGE_IMG_URL=$host/storage/upload/
STORAGE_FILE_URL=$host/file/upload/
APP_URL=https://im.jayjay.cn
WEB_RTC_URL=wss://im.jayjay.cn/video
nginx配置
server{
listen 80;
server_name im.jayjay.cn;
return 301 https://$server_name$request_uri;
}
server{
listen 443 ssl;
root /data/wwwroot/;
add_header Strict-Transport-Security "max-age=31536000";
server_name im.jayjay.cn;
access_log /data/wwwlog/im.jayjay.cn.access.log;
error_log /data/wwwlog/im.jayjay.cn.error.log;
client_max_body_size 100m;
ssl_certificate /etc/nginx/ssl/full_chain.pem;
ssl_certificate_key /etc/nginx/ssl/private.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
location / {
proxy_pass http://127.0.0.1:9501;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-PORT $remote_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /im {
proxy_pass http://127.0.0.1:9502;
proxy_http_version 1.1;
proxy_read_timeout 3600s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location /video {
proxy_pass http://127.0.0.1:9502;
proxy_http_version 1.1;
proxy_read_timeout 3600s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location ~ .*\.(js|ico|css|ttf|woff|woff2|png|jpg|jpeg|svg|gif|htm)$ {
root /data/wwwroot/IM/public;
}
}
Start
- 挂起
php bin/hyperf.php start
TODO
1.完善整体项目
2.rabbitmq消息记录,看接下来是否上分布式
联系方式
- WeChat:naicha_1994
- QQ:847050412
License
更新记录
解决了进入聊天室未登录重定向到443端口的问题。
本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由系统于 4年前 自动加精
不能composer 安装吗?
我看了代码,有个疑问点,为何异常处理那块为何不作统一处理? 每个方法都写一遍try catch 太繁琐了,可以参考下文档推荐的方案 doc.hyperf.io/#/zh-cn/exception-ha...
没有移动版的聊天不是好聊天 :hatched_chick:
代码有放出来吗?
zhuanlan.zhihu.com/p/145311620,知乎上引用的这里的文章。里面有个资料赠送部分纯属扯淡。课程资料都是骗人的!加了就给发了5个视频,还成体系!有点扯!付费就说付费!除非我理解而的免费资料不是面的截图。然后直接给移除群!扯淡的不能在扯谈。这点开源精神挺好的…… 挣钱就挣钱不丢人,开源挣钱也不丢人,满嘴跑火车就丢大发了 !知乎还能删评论,learnku能删除也没事。
163 邮箱都不支持,注册不了
更新了进入聊天室未登录情况下重定向到443端口的问题。
composer update 怎么也安装不了的 报这个错是怎么回事啊 Your requirements could not be resolved to an installable set of packages.
怎么没有迁移文件啊
视频聊天好像不支持啊,video.js:117 the getUserMedia is not supported!
js版本?
代码在哪 拉取?