Есть ли способ в dialogflow сохранить историю чата сеанса после перезагрузки веб-страницы?

#node.js #reactjs #express #dialogflow-es #sessionid

# #node.js #reactjs #экспресс #dialogflow-es #идентификатор сеанса

Вопрос:

Я создаю чат-бота, используя expressjs, reactjs и dialogflow. Что я хочу сделать, так это сохранить историю чата при обновлении страницы. Есть ли способ сделать это? (Возможно, используется идентификатор сеанса?)

Ответ №1:

Я нашел способ сделать это всего несколькими строками кода

var MessageList = document .querySelector(‘df-messenger’) .shadowRoot.querySelector(‘df-messenger-chat’) .shadowRoot.querySelector(‘df-message-list’).shadowRoot.querySelector(‘#MessageList’);

..

затем сохраните содержимое MessageList в объект localStorage в браузере, затем при загрузке страницы просто загрузите его в элемент MessageList

при получении нового сообщения событие

окно.localStorage.setItem(‘chatBotHistory’, MessageList.innerHTML);

событие загрузки новой страницы

документ.querySelector(‘df-messenger’) .shadowRoot.querySelector(‘df-messenger-chat’) .shadowRoot.querySelector(‘df-message-list’).shadowRoot.querySelector(‘#MessageList’).innerHTML = window .localStorage.GetItem(‘chatBotHistory’);