I am wondering if there are any agreed upon naming conventions for intents, events and contexts in Dialogflow.
If there are none, then I would appreciate if you shared your own naming conventions!
I find that it's a bit of a contradiction to say 'it doesn’t really matter as long as it‘s easy to understand for others'. If there were naming conventions, it would be much easier for someone to understand a new Dialogflow bot.
Here's my take:
I use dots to group intents and imply a hierarchy. The first part of the intent name is ideally just one word that clearly indicates the main subject of the intent. For example
name
would be an intent that receives a user's name as an input. name.confirm
would be the follow-up intent that receives confirmation of the name. name.confirm.yes
would be the intent where the user has given confirmation.
This is in the context of a bot which is gathering contact data so the input function is implied. In a more mixed-type chatbot, you could add the type of intent as a first word to categorize your intents better. E.g. input.name.confirm.yes
or FAQ.shipping.overseas
or smalltalk.agent.location
('Where are you?').
I use the same approach for fallback intents: fallback.name
would be the fallback intent that is triggered when the bot is waiting for the user to input their name but doesn't understand the answer.
For contexts I use snake case. For example awaiting_email
would be the context that is set when the bot is waiting for the user to input their email address. After I have the email address I would set a context email
to carry forward the information so that other intents can use it as a context. Or if I'm collecting several pieces of data about the user, I will set the context user
and other intents can access certain parameters e.g. via user.email
.
I made a video about the topic as well: https://youtu.be/kgKuS2RJcy4
It's obvious that everyone is coming from a slightly different angle because their area of application is different. I'm sure we'll get to a common standard eventually!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With