Как реализовать API разрешений в Dialogflow

#dialogflow-es #user-permissions

#dialogflow-es #пользователь-разрешения

Вопрос:

Я использую dialogFlow для получения сведений о пользователе (имя, местоположение, номер). Затем я отправляю эту информацию по электронной почте. У меня есть два намерения: один спрашивает пользователя, получили ли они помощь, если не срабатывает второе намерение, второе намерение — это тот, кто отвечает за получение данных клиента.

Как я могу реализовать API разрешений, чтобы Google мог опубликовать мой проект?

Ответ №1:

Вы можете использовать конструктор разрешений, чтобы запрашивать разрешения у агентов в текущем контексте.

В карте намерений

 intentMap.set("LocationIntent - yes", senderLocationYes);
intentMap.set("LocationIntent - yes", senderLocationAccess);


function senderLocationYes(agent) {
    const conv = agent.conv();
    conv.ask(
        new Permission({
            context: "To use your location for tracking purpose",
            permissions: "DEVICE_PRECISE_LOCATION"
        })
    );
    agent.add(conv);
}

function senderLocationAccess(agent) {
    const conv = agent.conv();
    const location = conv.device.location;
    console.log(location);// here is the location
    conv.ask('Great ! I will need few more details. Plese help me with that.');
    conv.ask('What is your good name ?');
    agent.add(conv);
}
  

Пожалуйста, не забудьте настроить это намерение в вашей карте намерений, а также в потоке диалога.