¿Cómo puede determinar mediante programación si un número de teléfono es VoIP, móvil prepago, móvil o línea fija?

Eric Moskowitz, gracias por tu A2A.

Como escribió correctamente Robert Adams, el problema que describió afecta cómo se calculan las tarifas de terminación dentro del operador.

En general, su operador de telecomunicaciones tiene acuerdos de roaming con el otro operador de telecomunicaciones dentro del mismo país.

En este contexto, si la llamada se genera dentro del mismo país, es posible que se le notifique por el tipo de origen de la llamada, siguiendo los procedimientos descritos por Robert Adams.

Si la llamada se genera desde otro proveedor (es decir, un extranjero o un proveedor de VoIP), a menos que exista un acuerdo de itinerancia específico entre su operador y el lugar donde se genera la llamada, no podrá obtener esos detalles y, en caso de que esté operando un número 800, la llamada se cortará ya que no es posible calcular la tarifa de terminación.

Estaba pensando en trucos como, responder la llamada y luego ver qué tipo de códec estaba negociando su cliente receptor, pero realmente es un truco porque puede haber puertas de enlace en el medio que cambian los códecs entre su cliente y dónde se origina la llamada.

En lo que respecta a América del Norte, SearchBug.com ofrece una API con XML, JSON o JSONP que podría ayudarlo según lo que intente hacer. Su feed incluye la capacidad de identificar el tipo de línea para números de teléfono norteamericanos de 10 dígitos. El sistema especifica si los números son fijos (línea de cable), teléfono celular (línea inalámbrica), VoIP o desconocidos (inválidos). http://www.searchbug.com/api/ide

Actualmente no es posible determinar PPD Mobile ya que no hay un identificador único separado en NANPA para teléfonos celulares prepagos. Incluso con VoIP no es exacto, ya que los números de VoIP no tienen sus propios códigos NPA o códigos de la oficina central en América del Norte.

No tengo idea de otros países.

A pesar de lo que he visto en algunas de las respuestas, puede determinar totalmente el tipo de número de teléfono en función del identificador de llamadas.

Bandwidth ofrece esto a través de páginas blancas llamadas Inteligencia numérica. Usando el punto final y solo un número de teléfono puede determinar:

  • Número en e.164 (+1 ### – ####)
  • Número nacional (### – ### – #### )
  • operador (verizon, at & t, ancho de banda, etc.)
  • lineType (teléfono fijo, servicio fijo, servicio no fijo, móvil, correo de voz, sin costo, premium, otro)
  • Puntaje de reputación: ¿qué tan probable es que este número sea SPAM / FRAUDE?
  • tipo de riesgo: qué tipo de riesgo está asociado con el puntaje
  • Categoría de riesgo: not_spam, deuda_colector, teleoperador, llamada_política, encuesta telefónica, phishing, extorsión, irs_scam, tax_scam, tech_support_scam, vacation_scam, lucky_winner_scam, estafa, tollfree_pumping, other_spam

Actualmente, la función está en versión beta (agosto de 2016) y puede solicitar acceso registrándose en Bandwidth y luego dirigiéndose a la página de Number Intelligence y enviando un correo electrónico solicitando acceso.