easily build a faq spark bot with ibm watson

54
Giuliano Iacobelli, Co-founder / CEO [email protected] Easily Build a FAQ Spark Bot with IBM Watson and Stamplay Cooking time: 30 mins

Upload: giuliano-iacobelli

Post on 21-Mar-2017

578 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Easily Build a FAQ Spark Bot with IBM Watson

Giuliano Iacobelli, Co-founder / CEO [email protected]

Easily Build a FAQ Spark Bot with IBM Watson and Stamplay

Cooking time: 30 mins

Page 2: Easily Build a FAQ Spark Bot with IBM Watson

Chat UX is more natural, dynamic and avoid any friction opening new accounts

The ideal user engagement channel Messaging platforms aim to change the way brands communicate with consumers

More than 900 million monthly active users only on Facebook Messenger

In 2015 messaging apps have been the fastest growing In the global Top 10 of most used apps 6 are messaging apps

No need to download yet another app

Page 3: Easily Build a FAQ Spark Bot with IBM Watson

Ingredients The bot will be available on Cisco Spark, will use IBM Watson Conversation to handle

natural language and will be implemented using Stamplay.

Page 5: Easily Build a FAQ Spark Bot with IBM Watson

Create an account on Stamplay Go to https://editor.stamplay.com/signup and create your account for free

Page 6: Easily Build a FAQ Spark Bot with IBM Watson

Create the project on Stamplay Once inside, click on the green “+” button in the upper right corner and select Start from Scratch

Page 7: Easily Build a FAQ Spark Bot with IBM Watson

Create the project on Stamplay Type a name for your project

Page 8: Easily Build a FAQ Spark Bot with IBM Watson

Grab your credentials from Watson Conversation Enter your Bluemix account get the credentials for the Watson Conversation service

Page 9: Easily Build a FAQ Spark Bot with IBM Watson

Connect IBM Watson Converstion on Stamplay On Stamplay go to Dashboard > Integrations and search IBM Watson Conversation

Page 10: Easily Build a FAQ Spark Bot with IBM Watson

Copy your Watson Conversation credentials Copy Username and password and then click “Connect”

Page 11: Easily Build a FAQ Spark Bot with IBM Watson

Create your Cisco Spark bot Go to https://developer.ciscospark.com/apps.html and create a Bot

Page 12: Easily Build a FAQ Spark Bot with IBM Watson

Fill basic info for your bot Icon URL https://dl.dropboxusercontent.com/u/397182/logo_white_512x512.png

Page 13: Easily Build a FAQ Spark Bot with IBM Watson

Save the Access Token Once the bot is created you’ll see an Access token, copy it and save it somewhere

Page 14: Easily Build a FAQ Spark Bot with IBM Watson

Connect Cisco Spark Bot on Stamplay On Stamplay go to Dashboard > Integrations and search Cisco Spark bot

Page 15: Easily Build a FAQ Spark Bot with IBM Watson

Copy your Spark bot token Copy the Access Token you got before and then click “Connect”

Page 17: Easily Build a FAQ Spark Bot with IBM Watson

Launch the Watson Conversation tool From your Bluemix account enter the Conversation service and click Launch Tool

Page 18: Easily Build a FAQ Spark Bot with IBM Watson

Import the dialogue model Click the icon next to “Create” button and upload the dialogue model

https://app.box.com/s/tit657t7pwe3z020s3x66pwr7va20h6t

Page 19: Easily Build a FAQ Spark Bot with IBM Watson

Dialogue overview: Intents A set of intents are used to return answers to known questions

Page 20: Easily Build a FAQ Spark Bot with IBM Watson

Dialogue overview: Intents #when_it_burns intent handles questions like “what night does the man burn?”

Page 21: Easily Build a FAQ Spark Bot with IBM Watson

Dialogue overview: Intents #when_it_is intent handles questions like “what are the dates for the event?”

Page 22: Easily Build a FAQ Spark Bot with IBM Watson

Dialogue overview: Intents #where_is_it intent handles questions like “where is the festival located”

Page 23: Easily Build a FAQ Spark Bot with IBM Watson

Dialogue overview: Intents #what_is_it intent handles questions like “what is the burning man?”

Page 24: Easily Build a FAQ Spark Bot with IBM Watson

The Dialogue model An Start node of the dialogue tree handles the initial conversation

Page 25: Easily Build a FAQ Spark Bot with IBM Watson

