Pusher向特定成员发送在线状态事件

时间:2013-03-23 19:59:19

标签: php pusher

是否可以指定事件的成员ID,以便该成员才能收到该事件?

例如,如果我想向用户发送通知(我知道的用户ID),我该怎么做?我将成员/用户ID存储在状态身份验证中 -

$pusher->presence_auth($_POST['channel_name'], $_POST['socket_id'], $user_id) , $user_data);

我希望能够触发特定user_id的事件

$pusher->trigger( 'presence-test', 'test_event', $data, $socket_id );

有可能吗?

任何建议表示赞赏,谢谢!

1 个答案:

答案 0 :(得分:6)

您无法向频道上的特定用户/客户端发送事件。

执行此操作的最佳方法是为每个用户设置private- channel,以便您只能向他们发送信息。它们是私有的这一事实也意味着您只能确保预期的用户订阅(参见authenticating users)。

在您的情况下,频道名称可以是'private-' + user_id

然后,您可以让用户订阅该频道并从服务器发布到该频道。