Module Reference¶
The request_handler
Class¶
-
class
dialogflowpy_webhook.
request_handler
(dialogflowRequestJson)¶ This Class Handles the Parsing of Dialogflow Requests and get details like Intent, Parameters, Session ID etc
- Parameters
dialogflowRequestJson – The Dialogflow Request JSON
-
get_intent
()¶ Returns the Intent Dictionary which triggered the Webhook
- Raises
TypeError – This Error is Raised if the Intent Dictionary can’t be retived if the Request JSON is Malformed
- Returns
Intent Object
- Return type
dict
-
get_intent_name
()¶ Returns the Intent Name which triggered the Webhook
- Raises
TypeError – This Error is Raised if the Intent Name can’t be retived if the Request JSON is Malformed
- Returns
Intent Name
- Return type
str
-
get_intent_displayName
()¶ Returns the Intent Display Name (this is the Intent Name which you would have specified in Dialogflow) which triggered the Webhook
- Raises
TypeError – This Error is Raised if the Intent Display Name can’t be retived if the Request JSON is Malformed
- Returns
Intent Display Name
- Return type
str
-
get_parameters
()¶ Returns a Dictionary of filled Parameter Values
- Returns
Parameter Object
- Return type
dict
-
get_parameter
(param)¶ Returns a Parameter Value by Parameter Name
- Parameters
param – The Parameter name to retrive the Value
- Raises
KeyError – This Error is Rasied if the Parameter is not found
- Returns
Parameter Value
- Return type
str
-
get_action
()¶ Returns the Action Name Specified for the Intent
- Returns
Action Name
- Return type
str
-
get_session_id
()¶ Returns the Session ID of the Dialogflow Session
- Raises
TypeError – This Error is Raised if the Session ID can’t be retived if the Request JSON is Malformed
- Returns
Session ID
- Return type
str
-
get_context_by_name
(contextName)¶ Returns a Context Dictionary by Context Name
- Parameters
contextName (str) – The Context Name to retrive the Context JSON
- Raises
LookupError – This Error is Raised if The Context is not found
- Returns
Context Object
- Return type
dict
-
get_capabilities
()¶ Returns a list Google Assistant Capabilities for a particular surface (eg. Smart Display, Mobile Phone, Chromebook etc.) from where the bot is accessed.
- Returns
Capabilities List
- Return type
list
Note
This Feature is specific only for Google Assistant. This will return an empty list if the bot is accessed from platforms which are not Google Assistant
-
get_payload
()¶ Returns the Platform Specific Payload from where the request originated
- Returns
Payload Object
- Return type
dict
-
get_source
()¶ Returns the source where the request originated
- Returns
Source where the request originated
- Return type
str
The response_handler
Class¶
-
class
dialogflowpy_webhook.
response_handler
¶ The Class handles the creation of Dialogflow Responses
Note
There are 2 types of Rich Responses which can be created using this class. They are: Generic Rich Responses and Google Assistant Rich Responses. Generic Responses work on all platforms except Google Assistant. Functions that create generic responses start with ‘generic’. For Google Assistant, you should use Google Assistant Rich Responses. These functions start with ‘google_assistant’
-
add_context
(sessionID, contextName, lifespan=0, params={})¶ Adds/Changes a Dialogflow Context
- Parameters
sessionID (str) – The Session ID
contextName (str) – The name of the Context to add/edit
lifespan (int, optional) – The number of conversational turns for which the context remains active, defaults to 0
params (dict, optional) – The Dictionary of Data to store in the context, defaults to {}
-
trigger_event
(event, params, langcode='en-US')¶ Triggers a Dialogflow Event
- Parameters
event (str) – The Name of the Event to Trigger
params (dict) – The Dictionary of Parameters
langcode (str, optional) – The Language Code of the Agent, defaults to “en-US”
Note
When the response contains event, other things are ignored (except Contexts)
-
simple_response
(speech)¶ A Generic Text to be displayed or told to the user.
- Parameters
speech (str) – The Text to be displayed or said to the user
Note
simple_response
works on all platforms including Google Assistant. However, it is recommended to usegoogle_assistant_response
for Google Assistant andgeneric_rich_text_response
for text responses on other platforms.
-
generic_rich_text_response
(text)¶ A Generic Rich Text Response to display to the user. Unlike
generic_response
, you can have multiplegeneric_rich_text_response
- Parameters
text (str) – The Text to be displayed to the user
-
generic_card
(title, **kwargs)¶ A Generic Card to be displayed to the user
- Parameters
title (str) – The Title of the Card
subtitle (str, optional) – The Subitle of the Card
imageURL (str, optional) – The Link of the Image to be displayed on the card
Adds a button to a Generic Card. When clicked, directs to a website
- Parameters
btntitle (str) – The button’s title
btnlink (str) – The link to redirect to on click
- Raises
AttributeError – This Error is Raised if a new button is added before calling
generic_card
-
generic_add_suggestions
(suggestionList, **kwargs)¶ Adds Suggestion Chips/Quick Replies to be displayed.
- Parameters
suggestionList (str, optional) – The List of Suggestions/Quick Replies
title – The title of the Suggestions
-
generic_image
(imageURL, imgalt)¶ Sends an Image to the User
- Parameters
imageURL (str) – The URL of the Image
imgalt (str) – The Alt Text for the Image
-
google_assistant_response
(speech, **kwargs)¶ A Google Assistant speech to be said (and displayed) to the user
- Parameters
speech (str) – The Text to be said to the user
displayText (str, optional) – The text to be displayed in the chat bubble while telling the speech
endConversation (bool) – Specifies wheather this response should end the conversation or not
Note
This MUST Before any Google Assistant Rich Response. Failing to do so will result in an error in Google Assistant
-
google_assistant_card
(title, **kwargs)¶ A Google Assistant Card to be displayed to the user
- Parameters
title (str) – The Title of the Card
subtitle (str, optional) – The subtitle of the Card
formatted_text (str, optional) – The text to be displayed along with the card
btnName (str, optional) – The Name of the button to be displayed on the card
btnLink (str, optional) – The link to redirect on button click
imageURL (str, optional) – The URL of the image to be displayed on the card
imageAlt (str, optional) – The Alt Text of the image to be displayed on the card
imageDisplayOption (str, optional) – The Display options for the image (Click here For a list of image display options)
-
google_assistant_new_carousel
()¶ Creates a New Google Assistant Carousel
-
google_assistant_carousel_add_item
(title, url, imageURL, imgalt, description='', footer='')¶ Adds a new item to a Google Assistant Carousel
- Parameters
title (str) – The title of the carousel item
url (str) – The URL to redirect to when the Carousel item is clicked
imageURL (str) – The URL of the image to be displayed on the caarousel item
imgalt (str) – The Alt text of the image to be displayed on the caarousel item
description (str, optional) – The description to be displayed on the carousel item, defaults to “”
footer (str, optional) – The footer to be displayed on the carousel item, defaults to “”
- Raises
AttributeError – This Error is raised if a new item is added before calling
google_assistant_new_carousel
-
google_assistant_add_suggestions
(suggestionList)¶ Adds Google Assistant Suggestion Chips to be displayed
- Parameters
suggestionList (list) – The list containing the suggestions to be displayed
-
google_assistant_new_table
(**kwargs)¶ Creates a new Google Assistant Table Card
- Parameters
title (str, optional) – The title of the Table Card
subtitle (str, optional) – The subtitle of the Table Card
imageURL (str, optional) – The URL of the image to be displayed on the table card
imageAlt (str, optional) – The Alt text of the image to be displayed on the table card
-
google_assistant_table_add_header_row
(headerList)¶ Adds a Header row to a Google Assistant Table Card
- Parameters
headerList (list) – The list containing the header rows to be added
- Raises
AttributeError – This Error is raised if a header row is added before calling
google_assistant_new_table
-
google_assistant_table_add_row
(cellList, addDivider)¶ Adds a new row to a Google Assistant Table Card
- Parameters
cellList (list) – The list containing the rows to be added
addDivider (bool) – Specifies if a divider should be added after the row
- Raises
AttributeError – This Error is raised if a row is added before calling
google_assistant_new_table
-
google_assistant_media_response
(mediaURL, description, displayName, **kwargs)¶ Creates a Google Assistant Media Response to play music
- Parameters
mediaURL (str) – The URL where the music is located
description (str) – The description of the music
displayName (str) – The name of the music to display
imageURL (str,optional) – The URL of the image to be displayed along with the media response
imgAlt (str,optional) – The Alt Text of the image to be displayed along with the media response
-
google_assistant_ask_permisson
(speech, permissionList)¶ Asks for permission from user in Google Assistant to get details like User’s real name and address
- Parameters
speech (str) – The reason for the Permisssion Request
permissionList (list) – The list of Permissions to get from the user
-
create_final_response
()¶ Creates the Final Response JSON to be sent back to Dialogflow
- Raises
AttributeError – This error is raised if you try to insert Google Assistant Suggestions to a Google Assistant Rich Response with no items
- Returns
The Response JSON
- Return type
Dictionary
-