Проблема yii2-websocket для получения списка пользователей онлайн - PullRequest
1 голос
/ 20 мая 2019

Я использую пакет для приложения чата. Я столкнулся с проблемой, чтобы получить список пользователей онлайн. Есть способ, предложенный кем-то, что я попробовал, но безуспешно.

Код ниже для получения списка онлайн-пользователей.

/**
 * Subscribe to messages
 *
 * @param ConnectionInterface $client
 * @param string              $msg
 */
public function commandSubscribe(ConnectionInterface $client, $msg)
{
    $request = @json_decode($msg, true);

    $client->talkId = $request['talk_id'] ?? null;
    $client->userId = $request['user_id'] ?? null;
    $this->clients = $client;
    foreach ($this->clients as $key=>$chatClient) {
         $onlineUsers[] = $chatClient->name;
    }
    $client->send( json_encode(['onlineUsers'=> $onlineUsers, 'room'=>$client->talkId, 'user' =>$client->userId ,'message'=> 'User added to room']) );
}

Я получаю ответ ниже:

Ответ: {"onlineUsers": {}, "room": "provider", "user": "hassan", "message": "Пользователь добавлен в комнату"}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...