Error Logs

Error logs can help you troubleshoot bugs that can happen inside your chatbot. It can save you a lot of time trying to figure this out yourself otherwise.

To access the error log you can go to Tools from the left-hand menu, then select the first tab called Error logs.

From here you will have a complete overview of all errors that have happened in the chatbot.

title

From here you can see the date of the error, the kind of error, which user it affected, which sub flow it happened in along with the node that has the error, and more information.

If you press on the node of the error message it will take you directly to the point where the issue was registered at.

This will speed up troubleshooting immensely and save you hours you otherwise would waste in trying to find the bug.

Admins

Besides the regular members, you can invite to your workspace you can also invite admins to your chatbot only.

With a condition you can set up admin menus for them they can access like getting a report or wanting to get some insights into the chatbot.

Invite and manage admins

To invite an admin go to Tools from the left-hand menu and select the Admins tab on top.

From here you will get to the main overview.

title

To add a new admin the user you want to invite needs to be a subscriber to your chatbot. If they are then press the button on the top-right corner named + New Admin.

From here a pop-up window will appear where you can search for and add a new admin.

title

Just type in the name of the person you want to have as an admin and press the plus sign to have them added as an admin. Once you press the plus sign you will return to the main menu where you can manage all admins.

title

At the right of each admin, you have the option to delete them if you like.

How to set up an admin flow

Now that you have appointed an admin you can set up admin specific flows for them. This is ideal if you want to give a business owner some insights as to what is going on inside the chatbot but don’t want to give access to the backend of that chatbot.

Just go to any flow you like and insert a condition block. From here search for the condition Is Admin.

If the condition is set to yes you can send the admin to the admin mode where you can set up access to whatever you like.

An example could be;

title

It is a great way for business owners to get access to certain features on the front end while not having to worry about them having access in the backend.

Widgets

For Facebook bots, you can set some widgets to quickly start talking to the bot. To setup:

  1. go "Tools" from the left sidebar

  2. click "Widgets"

  3. "+ New Widget"

Messenger Ref URL Widget

  1. put a widget name

  2. choose a sub flow the link goes to

(leave 3 and 4 blank if no reference is needed)

  1. put a parameter name

  2. assign a custom user field

What does the Ref parameter do?

For instance, you make a messenger ref URL to your main flow, so that by visiting this URL, your users can start talking to your bot.

However, you would like to gather more information from the link, like where did your users get the link? In this case, you can put "source" in area 3 and a variable to store the source at area 4 in the above picture.

Later, add a source name in your link according to where do you put it. This is how you get extra information from the link.

After filling in all the information, click "Save" and click the pencil to edit this widget, you will see a unique URL generated for this widget:

widget

So here, by visiting any of the following links, your users can start talking to your bot:

example link

value in variable "source"

https://m.me/102942588321862?ref=source

https://m.me/102942588321862?ref=source--advertisement

advertisement

https://m.me/102942588321862?ref=source--shared_by_users

shared_by_users

https://m.me/102942588321862?ref=source--promoted_by_sales

promoted_by_sales

Yes, you might notice that by adding "--xxx" after the link, the value "xxx" will be transferred to the bot.

QR Code Widget

URL links are convenient to click via electronic way while QR codes are more suitable for on-site use. By scanning a QR code, your users can start talking to your bot.

widget

To setup:

  1. give a widget name

  2. select a sub flow

  3. upload your logo image

  4. adjust image size if needed

  5. adjust color if needed

  6. adjust dot scale if needed

  7. click "Generate" to get an image on the right. Repeat step 4, 5 and 6 to get a final image

  8. download your QR code, print it and put it in your store, restaurant, office, etc

Customer Chat Widget

This widget is to be embedded on your website, so that your website can have a bot serving users as gochat.hyppo.io do:

widget

To setup:

  1. give a widget name

  2. select a sub flow

  3. adjust theme color if needed

  4. adjust greeting message which will be shown above the "Continue as xx" button (see in the previous picture).

  5. select a display type

  6. adjust the delay if the second or the third display type is selected

  7. for payload, see explanation in Messenger Ref URL above.

Click "Save" after finishing all the settings, again, click the pencil to edit this widget and you will see this button:

widget

Click it.

widget

Add the websites that you want to put this bot at. Then install the snippet by copying and pasting the code.

Perfect! 😎 You got a bot on your website now.

