@NkDev

Как по вебсокету передавать сообщения на клиент?

Приложение на Symfony.
Мне необходимо на клиент передавать информацию о процессах происходящих на сервере.
Для этого я открыл websocket помощью библиотеки ratchet.

В MessageHandler есть такой метод, метод который принимает сообщения клиента и отдает ему данные:
public function onMessage(ConnectionInterface $from, $msg)
{
  foreach($this->connections as $connection) {
    if ($connection === $from) {
      continue;
    }
    $connection->send($msg);
  }
}


Все отрабатывает корректно, но этот метод срабатывает только когда приходит сообщение от клиента. Мне нужно отправлять сообщения с сервера по открытому вебсокету с определенной периодичностью, например:
for ($i = 0; $i < 10; $i++) {
  sleep(1);
  $connection->send('Hello');
}


Но этот код ждет 10 секунд а потом отправляет сразу 10 сообщений. Как мне после запроса клиента отравлять сообщение каждую секунду? Как мне переписать код?
  • Вопрос задан
  • 166 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы