我想将所有收到的邮件转发到其他号码,其中包含我在Twilio上得到回复的号码。
例如: 我有一个Twilio号码,说“ +14444444444”,我从号码说:“ + 15555555555”得到了答复,我想将所有消息转发到号码“ +19999999999”。 因此,我想转发编号为“ +19999999999”的所有邮件,这些邮件应从“ +15555555555”而不是“ +14444444444”接收, 谁能告诉我们Twilio中是否有可以使用nodeJs达到目的的API。
注意:SMS转发号码可以是动态的,在这种情况下,我们不能使用Twiml,如果可以使用Twiml,请让我们知道如何设置动态转发号码。
还获得了以下链接,该链接说明了如何转发SMS,但与我们尝试使用nodeJS实现的方法无关: https://support.twilio.com/hc/en-us/articles/223134287-Forwarding-SMS-messages-to-another-phone-number
谢谢,我们将不胜感激。
答案 0 :(得分:2)
感谢@Alex和@Piyush澄清了这个问题:
真的很抱歉!感谢您的澄清。如果我现在正确理解您的意思,您想将邮件转发到另一个号码,但要对邮件中的原始号码进行预维护。不幸的是,没有办法做到这一点。您可以转发邮件并将原始发件人包括在邮件正文中,但是无法将实际发件人替换为原始发件人。
让我知道我这次是否正确理解了,还有什么我可以帮助的。
在使用我们的帮助程序库时,可以动态使用TwiML,因此应该可以使用Node进行设置。当Webhook将消息发送到Node应用程序时,您可以检查消息的正文,并根据正文的内容进行有条件的SMS请求或有条件地指向其他TwiML 。这是一个示例,该示例如何根据Node中的邮件正文为收到的邮件设置条件回复:
https://www.twilio.com/docs/sms/tutorials/how-to-receive-and-reply-node-js
尽管此示例用于回复消息,但它向您展示了条件TwiML如何工作的原理。
您只需要在消息请求中添加要将消息转发到的“收件人”号码即可。
下面是条件转发的示例。
const http = require('http');
const express = require('express');
const MessagingResponse = require('twilio').twiml.MessagingResponse;
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.post('/', (req, res) => {
const twiml = new MessagingResponse();
twiml.to = "+1234567890 // Your number here.
if (req.body.Body == 'hello') {
twiml.message('Hi!');
} else if (req.body.Body == 'bye') {
twiml.message('Goodbye');
} else {
twiml.message(
'No Body param match, Twilio sends this in the request to your server.'
);
}
res.writeHead(200, { 'Content-Type': 'text/xml' });
res.end(twiml.toString());
});
http.createServer(app).listen(1337, () => {
console.log('Express server listening on port 1337');
});
让我知道这是否有帮助,以及您是否对如何设置此方法有任何疑问。