Задать вопрос
lepard
@lepard
function selfDevelopment() { selfDevelopment() }

Как правильнее передать номер комнаты для чата?

Здравствуйте. Снова вопрос, на теоретическом примере.
Есть чат. В него заходят авторизованные пользователи. Каждый из них может создать свою комнату для разговора. Список комнат отображается в виде Ник-Сколько_человек-Войти.
Как я понимаю, можно при создании комнаты в ID кнопки присваивать ник человека, который создал комнату, а потом через JS через сокеты отправлять ID, сверять есть ли такой в списке комнат на сервере, после чего подсоединять пользователя к выбранной комнате. И сам вопрос в том, рационален ли такой подход? Или есть какой то способ проще?
  • Вопрос задан
  • 589 просмотров
Подписаться 4 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@RaulDuke
Если верно понимаю, это скорее вопрос структуры данных бэка. И при всей кажущейся простоте задача чата с комнатами для некоторых бэкендов оказывается не такой уж простой (например, для Firebase это нетривиальная задача).

На вскидку, я бы делал такую структуру:

db: {
  users: {
    id: 111,
    name: 'Rostislav',
    room: 8888,
  },
  rooms: {
    id: 8888,
    messages: [...],
    owner: 111,
    public: true
  }
}


При нажатии кнопки войти отдаем серверу id комнаты, если существует он проверяет все что нужно Вам проверить и отдает хозяина комнаты с сообщениями.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы