diff --git a/addons/im_livechat/static/src/public_models/chatbot.js b/addons/im_livechat/static/src/public_models/chatbot.js index d5a2ed5ed0c..4b0c9bc997a 100644 --- a/addons/im_livechat/static/src/public_models/chatbot.js +++ b/addons/im_livechat/static/src/public_models/chatbot.js @@ -367,7 +367,7 @@ registerModel({ data: attr({ compute() { if (this.messaging.publicLivechatGlobal.isTestChatbot) { - return this.messaging.publicLivechatGlobal.testChatbotData.chatbot; + return this.messaging.publicLivechatGlobal.testChatbotData; } if (this.state === 'init') { return this.messaging.publicLivechatGlobal.rule.chatbot; diff --git a/addons/im_livechat/static/src/public_models/livechat_button_view.js b/addons/im_livechat/static/src/public_models/livechat_button_view.js index c8e2b266f51..7b448826b1a 100644 --- a/addons/im_livechat/static/src/public_models/livechat_button_view.js +++ b/addons/im_livechat/static/src/public_models/livechat_button_view.js @@ -450,9 +450,6 @@ registerModel({ }), serverUrl: attr({ compute() { - if (this.messaging.publicLivechatGlobal.chatbot.isActive) { - return this.messaging.publicLivechatGlobal.chatbot.serverUrl; - } return this.messaging.publicLivechatGlobal.serverUrl; }, }), diff --git a/addons/im_livechat/static/src/public_models/public_livechat_global.js b/addons/im_livechat/static/src/public_models/public_livechat_global.js index ede12d1b553..eac4083035d 100644 --- a/addons/im_livechat/static/src/public_models/public_livechat_global.js +++ b/addons/im_livechat/static/src/public_models/public_livechat_global.js @@ -192,6 +192,12 @@ registerModel({ default: false, }), isTestChatbot: attr({ + compute() { + if (!this.options) { + return clear(); + } + return Boolean(this.options.isTestChatbot); + }, default: false, }), lastMessage: one('PublicLivechatMessage', { @@ -204,7 +210,7 @@ registerModel({ }), livechatButtonView: one('LivechatButtonView', { compute() { - if (this.isAvailable && this.isAvailableForMe && this.hasLoadedQWebTemplate && this.env.services.public_livechat_service) { + if (this.isAvailable && (this.isAvailableForMe || this.isTestChatbot) && this.hasLoadedQWebTemplate && this.env.services.public_livechat_service) { return {}; } return clear(); @@ -227,7 +233,14 @@ registerModel({ default: '', }), sessionCookie: attr(), - testChatbotData: attr(), + testChatbotData: attr({ + compute() { + if (!this.options) { + return clear(); + } + return this.options.testChatbotData; + }, + }), welcomeMessages: many('PublicLivechatMessage', { compute() { return this.messages.filter((message) => { diff --git a/addons/im_livechat/views/im_livechat_chatbot_templates.xml b/addons/im_livechat/views/im_livechat_chatbot_templates.xml index bbe8bc25525..a62eadae237 100644 --- a/addons/im_livechat/views/im_livechat_chatbot_templates.xml +++ b/addons/im_livechat/views/im_livechat_chatbot_templates.xml @@ -2,15 +2,17 @@