You are viewing the Spanish (Mexico) site, but your language preference is set to English. Switch to English site →

Menu

Expand
Calificar esta página:

Cómo usar C shell para enviar un SMS desde un nuevo número Twilio

Hoy haremos muy feliz a Bill, ya que compraremos un nuevo número Twilio y le enviaremos un SMS directamente desde csh (o, lo más probable, desde tcsh). Aquí aprenderás a encontrar un número disponible, comprar un número y enviar un SMS con Twilio sin salir del C shell.

Configurar credenciales de Twilio en C shell

Haz clic en la consola Twilio para comenzar. Inicia sesión en tu cuenta existente o regístrate para obtener una cuenta gratuita (asegúrate de verificar tu número, lo necesitarás más tarde). Después, busca el Resumen de la cuenta como se indica:

Account Credentials

Con esa información, reemplaza las variables account_sid y auth_token a continuación con las variables “ACCOUNT SID” y “AUTH TOKEN” de la consola Twilio. (Haz clic en el ícono de ojo para mostrar el AUTH TOKEN).

Ejecuta lo siguiente en C shell:

set account_sid="ACXXXXXXXXXXXXXXXXXXXXX"
set auth_token="your_auth_token"

Buscar un número Twilio con cURL en C shell

Ahora que configuramos las variables SID de cuenta y token de autenticación, podemos consultar la API REST de Twilio para encontrar números de teléfono disponibles. Tendremos que encontrar uno (y comprarlo) para enviar un SMS desde nuestro script.

set available_number=`curl -X GET \
"https://api.twilio.com/2010-04-01/Accounts/${account_sid}/AvailablePhoneNumbers/US/Local" \
-u "${account_sid}:${auth_token}" | \
sed -n "/PhoneNumber/{s/.*<PhoneNumber>//;s/<\/PhoneNumber.*//;p;}"`
echo $available_number

Si pegas el comando anterior y presionas Intro, available_number mostrará el primer número disponible de Twilio.

Exploremos lo que sucede con esta línea:

  1. set available_number= es la sintaxis para establecer una variable local. Todo lo que está dentro del signo de comilla simple (`) se ejecutará y asignará a available_number.
  2. curl -X GET "https://api.twilio.com/[omitted] -u "${account_sid}:${auth_token}" Usamos el paquete de software cURL y el verbo HTTP “GET” a fin de pedir a Twilio un punto final de números disponibles para obtener un número libre. “-u” es el indicador para proporcionar credenciales de cuenta mediante autenticación básica HTTP. ${variable_name} con comillas dobles reemplaza los nombres de variable que establecimos anteriormente en este comando.
  3. "|" Un carácter de barra vertical en shell significa que los resultados del comando anterior se pasan al siguiente comando (en este caso, pasamos la respuesta de Twilio a sed).
  4. sed -n "/PhoneNumber/{s/.*<PhoneNumber>//;s/<\/PhoneNumber.*//;p;}" Usa el sed de paquete de manipulación de secuencias para extraer solo la primera instancia de las etiquetas <PhoneNumber> de la respuesta XML de Twilio.
  5. && nos permite encadenar nuestros comandos dentro de shell.
  6. echo $available_number imprime la variable available_number en shell.

(Para usuarios avanzados: Ten en cuenta que el “US” después de AvailablePhoneNumbers en el URI es el código ISO de país.)

Nota: Si no estás en una cuenta de prueba, tendrás que comprar este número. Consulta nuestra página de precios para obtener más información.

Comprar un número de teléfono Twilio en C shell

Twilio nos acaba de mostrar un número disponible, vamos a reclamarlo.

Ejecuta lo siguiente para comprar el número y agregarlo a tu cuenta:

curl -X POST -F "PhoneNumber=${available_number}" \
"https://api.twilio.com/2010-04-01/Accounts/${account_sid}/IncomingPhoneNumbers" \
-u "${account_sid}:${auth_token}"

Presiona Intro y serás el feliz propietario de un nuevo número de teléfono Twilio (si no es así, es posible que ya hayan comprado el número, en ese caso, vuelve a ejecutar el paso de “número disponible” e inténtalo de nuevo).

Si eres detallista, quizá notarás lo siguiente:

  • Ahora utilizamos el método HTTP POST.
  • Publicamos el parámetro PhoneNumber mediante POST en el punto final IncomingPhoneNumbers y reemplazamos el número de teléfono por el que encontramos en el último paso.

Si todo resulta bien, ahora eres propietario de available_number y obtendrás los beneficios asociados.

Enviar un SMS con Twilio en C shell

Cambia la variable your_number a continuación por un número Twilio verificado en tu cuenta y ejecuta la siguiente línea:

set your_number="+15555555555"
curl -X POST -F "Body=Hola, tu nuevo número de teléfono está funcionando." \
-F "From=${available_number}" -F "To={$your_number}" \
"https://api.twilio.com/2010-04-01/Accounts/${account_sid}/Messages" \
-u "${account_sid}:${auth_token}"

Este comando envía una solicitud POST al recurso Messages (Mensajes) con los tres parámetros necesarios: Body, From y To. Deberías explorar todos los parámetros legales para el punto final Messages y ver cómo enviar imágenes o establecer URL de devolución de llamada para actualizaciones sobre el estado de entrega de mensajes, entre otros.

Sin embargo, si todo resulta bien, tu teléfono debería reproducir un tono de llamada o vibrar en tu escritorio. Intenta cambiar el campo “body” para agregar emoji o enviar SMS a otros números.

Twilio hace sonar el teléfono en C shell

Usar puntos finales Twilio útiles sin salir de csh debería acelerar enormemente el tiempo de creación de prototipos. Manipular la línea de comandos es una excelente manera de explorar la API de Twilio y agregar capacidades de comunicación a los scripts de shell. Con shell y este artículo, ahora puedes buscar y comprar números, y enviar mensajes SMS sin salir de csh: simplemente usa lo que te ofrece *NIX.

Otros artículos:

Paul Kamp Kevin Segovia Daniel Erazo
Calificar esta página:

¿Necesitas ayuda?

Todos la necesitamos a veces; la programación es difícil. Obtén ayuda ahora de nuestro equipo de soporte, o recurre a la sabiduría de la multitud visitando Stack Overflow Collective de Twilio o navegando por la etiqueta de Twilio en Stack Overflow.

Loading Code Sample...
        
        
        

        Gracias por tus comentarios.

        Selecciona los motivos de tus comentarios. La información adicional que nos brindas nos ayuda a mejorar nuestra documentación:

        Enviando tus comentarios…
        🎉 Gracias por tus comentarios.
        Se produjo un error. Inténtalo de nuevo.

        Gracias por tus comentarios.

        thanks-feedback-gif