Есть функция, которая отбирает по запросу документы из базы, записывает результат в объект. Из этого объекта строится ответное сообщение. Пока работает один человек все нормально, но как появляются параллельные запросы начинается полная неразбериха.
Как изолировать это код от других пользователей?
function sendFileByQuery(chatId, query) {
File.find(query).then(files => {
let rndFile = file[Math.floor(Math.random() * files.length)]
bot.sendDocument(chatId, rndFile.gif, {
reply_markup: {
inline_keyboard: [
[
{
text: 'Следующий',
callback_data: 'somedata'
}
]
})
})
}