Tiledesk Developer Hub
WebsiteCommunityTutorialsGet started
  • Introduction
  • Community
  • Ask for Support
  • Public Roadmap and Changelog
  • Tutorials
  • Widget
    • Widget SDK
    • Javascript API: Methods
    • Javascript API: Attributes
    • Javascript API: Listeners/Events
    • Widget Authentication
    • Widget Angular integration
    • Widget React integration
    • Widget for Android with WebView
    • Widget for iOS with WKWebView
    • Widget for Flutter with WebView
    • Widget for React with WebView
    • Widget for Wix Website platform
    • Tutorials
      • Hide widget
      • Show/Hide widget programmatically
      • Force widget loading without user interaction
      • Mobile positioning
      • Custom size (width/height)
      • Installing widget on selected pages
    • Conversation Embedded Apps
      • Payment App Tutorial
      • Prechat form App Tutorial
    • Advanced
      • Preset the Widget on a specific Department
      • Authentication Flow
      • Widget protocol specs
      • Prechat Form JSON specs
      • Prevent multiple conversations
      • Old versions
        • Web SDK v4
  • External Chatbot
    • Introduction
    • Hello World tutorial
    • Chatbot to Human handoff
    • Send Text Buttons
    • Advanced Tutorials
      • Introduction
      • Tutorial 1 - Dialogflow as external chatbot
      • Tutorial 2 - Buttons and images
      • Tutorial 3 - Automatic human handoff with fallback intent
      • Tutorial 4 - Explicit Human handoff with user intent
      • Tutorial 5 - Gracefully handling operating hours during handoff
      • Generate Dialogflow Google Credentials file
    • Rasa tutorials
      • Rasa Tutorial 1 - Rasa as external chatbot
  • Resolution bot
    • Introduction
    • Quickstart
    • Webhook service
    • Rich messages
    • Tutorials
      • Chatbot chooser (multilanguage)
      • Department chooser
      • Order info (webhook)
  • APIs
    • REST APIs
      • Introduction
      • Authentication
      • Requests
      • Leads
      • Messages
      • Activities
      • Projects
      • Team
      • User
      • Analytics
      • Canned responses
      • Tags
      • Events
      • Jwt
      • Labels
      • Images
      • Files
      • Segments
      • Chatbots
      • Knowledge Bases
        • Knowledge Base
        • Contents
        • Question & Answer
      • Management Api
        • Departments
        • Groups
    • NodeJS SDK
    • Webhooks
      • Subscriptions
    • Conversation Messages APIs tips
    • Realtime API
    • JWT Authentication
      • JWT Custom authentication Tutorial
    • Tutorials
      • REST API
        • Sending and receiving messages with Tiledesk APIs
        • PHP Tiledesk REST API example
        • Import multiple messages into Tiledesk using REST APIs from third party app
      • Webhooks
        • Custom Request assignment
        • Request transcript on close
  • Apps
    • Build Custom App - Quick start
    • External Channels integration flow diagram
    • Telegram integration tutorial
  • Dashboard & AgentChat SDK
    • Dashboard SDK
    • Agent Chat SDK
  • Architecture
    • Architecture overview
    • Components list
    • Bot Design diagram
    • Multi Channel Message Flow
  • Installation
    • Installation
    • Running Tiledesk using Docker Compose
    • Running Tiledesk with Kubernetes using Helm
    • Choosing Hardware
  • Configuration
    • Chat21 channel configuration
    • Email parameters and templates configuration
    • Configure the logging system
Powered by GitBook
On this page
  • Introduction
  • Create the Tiledesk RASA Proxy
  • Self hosted installation
  • Create Tiledesk project
  • RASA-Human handoff

Was this helpful?

  1. External Chatbot
  2. Rasa tutorials

Rasa Tutorial 1 - Rasa as external chatbot

PreviousRasa tutorialsNextIntroduction

Last updated 1 year ago

Was this helpful?

Connect Rasa to Tiledesk and easily handoff your conversation to a human agent!

image

Introduction

