Ок, сама спросила, сама же ответила, вдруг кому понадобится.
В actionProvider.js необходимо добавить функцию saver, которая будет сохранять message при вызове в функциях, формирующих сообщения бота (при вызове передаем объект, сформированный вызовом createChatbotMessage):
const saver = (message) => {
if (localStorage.getItem('chat_messages')){
console.log('SAVE BOT')
const chat_messages = JSON.parse(localStorage.getItem('chat_messages'));
console.log(chat_messages.history)
chat_messages.history.push({id: message.id, message: message.message, type: message.type, loading: message.loading, widget: message.widget})
localStorage.setItem('chat_messages', JSON.stringify(chat_messages))
} else {
console.log('ELSE SAVE BOT')
var obj = {}
obj.history = [{id: message.id, message: message.message, type: message.type, loading: message.loading, widget: message.widget}]
localStorage.setItem('chat_messages', JSON.stringify(obj))
}
}
Также прописываем в messageParser.js в функции parse сохранение сообщения пользователя:
if (localStorage.getItem('chat_messages')){
const chat_messages = JSON.parse(localStorage.getItem('chat_messages'));
console.log(chat_messages.history)
chat_messages.history.push({message: message, type: 'user', loading: false})
localStorage.setItem('chat_messages', JSON.stringify(chat_messages))
} else {
var obj = {}
obj.history = [{message: message, type: 'user', loading: false}]
localStorage.setItem('chat_messages', JSON.stringify(obj))
}
в файле bot.js убираем функцию saveMessages (все равно она не срабатывает) и видоизменяем функцию loadMessages:
const loadMessages = () => {
if (localStorage.getItem('chat_messages')) {
const messages = JSON.parse(localStorage.getItem('chat_messages'))
return messages.history
}
}