Я использую чат io для создания интерфейса между пользователем и администратором. Я включил библиотеку сокетов в код моего представления и реализовал ее на панели пользователя. Теперь в настоящее время я получаю разговор между всеми пользователями и администратором в отдельном окне чата пользователя. При отправке сообщения от пользователя администратору, он работает нормально, только разговор между этим пользователем и администратором происходит в одной комнате чата в панели администратора. Как я могу получить чат между отдельным пользователем и администратором в панели пользователя.
смотреть код:
<script>
var localuserid = '<%-user.id%>';
var socket = io()
socket.on("chat", addChat)
$(() => {
getChats()
$("#send").click((e) => {
e.preventDefault();
var chatMessage = {
chat: $('#btn-chat-input').val(),
userid: $('#userid').val(),
role: 'user',
sender: $('#userid').val(),
msg_desc: $('#btn-chat-input').val(),
reciever: $('#adminid').val()
}
//console.log(chat);
postChat(chatMessage);
addChat(chatMessage);
$('#btn-chat-input').val();
});
})
function postChat(chat) {
$.post("/saveuserchat", chat)
}
function getChats() {
$.get("/getuserchat", (chats) => {
//console.log(chats);
chats.forEach(addChat)
})
}
function addChat(chatObj) {
$("#chat_message").append(`<p class="usermsg">${chatObj.msg_desc}</p>`);
}
$.ajax({
type: "GET",
url: "/getuserchat?senderid="+localuserid,
success: function(data){
console.log(data);
}
})
</script>
код контроллера:
app.get('/getuserchat',isLoggedIn,function(req, res) {
// var senderId = req.param("senderid");
chat.find({}, function(error, chats){
console.log(chats);
res.send(chats);
});
});