У меня есть реализация Firechat , которая правильно инициализируется, но при входе в систему вы можете создавать комнаты и входить в них, но сообщения никуда не денутся.Я построил функции для обработки отправки сообщений, но я не думаю, что он правильно соединяет объекты FirechatUI и Firechat с базой данных Firebase.
function initChat(user) {
var room = '';
var db = firebase.database().ref("chat");
var chat = new FirechatUI(db, document.getElementById('firechat'));
var api = chat._chat;
console.log(api);
api.setUser(user.uid, user.displayName, function(user) {
api.resumeSession();
});
chat.setUser(user.uid, user.displayName, function(user) {
chat.resumeSession();
});
api.on('message-add', function(messagedRoom, messageContent) {
console.log('Sent message to room: '+messagedRoom.id+' with the content "'+messageContent+'"');
api.sendMessage(messagedRoom.id, messageContent, 'default');
});
api.on('room-enter', function(enteredRoom) {
api.enterRoom(enteredRoom.id);
room = enteredRoom.id;
});
api.on('room-exit', function(exitedRoom) {
api.leaveRoom(exitedRoom.id);
room = '';
});
isInitialized = true;
}
Событие «добавление сообщения» никогда не запускается, нособытия "комната-вход" и "комната-выход" делают.