Rasa-webchat with Rasa 2.7 and rasa_sdk 2.7

Hello Everyone, Quick question. Has anyone gotten Rasa 2.7 and rasa_sdk 2.7 to work with rasa-webchat? I keep getting the Client socketio error when I startup Rasa with the following command: rasa run -m models --enable-api --cors “*”

My installation is strait up with no modifications. And the webchat works from Rasa 2.3 and rasa_sdk 2.3.1 on down but not beyond that version. Again, has anyone successfully gotten 2.7 to work with rasa-webchat. Not looking for a hack. Hoping there’s a straight forward solution that I have missed, after days of searching.

Thanks

Hi @eaofcc ,

I’m not quite sure, but I’d recommend to first check the socket-io compatibility table and to countercheck every tool used (Rasa OSS, SDK, …) if everything fits together.

Kind regards
Julian

Thanks! I actually did just that. So Rasa 2.7 has python-socketio 4.4, because of some issues with socketio compatibility. Not sure how to confirm the version that rasa-webchat is running. If I knew that, and how to change it if it’s not javascript socketio 3.x or 4.x, I’d be able to potentially solve the issue.

Best, Ethan Anthony

Hi @eaofcc ,

looking at this:

{
  "name": "rasa-webchat",
  "version": "1.0.1",
  "description": "Chat web widget for React apps and Rasa Core chatbots",
  "module": "module/index.js",
  "main": "lib/index.js",
  "repository": "git@https://github.com/botfront/rasa-webchat.git",
  "author": "",
  "license": "Apache-2.0",
  "scripts": {
    "dev": "webpack-dev-server --config webpack.dev.js",
    "build": "webpack --config webpack.prod.js -p",
    "test": "jest",
    "prepare": "npm run build",
    "release": "standard-version"
  },
  "keywords": [
    "react",
    "chat",
    "widget",
    "javascript"
  ],
  "dependencies": {
    "@popperjs/core": "^2.4.0",
    "@stomp/stompjs": "^5.4.2",
    "html-webpack-plugin": "^3.2.0",
    "immutable": "^3.8.2",
    "object-hash": "^1.1.5",
    "prop-types": "^15.7.2",
    "react-immutable-proptypes": "^2.2.0",
    "react-markdown": "^4.2.2",
    "react-popper": "^2.2.3",
    "react-redux": "^7.1.3",
    "react-slick": "^0.26.1",
    "react-textarea-autosize": "^7.1.2",
    "redux": "^4.0.5",
    "slick-carousel": "^1.8.1",
    "socket.io": "^3.1.2",
    "socket.io-client": "^3.1.2",
    "sockjs-client": "^1.4.0"
  },

This seems to be actually the problem! Can’t you simply clone the chat and run: npm update socket.io-client and the io likewise?

Kind regards

That’s a great idea. So I cloned the package and ran npm update. The result was tons of errors and difficult to resolve conflicts.

@eaofcc you just want to render your chatbot to rasawebchat(botfront) so that you can see the chatbot widget? Right

Yes. That’s it. While using Rasa 2.7 and rasa_sdk 2.7

@eaofcc Please try to change from 1.0.0 to 1.01

 (e.src =
>     "https://cdn.jsdelivr.net/npm/rasa-webchat@1.0.1/lib/index.js"),

Version 1.0.1 of the rasa webchat is made to work with version 2.3.x and 2.4.x of rasa and beyond. Use 1.0.0 for other rasa versions.

:warning: We recommend adding a version tag to prevent breaking changes from major versions, e.g for version 1.0.0 https://cdn.jsdelivr.net/npm/rasa-webchat@1.0.0/lib/index.js, however this will not work with versions below 1.0.0. If you do not specify a version, you will get served the latest available version of the rasa-webchat.

Please ref: GitHub - botfront/rasa-webchat: A feature-rich chat widget for Rasa and Botfront

This works PERFECTLY! Everyone should know this. I spent so much time struggling with this issue. 1.0.0 is for anything below version 2.3. THANKS!

1 Like

@eaofcc Please do check this thread for more information of customisation of rasa web-chat.

@eaofcc Happy to help you. Good Luck with your project!