num*_*key 3 sms twilio google-apps-script
我正在尝试通过 Google Apps Script (GAS) 发送和接收短信。GAS 不提供对发送文本消息或检查 Google 语音的本机支持,因此我一直在考虑与第三方 API 集成 - 在本例中为 Twilio。
我已经联系了 Twilio 的技术支持,但他们还没有回答这个问题。我也四处张望,并没有找到一个可以成功与 Twilio 一起使用的正常运行的 GAS 示例。
我遵循了https://developers.google.com/live/shows/11404657/ 上的教程。然后从 Google Apps Script 团队复制了一个与教程中的代码并行的无功能代码示例:https : //github.com/entaq/GoogleAppsScript/blob/master/Twilio/RecieveSMS/RecieveSMS.gs -
我的代码复制如下:
倒数第二个命令 appendrow() 工作正常,这意味着 GAS 正确地从 Twilio API 获取。但是,最后一个命令 createTextOutput() 不起作用,这表明 GAS 无法以正确的格式 POST 到 Twilio……对吗?
function doGet(args) {
var spreadsheetID = "<< your spreadsheet ID >>";
var vote = args.parameter.Body;
var from = args.parameter.From;
var actualVote;
switch (vote.toLowerCase()) {
case "a":
actualVote = 'Giants';
break;
case "b":
actualVote = 'Jets';
break;
default:
actualVote = 'Dont care';
}
SpreadsheetApp.openById(spreadsheetID).appendRow([from,actualVote,vote]);
return ContentService.createTextOutput(LanguageApp.translate(args.parameter.Body, "en", "es")).setMimeType(ContentService.MimeType.TEXT);
};
Run Code Online (Sandbox Code Playgroud)
我很乐意使用一种解决方法(例如电子邮件到 SMS),但我必须同时发送和接收 SMS,而且我不想转移到另一个编程平台,因为我们已经花了 4 个月的时间来开发我们的内部操作软件通过 Google Apps Script 因此转移将是非常繁重的。
请注意,这不是“分块”XML 响应的问题 - 正如在此线程中发现的那样:连接 Twilio 与 Google Apps 脚本- Twilio 技术团队昨天告诉我,他们最近升级了他们的服务器以接受分块响应。
谢谢!
好的,Twilio 技术人员 Alex Chan 给出了答案!
事实证明,正如 Arun 所说,这是一种不同的获取和发布 SMS 的方法。用 Alex Chan 的话说:
“使用 Twilio 发送 SMS 消息是不同的。您必须调用 Twilio 的 REST API,而不是实现“doGet”方法。此处记录了用于发送 SMS 消息的 REST API 操作:
http://www.twilio.com/docs/api/rest/sending-sms "
我现在正在使用下面的一个变体,它运行良好:
function sendSms() {
// Get account SID and auth token here:
// https://www.twilio.com/user/account
var accountSid = "AC...";
var authToken = "...";
var url = "https://api.twilio.com/2010-04-01/Accounts/" + accountSid + "/SMS/Messages.json";
var options = {
method: "post",
headers: {
Authorization: "Basic " + Utilities.base64Encode(accountSid + ":" + authToken)
},
payload: {
// From is one of your Twilio phone numbers
From: "+12025551212",
To: "+14155551212",
Body: "Test from Google Apps Script"
}
};
var response = UrlFetchApp.fetch(url, options);
Logger.log(response);
}
Run Code Online (Sandbox Code Playgroud)
Arun,感谢您的帮助并在 gitHub 上发布原始代码!
| 归档时间: |
|
| 查看次数: |
4848 次 |
| 最近记录: |