Integrating Rasa in Tiledesk offers many advantages, first of all the possibility to handoff current chatbot's conversation to humans. This is a very common task in chatbot integration design, because a chatbot cannot always satisfy every user request or simply because the first chatbot was there just to welcome the user, get the user question and some user data (i.e. email, name), choose the right team and then forward the request to the first available agent.

We created this first toturial to allow a more customized integration experience with Rasa, allowing you to understand how easy it is to attach an external RASA bot to Tiledesk, switching a conversation to humans when needed.

Create the Tiledesk RASA Proxy

We'll Replit.com and Node.js for our first RASA integration tutorial.

Create a replit.com account if you haven't one already.

Press the project title on the top, open the menù and press "Fork" option as in the following picture:

Name your project according to your preferences and press "confirm":

In the index.js file change the RASAserver var to point to your RASA server.

Now press the green Run button on the top bar. You RASA proxy started. Now it's time to connect it to a new Tiledesk project.

Self hosted installation

The API_ENDPOINT var in the source code points to the Tiledesk cloud.

On localhost:

API_ENDPOINT = localhost/api/

On your own server:

API_ENDPOINT = ${YOUR_SERVER_HOST}/api/

Create Tiledesk project

Create an account on Tiledesk, then create a new Project, you can name it "My RASA project".

Follow the tutorial steps, leaving the default settings. You will land on the project's Dashboard.

From the side menù select Settings > Bots. Click the ADD BOT button, on the top.

Choose External as bot type:

Now configure your bot. Fist choose a name (as 'RASA bot' in the example) and the HTTP endpoint of the Replit Proxy you created above.

To get the proxy base endpoint go on the Replit.com Proxy, Run the project. You get the base url on the right panel on the top, as in the following picture:

Now, copy and paste Base proxy endpoint in the new bot form, adding /bot on the end:

Now press CREATE BOT. When asked, press "Activate bot". This action will attach your chatbot to your default routing, making the chatbot available to end-users.

Open the widget and press the New conversation button.

A new conversation suddenly starts with chatbot greeting you:

You can ask his name 🙂

RASA-Human handoff

Just create an intent reply with a \agent directive as last line in the message:

We are looking for an operator...
\agent

As soon as Tiledesk sees such a directive (\agent) in the message he will try to move the conversation to the first available agent, following the conversation's department rules (Assigned or Pooled). If the department's routing is on "Assigned", the conversation is instantly moved to the first available agent, like in the following picture:

In this tutorial you just learned how to connect your RASA chatbot to a Tiledesk's conversation and how to move the conversation to the next available agent when needed.

See you on next tutorial!

If you have any question or feedback please write us info@tiledesk.com

🚀 Native RASA Connector available 🚀 This tutorial aims to support you if you want a starting point to take full control of your RASA integration customization. If instead you prefer to integrate RASA in the "easy way" you can use the already embedded in Tiledesk. Don't forget that we are open source, so you'll expect the RASA Connector to be open source. Well you're right 🙂 The on Github

NOTE: You can find the full source code of this tutorial here: [](https://replit.com/@tiledesk/tiledesk-rasa-proxy-webhooks)

Go on the

Fork the project
Choose a project name
Your RASA server address

If you installed Tiledesk using the please use this value for your API_ENDPOINT var:

You can find more on the Docker installation endpoints .

image

image
image

If, at some point with your chatbot conversation, it is necessary to kick off the chatbot and invite a human agent instead, you can to this in the simplest way following the .

image

🚀 Native RASA Connector available 🚀 This tutorial aims to support you if you want a starting point to take full control of your RASA integration customization. If instead you prefer to integrate RASA in the "easy way" you can use the already embedded in Tiledesk. Don't forget that we are open source, so you'll expect the RASA Connector to be open source. Well you're right 🙂 The on Github.

Tiledesk provides a full of features. Just and use it for free!

RASA native integration
RASA Connector is open source
https://github.com/Tiledesk/tiledesk-rasa-proxy/
RASA project on Replit
Docker compose distribution
here
handoff documentation
RASA native integration
RASA Connector is open source
forever free account
sign up
image
Choose External
Create new external chabot
New bot
image
image