Validar un número
A partir del 4 de febrero de 2027, Vonage dejará de ofrecer Vonage Number Insights. Para garantizar un soporte ininterrumpido y ofrecer una solución más escalable y preparada para el futuro, te recomendamos que migres a nuestra oferta mejorada: API de información de identidad de Vonage. La API Vonage Identity Insights consolida varios conjuntos de datos relacionados con números de teléfono en una API única y flexible, lo que te permite solicitar información en tiempo real sobre un número de teléfono y recuperar cualquier combinación de información, como el formato del número, los detalles del operador, SIM Swap y Subscriber Match, en una sola llamada.
Por favor, revise el Guía de transición Number Insightsque ofrece información detallada sobre las diferencias entre las API, los cambios necesarios y las mejores prácticas para una transición sin problemas.
Number Insight API le ayuda a validar los números que le facilitan los clientes para evitar fraudes y asegurarse de que puede volver a ponerse en contacto con ese cliente en el futuro. También le proporciona otra información útil, como el formato del número y si se trata de un número de móvil o fijo.
La API Number Insight tiene tres niveles de producto:
- API básica: Descubra a qué país pertenece un número y utilice la información para formatearlo correctamente.
- API estándar: Determinar si un número es fijo o móvil (para elegir entre contacto por voz o SMS) y bloquear números virtuales.
- API avanzada: Calcule el riesgo asociado a un número.
Más información sobre el API básicas, estándar y avanzadas. Nota: Las solicitudes a la API básica de Number Insight son gratuitas. Los demás niveles de API tienen coste. Consulte la Referencia API para más información.
En SDK del servidor Ruby facilita el acceso a la API Number Insight. También le permite trabajar con otras API, como la API de precios. Esto significa que, además de validar y desinfectar un número de teléfono, puede confirmar el coste del envío de mensajes de texto y llamadas de voz al mismo, como demostramos en el vídeo calcular el coste de este tutorial.
En este tutorial
Aprenderá a desinfectar y validar números de teléfono utilizando el SDK Ruby Server.
- Antes de empezar asegúrate de que tienes lo que necesitas para completar este tutorial
- Crear el proyecto clonando el código fuente del tutorial en GitHub y configurándolo con los detalles de tu cuenta de Vonage.
- Instalar las dependencias incluido el SDK del servidor Ruby
- Guía de códigos para saber cómo funciona el código
Antes de empezar
Para completar este tutorial necesitas:
- Su
api_keyyapi_secretpara su Account de Vonage - regístrese para obtener una Account si aún no la tiene - Acceso a la código fuente del tutorial en GitHub
Crear el proyecto
Clonar el código fuente del tutorial repositorio:
Cambia a la carpeta del proyecto:
Copie el .env-example archivo a .env y editar .env para configurar la clave y el secreto de su API desde la página salpicadero:
Instalar las dependencias
Ejecutar bundle install para instalar las dependencias del proyecto.
Guía de códigos
El proyecto tutorial no es una aplicación, sino una colección de fragmentos de código que muestran cómo trabajar con la API Number Insight. En este tutorial ejecutará cada fragmento de código y aprenderá cómo funciona.
Determinar el país
Este ejemplo utiliza la API Number Insight Basic para averiguar a qué país pertenece un número.
Ejecutar el código
Ejecutar el snippets/1_country_code.rb archivo ruby:
Devuelve el número de teléfono en formato internacional, así como el nombre, el código y el prefijo donde está registrado el número.
Cómo funciona
En primer lugar, el código crea el nexmo con la clave y el secreto de la API que configuró en el archivo .env archivo:
A continuación, llama a la API básica de Number Insight, introduciendo la variable number para proporcionar información sobre:
Sanear un Numbers
Es posible que el usuario proporcione un número de teléfono que no tenga formato internacional. Es decir, que no incluya el prefijo del país. Este ejemplo muestra cómo utilizar la API Number Insight Basic para formatear el número correctamente.
La mayoría de las API de Vonage esperan que un número de teléfono esté en formato internacional, por lo que puedes usar Number Insight Basic API para desinfectar los números antes de usarlos.
Ejecutar el código
Ejecutar el snippets/2_cleanup.rb archivo ruby:
Devuelve el número local proporcionado (020 3198 0560a Gran Bretaña (GB) en formato internacional con la tecla 44 prefijo:
Cómo funciona
Para recuperar un número de teléfono en formato internacional, llame a la API Number Insight Basic con un número de teléfono en formato local y un prefijo de país:
Determinar el tipo de número (fijo o móvil)
La API estándar Number Insight proporciona más información sobre un número de teléfono que la API básica, pero incluye todos los datos que ésta proporciona. Una de sus características más útiles es que le indica tipo del número con el que está tratando, para que pueda determinar la mejor manera de ponerse en contacto con el número.
Ejecutar el código
Ejecutar el snippets/3_channels.rb archivo ruby:
Verás que este número de teléfono está asignado a un teléfono fijo del Reino Unido, por lo que la voz es una opción mejor que los SMS:
Cómo funciona
Para determinar el tipo de número, llame a la API estándar de Number Insight, introduciendo un número local con el prefijo del país, como se muestra aquí:
También puede pasar el number en formato internacional sin especificar el country:
A continuación, podemos encontrar la información del operador actual y utilizarla para mostrar el tipo de número (móvil o fijo):
Calcular el coste
Puede utilizar las APIs Number Insight y Precios para determinar en qué red está el número y cuánto cuesta llamarlo o enviarle un SMS.
Ejecutar el código
Ejecutar el snippets/4_cost.rb archivo ruby:
La respuesta indica el coste de enviar un mensaje SMS o el precio por minuto de una llamada de voz al número de teléfono:
Este resultado muestra que el número es un teléfono fijo y, por tanto, el más adecuado para llamadas de voz, que puede realizar a un coste de 0,12 EUR por minuto.
Cómo funciona
En primer lugar, el código llama a la Number Insight Standard API, que proporciona información sobre la red a la que está registrado el número en ese momento, así como el país de origen (una función que también está disponible en la Basic API):
A continuación, utiliza el Precios API para recuperar el coste de llamar y enviar mensajes de texto al número para todos los operadores de ese país:
Otras opciones para recuperar datos de precios en la API de cliente REST de Ruby son:
vonage.pricing.sms.list()ovonage.pricing.voice.list()- para recuperar los datos de precios de todos paísesvonage.pricing.sms.prefix(prefix)ovonage.pricing.voice.prefix(prefix)- para recuperar los datos de precios de un prefijo internacional específico, como por ejemplo44para el Reino Unido.
A continuación, el código busca el coste de la red específica a la que pertenece el número y muestra esa información:
Validar un número de teléfono móvil
La API Number Insight Advanced le permite validar un número para determinar si es probable que sea auténtico y una forma fiable de ponerse en contacto con su cliente. En el caso de los números móviles, también puede descubrir si el número está activo, en itinerancia, localizable y en la misma ubicación que su dirección IP. La API avanzada incluye toda la información de las API básica y estándar.
Ejecutar el código
Ejecutar el snippets/5_validation.rb archivo ruby:
En este caso, la respuesta indica que el número es valid.
Si eliminas algunos dígitos del número de teléfono y vuelves a ejecutar el programa, la API avanzada de Number Insight informa de que el número es not_valid.
Si la Number Insight API Advanced no puede determinar si el número es válido o no, recibirá una respuesta del tipo unknown:
Cómo funciona
El código solicita la representación internacional del número como antes, utilizando una función que está disponible en la API Básica pero que la API Avanzada también incluye:
También devuelve y muestra el valid_number de la respuesta. El valor de este campo es uno de los siguientes valid, not_valid o unknown.
Conclusión
En este tutorial has aprendido a validar y determinar el formato internacional de un número y a calcular el coste de llamar o enviar mensajes SMS al mismo.
Recursos y lecturas complementarias
- Consulte nuestro Guías Insight de los Numbers para ver más cosas que puedes hacer con Number Insight.
- Leer Entradas de blog sobre Number Insight.
- Visite el Referencia de la API Number Insight para obtener documentación detallada sobre cada punto final.