Extending Your Bot

Bots have come a long way since the first chatbot Eliza, debuted in the early 1960s.

Today, bots support businesses of all shapes and sizes along every path of the customer journey.

But what happens when your bot doesn't have the feature or functionality you want?

For example, perhaps your bot needs to connect to your in-house CRM and lookup customer order data?

What then?

Fortunately, today's bot platforms are extensible and provide for future growth beyond their original design.

How To Extend a Bot (An Overview)

To be clear, extending your bot requires an assortment of advanced computer systems knowledge and programming skills. It's not for the faint of heart!

Where possible, and to avoid 'drowning in the details,' I will use plain-English and talk in terms of concepts rather than technical specifics.

Let's look at how this would work if we want our bot to access customer order information in our CRM.

What's needed to begin?

First, you need your bot - one you can extend programmatically. Our preferred platform is ManyChat.

To extend ManyChat's functionality, we use a feature called an EXTERNAL REQUEST.

That's just a fancy name for communicating with another computer. Your bot platform most likely has a similar function, although they might call it something different.

Standardized Communication

Like people, computer systems speak many languages.

Over the years, many protocols were developed to solve this dilemma.

Today, we use something called a WEBHOOK.

This is a fancy name for a system that responds when contacted: like a doorbell.

Press the button, the doorbell rings.

And every webhook has a unique location (URL) on the web. They're called ENDPOINTS.

The End is the Start?

Yes. Sort of.

Ok, let's recap for a moment.

We have our bot, and we want it to communicate with our in-house CRM system to retrieve customer data.

We use an EXTERNAL REQUEST to send information to a WEBHOOK at a specific ENDPOINT (URL) on the internet.

"Pressing" the WEBHOOK makes it do something - but what?

Listening Is The Key

Let's turn our attention to the other (remote) system for a moment, and the WEBHOOK we called via EXTERNAL REQUEST.

What's happening here?

In simple terms, the other system is LISTENING, waiting for something to happen.

In this example, that's our in-house CRM listening.

When something happens, that's called a TRIGGERING EVENT.

The Magic Happens!

At this point, our remote system comes to life and does something - like running extra code.

For instance, in our example above, the remote system accesses our in-house CRM and retrieves the requested customer order information.

Simple Enough, Right?

If you're using a bot customized for you, now you know how these extra functions and features are added.

But if you want to extend your bot, there's more to learn:

Additional Research

  • How is that remote system setup to listen for webhook calls?
  • How do we create the code and connect it to the webhook to run when triggered?
  • How do we ensure secure information exchange over the internet?
  • How is the information passed from the bot to the other remote system - and back to the bot?

In Conclusion

For the majority of businesses, building your bot within the bounds of the platform will suffice. But if you need to exceed your bot's original platform capabilities, you will need to use remote external requests and all the requisite technology that enables it.


Copyright © James Burchill

WATCH A VIDEO DEMO OF THIS TOPIC: https://www.loom.com/share/18d401f2df854e96835e9ba6dad98408