Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

194
Vistas
¿Cómo enviar SMS masivos en Twilio con Nodejs?

Me gustaría saber cómo puedo enviar un mensaje a diferentes números. Quiero decir, enviar SMS como notificaciones a diferentes números en el mismo String Array. Algo como:

 body: "Hello Word!" number:["+2222", "+2222", "+2222"]

¿Es posible hacer esto con twilio?

Debería ser posible, si es posible con el correo, ¿cómo se hace con los números de teléfono?

Estoy usando nodeJs y tenía algo como:

código actualizado

 const sendBulkMessages = async(req, res) => { let messageBody = req.body; let numberList = req.body; var numbers = []; for (i = 0; i < numberList.length; i++) { numbers.push(JSON.stringify({ binding_type: 'sms', address: numberList[i] })) } const notificationOpts = { toBinding: numbers, body: messageBody, }; const response = await client.notify .services(SERVICE_SID) .notifications.create(notificationOpts) .then(notification => console.log(notification.sid)) .catch(error => console.log(error)); console.log(response); res.json({ msg: 'Mensaje enviado correctamente' }); }

Pero me dice error que no envié el cuerpo, cuando claramente lo hago.

¿Alguien podría ayudarme? Por favor

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Parece que está intentando enviar estos mensajes a través de una solicitud posterior a una aplicación Express. El problema es que no está extrayendo correctamente los datos del cuerpo de la solicitud.

Si el cuerpo de su solicitud POST es un objeto JSON que se ve así:

 { "toBinding": ['+222', '+222'], "body": 'Hello' }

Luego, deberá asegurarse de analizar el cuerpo de la solicitud como JSON, normalmente agregando el middleware JSON del analizador de cuerpo Express , y luego extraer los datos del cuerpo de la solicitud de esta manera:

 let messageBody = req.body.body; let numberList = req.body.toBinding;

Aquí está el guión completo:

 const sendBulkMessages = async(req, res) => { let messageBody = req.body.body; let numberList = req.body.toBinding; var numbers = []; for (i = 0; i < numberList.length; i++) { numbers.push(JSON.stringify({ binding_type: 'sms', address: numberList[i] })) } const notificationOpts = { toBinding: numbers, body: messageBody, }; const response = await client.notify .services(SERVICE_SID) .notifications.create(notificationOpts) .then(notification => console.log(notification.sid)) .catch(error => console.log(error)); console.log(response); res.json({ msg: 'Mensaje enviado correctamente' }); }

Después de inspeccionar su repositorio , parece que su función era realmente correcta, pero la forma en que exportaba y requería funciones no lo era.

No puedes exportar funciones como esta:

 module.exports = sendMessage, sendMessageWhatsapp, sendBulkMessages;

Eso solo exporta la primera función, las demás se ignoran. Así que lo actualicé a esto:

 module.exports = { sendMessage, sendMessageWhatsapp, sendBulkMessages };

Esto exporta un objeto que contiene las tres funciones. Entonces, cuando necesite las funciones, no puede hacer esto:

 const sendMessage = require('./message'); const sendMessageWhatsapp = require('./message'); const sendBulkMessages = require('./message');

Eso requiere la misma función tres veces. Con la actualización anterior, ahora puede hacer esto:

 const { sendMessage, sendBulkMessages, sendMessageWhatsapp, } = require("./message");
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda