phpsocketIO中如何对某一分组中的某一个用户进行发送消息?

takumin

有多个分组,用户可能同时加入了多个分组。
想要实现对某一个分组(A)中的用户(1)发送信息

以前在nodeJS中可以用
socket.broadcast.to(group_id).emit('send msg', {"msg": msg});
的方式发送过去,但是试了一下,phpsocketIO貌似不行
$socket->broadcast-to($group_id)->emit('send msg', array("msg" => $msg));

还是我的写法有问题?
请指教,谢谢。

阅读 3099
3个回答

walkor
  • takumin 2018-06-21

    您好,我已解决问题,谢谢回复

  • ray 2021-11-18

    @4225:你好,可以问下你是怎么解决这个问题的么,我这边只能将用户一个人加入一个分组,然后针对分组实现对单人的发送消息任务,但是这种广播情况下无法调用ack回调,所以想咨询下你是怎么实现的

pengpeng

看了链接文档还是不理解,
$io->to($socket->id)->emit('pingback',);scoket->id 不是组名吗?我怎么知道是给某个组特定的用户发消息呢,
我现在面临的需求是,下单后,平均的给后台客服组"customservice"10个客户发消息,相当于每次随机分配给10个客户中的一个人。

wsad7900031

$io->sockets->adapter->rooms //所有房间
$rooms = array("房间id"=>array("组员id"=>true));//rooms的结构,后面的true应该是是否还在这个房间里吧。这个东西每个连接会自己单独创建和进入一个房间,直接用那个连接的id发就可以对单独用户发送

 

  • 暂无评论