簡體   English   中英

Twilio statusCallback實現遇到麻煩

[英]Twilio statusCallback implementation running into trouble

我是Twilio的初學者。 我了解可以通過有一個statusCallback來獲取SMS發送的狀態,以便POST會以消息的狀態出現在callbackurl上。 但是我在創建那個特定的POST端點時遇到了麻煩。 這是我所擁有的:

  // Twilio API CALL
    client.sendMessage({
            to:userId, 
            from: metadata.myTwilioNumber,
            body: message, 
            StatusCallback:'POST URL'
                }, function(err, responseData) {
              if (!err) { 

               } else {
                 logger.info(err);
              }

我的POST端點是一個簡單的節點js(請求,響應)端點。

    var server = http.createServer ( function(request,response){
          response.writeHead(200,{"Content-Type":"text\plain"});
        if(request.method == "GET")
            {
                response.end("received GET request.")
            }
        else if(request.method == "POST")
            {

                console.log(request.CallStatus);
    console.log(response);
                console.log('receivedRequest');
                response.end("received POST request.");
            }
        else
            {
                response.end("Undefined request .");
            }
    });

server.listen(4445);

有人可以幫助我獲取響應的狀態和messageID嗎? 當前,POST正在被調用,但是我無法獲取消息的詳細信息和狀態。

Twilio開發人員布道者在這里。

您正在使用基本的Node.js標准庫http模塊,它將使從POST請求提取信息的工作量很大。 我是否可以建議您嘗試使用body-parserexpress類似的東西。

您可以通過使用npm安裝兩個模塊來做到這一點:

npm install express body-parser

然后,您可以像這樣重寫您的傳入消息應用程序:

const express = require('express');
const bodyParser = require('body-parser');

const app = express();

app.use(bodyParser.urlencoded({ extended: false }));

app.post('/', (req, res) => {
  console.log(req.body.CallStatus);
  res.sendStatus(200);
});

app.listen(4445, () => {
  console.log('Application running on localhost:4445');
});

Twilio發送的所有參數將在req.body對象上可用。

查看本教程,了解如何在Node中使用Twilio接收SMS消息,以獲取更多詳細信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM