首页 > 解决方案 > symfony + ratchet:如何从控制器向用户发送消息

问题描述

我使用棘轮来创建聊天。但我想从控制器向特定用户发送消息。我如何访问 $connections 来查找用户并发送消息

public function onOpen(ConnectionInterface $conn)
    {
        $this->connections[] = $conn;
    }

我像这样运行服务器

$server = IoServer::factory(new HttpServer(
            new WsServer(
                new Notification($this->getContainer())
            )
        ), 8080);

        $server->run();

标签: symfonywebsocketratchet

解决方案


最好的解决方案可能是使用 SessionProvider: http ://socketo.me/docs/sessions

还有更简单的解决方案,例如使用连接 ID 或每个连接的名称。

另外,这里有一篇关于 Ratchet with Symfony 的精彩文章: https ://medium.com/@nihon_rafy/create-a-websocket-server-with-symfony-and-ratchet-973a59e2df94


推荐阅读