OAuth Исключение в Facebook мессенджера Chatbot используя api.ai и Heroku (Node.js)

голоса
1

Я делилась мой код и сообщение об ошибке , которое выскочило ниже. В принципе, я последовал за учебник http://www.girliemac.com/blog/2017/01/06/facebook-apiai-bot-nodejs/ и еще один. Мой Chatbot работает Smalltalk , но не для погоды апи вещи. Я пытаюсь сделать Chatbot дать мне ответы на вопросы о погоде в разных городах. Я последовал за учебник точно.

  Error:  { message: '(#100) No matching user found',
  type: 'OAuthException',
   code: 100,
  error_subcode: 2018001,
   fbtrace_id: 'DeubaTWU6Gg' }
 Error:  { message: '(#100) No matching user found',
   type: 'OAuthException',
   code: 100,
   error_subcode: 2018001,
   fbtrace_id: 'FSiMes3IwHv' }

// код из index.js только для погоды апи вещи

 app.post('/ai', (req, res) => {
  //console.log('*** Webhook for api.ai query ***');
  //console.log(req.body.result);

  if (req.body.result.action === 'weather') {
 //  console.log('*** weather ***');
    let city = req.body.result.parameters['geo-city'];
    let restUrl = 'http://api.openweathermap.org/data/2.5/weather?APPID='+process.env.WEATHER_API_KEY+'&q='+city;

    request.get(restUrl, (err, response, body) => {
      if (!err && response.statusCode == 200) {
        let json = JSON.parse(body);
       // console.log(json);
        let tempF = ~~(json.main.temp * 9/5 - 459.67);
        let tempC = ~~(json.main.temp - 273.15);
        let msg = 'The current condition in ' + json.name + ' is ' + json.weather[0].description + ' and the temperature is ' + tempF + ' ℉ (' +tempC+ ' ℃).'
        return res.json({
          speech: msg,
          displayText: msg,
          source: 'weather'
        });
      } else {
        let errorMessage = 'I failed to look up the city name.';
        return res.status(400).json({
          status: {
            code: 400,
            errorType: errorMessage
          }
        });
      }
    })
  }

});

Как исправить эту ошибку?

Задан 23/09/2017 в 05:00
источник пользователем
На других языках...                            


1 ответов

голоса
1

Ошибка в том , что страница в области видимости ID вы отправляете с сообщением в recipient.idнедопустим. Предполагая , что вы настроили sendMessage()функцию из учебника corrently, скорее всего, проблема в том , что Facebook счетов вы используете чат с ботом не имеют надлежащую роль.

Если боты не является публичными (т.е. не был представлен и утвержден) счет Facebook, который используется для отправки сообщений бота должен быть предоставлен администратором, разработчик или тестер роли в настройках приложении.

Ответил 26/09/2017 в 04:25
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more