通过Azure移动服务脚本使用Twilio发送SMS

时间:2015-06-29 23:56:17

标签: node.js azure twilio azure-mobile-services

我有一个升级的Twilio帐户,我想使用该帐户向任何号码发送短信。当我尝试从 http://bit.ly/twiliosms 发送短信时,短信已成功发送给用户。但我想要的是从Auzre Mobile Service发送短信。

将新数据插入Azure移动服务时,我希望特定用户获取短信。以下是我在Azure Mobile Service脚本中编写的代码:

function insert(item, user, request) {

var httpRequest = require('request');
var sid = "<< My SID >>";
var token = "<< My TOKEN >>"; 

var url = "https://" + sid + ":" + token +
         "@api.twilio.com/2010-04-01/Accounts/" + sid + "/SMS/Messages.json";
var body = "From=" + "+1234567890" + "&To=" + "+88017*********" + "&Body=" + "Hello World, how are you.";

httpRequest.post({
    url: url,
    headers: { 'content-type': 'application/x-www-form-urlencoded' },
    body: body
}, function (err, resp, body) {
    console.log(body);
});
request.execute();
}

我已正确插入了我的SID和TOKEN以及发件人收件人电话号码。但是,尽管正在将数据插入表中,但仍未发送SMS。

那我该怎么办呢?任何帮助都非常感谢。感谢。

编辑:

我见过Log。它说我的号码无效。但这是我的个人电话号码:

{&#34; code&#34;:21211,&#34; message&#34;:&#34;&#39; To&#39;号码8801 *******不是有效的电话号码。&#34;,&#34; more_info&#34;:&#34; https://www.twilio.com/docs/errors/21211&#34;,&#34; status&# 34;:400}

我试过看过Doc。但是没有合适的解决方案。所以,非常感谢您的帮助。感谢。

1 个答案:

答案 0 :(得分:0)

我自己能够解决这个问题。我需要做的是用“%2B”替换电话号码中的“+”。现在整个事情都正常。以下是有效的代码:

function insert(item, user, request) {

var httpRequest = require('request');
var sid = "<< My SID >>";
var token = "<< My TOKEN >>"; 

var url = "https://" + sid + ":" + token +
     "@api.twilio.com/2010-04-01/Accounts/" + sid + "/SMS/Messages.json";
var body = "From=" + "+1234567890" + "&To=" + "%2B88017*********" + "&Body=" + "Hello World, how are you.";

httpRequest.post({
url: url,
headers: { 'content-type': 'application/x-www-form-urlencoded' },
body: body
}, function (err, resp, body) {
console.log(body);
});
request.execute();
}

非常感谢。