En el mundo interconectado de hoy, la comunicación es clave, y una de las formas de comunicación más ubicuas sigue siendo el humilde mensaje de texto. Ya sea para enviar notificaciones, alertas o mensajes promocionales, la capacidad de enviar mensajes SMS (Servicio de Mensajes Cortos) de forma programática abre un mundo de posibilidades para los desarrolladores. Presentamos Twilio, una plataforma de comunicaciones en la nube que permite a los desarrolladores integrar la funcionalidad SMS sin problemas en sus aplicaciones.
Introducción:
En este tutorial, exploraremos cómo aprovechar el poder de Twilio junto con la flexibilidad de Node.js para enviar mensajes SMS sin esfuerzo. Node.js, con su modelo de E/S sin bloqueo y su rico ecosistema de paquetes, proporciona un entorno ideal para construir aplicaciones escalables y eficientes, mientras que Twilio simplifica el envío y la recepción de mensajes SMS, el manejo de la entrega y la gestión de números de teléfono.
Ya sea que esté desarrollando un sistema de notificación, construyendo un chatbot de atención al cliente o simplemente desee incorporar la funcionalidad SMS en su aplicación, este tutorial lo guiará a través del proceso paso a paso. Al final, tendrá una sólida comprensión de cómo aprovechar la API de Twilio con Node.js para enviar mensajes SMS de manera confiable y segura.
¡Así que, vamos a sumergirnos y aprender cómo potenciar sus aplicaciones Node.js con las capacidades SMS de Twilio!
Configurar una cuenta de Twilio:
Antes de enviar mensajes SMS con Twilio y Node.js, el primer paso es configurar una cuenta de Twilio.
Twilio ofrece una prueba gratuita que puede usar para probar todos sus servicios, como enviar SMS con un número gratuito que le asignarían.
Sin embargo, para comenzar, regístrese para obtener una cuenta gratuita.
Regístrese para obtener una cuenta gratuita de Twilio:
Navegue al sitio web de Twilio (https://www.twilio.com/) y regístrese para obtener una nueva cuenta si aún no lo ha hecho. El proceso de registro es sencillo y solo requiere información básica como su dirección de correo electrónico, nombre completo y contraseña.
Verifique su dirección de correo electrónico:
Según Twilio
Esta verificación ayuda a prevenir el uso indebido de la plataforma Twilio y garantiza el cumplimiento de las regulaciones de telecomunicaciones.
Después de registrarse, Twilio enviará un correo electrónico de verificación a la dirección que proporcionó durante el registro. Haga clic en el enlace de verificación en el correo electrónico para confirmar su dirección de correo electrónico y activar su cuenta de Twilio.
Verificación del número de teléfono:
Esto ayuda a Twilio a verificar su identidad y también le permite enviar mensajes de prueba a su teléfono desde su cuenta de Twilio mientras está en modo de prueba.
Después de verificar su correo electrónico, se le pedirá que verifique su número de teléfono. Twilio detecta automáticamente su ubicación utilizando su I.P. Asegúrese de crear su cuenta utilizando un número que pueda verificar dentro de su país.
Acceda a su panel de control de Twilio:
Una vez que su cuenta esté verificada, inicie sesión en su cuenta de Twilio para acceder a la Consola de Twilio. La Consola es donde administrará sus servicios de Twilio, números de teléfono y credenciales de API.
Obtenga las credenciales de la API de Twilio:
En la Consola de Twilio, navegue a la sección "Panel de control" o "Configuración" para encontrar su SID de cuenta y token de autenticación. Estas credenciales son esenciales para autenticar sus solicitudes al interactuar con la API de Twilio.
- SID de cuenta (Identificador de cuenta): Este es un identificador único para su cuenta de Twilio. Actúa como un nombre de usuario al realizar solicitudes a la API.
- Token de autenticación: Este token servirá como contraseña para autenticar sus solicitudes a la API. Manténgalo seguro y nunca lo comparta públicamente.
- Número de teléfono de Twilio: Este teléfono es crucial, esto es lo que usará para enviar SMS y no su número de teléfono.
Al completar estos pasos, habrá configurado con éxito su cuenta de Twilio, obtenido sus credenciales de API y obtenido su(s) número(s) de teléfono para la mensajería SMS. Ahora está listo para integrar Twilio con su aplicación Node.js y comenzar a enviar mensajes SMS de forma programática.
N.B: Si su cuenta de prueba gratuita caduca, deberá comprar un número de teléfono que utilizará para enviar un SMS.

Si no quiere comprar un número de teléfono para las pruebas, asegúrese de crear su cuenta solo cuando esté listo para enviar su SMS.
Instalación de dependencias:
Para integrar la funcionalidad SMS de Twilio en su aplicación Node.js, deberá configurar un nuevo proyecto Node.js e instalar el SDK de Twilio Node.js.
Antes de continuar con las instalaciones de dependencias, tenga en cuenta que no utilizaremos ninguna interfaz de usuario ni construiremos una aplicación front-end para probar esto. Sin embargo, para probar esto, utilizaremos Apidog, una mejor alternativa a Postman.
Apidog es una plataforma integrada para el diseño, la depuración, el desarrollo, la simulación y las pruebas de API.
Aquí hay una guía útil para obtener una comprensión completa de qué es Apidog y cómo usarlo al máximo. Cree una cuenta para prepararse para la etapa de prueba de API de este artículo.
Ahora, volvamos a la configuración de Node.Js y Twilio. Siga estos pasos para comenzar:
Configuración de un nuevo proyecto Node.js:
Si aún no lo ha hecho, cree un nuevo directorio para su proyecto Node.js y navegue a él utilizando su terminal o símbolo del sistema.
mkdir twilio-sms-demo
cd twilio-sms-demo
Inicialización de un proyecto Node.js:
Utilice el siguiente comando para inicializar un nuevo proyecto Node.js. Este comando creará un archivo package.json
que rastreará las dependencias de su proyecto.
npm init -y
Este comando crea un archivo package.json
con valores predeterminados. Puede personalizar estos valores según sea necesario.
Instalación del SDK de Twilio Node.js:
Ahora, deberá instalar el SDK de Twilio Node.js, que proporciona una interfaz conveniente para interactuar con la API de Twilio desde sus aplicaciones Node.js. Puede usar npm o yarn para instalar el SDK.
Usando npm:
Ejecute el siguiente comando para instalar el SDK de Twilio Node.js junto con el framework Express usando npm:
npm install express twilio
Usando yarn:
Si prefiere usar yarn, ejecute el siguiente comando en su lugar:
yarn add express twilio
Este comando descargará el SDK de Twilio Node.js junto con el framework Express y lo agregará como una dependencia en su archivo package.json
.
Si no lo sabe, Express es un framework de node.js que facilita la creación de API.
Verificación de la instalación:
Después de instalar el SDK de Twilio, asegúrese de que se haya agregado a su archivo package.json
. Debería ver "twilio": "^x.x.x"
listado en la sección dependencies
.
Además, puede verificar que la instalación se realizó correctamente comprobando la presencia del directorio node_modules
en su proyecto. Este directorio contiene todas las dependencias instaladas, incluido el SDK de Twilio.
Siguiendo estos pasos, ha configurado con éxito un nuevo proyecto Node.js e instalado el SDK de Twilio Node.js, allanando el camino para integrar la funcionalidad SMS de Twilio en su aplicación. Ahora, está listo para comenzar a escribir el código para enviar mensajes SMS con Twilio en su aplicación Node.js.
Escribir el código de Node.js:
Ahora que ha configurado su proyecto Node.js e instalado el SDK de Twilio, escribamos el código para enviar un mensaje SMS usando Twilio en combinación con Express.
Creación de un nuevo archivo JavaScript:
En el directorio de su proyecto, cree un nuevo archivo JavaScript llamado index.js
(o cualquier otro nombre que prefiera) donde escribirá el código para enviar mensajes SMS.
touch index.js
Una vez que haya terminado, abra el directorio/carpeta del proyecto en cualquier IDE de su elección. Si usted es una de las personas a las que les gusta la simplicidad, probablemente tenga VsCode instalado. Abra el proyecto init y debería ver algo similar a lo que tengo a continuación;

Abra el archivo index.js
y comencemos a escribir algo de código. Pegue el siguiente código en el archivo index.js
.
const express = require('express');
const accountSid = "your_account_sid;
const authToken = "your_auth_token";
const client = require('twilio')(accountSid, authToken);
En el código anterior, importamos el módulo express
al principio del archivo. También creamos dos constantes ( const
) que contienen nuestro accountSid
y authToken
. Por último, definimos otra constante donde importamos el módulo Twilio y le pasamos el accountSid
y el authToken
.
Algunas personas podrían argumentar que es mejor si envolvemos el accountSid y el AuthToken en un archivo .env
. Puede hacer eso si lo desea, pero voy a mantener las cosas simples aquí.
Escribir el código para enviar un mensaje SMS:
Ahora, escribamos el código para enviar un mensaje SMS usando el método messages.create()
de Twilio.
En ese mismo archivo index.js
, agregue los siguientes códigos debajo de lo que teníamos primero.
const app = express()
app.post('/send-sms', (req, res) => {
client.messages
.create({
body: 'Así es como se siente recibir SMS de prueba de Twilio. ¿Init?',
from: '+122345678', // Reemplace con su número de teléfono de Twilio incluyendo el código de país.
to: '+123456789' // el número de teléfono con el que verificó su cuenta.
})
.then(message => {
console.log('Mensaje enviado:', message.sid);
res.send('¡SMS enviado con éxito!');
})
.catch(error => {
console.error('Error al enviar SMS:', error);
res.status(500).send('Error al enviar SMS');
});
});
const PORT = 3000;
app.listen(PORT, () => {
console.log(`El servidor se está ejecutando en el puerto ${PORT}`);
});
En este código:
- Creamos una aplicación Express y definimos una ruta POST
/send-sms
para manejar el envío de mensajes SMS. - Luego inicializamos un cliente Twilio con nuestras credenciales de Twilio.
- Usando el cliente Twilio, enviamos un mensaje SMS al número de teléfono del destinatario especificado (
to
) con el cuerpo del mensaje proporcionado (body
).
¡Eso es todo! Ahora ha escrito el código de Node.js para enviar mensajes SMS usando Twilio y Express. No olvide reemplazar 'from'
y 'to'
con su número de teléfono de Twilio y el número de teléfono verificado.
Guarde el archivo, abra su terminal y escriba node index.js
y haga clic en enter. Si todo va bien, debería ver algo similar a;

Probando nuestra API:
Si puede recordar, mencioné que usaremos Apidog para probar nuestras API para ver si funcionan como se espera. Por lo tanto, descargue o use la versión web de Apidog para probar la API que acabamos de crear.
Una vez más, aquí hay una guía que le mostrará cómo comenzar con Apidog.
Ahora que está familiarizado con Apidog, inicie sesión y cree su primer proyecto, o use el predeterminado creado automáticamente para usted. Después de eso, haga clic en "Nueva solicitud"

Después de eso, se le mostrará una página para enviar una solicitud.

Puede ver que estoy enviando una solicitud POST
a localhost:3000/send-sms
y eso es porque la ruta que definimos en nuestra aplicación web es /send-sms
y estamos usando nuestra máquina local.
Si escribe la ruta correcta y presiona el botón de enviar en la parte superior derecha, recibirá una respuesta. En mi caso, obtuve un error, y el error se registró en mi terminal
.
El error fue simple, el número de teléfono al que intenté enviar el SMS no está verificado, porque estoy usando una cuenta de prueba, necesito verificar mi número o actualizar para enviar SMS a cualquier número de teléfono.
Una de las características interesantes de Twilio es que puede ver sus registros e historial. Vi el mío y obtuve la siguiente respuesta;

Todas las API de mis pruebas fallaron. ¿Puede adivinar por qué?
Mi número de teléfono
no fue verificado;

Una vez que verifique o actualice su cuenta a una cuenta paga, podrá recibir un SMS.
Mejora de la aplicación (opcional):
Una vez que haya implementado con éxito el envío de mensajes SMS con Twilio y Node.js, es posible que desee explorar características adicionales y mejorar la confiabilidad de su aplicación. Aquí hay algunas mejoras opcionales que puede considerar:
Exploración de características adicionales de Twilio:
Twilio ofrece una amplia gama de características más allá de la simple mensajería SMS. Puede explorar capacidades como:
- Envío de MMS: Mejore sus mensajes enviando contenido multimedia como imágenes, videos y archivos de audio.
- Programación de mensajes: Programe mensajes SMS para que se envíen en una fecha y hora específicas, ideal para recordatorios y notificaciones.
Conclusión:
En este tutorial, hemos explorado cómo integrar la funcionalidad SMS de Twilio con Node.js, lo que le permite enviar mensajes SMS de forma programática desde sus aplicaciones. Recapitulémos los pasos clave involucrados:
Configuración de la cuenta de Twilio: Regístrese para obtener una cuenta de Twilio, obtenga sus credenciales de API (SID de cuenta y token de autenticación) y verifique los números de teléfono para la mensajería SMS.
Instalación de dependencias: Configure un nuevo proyecto Node.js, instale el SDK de Twilio Node.js y configure Twilio con sus credenciales.
Escribir el código de Node.js: Cree un nuevo archivo JavaScript para enviar mensajes SMS, importe Express y el módulo Twilio, y escriba código para enviar mensajes SMS usando el método messages.create()
de Twilio.
Probar el código usando Apidog: Vimos cómo podemos usar una herramienta de desarrollo como Apidog para probar nuestras API de Node.js fácilmente sin estrés.
Siguiendo estos pasos, ha aprendido cómo aprovechar la poderosa API de Twilio junto con la flexibilidad de Node.js para incorporar la funcionalidad SMS en sus aplicaciones. A medida que continúe desarrollando sus proyectos, no dude en explorar más características de Twilio y personalizar sus aplicaciones para satisfacer las necesidades específicas de sus usuarios.
¡Feliz codificación!