watson-developer-cloud / botkit-middleware

A middleware to connect Watson Conversation Service to different chat channels using Botkit
https://www.npmjs.com/package/botkit-middleware-watson
Apache License 2.0
207 stars 257 forks source link

need some migration help (migrating out of 1.4.0) #201

Closed pgoldweic closed 4 years ago

pgoldweic commented 5 years ago

I'm in the process of 'patching' a production bot app originally written using botkit starter code (for the web) , depending on the following modules:

Naktibalda commented 5 years ago

Upgrading to 1.8 shouldn't cause any issues.

pgoldweic commented 5 years ago

Great. Thanks!

pgoldweic commented 4 years ago

Hi @Naktibalda . So I've finally migrated this middleware to version 1.8.2 (thanks for your help). Now I'm trying to resolve as many vulnerabilities as I can in the resulting packages. Ben Brown suggested that I upgrade botkit itself to 0.7.5 (while staying with version 0.0.1 of botkit-starter-web). Are you aware of any possible incompatibilities between such version of botkit and this middleware? (in the past I had followed your advice for getting the watson middleware connected with botkit-starter-web; I also re-implemented botkit storage to use an alternative to mongodb)

Naktibalda commented 4 years ago

I can't believe that you used 1.4.0 for so long. Middleware API is extremely simple, it hasn't changed in Botkit 0.7 and even in 4.0. The big difference in v4 is that the old storage modules are no longer supported, so middleware 2.0 uses botbuilder Storage interface. I only used Memory storage, you would have to rewrite your storage module to implement this interface.

After upgrading to Botkit v4 I kept the old frontend code (my codebase diverged from starter-web in September 2017), the only change I had to make in frontend was message.attachments.quick_replies to message.quick_replies, also Botkit v4 removes a few fields (attachments, action, etc ) if their names match names of internal properties.

pgoldweic commented 4 years ago

You're right in that it's been too long with me using 1.4.0 :-) (well, in reality my package.json used ^1.4.0 but it was actually resolved to 1.7.0!). I am going to look into eventually upgrading to botkit 4.5 ( I will need time to rewrite my storage code, of course), especially hearing that not much has changed. However, my immediate goal was to migrate out of Cloud Foundry authentication asap (before October 31 deadline), and therefore I needed to move to middleware version 1.8.2 or newer- that uses Assistant V1- with no breakage to my production code. Thanks again for your tips!