当我将短信转发给另一个电话号码时,我想传递Twilio电话号码的友好名称。(友好名称是在购买Twilio number时分配给它的属性。)
这与这里和这里描述的“使用Twilio字母数字发送者ID发送品牌SMS消息”不同。
我在美国操作,上面不支持,我可以在转发的消息(或电子邮件的主题行)的正文中包括“友好的名字”。此外,“友好名称”并不像上面的示例那样与消息的原始发送者相关联,而是与我的Twilio数字相关联。希望一切都清楚了。
我正在使用以下示例代码:
将SMS消息转发到另一个电话号码-Twilio支持
将三个参数传递到函数中:
exports.handler = function(context, event, callback) {
AccountSid
ApiVersion
Body
From
FromCity
FromCountry
FromState
FromZip
MessageSid
NumMedia
NumSegments
SmsMessageSid
SmsSid
SmsStatus
To
ToCity
ToCountry
ToState
ToZip
更新:从这个Twilio文档中,我看到了一条线索,我可以从accountsid.something.outgoing_caller_id.friendlyName获得友好的名称
我不太明白如何在Twilio函数中做到这一点。我试着用:
context.getTwilioClient();
文档说“将返回一个初始化的REST客户机,您可以使用该客户机调用Twilio REST API。”但是,它返回一个空的httpClient对象以及用户名、密码和AccountSID的字符串。我期待一个填充的对象,从中我可以获得电话号码的友好名称。
你走在正确的道路上!出色的研究。事实上,context.getTwilioclient()是其中的一部分。初始化Twilio REST API客户机后,可以使用另一个Twilio API来确定event.to中的FriendlyName是什么。我发现,在这里,过滤与精确匹配的IncomingPhoneNumbers。
下面是一种方式,当然可能还有其他的。
const got = require('got');
// async function to deal with async REST API call
exports.handler = async function(context, event, callback) {
const client = context.getTwilioClient();
// await an async response
await client.incomingPhoneNumbers
.list({phoneNumber: event.To, limit: 1})
.then(incomingPhoneNumbers => event.friendlyName = incomingPhoneNumbers[0].friendlyName)
.catch(err => console.log(err));
const requestBody = {
personalizations: [{ to: [{ email: context.TO_EMAIL_ADDRESS }] }],
from: { email: context.FROM_EMAIL_ADDRESS },
subject: `New SMS message from: ${event.From}`,
content: [
{
type: 'text/plain',
value: `${event.Body} - ${event.friendlyName}`
}
]
};
got
.post('https://api.sendgrid.com/v3/mail/send', {
headers: {
Authorization: `Bearer ${context.SENDGRID_API_KEY}`,
"Content-Type": 'application/json'
},
body: JSON.stringify(requestBody)
})
.then(response => {
console.log(response);
let twiml = new Twilio.twiml.MessagingResponse();
twiml.message({to: '+1555xxxxxxx'}, `You Message: ${event.Body} - ${event.friendlyName}`);
callback(null, twiml);
})
.catch(err => {
console.log(err);
callback(err);
});
};
特定于与事件对象关联的键,这是一个方便的使用方法。
Object.keys(event).forEach( thisKey => console.log(`${thisKey}: ${event[thisKey]}`));
如何搜索与特定号码相关的所有传入和传出消息?
我是ruby和ruby on rails的新手,在设置Twilio发送短信时遇到了麻烦。
我正在尝试使用Twilio自动化呼叫转接。当用户调用Twilio号码时,它将播放一些欢迎信息,然后它应该调用外部API,API将返回Twilio应该调用的电话号码。我正试着用这个TwiML。这是我的TwiML-bin文档 例如是返回数字的URL。我如何用TwiML实现这一点?有没有可能在TwiML中定义一个变量?因为如果我可以使用<代码>
它说。 我的问题是,你如何“在你的Twilio账户中拥有一个电话号码”?这是否意味着我可以让我的用户选择他们的电话号码,然后添加到我的Twilio帐户,然后用他们的号码发送短信?
我正在设置一个电脑系统应用程序,这将发送短信警报。可以选择:服务类型:HTTP、SMTP或SMPP。我被告知要使用HTTP。HTTP(S)方法:Post或GET。我被告知要用GET。HTTP(S)URL:我认为https://api.twilio.com/2010-04-01是正确的HTTP(S)参数:举个例子:username=xxx&password=xxxx&mobNo=%xxxx%&mes
我正在我的Twilio沙盒中构建一个whatsapp聊天机器人。我已经通过了API,但我不知道如何检索一个人的电话号码(发件人的电话号码),假设这是可能的?原因是我想限制每个用户在给定时间段内可以执行的操作数量。 我不确定这是否有帮助,但当我发送请求时,我在ngrok上获得的信息