Вероятно, вам следует заполнять соответствующие поля для каждого вызова API, чтобы обрабатывать различные типы пользовательского ввода. key
используется для обозначения элемента, о котором идет речь. Если отображается список, вам нужно будет использовать key
, чтобы определить, на что щелкнули. Пользователь может щелкнуть элемент списка, чтобы выбрать его. Однако они также могли сказать то, что хотят. Вот здесь и пригодятся псевдонимы.
Допустим, вы брали список научных статей. Хотя длинные статьи могут не подойти для озвучивания, их можно оформить следующим образом:
function list () {
const app = new DialogflowApp({request, response});
app.askWithList('Alright! Here are some articles about memristors! Which do you want?',
// Build a list
app.buildList('Memristor Research')
// Add the first item to the list
.addItems(app.buildOptionItem('TITLE_OF_FIRST_PAPER',
['title of first paper', 'first'])
.setTitle('Title of First Paper')
.setDescription('S. Smith, Ph. D')
// Add the second item to the list
.addItems(app.buildOptionItem('TITLE_OF_SECOND_PAPER',
['title of second paper', 'second'])
.setTitle('Title of Second Paper')
.setDescription('H. Paul, Ph. D')
)
);
}
В этом фрагменте, если я скажу, что хочу первую статью, я получу ее без необходимости указывать полный заголовок, сохраняя при этом взаимодействие без помощи рук. key
позволит мне определить статью, которую следует прочитать.
Вы можете использовать название статьи или, возможно, URL-адрес ссылки, чтобы обработать его и предъявите карточку с дополнительной информацией, включая URL.
Вам не нужно утверждать каждый URL вручную. В документации указано:
- Разрешены ссылки на сайты вне домена разработчика.
- Текст ссылки не может вводить в заблуждение. Это проверяется в процессе утверждения.
Если вы говорите прямо, пользователи смогут напрямую открывать статью в браузере, щелкнув ссылку на карточке.
Дополнительная информация доступна в документации.
person
Nick Felker
schedule
23.01.2018