OAuth Εξαίρεση στο Facebook messenger chatbot χρησιμοποιώντας api.ai και Heroku (node.js)

ψήφοι
1

Έχω μοιραστεί τον κωδικό μου και το λάθος που έσκασε πάνω κάτω. Βασικά, εγώ ακολούθησα το φροντιστήριο http://www.girliemac.com/blog/2017/01/06/facebook-apiai-bot-nodejs/ και ένα άλλο. Chatbot μου δουλεύει για Smalltalk, αλλά όχι για την ουσία καιρό api. Είμαι προσπαθεί να κάνει το 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 μόνο για τον καιρό api πράγματα

 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 λογαριασμό σας χρησιμοποιώντας το chat με το bot δεν έχουν την κατάλληλη ρόλο.

Αν το bot δεν είναι δημόσια (δηλαδή δεν έχει υποβληθεί και εγκριθεί) ο λογαριασμός Facebook που χρησιμοποιείτε για την αποστολή μηνυμάτων στο bot πρέπει να δοθεί από το διαχειριστή, προγραμματιστής, ή tester ρόλο στις ρυθμίσεις της εφαρμογής σας.

Απαντήθηκε 26/09/2017 στις 04:25
πηγή χρήστη

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