Twilio SMS (Whatsapp):发送位置
Twilio SMS (Whatsapp): Send Location
我看到了 Twilio 中一项新功能的文档(发送位置)。我按照文档作为测试,但它没有显示在 Whatsapp 中。
context.getTwilioClient().messages.create({
from: 'whatsapp:' + context.WHATSAPP_NUMBER,
body: "Office Location",
persistentAction: ['geo:37.787890,-122.391664'],
to: event.From
}).then(message => {
callback(null);
}).catch(err => callback(err));
正文 'Office Location' 显示在 Whatsapp 中,但不显示在 persistentAction 中。
我可以确认它不起作用。我还尝试卸载 twilio
软件包的当前版本 (https://www.npmjs.com/package/twilio) 并返回几个次要版本(3.38、3.37、3.36),但仍然无法正常工作。
我使用 twilio cli (https://www.twilio.com/docs/twilio-cli/quickstart) 让它工作。
这有效:
twilio api:core:messages:create --from whatsapp:+14155238886 --body "Twilio HQ" --persistent-action "geo:37.787890,-122.391664|375 Beale St" --to whatsapp:+15005550006
也许 Twilio Node Helper 库(包)有一些东西。
找到解决方案:
我创建了一个单独的 lambda 函数,并使用我在 Lex 中使用的 lambda 函数来调用它:
//index.js
const axios = require("axios");
const dotenv = require("dotenv");
dotenv.config();
function main(params) {
const authToken = '***';
const authSID = '***';
const url = 'https://api.twilio.com/2010-04-01/Accounts/ACCOUNT_SID/Messages.json';
const messageBody = {
Body: params.name,
From: "whatsapp:+14155238886",
PersistentAction: params.location,
To: "whatsapp:" + params.phoneNumber
};
return new Promise((resolve, reject) => {
axios.post(url, new URLSearchParams(messageBody), {
auth: {
username: authSID,
password: authToken
}
}).then(response => {
console.log(response.data.sid);
resolve("Success")
}, error => {
console.log(error);
reject(error);
}
);
});
}
exports.handler = main;
我看到了 Twilio 中一项新功能的文档(发送位置)。我按照文档作为测试,但它没有显示在 Whatsapp 中。
context.getTwilioClient().messages.create({
from: 'whatsapp:' + context.WHATSAPP_NUMBER,
body: "Office Location",
persistentAction: ['geo:37.787890,-122.391664'],
to: event.From
}).then(message => {
callback(null);
}).catch(err => callback(err));
正文 'Office Location' 显示在 Whatsapp 中,但不显示在 persistentAction 中。
我可以确认它不起作用。我还尝试卸载 twilio
软件包的当前版本 (https://www.npmjs.com/package/twilio) 并返回几个次要版本(3.38、3.37、3.36),但仍然无法正常工作。
我使用 twilio cli (https://www.twilio.com/docs/twilio-cli/quickstart) 让它工作。
这有效:
twilio api:core:messages:create --from whatsapp:+14155238886 --body "Twilio HQ" --persistent-action "geo:37.787890,-122.391664|375 Beale St" --to whatsapp:+15005550006
也许 Twilio Node Helper 库(包)有一些东西。
找到解决方案:
我创建了一个单独的 lambda 函数,并使用我在 Lex 中使用的 lambda 函数来调用它:
//index.js
const axios = require("axios");
const dotenv = require("dotenv");
dotenv.config();
function main(params) {
const authToken = '***';
const authSID = '***';
const url = 'https://api.twilio.com/2010-04-01/Accounts/ACCOUNT_SID/Messages.json';
const messageBody = {
Body: params.name,
From: "whatsapp:+14155238886",
PersistentAction: params.location,
To: "whatsapp:" + params.phoneNumber
};
return new Promise((resolve, reject) => {
axios.post(url, new URLSearchParams(messageBody), {
auth: {
username: authSID,
password: authToken
}
}).then(response => {
console.log(response.data.sid);
resolve("Success")
}, error => {
console.log(error);
reject(error);
}
);
});
}
exports.handler = main;