Cómo registrar un número de teléfono de Twilio y enviar un SMS mediante la CLI de Twilio

May 14, 2021
No Translation Text Exists for this Label Key and Language.
Maciej Treder
Colaborador
No Translation Text Exists for this Label Key and Language.
No Translation Text Exists for this Label Key and Language.

Hay más de 4500 millones de dispositivos con capacidad de texto. Esto crea una gran oportunidad para notificar a las personas acerca de próximas citas, eventos especiales, noticias de último minuto o promociones comerciales a través de un SMS. Enviar mensajes SMS de forma programática permite llegar a muchas personas casi simultáneamente. Con los SMS programables de Twilio, puedes registrar tu propio número de teléfono virtual y enviar mensajes SMS a todo el mundo.

Este tutorial te mostrará cómo configurar la CLI de Twilio, registrar un número de teléfono y enviar un SMS usando el nuevo número.

Nota importante de cumplimiento: Hay reglas para usar mensajes SMS y estas varían entre países. Familiarízate con las reglas de los países en los que enviarás mensajes con las Pautas regulatorias para SMS de Twilio.

Requisitos previos

Para completar el proyecto descrito en este tutorial, necesitarás las siguientes herramientas y recursos:

  • Una cuenta de Twilio: Regístrate gratis con este enlace y recibe USD 10 en crédito cuando actualices tu cuenta a una normal.
  • Una CLI de Twilio: La interfaz de línea de comandos de Twilio requiere Node.js y NPM, que se instala con Node.js.

Obtén un número de teléfono de Twilio

Los mensajes de SMS de Twilio se envían usando números de teléfono que proporcionan acceso instantáneo a números de teléfono locales, nacionales, móviles y gratuitos en más de 100 países con una API que los desarrolladores pueden utilizar con facilidad. Puedes obtener un número de teléfono de Twilio gratis como parte de tu cuenta de prueba.

Una vez que hayas creado una cuenta de Twilio, puedes utilizar la CLI de Twilio para obtener un número de teléfono.

Nota: Si ya instalaste la CLI, asegúrate de tener la versión más reciente ejecutando el siguiente comando:

npm install -g twilio-cli

Si has almacenado tus credenciales de Twilio como variables de entorno, la CLI de Twilio las utilizará automáticamente. De lo contrario, tendrás que iniciar sesión con el siguiente comando:

twilio login

Este comando solicitará el SID y token de autenticación de la cuenta, ambos disponibles en la consola de Twilio.

Para enumerar los números de teléfono disponibles para el registro, utiliza el siguiente comando, sustituyendo el código de país ISO 3166 alfa-2 apropiado por EE. UU., si es necesario:

twilio api:core:available-phone-numbers:local:list --country-code US

Deberías ver una lista similar a la siguiente salida:

Phone Number  Region  ISO Country  Address Requirements
+13852101305  UT      US           none                
+14077922414  FL      US           none                
+16033712156  NH      US           none                
+16036367116  NH      US           none                
+18312751816  CA      US           none                
+14693316717  TX      US           none                
+18312751822  CA      US           none    

Copia uno de los números de la lista y regístralo en tu cuenta de Twilio mediante:

twilio api:core:incoming-phone-numbers:create --phone-number="+13852101305"

Si tu intento de registro es exitoso, deberías ver lo siguiente:

SID                                 Phone Number  Friendly Name 
PN3ef900000000000000000000000000d9  +13852101305  (385) 210-1305

Una vez registrado, el número de teléfono está disponible para su uso (hasta que lo liberes con la CLI o la consola de Twilio). Ten en cuenta que el SID asociado con el número de teléfono es un secreto de usuario y se lo debe manejar de forma segura.

Para verificar que el número se agregó correctamente a tu cuenta, puedes utilizar la CLI de Twilio para enviar un mensaje de prueba. Ejecuta el siguiente comando, teniendo cuidado de reemplazar los valores del marcador de posición con tu número de teléfono de Twilio y tu número personal habilitado para SMS, en formato E.164:

twilio api:core:messages:create --from <your-twilio-phone-number> --to <SMS-receiver-phone-number> --body "Hello world"

Nota: Con una cuenta de prueba, solo puedes enviar mensajes a los números de teléfono que ya registraste en tu cuenta. El número de teléfono habilitado para SMS que utilizaste para registrarte en tu cuenta de Twilio es el primer número que registraste.

La API devolverá una respuesta similar a la salida que aparece a continuación para indicar que el mensaje SMS se recibió correctamente y está en cola para enviarse:

SID                                 From          To            Status  Direction     Date Sent
SM4a447328e80a43ceb8e61dda9f3d4cb6  +13852101305  +16463974810  queued  outbound-api  null  

En un corto tiempo, recibirás un mensaje SMS en tu teléfono:

Pantalla de bloqueo del teléfono celular con mensaje SMS

Puedes comprobar el estado de la solicitud de creación del mensaje con el siguiente comando de CLI:

twilio api:core:messages:fetch --sid SM4a447328e80a43ceb8e61dda9f3d4cb6

Verás una respuesta similar a la siguiente:

SID                                 From          To            Status     Direction     Date Sent                    
SM4a447328e80a43ceb8e61dda9f3d4cb6  +13852101305  +16463974810  delivered  outbound-api  Mar 13 2020 14:17:20 GMT+0100

Si tu mensaje no se entrega, puedes utilizar los registros de estado en la consola de Twilio que te ayudarán a identificar el problema. Si estás usando una cuenta de prueba de Twilio, asegúrate de enviar los mensajes a un número de teléfono registrado.

Resumen

En esta publicación has aprendido cómo instalar y configurar la CLI de Twilio y cómo obtener un número de teléfono de Twilio. Este número es necesario para trabajar con algunos de los productos de Twilio, como los SMS programables. También aprendiste a enviar un SMS a cualquier número habilitado para SMS en todo el mundo con la CLI de Twilio.

Recursos adicionales

Maciej Treder es un ingeniero sénior de desarrollo de software en Akamai Technologies. También es orador de conferencias internacionales y autor de @ng-toolkit. Puedes obtener más información sobre él en https://www.maciejtreder.com. También puedes comunicarte con él mediante contact@maciejtreder.com o @maciejtreder en GitHub, Twitter, StackOverflow y LinkedIn.

Gabriela Rogowska contribuyó a esta publicación.