Los números de teléfono inválidos perjudican silenciosamente las campañas de telemarketing. Este script analiza cada número mediante la API de Neutrino antes de considerarlo fiable: confirma que el número es real, indica si es un móvil o un teléfono fijo, lo normaliza al formato E.164 y lo registra en el campo correspondiente. Si un número falla, genera una tarea en Zoho CRM en lugar de descartarlo sin previo aviso.
Actualizado en tres lugares. El host cambió: Neutrino documenta la API en neutrinoapi.net ahora, no en neutrinoapi.com . La autenticación se trasladó a los encabezados User-ID y API-Key ; el estilo antiguo de parámetro de formulario sigue funcionando, pero ya no es el predeterminado documentado. Y el original usaba zoho.crm._create y zoho.crm._updateRecord , que son nombres de tareas obsoletos; los actuales son zoho.crm.createRecord y zoho.crm.updateRecord . Los campos de respuesta valid y type no han cambiado, por lo que la lógica sigue siendo válida.
ZohoCRM.modules.ALL y pasar connection:"your_connection" a las tareas zoho.crm . // Activador: en un cliente potencial de Zoho CRM o desde una función de creador
apiKey = "TU_CLAVE_API_DE_NEUTRINO";
userId = "TU_ID_DE_USUARIO_DE_NEUTRINO";
númeroDeTeléfono = si(!estáEnBlanco(Móvil), Móvil, Teléfono);
si(estáenblanco(númerodeteléfono))
{
devolver;
}
headerMap = Mapa();
headerMap.put("ID de usuario",userId);
headerMap.put("API-Key",apiKey);
bodyMap = Mapa();
bodyMap.put("número",númerodeteléfono);
// bodyMap.put("country-code","US"); // opcional, ayuda con números en formato local
resp = invokeurl
[
URL: "https://neutrinoapi.net/phone-validate"
tipo: POST
parámetros: bodyMap
encabezados: mapa de encabezados
];
// Neutrino señala problemas de autenticación y cuota en el cuerpo, no en el código de estado.
if(resp.getJSON("api-error") != null)
{
info "Error de Neutrino " + resp.getJSON("api-error") + ": " + resp.getJSON("api-error-msg");
devolver;
}
isValid = resp.getJSON("valid");
si(isValid == falso)
{
taskInfo = Mapa();
taskInfo.put("Asunto","Teléfono no válido");
taskInfo.put("Descripción","Neutrino rechazado " + phoneNumber + ". Por favor, verifique con el contacto.");
taskInfo.put("What_Id",LeadID);
taskInfo.put("$se_module","Leads");
createResp = zoho.crm.createRecord("Tasks",taskInfo);
información crearRespuesta;
}
demás
{
lineType = resp.getJSON("type"); // móvil | línea fija | tarifa premium | gratuito | voip | desconocido
e164 = resp.getJSON("número-internacional");
actualizarMapa = Mapa();
si(lineType == "mobile")
{
updateMap.put("Móvil",e164);
}
demás
{
updateMap.put("Phone",e164);
}
updateResp = zoho.crm.updateRecord("Leads",LeadID.toString(),updateMap);
Actualización de informaciónRespuesta;
} api-error del cuerpo de la solicitud. Sin la comprobación anterior, una clave caducada se interpreta como " valid es nula" y todos los números aparecen como inválidos sin previo aviso.international-number , no la entrada sin procesar. La normalización a E.164 durante la entrada es lo que permite que la deduplicación funcione posteriormente.country-code , is-mobile , international-number . Si prefiere el formato camel o snake, especifique output-case .voip merece un análisis aparte. Un número VoIP es válido, pero a menudo no acepta SMS. Si envías SMS a tus clientes potenciales, utiliza este método en lugar de tratarlo como un número de móvil.Este script forma parte de la biblioteca gratuita Creator Scripts Deluge.
Los 39 scripts de Deluge, el curso completo de Zoho Creator y todos los recursos descargables ahora son gratuitos. Obtén acceso gratuito →