Responses

The output responses given by the bot during the conversation.

AttributeDescription
action (Mandatory)  Action performed by the bot
replies (Mandatory)The replies given by the bot for the particular action
inputThe input type displayed to the visitor by  bot
suggestions

The response suggestions given by the bot. When a response contains both input and suggestions, Zobot will consider only the input and ignore the suggestions. Any interaction can have one type of input either a input widget or a free form text supported by suggestions.

Note: Visitors cannot enter any text manually when suggestions are displayed in the chat widget.

​​Use cases:

Use case 1: Bot can handle the visitor on its own by providing the replies to the visitor queries. 

SalesIQ Script Input:

{

  "action": "reply",
  "replies": [
    "Thanks for contacting us today, How may I help you today?",
    {
      "text": "What would you like to know about today ?",
      "image": "https://zylker.com/home.png"
    }
  ],
  "suggestions": [
    "Book an appointment",
    "Talk to the operator",
    "Show Reference Guides"
  ]
}

Dialogflow Input:


{
  "platform": "ZOHOSALESIQ",
  "action": "reply",
  "replies": [
    "Thanks for contacting us today, How may I help you today?",
    {
      "text": "What would you like to know about today ?",
      "image": "https://zylker.com/home.png"
    }
  ],
  "suggestions": [
    "Book an appointment",
    "Talk to the operator",
    "Show Reference Guides"
  ]
}

Watson Assistant:


{
  "output": {
    "user_defined": {
      "zohosalesiq": {
        "action": "reply",
        "replies": [
          "Thanks for contacting us today, How may I help you today?",
          {
            "text": "What would you like to know about today ?",
            "image": "https://zylker.com/home.png"
          }
        ],
        "suggestions": [
          "Book an appointment",
          "Talk to the operator",
          "Show Reference Guides"
        ]
      }
    }
  }
}

 

