Я хочу создать викторину для двух игроков в реальном времени. Для этого мне нужно отслеживать, когда пользователи находятся на странице моей викторины, а когда покидают ее. По сути, мне нужно какое-то лобби, где собираются игроки и откуда мой сценарий выбирает двух случайных игроков, которые должны столкнуться друг с другом в игре.
Поскольку многие игроки переключаются из онлайн-режима в офлайн за очень короткое время, я предпочитаю не использовать классический метод «обновление статуса игрока в базе данных, а затем получение через определенный интервал списка онлайн-игроков». В настоящее время я раздумываю над идеей использования Comet Push и немного изучил PubNub.
Я считаю, что настоящую викторину решить довольно просто: использовать классическую Comet publish () для отправки ответов и subscribe () для проверки статуса другого пользователя. Но меня беспокоит, как мне получить этот конкретный список среди онлайн-пользователей?
Я попытался опубликовать () user_id, когда пользователь переходит в лобби, но как мне уведомить всех других пользователей, когда этот пользователь переходит в автономный режим? Как мне отобразить в лобби общее количество подключенных пользователей вместе с их именами?
Я впервые сталкиваюсь с Кометой, и ее логика мне не совсем понятна.
Спасибо за помощь!