\documentclass[10pt,a4paper]{article} % Packages \usepackage{fancyhdr} % For header and footer \usepackage{multicol} % Allows multicols in tables \usepackage{tabularx} % Intelligent column widths \usepackage{tabulary} % Used in header and footer \usepackage{hhline} % Border under tables \usepackage{graphicx} % For images \usepackage{xcolor} % For hex colours %\usepackage[utf8x]{inputenc} % For unicode character support \usepackage[T1]{fontenc} % Without this we get weird character replacements \usepackage{colortbl} % For coloured tables \usepackage{setspace} % For line height \usepackage{lastpage} % Needed for total page number \usepackage{seqsplit} % Splits long words. %\usepackage{opensans} % Can't make this work so far. Shame. Would be lovely. \usepackage[normalem]{ulem} % For underlining links % Most of the following are not required for the majority % of cheat sheets but are needed for some symbol support. \usepackage{amsmath} % Symbols \usepackage{MnSymbol} % Symbols \usepackage{wasysym} % Symbols %\usepackage[english,german,french,spanish,italian]{babel} % Languages % Document Info \author{PRAKHAR} \pdfinfo{ /Title (dialogflow-chatbot-creation.pdf) /Creator (Cheatography) /Author (PRAKHAR) /Subject (DIALOGFLOW CHATBOT CREATION Cheat Sheet) } % Lengths and widths \addtolength{\textwidth}{6cm} \addtolength{\textheight}{-1cm} \addtolength{\hoffset}{-3cm} \addtolength{\voffset}{-2cm} \setlength{\tabcolsep}{0.2cm} % Space between columns \setlength{\headsep}{-12pt} % Reduce space between header and content \setlength{\headheight}{85pt} % If less, LaTeX automatically increases it \renewcommand{\footrulewidth}{0pt} % Remove footer line \renewcommand{\headrulewidth}{0pt} % Remove header line \renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit % This two commands together give roughly % the right line height in the tables \renewcommand{\arraystretch}{1.3} \onehalfspacing % Commands \newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour \newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols \newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns \newcommand{\tn}{\tabularnewline} % Required as custom column type in use % Font and Colours \definecolor{HeadBackground}{HTML}{333333} \definecolor{FootBackground}{HTML}{666666} \definecolor{TextColor}{HTML}{333333} \definecolor{DarkBackground}{HTML}{511CFF} \definecolor{LightBackground}{HTML}{F4F0FF} \renewcommand{\familydefault}{\sfdefault} \color{TextColor} % Header and Footer \pagestyle{fancy} \fancyhead{} % Set header to blank \fancyfoot{} % Set footer to blank \fancyhead[L]{ \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{C} \SetRowColor{DarkBackground} \vspace{-7pt} {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}} } \end{tabulary} \columnbreak \begin{tabulary}{11cm}{L} \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{DIALOGFLOW CHATBOT CREATION Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{PRAKHAR} via \textcolor{DarkBackground}{\uline{cheatography.com/123193/cs/23126/}}} \end{tabulary} \end{multicols}} \fancyfoot[L]{ \footnotesize \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{LL} \SetRowColor{FootBackground} \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}} \\ \vspace{-2pt}PRAKHAR \\ \uline{cheatography.com/prakhar} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Published 6th June, 2020.\\ Updated 6th June, 2020.\\ Page {\thepage} of \pageref{LastPage}. \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}} \\ \SetRowColor{white} \vspace{-5pt} %\includegraphics[width=48px,height=48px]{dave.jpeg} Measure your website readability!\\ www.readability-score.com \end{tabulary} \end{multicols}} \begin{document} \raggedright \raggedcolumns % Set font size to small. Switch to any value % from this page to resize cheat sheet text: % www.emerson.emory.edu/services/latex/latex_169.html \footnotesize % Small font. \begin{multicols*}{4} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{DIALOGFLOW CHEAT SHEET PART-1}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{1. Start Small:-} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{3.833cm}}{Start with something small as your chatbot version 1.0 and then iterate for a version 2.0 after you've collected enough data to know what's working well and what needs polishing. You can learn a lot about your users' behavior with simple functionality, which will also help you tweak future versions of your bot. But first, build your infrastructure. To test your chatbot more easily, always set the part you want to test as default. That way you avoid going through the whole flow.} \tn % Row Count 11 (+ 10) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{To-do: Take a piece of paper and draw a mind map If you don't like paper find mind mapping software First, create your folders Then add the flows Set-up a persistent menu with a "Start again" option} \tn % Row Count 16 (+ 5) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{DIALOGFLOW CHEAT SHEET PART-2}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{2. Consider Your Chatbot's Personality:-} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{3.833cm}}{Poncho the Weather Cat makes jokes, has a story, and sometimes talks in memes. He's also reliable and accurate with the information he provides. Think about creating a personality for your bot. How should it address your users? Does it say hi, what's up, or how do you do? Does it have a name? Develop a character with a distinct style and stick with it, because if you start mixing different speaking styles, your customers will feel like they're interacting with some random customer service rep, instead of the chatbot you've spent hours developing.} \tn % Row Count 13 (+ 12) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{To-do: Choose a name for your chatbot Prepare the greeting: Hi, Hello, Salutations… Find an image that represents your chatbot} \tn % Row Count 16 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{DIALOGFLOW CHEAT SHEET PART-3}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{3. Manage Expectations, and Don't Try to Fool Anyone} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{3.833cm}}{Don't try to fool your customers into thinking your chatbot is a human agent. What you can do is give the bot human-like qualities, such as a sense of humor. It might also be a good idea to explain to customers the scope of activities the chatbot can help with. Once you've established the tone of voice, think about the type of content you want your bot to deliver. Preferably this is a combination of text, photos, emojis and videos. Make it rich!} \tn % Row Count 12 (+ 10) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{To-do: Write the chatbot's introduction line Explain the scope of your chatbot's capabilities Find a set of pictures that you want to use in communication} \tn % Row Count 16 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{DIALOGFLOW CHEAT SHEET PART-4}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{4. Compose a Greeting Message:-} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{3.833cm}}{You have 160 characters in the greeting text to communicate your bot's purpose and set your customer's expectations. Once the greeting text is set up, it will override the description that was pulled from your Facebook company page. The greeting text isn't the same as the first message or conversation. The first message comes right after a visitor engages. It's the first conversational text or media. Your greeting text adds specificity and sets visitor expectations.} \tn % Row Count 11 (+ 10) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{To-do: Write 2 or more greeting messages for variety} \tn % Row Count 13 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{DIALOGFLOW CHEAT SHEET PART-5}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{5. Specify Your Customer's Interests:-} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{3.833cm}}{Help customers find what they need by offering a simple selection of choices. You should use a menu bar when building your flows. Think about the structure of choices you want to give your customer. To help select your choices you may choose a gallery accompanied by pictures.} \tn % Row Count 7 (+ 6) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{To-do: Define the decision trees your customer will go through Decide which decision tree will be better as a horizontal menu with pictures, and which will be displayed as a simpler vertical menu} \tn % Row Count 11 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{3.833cm}}{\bf\textcolor{white}{DIALOGFLOW CHEAT SHEET PART-6}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{3.833cm}}{Buttons:-} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{3.833cm}}{Chatbots allow the customer to pick the next step by showing a maximum of 3 buttons per bubble. Buttons have many characteristics and functions, including: 20 characters Opening a URL Calling a phone number Opening a shared dialog in Messenger Forwarding to another flow The shorter you make the text on the button, the better.} \tn % Row Count 8 (+ 7) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{3.833cm}{p{0.65825 cm} p{0.65825 cm} p{0.65825 cm} p{0.65825 cm} } \SetRowColor{DarkBackground} \mymulticolumn{4}{x{3.833cm}}{\bf\textcolor{white}{HELPFUL CODES FOR DIALOGFLOW}} \tn % Row 0 \SetRowColor{LightBackground} ADDING IMAGES & ADDING LINKS & ADDING VIDEOS & ADDING BUTTONS \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \{ "images": {[} \{ "src": "IMAGE SOURCE", "alt": "ALT TEXT", "width": "100\%" "url": "URL OPENED WHEN IMAGE IS CLICKED" \} {]} \} & \{ \seqsplit{"linkButtons":} {[} \{ "text": "LINK BUTTON TEXT", "url": "LINK BUTTON URL" \} {]} \} & \{ "videos": {[} \{ "url": "VIDEO URL", "width": "100\%" \} {]} \} & \{ \seqsplit{"buttons":} {[} "BUTTON 1", "BUTTON 2" {]} \} \tn % Row Count 19 (+ 17) \hhline{>{\arrayrulecolor{DarkBackground}}----} \SetRowColor{LightBackground} \mymulticolumn{4}{x{3.833cm}}{IF YOU HAVE ANY DIFFICULTY EMAIL ME \seqsplit{TO-aichronicles2482005@gmail}.com.} \tn \hhline{>{\arrayrulecolor{DarkBackground}}----} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}