howdyai / botkit-cms

An open tool for designing, building and managing interactive dialog systems
https://botkit.ai
MIT License
265 stars 92 forks source link

Issue using botkit cms locally within botkit #24

Open mdemin914 opened 5 years ago

mdemin914 commented 5 years ago

Hey,

I am trying to get botkit-cms working locally within a botkit app. I think this would be ideal for a production deployment, not having to rely on another server to be up.

I am using

"botkit": "^4.0.2",
"botkit-cms": "0.0.4",
"botkit-plugin-cms": "^1.0.1",

When I follow the directions and include:

var cms = require('botkit-cms')();
cms.useLocalStudio(controller);

cms.loadScriptsFromFile(__dirname + '/scripts.json').catch(function(err) {
  console.error('Error loading scripts', err);
});

I get the following error: TypeError: Cannot set property 'evaluateTrigger' of undefined.

I fixed here this by changing the controller.studio references to be controller.plugins.cms. This seems to fix the problem and things seem to more or less work. The bot responds to the triggers that are setup.

However, there is an exception when the input is something that doesn't cause any triggers to be returned.

Error in trigger handler undefined
(node:53014) UnhandledPromiseRejectionWarning: Error:
  at Botkit.<anonymous> (blah/blah/node_modules/botkit/src/core.ts:1036:27)

Thanks for any help or direction on how to continue looking into this.

zwenza commented 5 years ago

I have the same error, any ideas?

etiennellipse commented 5 years ago

@mdemin914 I applied your suggested partial fix to botkit_mutagen.js with the latest version of Botkit (4.5.0) and I am still getting the (almost) same error.

    controller.plugins.cms.evaluateTrigger = function(text) {
                                           ^

TypeError: Cannot set property 'evaluateTrigger' of undefined
    at module.exports (/...myproject/node_modules/botkit-cms/src/botkit_mutagen.js:4:44)

Am I missing something?

benbrown commented 4 years ago

The Botkit-cms plugin has not been properly updated yet to run locally in Botkit 4+. So this is an imperfect solution for now.

etiennellipse commented 4 years ago

@benbrown Do you think this is fixable? I might have someone from my team look into this next week.

benbrown commented 4 years ago

Yeah it is definitely fixable.

etiennellipse commented 4 years ago

This should be fixed by https://github.com/howdyai/botkit/pull/1851 !