Multiple Languages

With GoChat you have the ability to provide a multiple language chatbot experience. It is very easy to set up as well.

How to add a new language

To add a new language just go to Tools from the left-hand menu, then select the Multiple languages tab.

title

From here just press the button in the top-right corner named + New language. Once pressed a popup window will appear where you can select a new language.

Inbound Webhooks

Inbound webhook is a powerful tool to receive data from anywhere to the chatbot through a POST request.

With inbound webhooks, your bot can even start a conversation with a bot user who never talked to it before.

For example, when a client fills in their contact information on your website, you send the data to an inbound webhook of a chatbot, say an SMS bot. The SMS bot can then send a confirmation message to the client's phone number.

If that webhook is built in a Voice bot, the bot can even call the client right away!

Limitation

Each bot has up to 5 inbound webhooks.

Create Inbound Webhook

It's available in almost all channels, in your flow builder, go Tools - Inbound Webhooks:

inbound webhook

Click on New Inbound Webhook, give a name and click Save:

inbound webhook

You will see the editing interface like this:

inbound webhook

Webhook Address

This area shows you where to send the data and the method, which is POST. Each inbound webhook has a unique URL in the whole GoChat system.

Example of Received JSON

This area shows an example JSON for reference. It describes the structure of the data in the JSON we received later. We need it to find the values for both **user identification ** and data to save.

There are 2 ways to get an example JSON:

  1. manually type/paste it here

  2. listen to a real-time data from a live test

Values to Identify a User

Whenever the webhook receives data, it first checks the paths you specify here to see whether it can find an existing user in the chatbot.

If the user is not in the system, the chatbot will create a new profile. That's how the chatbot initiates a conversation without talking to the user before.

However, some channels don't allow the chatbot to start the conversation first due to privacy and spam issues.

For example, your SMS bot can send messages as long as you have the recipient's phone number, while your Facebook Messenger chatbot cannot send messages to a Facebook user who never talked to your bot before.

Process for User Identification

This is the process of how the system identifies a user:

  1. check user_ns

  • if there is a valid user_ns, user found.

  • if not, next step

  1. check phone / email

  • if we can find a user by the phone or email, user found.

  • if not, next step

  1. verify phone

  • no user matched in the system, is the phone a valid number?

  • if yes, user profile created.

  • if not, webhook won't be processed

Mapping Area

The mapping list shows which value should be stored in which custom field. When you get a sample JSON in the above area, click on Preview Payload to get a mapping tool.

Webhook Logs

Every single request is saved in Logs. Click on a record to see the received JSON data.

Demo: Booking Confirmation

A perfect tool to test your inbound webhook is already built-in everywhere! Simple get a chatbot (whatever channel), test it in an Action Step.

Open another GoChat webpage side by side, keep the inbound webhook editing on Page 1 and select an external request on Page 2:

inbound webhook

Follow steps 1 to 8 in the following screenshot:

inbound webhook

Provide the data that need to be sent to the chatbot and click Test, you must get a "webhook inactive" error since we haven't activated it yet. It's fine, click on Done on Page 1, and you will see the data saved:

inbound webhook

Scroll down a bit, follow steps 1, 2, 3 to tell the system, where is the phone and email values in the JSON:

inbound webhook

Finally, map the rest data to the chatbot:

inbound webhook

Save your inbound webhook editing:

inbound webhook

Enter the subflow, let's send a message to the bot user:

inbound webhook

Publish the flow and let's do a live test in the external request again:

inbound webhook

We can see that this time it run without error because we activated the webhook and used a real phone number. Go to Logs and we can see a new user profile is created successfully.

On the user side:

inbound webhook

Broadcasts

Use this feature to broadcast messages to your users! Just a few settings needed.

broadcast

Go "Broadcasts" from the left sidebar, then click "+ New Broadcast".

broadcast

To setup:

  1. give a broadcast title (for yourself, not users)

  2. select a sub flow

  3. add conditions to filter who will receive this broadcast message

broadcast

TIP

to send to all users, try this condition "If User Id has any value".

broadcast

Filling in the rest settings like message type and time to send then click "Save". (Which message type should I choose?)

If you choose "Now" for the schedule, the message will be sent once you click "Save". If not, you can cancel the broadcast anytime before it sent.

broadcast

Here is also where you check broadcast history and data.


Last updated