The Dialogue model Create a root node for each intent that can answer a question (e.g #what_is_it)

Page 26: Easily Build a FAQ Spark Bot with IBM Watson

The Dialogue model Create a root node for each intent that can answer a question (e.g #where_is_it)

Page 27: Easily Build a FAQ Spark Bot with IBM Watson

Connect to Spark

Page 28: Easily Build a FAQ Spark Bot with IBM Watson

Inizializing the integration Flow Go to Flows and start by selecting the Cisco Spark bot app from the list

Page 29: Easily Build a FAQ Spark Bot with IBM Watson

Configure the event that starts the flow We’ll start this flow everytime the bot receives a New Direct Message

Page 30: Easily Build a FAQ Spark Bot with IBM Watson

Select the event that starts the flow Click on continue when you get to the Account tab, we’ve connected this before

Page 31: Easily Build a FAQ Spark Bot with IBM Watson

Adding a steps to your flow After each step of your workflow you can define the following action by moving your

mouse hover the + icon

Page 32: Easily Build a FAQ Spark Bot with IBM Watson

Add a Contidion step to filter bot messages Spark triggers this event also when is the bot itself writing so we filter out its messages

with a condition step that checks for the sender email address

Page 33: Easily Build a FAQ Spark Bot with IBM Watson

Checking if the message is sent by the bot Click on the first dropdown on the left and select personEmail, this will be the property we

use to recognize if is a bot writing ([email protected])

Page 34: Easily Build a FAQ Spark Bot with IBM Watson

If the condition is met stop the flow To run a branch of our flow only when the condition is met let’s add a step that will be

executed IF TRUE.

Page 35: Easily Build a FAQ Spark Bot with IBM Watson

Adding a Stop step After clicking IF TRUE, select STOP to add a step that will terminate flow execution.

Page 36: Easily Build a FAQ Spark Bot with IBM Watson

Saving the Stop step Save the new step without any additional configuration and you’re good to go

Page 37: Easily Build a FAQ Spark Bot with IBM Watson

Retrieve message content The New Message trigger of Spark only pass an ID of the message received without

content. To read the actual message we add the Get Message action.

Page 38: Easily Build a FAQ Spark Bot with IBM Watson

Passing data from step to step To use a Message Id from a previous step. Click on the “{}” button to see the steps

available to fetch data from and select New Direct Message.

Page 39: Easily Build a FAQ Spark Bot with IBM Watson

Passing data from step to step Click on the id attribute of the message JSON representation sent by Spark

Page 40: Easily Build a FAQ Spark Bot with IBM Watson

Passing data from step to step Stamplay will add a parameter inside the input field and will automatically replace it with

the actual value of the id of the New Direct Message that will trigger this flow

Page 41: Easily Build a FAQ Spark Bot with IBM Watson

Passing the message to Watson Now that we have the message that has been type by the user we can pass it to Watson,

add a new Action and select IBM Watson Conversation

Page 42: Easily Build a FAQ Spark Bot with IBM Watson

Passing the message to Watson Select the only action available, Conversation

Page 43: Easily Build a FAQ Spark Bot with IBM Watson

Passing the message to Watson Fill the parameters by passing the Workspace ID and the text. Workspace Id is available on

the Watson Conversation tool home, text will be passed by the previous step.

Page 44: Easily Build a FAQ Spark Bot with IBM Watson

Getting the Workspace Id On your account of the Watson Conversation tool you can find the workspace Id

by entering the Workspace details

Page 45: Easily Build a FAQ Spark Bot with IBM Watson

Passing the message to Watson Select the text attribute from the JSON representation passed by the Get Message action

Page 46: Easily Build a FAQ Spark Bot with IBM Watson

Passing the message to Watson Stamplay will add a parameter inside the input field and will automatically replace it with

the actual value of the text of the Get Message action

Page 47: Easily Build a FAQ Spark Bot with IBM Watson

Returning the answer to the User The last step of our flow is to return the answer computed by IBM Watson Conversation.

Add one more action and select Cisco Spark Bot Post Message action

Page 48: Easily Build a FAQ Spark Bot with IBM Watson

Returning the answer to the User The Room dropdown shows us all the room where the bot is currently available. Click on

Type a custom value to be able to pass here a dynamic value

Page 49: Easily Build a FAQ Spark Bot with IBM Watson

Returning the answer to the User Once che cursor is blinking, click on the “{}” button to grab a valid Room Id from the New

Direct Message step of this flow

Page 50: Easily Build a FAQ Spark Bot with IBM Watson

Returning the answer to the User Select the roomId attribute from the JSON representation

Page 51: Easily Build a FAQ Spark Bot with IBM Watson

Returning the answer to the User Text field will be filled by passing the result returned by IBM Watson Conversation, once

again click the “{}” button to open the dropdown with the previous step of the flow

Page 52: Easily Build a FAQ Spark Bot with IBM Watson

Returning the answer to the User After selecting IBM Watson Conversation select the text attribute nested under output

Page 53: Easily Build a FAQ Spark Bot with IBM Watson

You’re all set The final flow should look like this, make sure it’s on by checking the switch

Page 54: Easily Build a FAQ Spark Bot with IBM Watson

Giuliano Iacobelli [email protected] +1 (415) 481 8606

Got Questions?