// ============================================================ // PRÓXIMA ENERGÍA — Formulario Captación Empresas // Integración con API Astroline (llamada automática) // ============================================================ add_action('wpcf7_mail_skipped', 'proxima_captacion_astroline', 10, 1); add_action('wpcf7_mail_sent', 'proxima_captacion_astroline', 10, 1); add_action('wpcf7_mail_failed', 'proxima_captacion_astroline', 10, 1); function proxima_captacion_astroline($cf7) { // ── IDs del formulario ──────────────────────────────────── $ids_formulario = [ 'a551b1c', // ID alfanumérico CF7 '2915', // ID real en página /empresas ]; $id = $cf7->id(); if (!in_array($id, $ids_formulario)) return; $submission = WPCF7_Submission::get_instance(); $data = $submission->get_posted_data(); // ── Obtener teléfono ────────────────────────────────────── // El campo intl_tel guarda el número completo en el campo oculto 'telefono' $telefono = $data['telefono'] ?? ''; $telefono = preg_replace('/[\s\+\-\(\)]/', '', $telefono); // limpiar formato if (empty($telefono)) { proxima_captacion_log('ERROR: teléfono vacío', $id); return; } // ── Configuración API Astroline ─────────────────────────── $url = 'https://geoatlanter.astrosip.com/api/v1/call/'; $token = 'oKa0V5ljAm7v5qH4Klei'; // Números de campaña disponibles: // '919896801' → Leads Febrero25 // '911085520' → Web Empresas // Descomentar el que corresponda según confirmación del cliente: // $company_number = '919896801'; // Leads Febrero25 $company_number = '911085520'; // Web Empresas probablemente este // ── Llamada a la API ────────────────────────────────────── $payload = [ 'destination' => $telefono, 'companyNumber' => $company_number, ]; $response = wp_remote_post($url, [ 'headers' => [ 'Content-Type' => 'application/json', 'geoatl_token' => $token, ], 'body' => json_encode($payload), 'timeout' => 15, ]); // ── Log ─────────────────────────────────────────────────── $log = [ 'fecha' => date('Y-m-d H:i:s'), 'formulario' => $id, 'telefono' => $telefono, 'company_number' => $company_number, 'payload' => $payload, 'http_code' => wp_remote_retrieve_response_code($response), 'respuesta' => wp_remote_retrieve_body($response), 'error' => is_wp_error($response) ? $response->get_error_message() : null, ]; file_put_contents( WP_CONTENT_DIR . '/proxima-cf7.log', date('Y-m-d H:i:s') . ' | ASTROLINE | ' . json_encode($log, JSON_UNESCAPED_UNICODE) . PHP_EOL, FILE_APPEND ); } function proxima_captacion_log($msg, $id) { file_put_contents( WP_CONTENT_DIR . '/proxima-cf7.log', date('Y-m-d H:i:s') . ' | ASTROLINE_ERROR | formulario:' . $id . ' | ' . $msg . PHP_EOL, FILE_APPEND ); }

Blog

Últimos artículos

¿Quieres ser el primero en enterarte de como realmente ahorrar en tu factura de la luz, ser más sostenible o recibir consejos únicos en el sector eléctrico? ¡Apúntate a nuestra Newsletter!