Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Twilio功能-从多条短信发布数据?_Node.js_Twilio - Fatal编程技术网

Node.js Twilio功能-从多条短信发布数据?

Node.js Twilio功能-从多条短信发布数据?,node.js,twilio,Node.js,Twilio,我有一个函数,可以将传入sms消息中的内容发布到第三方api。因此,客户向我们发送一条消息,Twilio将该消息发布到api。但是,我想添加一个额外的步骤。因此,当用户向我们发送消息时,我希望Twilio回复请求电子邮件的请求,然后将该消息与第二条消息中的电子邮件一起发布到api。除非我们得到第二条消息,否则不应该向api发布任何内容。关于如何做那样的事情有什么想法吗 我查看了文档,看到了一些关于消息实例资源的信息,但我不确定这样做是否有效 const https = require('http

我有一个函数,可以将传入sms消息中的内容发布到第三方api。因此,客户向我们发送一条消息,Twilio将该消息发布到api。但是,我想添加一个额外的步骤。因此,当用户向我们发送消息时,我希望Twilio回复请求电子邮件的请求,然后将该消息与第二条消息中的电子邮件一起发布到api。除非我们得到第二条消息,否则不应该向api发布任何内容。关于如何做那样的事情有什么想法吗

我查看了文档,看到了一些关于消息实例资源的信息,但我不确定这样做是否有效

const https = require('https');

exports.handler = function(context, event, callback) {
    let twiml = new Twilio.twiml.MessagingResponse();
    twiml.message("Your message has been recieved.");

    let postData = JSON.stringify({
        ....
    });

    let postOptions = {
        ...
    };

    let req = https.request(postOptions, function(res) {
        res.setEncoding('utf8');
        res.on('data', function(chunk) {
            console.log(chunk);
            callback(null, twiml);
        });
    });

    req.write(postData);
    req.end();
};

这里是Twilio开发者福音传道者

为了采取这样的两个步骤,您需要在等待第二条消息时将第一条消息中的消息保存到某个位置。由于第二条消息将通过一个新的HTTP请求传入,因此您不能将其保存在任何位置的函数中,您可能希望使用某种第三方存储。然后编写函数检查该存储中是否存在第一条消息,如果存在,则将这两条消息发送到API,如果不存在,则存储第一条消息并用第二个问题回答用户

或者,您可以使用。如果之前没有消息,那么这肯定是他们发送的第一条消息。如果有以前的消息,那么您需要确定它是否是本次对话的起始消息,可能是多长时间以前的消息,或者是对内容的启发,然后决定是将这两条消息发送到API还是请求下一个响应

让我知道这是否有帮助