【发布时间】:2014-08-21 06:45:42
【问题描述】:
我正在尝试使用 Parse 和 Parse 的云代码 Twilio 模块接收发送到我的 Twilio 号码的短信。我已按照here 的说明进行操作。
我为我想要接收短信的 Twilio 号码设置了 SMS 请求 URL 到
https://myAppID:javascript-key=myJavaScriptKey@api.parse.com/1/functions/receiveSMS
当然,我使用了我的解析应用 ID 和我的解析 javascript 密钥。
然后我在 Parse 中创建了云函数:
Parse.Cloud.define("receiveSMS", function(request, response) {
response.success("Received a new text: " + request.params.From);
});
然后我有一个带有一些 jquery 调用该云函数的小网页
$('button').on('click', function() {
alert('button');
Parse.Cloud.run('receiveSMS', {
}, {
// Success handler
success: function(message) {
alert('Success: ' + message);
},
// Error handler
error: function(message) {
alert('Error: ' + message);
}
});
});
我尝试向我的 Twilio 号码发送短信,然后使用我的页面和上面的代码调用云代码功能“receiveSMS”。响应成功,我收到消息“收到新文本:未定义”。所以看起来我能够检测到一条新的短信已发送,但我得到的是未定义的,而不是短信来自的号码。我也想收到消息。我究竟做错了什么?谢谢
【问题讨论】:
-
嘿,我是一名 Twilio 开发人员布道师。我想帮忙,但在我自己之前还没有真正使用过 Parse。看起来你有 95% 在那里。如果您尝试注销整个
request.params对象会发生什么?是否可以将参数名称从“From”缩小为“from”? -
嗨,我没有使用 express 选项。我按照它所说的说明进行操作:“或者,也可以创建一个云函数来接收来自 Twilio 的请求。这不需要使用 Twilio 云模块,因为端点是在 Twilio 网站上设置的。首先定义一个新的云函数。”可以在here 找到说明。无论如何,我确实尝试将 From 更改为 from,但什么也没发生。
-
我明白了,这不是 Express。您是否设法注销了整个
request.params对象?阅读 Cloud Function 文档后,云函数似乎期望发送给它们的参数采用 JSON 格式,而 Twilio 将参数作为普通 POST 参数传递,就像来自表单一样。因此,尽管这与 Twilio 实现的文档所说的相反,但我只是担心参数根本无法通过。您能否发布记录request.params的结果的要点? -
From logs: I2014-08-21T15:56:55.901Z] v91: Ran cloud function receiveSMS with: Input: {} 结果: {} I2014-08-21T15:56:55.943Z] 收到新文本:[object Object]
-
当使用 request.params.from I2014-08-21T16:45:57.656Z] v95: Ran cloud function receiveSMS with: Input: {} 结果: undefined I2014-08-21T16:45:57.689 Z] 收到新文本:未定义
标签: javascript twilio