I have used Redis for storing conversations, But after refreshing the bot the entire conversation was disappeared. Is there any solution to this.
Hi @Juste, Is there any solution.
Hey @Chaitanya. My guess is that there is an issue with the tracker stores config. Can you share how you configure the tracker store for your bot?
Hi @Juste .Thanks for the response.
tracker_store:
store_type: redis
url: localhost
port: 6379
db: 0
I am using Web Chat code: chat.html (776 Bytes)
Here I am using , src=“https://storage.googleapis.com/mrbot-cdn/webchat-0.4.1.js”
Because 0.5.6.js is not working.
Hi @Juste, Is there any solution.
@Chaitanya was that the content of your endpoints.ym; file you posted? If so, can you comfirm it looks like this (with the indents)…
traker_store:
store_type: redis
url: localhost
port: 6379
db: 0
A couple of questions for the redis server config: Are you using one of the server persistence mechanisms - like aof? If not, did you either restart the redis server or power-cycle the redis host at all as that would loose the state of the tracker.
Personally, I’ve not used Redis as a tracker store before, but I have successfully used Mongo.
HI @netcarver , yeah that is endpoints.yml . I am using rdb,aof persistences .
Hi @netcarver , Any solution.
Have you connected to your redis server using redis-cli and checked that the data is actually in there?
Have you also got the line session_persistence: true
in your credentials.yml file under the socketio section?
Something like this…
socketio:
user_message_evt: user_uttered
bot_message_evt: bot_uttered
session_persistence: true
Hi @netcarver , yeah I have connected to redis server using redis-cli . I have set session_persistence: true .
Hi @netcarver , My conversations are stored in redis is fine . But my problem is after refreshing the page in webchat conversations are disappeared in webchat window , not redis tracker store.
Which front-end are you using? Is it scalableminds Chatroom or the react-based webchat?
react-based webchat
Try changing the config of the webchat widget to use the “local” storage engine instead of the “session” storage engine.
WebChat.default.init({
selector: "#webchat", // <<< Use whatever selector you need
initPayload: "/greet", // <<< Use whatever initial intent you need
interval: 1200,
socketUrl: server,
socketPath: "/socket.io/",
title: "Your title",
subtitle: "Your subtitle",
inputTextFieldHint: "Type a message...",
connectingText: "Bot is not connected. Waiting...",
hideWhenNotConnected: false,
fullScreenMode: false,
autofocus: true,
openLauncherImage: 'launcher_button.svg',
closeLauncherImage: 'clear-button.svg',
params: {
images: {
dims: {
width: 300,
height: 200,
}
},
storage: "session" // <<< Try changing to "local"
}
})
You can use the built-in browser development tools to check that the conversation is being held in the session or local store.
I am already tried with storage: “local” . It is not working
I’m out of ideas then.
Thanks for your response @netcarver, Can anybody else please provide me a solution for this issue. Also let me know if i need to share any further information. Thanks in advance.
Any solution. Please respond.
If you get no response from the crass team here, try raising an issue on the webchat component repository.