8

私はRatchetライブラリを使用してリアルタイムのSymfonyアプリで作業しています。このアプリでは、特定のユーザーにデータを送信する必要があるため、論理的な解決策は、Symfony2 Session オブジェクトを各着信接続オブジェクトにアタッチするSessionProviderを使用することでした。ドキュメントに記載されているように、セッションを PDO 経由でデータベースに保存するために非ネイティブ セッション ハンドラをセットアップしました。それは今のところうまくいきますが、特定のユーザーの接続オブジェクトを取得してデータを送信する必要があるため、別の方法でこのユーザーを参照する接続オブジェクトを見つける必要があり、その方法を見つけることができませんそれ ?彼女は私のサーバーコードです:

    $app=new AggregateApplication();
    $loop   = \React\EventLoop\Factory::create();
    $context = new \React\ZMQ\Context($loop);
    $pull = $context->getSocket(\ZMQ::SOCKET_PULL);
    $pull->bind('tcp://127.0.0.1:5555');
    $pull->on('message', array($app, 'onNotification'));
    $webSock = new \React\Socket\Server($loop);
    $webSock->listen(8080, '127.0.0.1');
    $handler = $this->getContainer()->get('session.handler');
    $server=new \Ratchet\Wamp\WampServer($app);
    $server = new SessionProvider($server, $handler);
    $webServer = new \Ratchet\Server\IoServer(new \Ratchet\WebSocket\WsServer($server),$webSock);
    $loop->run();
4

2 に答える 2