Я хочу ответить на смс-сообщение twilio простым текстом и в то же время переслать его на какой-нибудь emailId
Настроил URL-адрес webhook, который вызывает следующий код:::
String body = request.getParameter("Body");
String fromNumber = request.getParameter("From");
String message;
Message sms = new Message.Builder().body(new Body(message)).build();
// Create a TwiML response and add our friendly message.
MessagingResponse twiml = new MessagingResponse.Builder().message(sms).build();
response.setContentType("application/xml");
try {
response.getWriter().print(twiml.toXml());
return twiml.toXml();
final TwilioEmailContextDTO twilioEmailContextDTO = new TwilioEmailContextDTO();
twilioEmailContextDTO.setBody(body);
twilioEmailContextDTO.setFromNumber(fromNumber);
forwardTwilioSMSToMail(twilioEmailContextDTO);
}
Q1: ли String fromNumber = request.getParameter("From");
дай мне номер.
Q2: также я получаю The constructor Body(String) is undefined"
ошибка компиляции.
В3: Я использую обычный способ Hybris для пересылки SMS-сообщений по почте (с помощью emailService), у нас есть два способа сделать это?
обновить с кодом
{Пожалуйста, посмотрите на метод, который я использую. Использование Spring, аннотации.
@RequestMapping(value = "/twilioReply", method = RequestMethod.POST)
@ResponseBody
public void TwilioReplies(HttpServletRequest request, HttpServletResponse response) throws IOException {
String body = request.getParameter("Body");
String fromNumber = request.getParameter("From");
String messageBody = this.configurationService.getConfiguration().getString(TWILIO_REPLY);
Body smsBody = new Body.Builder(messageBody).build();
Message message = new Message.Builder().body(smsBody).build();
// Create a TwiML response and add our message.
MessagingResponse twiml = new MessagingResponse.Builder().message(message).build();
response.setContentType("application/xml");
try {
response.getWriter().print(twiml.toXml());
} catch (TwiMLException e) {
LOG.error("Exception Occured while twiml Email :",e);
}
}
1 ответ
Twilio разработчик евангелист здесь.
A1: From
параметр тот, который Twilio отправляет на номер, который отправил сообщение. Так да, request.getParameter("From")
должен быть этот номер.
A2: Body
также построен, как в этом примере в документации:
Body body = new Body.Builder("Store Location: 123 Easy St.").build();
Message message = new Message.Builder().body(body).build();
A3: Twilio не имеет мнения о том, как вы отправляете электронные письма на свой собственный сервер. Если это работает для вас, то пойти на это!