Documentation
JavaScript API
Control the widget from your own code: open, close, send messages, and listen for events via window.EmbedMyBot.
Once the script has loaded, a global window.EmbedMyBot object is available. Calls made before the widget finishes loading are queued and run once it's ready.
Methods
| Method | Description |
|---|---|
| EmbedMyBot.open() | Open the chat window. |
| EmbedMyBot.close() | Close the chat window. |
| EmbedMyBot.toggle() | Toggle the chat window open/closed. |
| EmbedMyBot.sendMessage(text) | Open the chat and send a message as the visitor. |
| EmbedMyBot.on(event, callback) | Subscribe to an event (see below). |
| EmbedMyBot.off(event, callback) | Remove a previously added event listener. |
open(), toggle(), and sendMessage() will also wake a lazy-loaded widget (data-lazy) on demand, so you can keep the widget deferred and still open it from your own button.Events
ready- the widget has loaded and is ready.open- the chat window was opened.close- the chat window was closed.message- a message was sent or received (payload includes the role).
Examples
Open the chat from your own button
html
<button id="help">Chat with us</button>
<script>
document.getElementById("help").addEventListener("click", function () {
window.EmbedMyBot.open();
});
</script>Send a message programmatically
js
window.EmbedMyBot.sendMessage("I need help with my order");React to events
js
window.EmbedMyBot.on("ready", function () {
console.log("Chatbot ready");
});
window.EmbedMyBot.on("open", function () {
// e.g. fire your own analytics event
});