Как начать интеграцию Alexa с кодом NodeJS?

У меня есть приложение, встроенное в NodeJS и Angular2+. Я хочу интегрировать часть NodeJs с Alexa. Я просмотрел код, но все, что я нашел, было много функций Intents, а затем я даже попытался найти следующую ссылку на github

https://github.com/alexa/skill-sample-nodejs-petmatch/blob/master/lambda/custom/index.js

Но я не могу понять, с чего начать.

Код NodeJs -

seekapi.service.js

// Require Neo4j

var neo4j = require('neo4j-driver').v1;

var path = require('path');
var logger = require('morgan');
var bodyParser = require('body-parser');
var express = require('express');

var router = express.Router();

var app = express();


// Create Driver

 const driver = new neo4j.driver("bolt://localhost:11001", neo4j.auth.basic("neo4j", "lib1"));



app.set('views', path.join(__dirname, 'views'));

 app.use(logger('dev'));
 app.use(bodyParser.json());
 app.use(bodyParser.urlencoded({ extended: false }));
 app.use(express.static(path.join(__dirname, 'public')));


var session = driver.session();
var request = require('request');

router.post('/', seekAPI);


 module.exports = router;


//working code below


function seekAPI(req, res) { 

    console.log("INSIDE NODE JS CONTROLLER OF seekAPI");

    console.log("BODY IS ", req.body);

        session

           .run(`MATCH p=()-[r:API]->() RETURN p;`)
           .then(function (result){

             res.send(result); 
               result.records.forEach(function(record){
                   console.log("record = ", record);


               });
               res.send(result); 
           })      
           .catch(function(err){
            console.log("inside catch = " + err);
        })

        session.close();   
}


console.log("Inside seekAPI-controller.js")

1 ответ

Поскольку ваша кодовая база (часть API) уже написана в вашем приложении Angular, вы можете представить свой API в веб-сервисе. Веб-сервис должен соответствовать контракту, предоставленному Amazon. Когда веб-служба будет готова, настройте URL-адрес веб-службы в консоли Alexa, и все готово. Начните вызывать alexa прямо сейчас.

Преимущество заключается в том, что вы можете использовать существующее развертывание приложения, а не снова запускать тот же API в AWS Lambda.

С помощью метода веб-службы вы даже можете отлаживать навыки на локальном компьютере, используя конечную точку ngrok https.

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

Другие вопросы по тегам