Use case 2: Bot is not trained to handle this visitor, so it would forward the chat to human. (Note: If your using the Operator Forward option in Watson Assistant, then on adding the operator's email address the domain of the address gets truncated by Watson. The truncation happens on using the special characters $ and @ in a word. In order to prevent that you will have to add the ' \\ ' before the domain name eg: " tricia \\ @zylker.com ".) 

SalesIQ Script Input:


​{
  "action" : "forward",
  "replies" : ["Thanks for contacting us today, You will be connected to our operator shortly"]
}

 

Dialogflow Input:


​{
  "platform": "ZOHOSALESIQ",
  "action": "forward",
  "replies" : ["Thanks for contacting us today, You will be connected to our operator shortly"]

}

Watson Assistant:


{
  "output": {
    "user_defined": {
      "zohosalesiq": {
        "action": "forward",
        "replies": [
          "Thanks for contacting us today, You will be connected to our operator shortly"
        ]
      }
    }
  }
}

 

Use case 3: Bot doesn't know how to handle this visitor, also it doesn't want to forward the chat to human (reason may include non-business hours or all the operators are busy with another chat.)

SalesIQ Script Input:


​{
  "action" : "operator_busy" ,
  "replies": [
    "Thanks for contacting us today, please leave a message and our operator will contact you shortly."
  ]
}

 

Dialogflow Input:


​{
  "platform": "ZOHOSALESIQ",
  "action": "operator_busy",
  "replies": [
    "Thanks for contacting us today, please leave a message and our operator will contact you shortly."
  ]
}

Watson Assistant:


{
  "output": {
    "user_defined": {
      "zohosalesiq": {
        "action": "operator_busy",
        "replies": [
          "Thanks for contacting us today, please leave a message and our operator will contact you shortly."
        ]
      }
    }
  }
}

 

Use case 4: Bot found vulnerability in the chat and it blocks the ip of the visitor immediately.

SalesIQ Script Input:


{
​  "action" : "block" ,
  "replies" : ["Sorry, you are blocked from accessing the chat window."]
}

 

Dialogflow Input:


{
  "platform": "ZOHOSALESIQ",
  "action": "block",
  "replies": ["Sorry, you are blocked from accessing the chat window"]
}

Watson Assistant:


{
  "output": {
    "user_defined": {
      "zohosalesiq": {
        "action": "block",
        "replies": [
          "Sorry, you are blocked from accessing the chat window"
        ]
      }
    }
  }
}

 

Use case 5: Bot doesn't know to handle the visitor and forwards the chat to a specific operator who is an expert in the topic.

SalesIQ Script Input:


{
  "action" : "forward",
  "operators" : {"scott.fisher@zylker.com"},
  "replies" : ["Sorry, Im not sure i can help you with this question. Connecting with an operator now.."]
}

 

Dialogflow Input:


{
  "platform": "ZOHOSALESIQ",
  "action": "forward",
  "operators" : {"scott.fisher@zylker.com"},
  "replies" : ["Sorry, Im not sure i can help you with this question. Connecting with an operator now.."]
}

Watson Assistant:

{
  "output": {
    "user_defined": {
      "zohosalesiq": {
        "action": "forward",
        "operators": {"scott.fisher@zylker.com"},
        "replies": [
          "Sorry, Im not sure i can help you with this question. Connecting with an operator now.."
        ]
      }
    }
  }
}

 

Use case 6: To end the chat conversation. 

SalesIQ Script Input:

​{
  "action": "end"
}

 

Dialogflow Input:

​{
  "platform": "ZOHOSALESIQ",
  "action": "end"
}

Watson Assistant:

{
  "output": {
    "user_defined": {
      "zohosalesiq": {
		"action": "end"

      }
    }
  }
}

 

Use case 7: Bot wants to collect input with the calendar.

SalesIQ Script Input:

{
  "action" : "reply",
  "replies" : [
    "Thanks for reaching out to book an appointment with us",
    "Choose the data and time you would like to book ? "
  ], 
  "input" : 
  {
    "type" : "calendar"
  }
}

 

Dialogflow Input:

​{
  "platform": "ZOHOSALESIQ",
  "action" : "reply",
  "replies" : [
    "Thanks for reaching out to book an appointment with us",
    "Choose the data and time you would like to book ? "
  ], 
  "input" : 
  {
    "type" : "calendar"
  }
}

Watson Assistant:

{
  "output": {
    "user_defined": {
      "zohosalesiq": {
        "action": "reply",
        "replies": [
          "Thanks for reaching out to book an appointment with us",
          "Choose the data and time you would like to book ? "
        ],
        "input": {
          "type": "calendar"
        }
      }
    }
  }
}

 

Use case 8: Bot wants to collect multiple inputs to perform one action, hence returns a context.

SalesIQ Script Input:


{
    "action": "context",
    "context_id": "book_appointment",
    "questions": {
        {
            "name": "movie",
            "replies": {
                {
                    "text": "Ok, Lets make a booking with your sales execute !",
                    "icon": "https://zylker.com/meeting.jpg"
                },
                "Choose the department you would like to book appointment for ?"
            },
            "suggestions": {
                "Books",
                "SalesIQ",
                "CRM"
            }
        },
        {
            "name": "show_timing",
            "replies": {
                "Thats a great movie to watch !",
                "Choose the date for the show ?"
            },
            "input": {
                "type": "calendar",
                "time": "false",
                "tz": "true"
            }
        }
    }
}

Use case 9: On using the field_name, the bot will update the name, email and phone number of the visitor automatically to the chat window.

SalesIQ Script Input:


{
  "action": "context",
  "context_id": "details",
  "questions": [
    {
      "text": "Your email address",
      "field_name": "siq_email"
    },
    {
      "text": "Your name",
      "field_name": "siq_name"
    },
    {
      "text": "Your contact number",
      "field_name": "siq_phone"
    }
  ]
}