Conversations

Conversations are made up of a series of individual interactions, but are more than the sum of their parts. For more complicated Skills conversations are a necessity.

Any time the user needs to input a lot of information or the user needs to sort through a variety of options a conversation will be needed. Users may be used to systems that require them to separate input into different chunks. For example, many personal navigation devices (GPS units) require users to input the street number, street name, city, and state separately, like this:

Speaker

Navigation Device

What is the street number

User

123

Navigation Device

What is the street name

User

Main Street

Navigation Device

What is the city

User

Springfield

Navigation Device

Oregon

This was a limitation of the technology, both the STT and intent parser were not capable of handling an entire address. With Mycroft you do not need to separate the address into multiple inputs. It’s also easy to think like a traditional GUI and translate what are typically separate fields into prompts for the user, but that will only slows down the interaction.

The best solution is to allow the user to input information both ways, all at once, or in pieces. For example the Mycroft Alarm skill allows the user to set a complicated alarm all in one go, or in steps.

In Steps:

Speaker

User

Hey Mycroft, set a recurring alarm

Mycroft

For what day?

User

weekdays

Mycroft

For what time?

User

7 am

Mycroft

I've set a recurring Alarm for 7 am on weekdays

All at once:

Speaker

User

Hey Mycroft, set a recurring alarm for weekdays at 7 am

Mycroft

I've set a recurring Alarm for 7 am on weekdays

Context

Conversational context is a given when speaking to another person, but not always when interacting with a computer based system. Many skills are designed with only a quick back and forth interaction in mind, and can operate well without conversational context, but conversational context can be a powerful addition to a skill and can make the interaction much more life like. Here are some examples of how to use context in conversation.

Speaker

User

Who is Shaquille O'Neal

Mycroft

Shaquille O'Neal is an American former professional basketball player who is a sports analyst on the television program Inside the NBA on TNT. He is considered one of the greatest players in National Basketball Association history

User

How tall is he?

Mycroft

seven foot 1 inches tall

User

when did he retire

Mycroft

2011

To learn more about the technical aspects of Conversational Context, see: