Samples

We have developed several sample Botfuel Dialog bots for common use cases. We hope they will highlight a few powerful and useful features of our technology and help you jump-start the development of your own bots.

Each bot is available in botfuel-dialog packages.

Complex dialogs

This bot shows you how complex conversations work.

With it you can see how to:

  • Use dialogs hooks to perform actions before and after view rendering
  • Handle digressions, (e.g., starting a Travel dialog by saying "I leave from Paris", then making a digression into a Car dialog by saying "I want a blue car")
  • Use multi intents (e.g., this bot understands both greetings and travel intents if you say "Hello bot, I leave from Paris")
  • Chain dialogs together (e.g., the Thanks dialog is triggered each time a Car dialog completes)
  • Use cancellation/confirmation dialogs (e.g., CarConfirmation and Cancel dialogs)

Browse the code here for more details.

Complex entities

This bot demonstrates how you can deal with entities in complex use cases.

With it you can see how to:

  • Add priority to your entities to define the order in which the bot asks the user for these entities
  • Add validation to entities using the isFulfilled property
  • Use the reducer property to deal with new values extracted for your entity

Browse the code here for more details.

E-commerce

This sample shows you how to implement a bot on Facebook Messenger with structured messages such as carousel.

Browse the code here for more details.

Middlewares

In Botfuel Dialog, middlewares are functions triggered before and after dialogs and give access to the brain and user/bot messages.

This bot implements a middleware to mute/unmute the bot.

By muting the bot you can let a human operator take part in the conversation with a user. That's the starting point for developing a hybrid human + bot customer support service!

Browse the code here for more details.

QnA

This sample demonstrates how you can use Botfuel QnA with Botfuel Dialog to easily build a bot that answers frequently asked questions, and use it with the Webchat on your website.

Browse the code here for more details.

Resolvers

This sample demonstrates how to extend Botfuel Dialog with custom adapters, brains and NLU modules.

Browse the code here for more details.

Modules

This sample demonstrates how to extend Botfuel Dialog with modules. A module can contain adapters, brains, NLU modules, dialogs and views.

Browse the sample module and the code using it for more details.