是否可以在node.js服务器中运行多种Alexa技能?

时间:2019-02-12 15:03:02

标签: node.js express alexa alexa-skills-kit alexa-skill

我想为多种Alexa技能提供服务。因此,当我收到带有SkillId的请求时,我会将其转发给另一个技能,而当我接收到另一个技能ID时,则将其转发给另一个技能。 我的问题是应如何在代码中处理它。如今我只有一种技能:

app.post('/', function(req, res) {

    let skillId = req.body.session.application.applicationId;

    let skill;


    const LaunchRequestHandler = {
        canHandle(handlerInput) {
            return handlerInput.requestEnvelope.request.type === 'LaunchRequest';
        },
        handle(handlerInput) {
            const speechText = 'Wilkommen zum Feratel Webcams!';
            return handlerInput.responseBuilder
                .speak(speechText)
                .reprompt(speechText)
                .withSimpleCard('Feratel Webcams', speechText)
                .getResponse();
        }
    };

    skill = Alexa.SkillBuilders.custom()
        .addRequestHandlers(
            LaunchRequestHandler
        )
        .create();

    skill.invoke(req.body)
        .then(function (responseBody) {
            res.json(responseBody);
        })
        .catch(function (error) {
            console.log(error);
            res.status(500).send('Error during the request');
        });


});

0 个答案:

没有答案