Twilio:发送和接收的短信未按时间顺序

时间:2018-08-04 22:23:20

标签: node.js sms twilio twilio-api

我有一个简单的node.js应用,它可以响应客户端的传入消息,并立即向他们发送传出消息,例如

app.post('/sms',function(Request,Response){

    // Incoming message
    var IncomingMessage = Request.body.Body;

    // Outgoing message
    var OutgoingMessage = ProcessMessages(IncomingMessage);

    // Twilio sms service
    const twiml = new MessagingResponse();
    twiml.message(OutgoingMessage);

    Response.writeHead(200,{'Content-Type':'text/xml'});
    Response.end(twiml.toString());
});

但是当我在自己的手机上对其进行测试时,发送和接收文本的顺序不正确。从服务器返回的OutgoingMessage文本放在我在电话上发送的IncomingMessage文本之前。

已发送和已接收文本的时间戳相同。因此,作为补救措施,我尝试在发送OutgoingMessage之前创建一个两秒的延迟,以创建时间戳记差异,例如

    // Delay for chronological sms orders
    setTimeout(function(){

        // Twilio sms service
        const twiml = new MessagingResponse();
        twiml.message(OutgoingMessage);

        Response.writeHead(200,{'Content-Type':'text/xml'});
        Response.end(twiml.toString());

     },2000);

但是,已发送和已接收消息的时间戳相同,并且它们的顺序不正确。关于如何使发送和接收的文本按时间顺序排列的任何想法?谢谢。

0 个答案:

没有答案