我想問下 有沒有按照get值 創(chuàng)建多個聊天室啊 我嘗試了下 好像用戶可以分組 但是消息不能按組發(fā)送 是把??
創(chuàng)建多個聊天室,建議用服務(wù)器來控制,或者客戶可以選擇進那個聊天室,服務(wù)器端做驗證。
消息怎么發(fā)送,可以自己控制,在event.php這個函數(shù)里,主要是onMessage這個函數(shù),組發(fā)送的話,就按照GateWay::sendToCurrentUid(json_encode(array('uid'=>$uid))."\n");循環(huán)調(diào)用發(fā)送給組成員
簡單的方法是運行多個workerman-chat,即開多個websocket端口,這樣每個聊天室一個和單獨一個端口通訊。
如果想在同一臺機器上運行多個workerman-chat,需要保證 每個workerman-chat目錄的以下配置是不同的
workerman.conf.pid_file
ChatWeb.conf.listen 的端口
ChatWorker.conf.listen 的端口
ChatGateway.conf.listen 的端口
ChatGateway.conf.game_worker 的端口與ChatGateway.conf.listen的一致
Monitor.conf.listen 的端口,也可以刪除此配置
applications/Chat/Web/index.php 中的22行 鏈接ws的端口信息
親測可行
當然也可以一個workeman運行多個 ChatGateway ChatWorker ,達到運行多個workerman-chat的目的