Сбой разрешения SDK Node Dialogflow (dialogflow.sessions.detectIntent) - PullRequest
0 голосов
/ 14 мая 2018

У меня проблема с интеграцией API Node DialogFlow.

У меня не может быть необходимых разрешений для выполнения вызовов API, хотя я следовал всей возможной документации.

Вот мойУчетная запись службы агента от администратора Dialogflow:

DialogFlow Service Account Затем роли учетной записи службы:

Service Account Authorizations

Детали роли «Client de l'API Dialogflow», где мы можем увидеть «dialogflow.sessions.detectIntent»:

DialogFlow API Authorizations

И, наконец, ошибка узлапосле загрузки файла JSON, соответствующего учетной записи службы:

Node error

Я что-то упустил?

Я попытался сгенерировать другие файлы JSON, создайте другие учетные записи служб, ничего не работает ...

Скрипт Node прост, просто вставлен из официального руководства:

const projectId = 'newagent-9e77e '; //https://dialogflow.com/docs/agents#settings
const sessionId = 'quickstart-session-id';
const query = 'bonjour';
const languageCode = 'fr-FR';

// Instantiate a DialogFlow client.
const dialogflow = require('dialogflow');
const sessionClient = new dialogflow.SessionsClient();

// Define session path
const sessionPath = sessionClient.sessionPath(projectId, sessionId);

// The text query request.
const request = {
  session: sessionPath,
  queryInput: {
    text: {
      text: query,
      languageCode: languageCode,
    },
  },
};

// Send request and log result
sessionClient
  .detectIntent(request)
  .then(responses => {
    console.log('Detected intent');
    const result = responses[0].queryResult;
    console.log(`  Query: ${result.queryText}`);
    console.log(`  Response: ${result.fulfillmentText}`);
    if (result.intent) {
      console.log(`  Intent: ${result.intent.displayName}`);
    } else {
      console.log(`  No intent matched.`);
    }
  })
  .catch(err => {
    console.error('ERROR:', err);
  });

Спасибо!

1 Ответ

0 голосов
/ 14 мая 2018

Проблема была в пространстве на константе "projectId". Позор мне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...