Triggers
Basic Concept
A Trigger is a way to notify the chatbot to send respective messages from a tree node or to trigger a global node. In general, a node can be matched by computing its trigger in the following ways:
- Developer-defined payload
- Keyword entered by users
- Intent matches with user input
- User comment on Facebook post
- URL parameters in m.me short link
Getting Hands-on
Click here to start creating a trigger in your tree node.
Create Trigger
- Go to Triggers at the top menu bar or click “+ New Trigger” button at the node inspector to create a new trigger.
- Select “+ Trigger” button to add a new Trigger.
- You can use the templates in Basic tab to create or edit your triggers. Below are the templates available on our chatbot builder right now:
- A new trigger is now created for your node. You could change other trigger at the Trigger section.
After filling in the Keyword or Payload name, don’t forget to change the trigger name and then click save to save the new trigger.
Trigger Templates
Stella currently supports the following trigger templates:
- Keywords: Text entered by users
- Payload: User-defined field that enables you to call an action
- Dialogflow: Select intent from Dialogflow
- LUIS: Select intent from LUIS
- Facebook Comment: User comment on Facebook post
- Referral Link: URL parameters in m.me short link
Keywords
Select Keywords/Payload to add keywords trigger. Keywords trigger means that your users must enter the text that exactly matches with the text you specified.
For example, if you would like your bot to respond when users send their greetings to you, you can set up a trigger for such scenario "Greeting". You should include all keywords that are common for user greetings, such as "hi", "hello" and "hey".
You can also click the "Aa" button on the right to enable "case sensitive" if you would like your users to enter the exact text following all in the corresponding uppercase and lowercase correctly. The button will turn into blue when you activate the function and grey when you inactivate it.
For synonyms in the same keyword group, you should just separate them all with ";". However, if you want to add more keyword groups, You may also click "+ Must also match…" to add additional keyword groups in case you want to specify more than one group of keywords.
Payload
Under Keywords/Payload, you can also set up payload triggers. Logically, you may only select either keywords trigger or payload triggers to determine user action because they cannot coexist at the same time.
Payload is usually used for button clicks by users. You can name your payload in anyway you want, you just need to note that payload name is case-sensitive and it has to match with the payload you set in the responses to trigger that particular response.
You may also click "+ Can also match…" to assign more than one payload in a trigger.
Dialogflow
If you want to use NLP to process user input, you may set up triggers following the Dialogflow trigger template. However, you must first enable the integration with Dialogflow on the integrations page.
Upon successful integration, you will be able to select your integrated Dialogflow account in the trigger template. You can view all your created intents in the intent dropdown and select one to create the corresponding trigger template.
Once selected, it means responses will be triggered when Dialogflow detects that user input matches the selected intent.
LUIS
Another option for NLP engine is LUIS. Similarly, you have to enable the integration with LUIS on the integrations page first.
Unlike Dialogflow, you will need to type out the intent name instead of selecting it from the dropdown. Remember you have to type in the exact name you created on LUIS portal.
Facebook Comment
If you are developing a chatbot for public reply and private reply, the Facebook Comment trigger template will be useful to you.
There are two things you must set: Facebook Page ID and Facebook Post ID. You could find both details on your Facebook page. If you want to limit chatbot activation to a specific text, please specify the keyword down below. If nothing specified, any comment will activate the chatbot.
Referral Link
If you are creating bots on Facebook Messenger platform, pay attention to this - every Facebook Messenger chatbot is assigned to a unique URL look like this: https://m.me/YourFacebookPage. This short link will redirect your users to your Messenger chatbot immediately.
However, you may place this short link in various platforms or advertising channels. How to differentiate the source where different button clicks are from?
You can add a parameter "ref" at the end to specify the referral reference of this URL, e.g. https://m.me/YourFacebookPage?ref=fromAd1. A referral reference "fromAd1" is assigned to this URL and you could look at all the tracking back in our Dashboard.
You should set up different referral references for different incoming sources so you can evaluate the performance across sources by the refs.
Advanced Settings
Apart from creating triggers from system templates, you may also customize your own triggers in advanced settings. Trigger is a logical group of conditions that set to initiate actions of a specific node. You may specify each condition with the logical operators AND
or OR
or parentheses ()
to show the correct relationship.
Each condition is a conditional statement. It is calculated to give a Boolean value. Then, combined with the logical operators and parentheses, a Boolean value is calculated for the trigger. A true
value will mark the node as matched
, while a false
value or a node without a trigger will be marked as not matched
.
Selecting a basic trigger and then switching to Advanced mode will give you the code behind any pre-defined triggers.
For more details on the advanced chatbot concept & usage, you may visit here.
Property | Description |
---|---|
Condition | Single condition that specifies one single property. |
Condition Group | A group of conditions that specify the same property but with different values. You should use this if there're multiple conditions within one trigger. |
And | For conditions that are mutually inclusive. |
Or | For conditions that are mutually exclusive. |
It is possible for one node to have multiple triggers. However, if the triggers are of different types, it is suggested to break them down into different global nodes so as to better track user journey.