Firebase один на один чат - PullRequest
0 голосов
/ 29 июня 2018

Я пытаюсь создать чат один-на-один в глобальном чате Firebase. Мне было интересно, как я продолжу это делать? Что я делаю сейчас, так это то, что я создал другой HTML-файл, в котором будут происходить приватные чаты, и я ищу по идентификатору пользователя. с этим куском кода.

            oneOnone.addEventListener('click', function(e){
            // Attach an asynchronous callback to read the data at our posts reference
            ref.on("value", function (snapshot) {}, function (errorObject) {
                console.log("The read failed: " + errorObject.code);
            });
            ref.orderByChild("userId").on("child_added", function (snapshot) {
               console.log(snapshot.val().userId);
               console.log(searchId);
                if(searchId.value === snapshot.val().userId){
                    window.location.href = 'privatemessage.html';
                } 
            });
        });

Это приводит к файлу privatemessage.html, где должны происходить все чаты. У меня такое ощущение, что моя база данных может быть неправильной. enter image description here

База данных на firebase по-прежнему регистрирует людей, как в глобальном чате, а не в чате 1 на 1. Я просто совершенно не понимаю, как сделать так, чтобы чат был только между двумя людьми. Если кто-то может порекомендовать руководство, дайте полное объяснение того, как будет работать чат 1 на 1, и это будет оценено. Да, я смотрю на документы, это действительно не объясняет, как сделать чат 1 на 1.

Редактировать

Итак, я изменил свою базу данных на эту enter image description here

Так что я опираюсь на что-то вроде этого для разговора один на один var pmChat = database.ref('chat/' + userId);

По сути, создаем новую ссылку, а затем связываем идентификатор пользователя, но теперь, как мне связать идентификатор пользователя другого пользователя?

1 Ответ

0 голосов
/ 30 июня 2018

Вы можете связать текущий идентификатор пользователя с другим идентификатором пользователя следующим образом:

database.ref('chat').child(currentUserId).child(otherUserId).child(message);
database.ref('chat').child(otherUserId).child(currentUserId).child(message);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...