Twilio Webhook与邮递员的要求

时间:2018-08-20 10:34:15

标签: node.js curl twilio postman

我无法将StatusCallback设置为Postman中的消息。 在 this 页面上,我复制了cURL代码,导入到Postman,添加了授权(它是基本身份验证),消息从Twilio编号发送到“收件人”编号中指定的编号。除Webhook之外,其他所有功能均正常。如我所见(通过上面的链接),发送消息后应该有一个“ status_callback ”字段作为响应,但该字段不存在。我的回答是:

{
    "sid": "SomeLongMessageId",
    "date_created": "Mon, 20 Aug 2018 09:08:04 +0000",
    "date_updated": "Mon, 20 Aug 2018 09:08:04 +0000",
    "date_sent": null,
    "account_sid": "myaccountsid",
    "to": "+9XXXXXXXXXX3",
    "from": "+14XXXXXXXX5",
    "messaging_service_sid": null,
    "body": "Where is webhook?",
    "status": "queued",
    "num_segments": "1",
    "num_media": "0",
    "direction": "outbound-api",
    "api_version": "2010-04-01",
    "price": null,
    "price_unit": "USD",
    "error_code": null,
    "error_message": null,
    "uri": "/2010-04-01/Accounts/myaccountsid/Messages/SomeLongMessageId.json",
    "subresource_uris": {
        "media": "/2010-04-01/Accounts/myaccountsid/Messages/SomeLongMessageId/Media.json"
    }
}

在代码中做同样的事情-就像上面链接(Node.js)中的手册中一样:

const client = require('twilio')('myAccountSid', 'myAuthToken');
const sms = {
    body: 'Will webhook work?', from: '+14XXXXXXXX5',
    statusCallback: 'http://postb.in/b/BC1prY1s', to: '+9XXXXXXXXX13'
};
client.messages.create(sms).then(res => console.log(res)).done();

相同的响应,没有“ status_callback”键。我不知道,可能是必须在Twilio帐户设置中的某处激活webhook还是什么? 附言为什么将主题更改为“ Node.js-我的问题”?我希望它是“ Twilio-我的问题”,但标签按我无法更改的顺序排列。并且主题前缀在node.js标记之后

Postman request screenshot

1 个答案:

答案 0 :(得分:0)

好吧,即使没有在响应中提到网络钩子,它们看起来也能正常工作。我调查了Twilio错误,它告诉http://postb.in/b/XxXxXxXx无法访问。在postb.in的垃圾箱存在30分钟后就可以了。
不过,不知道为什么超过30分钟后仍会发出网络钩子。
而且也不知道为什么文档中有某些内容,但是在响应中却不存在。