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:
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:
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.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.- "|" 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).
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.&&
nos permite encadenar nuestros comandos dentro de shell.echo $available_number
imprime la variableavailable_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:
¿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.