add(__FUNCTION__, "========================="); // $log->add(__FUNCTION__, 'input - ' . print_r( $input, true )); $inputFieldName = $input->inputFieldName; $inputFields = $input->inputFields; $result = new stdClass(); $result->options = new stdClass(); $options = false; $use_transient = false; if( isset( $inputFields->whatsapp_origin_number->value ) && isset( $inputFields->whatsapp_template->value ) ){ $transient_name = 'whatsapp_template_from_hubspot_' . $inputFieldName . $inputFields->whatsapp_origin_number->value . '_' . $inputFields->whatsapp_template->value; $use_transient = true; } else { $transient_name = 'whatsapp_template_from_hubspot_' . $inputFieldName; } if( $use_transient ){ $options = get_transient( $transient_name ); } // if( !$options){ $options = []; if( $inputFieldName == 'whatsapp_origin_number' ){ Api::init(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' )); $business = new Business(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_business_id' )); $owned_wabas = $business->getOwnedWhatsAppBusinessAccounts(); foreach( $owned_wabas as $waba) { $waba_account = New Whatsapp_Business_Account( $waba->id, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ), ); $numbers = $waba_account->get_numbers(); foreach( $numbers->data as $number ){ $response = new stdClass(); $response->label = $number->verified_name; $response->description = $number->display_phone_number; $response->value = $waba->id. '|' .$number->id; $options[] = $response; // $options[ $number->verified_name.' ( '.$number->display_phone_number.' )' ] = $waba->id. '|' .$number->id; } } } if( $inputFieldName == 'whatsapp_template' ){ if( isset( $inputFields->whatsapp_origin_number->value ) ) { Api::init(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' )); $business = new Business(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_business_id' )); $owned_wabas = $business->getOwnedWhatsAppBusinessAccounts(); // $options['Sin plantilla'] = 'no_template'; $selected = explode('|', $inputFields->whatsapp_origin_number->value); $waba_id = $selected[0]; $number_id = $selected[1]; $waba_account = New Whatsapp_Business_Account( $waba_id, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ), ); $templates = $waba_account->get_templates(); $templates_found = false; foreach( $templates->data as $template ){ if( strpos( $template->name, 'hubspot' ) !== false || strpos( $template->name, 'difusion' ) !== false ){ $response = new stdClass(); $response->label = $template->name; $response->description = $template->category.'/'.$template->status.' - '. $template->language; $response->value = $template->name.'|'.$waba_id.'|'.$number_id.'|'.$template->language; $options[] = $response; $templates_found = true; } } if( !$templates_found ){ $response = new stdClass(); $response->label = 'No se encontraron plantillas'; $response->value = 'no_template'; $options[] = $response; } } } if( $inputFieldName == 'whatsapp_header_params_count' ){ if( isset( $inputFields->whatsapp_template->value ) ) { Api::init(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' )); $business = new Business(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_business_id' )); $selected = explode('|', $inputFields->whatsapp_template->value); $template_name = $selected[0]; $waba_id = $selected[1]; $number_id = $selected[2]; $language = $selected[3]; $waba_account = New Whatsapp_Business_Account( $waba_id, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ), ); $template = $waba_account->get_template( $template_name ); // $log->add(__FUNCTION__, "========================="); // $log->add(__FUNCTION__, 'template - ' . print_r( $template, true )); $params_found = false; $supported_headers = [ 'IMAGE' => [ 'text' => 'URL de imágen', 'params' => 1 ], 'VIDEO' => [ 'text' => 'URL del video', 'params' => 1 ], 'DOCUMENT' => [ 'text' => 'URL del documento', 'params' => 1 ], 'TEXT' => [ 'text' => 'Texto', 'params' => 1 ], ]; foreach( $template->components as $component ){ if( $component->type == 'HEADER' ){ if( in_array( $component->format, array_keys( $supported_headers ) ) ){ $params_found = true; $response = new stdClass(); $response->label = $supported_headers[$component->format]['params'] . ' parámetros ('. $component->format .')'; if( $component->format == 'TEXT' ){ foreach( $component->example as $header_text ){ $params_desc = implode('|', $header_text ); $response->description = $params_desc; } } else { $response->description = $supported_headers[$component->format]['text']; } $response->value = $component->format; $options[] = $response; } } } if( !$params_found ){ $response = new stdClass(); $response->label = '0 parámetros'; $response->value = 'none'; $options[] = $response; } } } if( $inputFieldName == 'whatsapp_body_params_count' ){ if( isset( $inputFields->whatsapp_template->value ) ) { Api::init(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' )); $business = new Business(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_business_id' )); $selected = explode('|', $inputFields->whatsapp_template->value); $template_name = $selected[0]; $waba_id = $selected[1]; $number_id = $selected[2]; $language = $selected[3]; $waba_account = New Whatsapp_Business_Account( $waba_id, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ), ); $template = $waba_account->get_template( $template_name ); $params_found = false; foreach( $template->components as $component ){ if( $component->type == 'BODY' && isset( $component->example->body_text ) && count( $component->example->body_text ) > 0 ){ foreach( $component->example->body_text as $body_text ){ $params_desc = implode('|', $body_text ); $params_found = true; $response = new stdClass(); $response->label = count( $body_text ) . ' parámetros'; $response->description = $params_desc; // $response->description = $component->text; $response->value = $component->type; $options[] = $response; } } } if( !$params_found ){ $response = new stdClass(); $response->label = '0 parámetros'; $response->value = 'none'; $options[] = $response; } } } if( $inputFieldName == 'whatsapp_footer_params_count' ){ if( isset( $inputFields->whatsapp_template->value ) ) { Api::init(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' )); $business = new Business(get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_business_id' )); $selected = explode('|', $inputFields->whatsapp_template->value); $template_name = $selected[0]; $waba_id = $selected[1]; $number_id = $selected[2]; $language = $selected[3]; $waba_account = New Whatsapp_Business_Account( $waba_id, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ), ); $template = $waba_account->get_template( $template_name ); $params_found = false; $params_count = 0; $params_desc = []; foreach( $template->components as $component ){ if( $component->type == 'BUTTONS' ){ foreach( $component->buttons as $button ){ if( isset( $button->example ) ){ // $params_desc .= implode('|', $button->example ); $params_desc[] = $button->text . ' ('.$button->type.')'; $params_found = true; $params_count ++; } } if( $params_found ){ $response = new stdClass(); $response->label = $params_count . ' parámetros'; // $response->description = $params_desc; $response->description = implode('|', $params_desc ); $response->value = $component->type; $options[] = $response; } } } if( !$params_found ){ $response = new stdClass(); $response->label = '0 parámetros'; $response->value = 'none'; $options[] = $response; } } } if( $use_transient ){ set_transient( $transient_name, $options, HOUR_IN_SECONDS ); } // } $result->options = new stdClass(); $result->options = $options; // $log->add(__FUNCTION__, "========================="); // $log->add(__FUNCTION__, $inputFieldName . ' result - ' . print_r( $result, true )); // $log->add(__FUNCTION__, $inputFieldName . ' result - ' . json_encode( $result )); wp_send_json( $result, 200 ); } add_action('wp_ajax_nopriv_send_whatsapp_message_from_hubspot', 'send_whatsapp_message_from_hubspot'); function send_whatsapp_message_from_hubspot(){ global $log; $input = json_decode(file_get_contents('php://input')); // $log->add(__FUNCTION__, "========================="); // $log->add(__FUNCTION__, 'input - ' . print_r( $input, true )); $fields = $input->fields; $whatsapp_template = $fields->whatsapp_template; $whatsapp_destination_number = $fields->whatsapp_destination_number; $whatsapp_header_params_count = $fields->whatsapp_header_params_count; $whatsapp_header_params_content = isset($fields->whatsapp_header_params_content) ? $fields->whatsapp_header_params_content : ''; $whatsapp_body_params_count = $fields->whatsapp_body_params_count; $whatsapp_body_params_content = isset($fields->whatsapp_body_params_content) ? $fields->whatsapp_body_params_content : ''; $whatsapp_footer_params_count = $fields->whatsapp_footer_params_count; $whatsapp_footer_params_content = isset($fields->whatsapp_footer_params_content) ? $fields->whatsapp_footer_params_content : ''; $output = new stdClass(); $output->outputFields = new stdClass(); try { $number_info = bot_getPhoneNumberInfo( $whatsapp_destination_number ); if( !$number_info ){ // $log->add('error_' . __FUNCTION__, "========================="); // $log->add('error_' . __FUNCTION__, 'input - ' . print_r( $input, true )); $output->outputFields->errorCode = 'NUMBER_NOT_VALID'; $output->outputFields->whatsapp_destination_number = $fields->whatsapp_destination_number; $output->outputFields->hs_execution_state = "FAIL_CONTINUE"; // $log->add('error_' . __FUNCTION__, 'output ' . print_r( $output, true) ); wp_send_json( $output, 400 ); return; } $whatsapp_template = explode('|', $whatsapp_template); $template_name = $whatsapp_template[0]; $waba_id = $whatsapp_template[1]; $number_id = $whatsapp_template[2]; $template_language = $whatsapp_template[3]; // // $log->add(__FUNCTION__, 'template_name - ' . print_r( $template_name, true )); // // $log->add(__FUNCTION__, 'waba_id - ' . print_r( $waba_id, true )); // // $log->add(__FUNCTION__, 'number_id - ' . print_r( $number_id, true )); // // $log->add(__FUNCTION__, 'template_language - ' . print_r( $template_language, true )); $waba_account = New Whatsapp_Business_Account( $waba_id, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ), ); $template = $waba_account->get_template( $template_name ); // $log->add(__FUNCTION__, 'template - ' . print_r( $template, true )); $session = New Whatsapp_Session_Handler( str_replace("+", "", $number_info ) , $number_id, 'whatsapp_api' ); if ( ! $session->get_session() ) { /**Si no hay una sesion creada no salta el contacto actual */ $session->create_session(); } Whatsapp_Webhook_Payload::init($number_id, (string) $number_info); $wa_webhook = Whatsapp_Webhook_Payload::instance(); $wa_message_api = New Whatsapp_Message_Api( $wa_webhook, get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_id' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_secret' ), get_option( WHATSAPP_BOT_PLUGIN_PREFIX . 'facebook_app_token' ) ); $template_params = []; if( !empty( $whatsapp_header_params_content ) && !empty( $whatsapp_header_params_count ) && $whatsapp_header_params_count != 'none' ){ $template_params['header'][$whatsapp_header_params_count] = $whatsapp_header_params_content; } if( !empty( $whatsapp_body_params_content ) ){ $params = explode('|', $whatsapp_body_params_content); $params = array_map('trim', $params); $template_params['body'] = $params; } if( !empty( $whatsapp_footer_params_content ) ){ $params = explode('|', $whatsapp_footer_params_content); $params = array_map('trim', $params); $template_params['buttons'] = $params; } // $log->add(__FUNCTION__, 'template_params - ' . print_r( $template_params, true )); $components = $waba_account->prepare_components_v2($template_name , $template_params ); // $log->add(__FUNCTION__, 'components - ' . print_r( $components, true )); $result = $wa_message_api->send_template( $template_name, $template_language, $components['components'] ); // $log->add(__FUNCTION__, 'result - ' . print_r( $result, true )); try { $message_send = $waba_account->get_template_body( $template_name, $template_params ); $output->outputFields->message_send = $message_send; } catch (Exception $e) { $output->outputFields->message_send = 'Error: ' . $e->getMessage(); } if( isset($session) ){ $session->set_variable( 'outgoing_message_created', date( 'Y-m-d' ) ); $session->set_variable( 'outgoing_message_type', 'workflow' ); } $output->outputFields->message_id = $result; $output->outputFields->whatsapp_destination_number = $whatsapp_destination_number; $output->outputFields->hs_execution_state = "SUCCESS"; $output->outputFields->whatsapp_template_send = $template_name; $output->outputFields->whatsapp_template_params = $template_params; } catch (Exception $e) { $log->add('error_' . __FUNCTION__, "========================="); $log->add('error_' . __FUNCTION__, 'input - ' . print_r( $input, true )); $log->add('error_' . __FUNCTION__, 'whatsapp_template - ' . print_r( $whatsapp_template, true )); $log->add('error_' . __FUNCTION__, 'whatsapp_body_params_count - ' . print_r( $whatsapp_body_params_count, true )); $log->add('error_' . __FUNCTION__, 'whatsapp_destination_number - ' . print_r( $whatsapp_destination_number, true )); $log->add('error_' . __FUNCTION__, 'number_info - ' . print_r( $number_info, true )); $log->add('error_' . __FUNCTION__, 'template_params - ' . print_r( $template_params, true )); $log->add('error_' . __FUNCTION__, 'Exception - ' . print_r( $e->getMessage(), true )); $output->outputFields->errorCode = 'API_ERROR'; $output->outputFields->exceptionMessage = $e->getMessage(); $output->outputFields->hs_execution_state = "FAIL_CONTINUE"; wp_send_json( $output, 400 ); return; } wp_send_json( $output, 200 ); return; } Sérum Clarificante Crystal Rose Con AHA+BHA - Infinitek Paris

Sérum Clarificante Crystal Rose Con AHA+BHA

$648.00 MXN

  • Mejora la textura.
  • Aclara y unifica el tono de la piel.
  • Disminuye visiblemente manchas y poros dilatados.
  • Contiene activos con estudios de efectividad.

*Desarrollado con tecnología de punta que comprueba resultados reales.


Infinitek® Paris Sérum Crystal Rose, es una innovadora fórmula despigmentante y exfoliante, ideal para combatir manchas, marcas de acné, mejorar la textura y signos de envejecimiento.

Formulado con una mezcla de ácido Glicólico (10% AHA), ácido salicílico (2% BHA) y ácido azelaico, los cuales eliminan células muertas, destapan los poros, suavizan las líneas finas y arrugas; mientras la miel de rosas y el ácido hialurónico, hidratan, nutren y calman.

Es recomendado para controlar el exceso de oleosidad y conseguir una piel renovada, radiante y joven.

¿Por qué es especial?

  • 4 Fuentes antioxidantes/antimanchas.
  • 9 Fuentes humectantes.
  • Activos con estudios de efectividad.
  • Fórmula Multi-función.
  • Libre de crueldad animal.
  • Vegano, libre de parabenos, sulfatos y fragancias.

No recomendado para pieles sensibles, ni con rosácea.

Para mayor información, comunícate con una de nuestras asesoras al número (+52) 55 8789 4808.

Modo de Uso

Sérum de uso nocturno. Aplicar de manera uniforme de 4-6 gotas sobre la piel limpia y seca, en rostro, cuello y escote, evitando el área de la boca y alrededor de los ojos.

El contenido de Alfa hidroxiácidos (AHA), puede incrementar la sensibilidad de la piel, por lo tanto, debe limitar la exposición al sol y aplicar diariamente protector solar.

Para mayor información, comunícate con una de nuestras asesoras al número (+52) 55 8789 4808.

Ingredientes

Nuestro Crystal Rose está formulado con:

Formulado con una mezcla de ácidos Glicólico (10% AHA), ácido salicílico (2% BHA) y ácido azelaico

  • Ácido Hialurónico: Reduce visiblemente arrugas y líneas de expresión mientras revitaliza las capas superiores de la piel haciéndola lucir sana.
  • Extracto de caléndula: Actúa como un antioxidante, capaz de neutralizar la acción de los radicales libres.
  • Extracto de pétalos de rosas: Reduce líneas finas, da volumen a la piel y estimula la producción de colágeno.
  • Miel de rosas: Potente acción limpiadora, elimina toxinas, lo que la hace idónea para pieles con tendencia acnéica.
  • Extracto de cactus: Promueve una alta hidratación y las grandes cantidades de vitamina E y regula la producción de sebo en la piel.

Para mayor información, comunícate con una de nuestras asesoras al número (+52) 55 8789 4808.

Precauciones

Solo para uso externo. Si aparecen signos de irritación suspenda su uso. Evitar el contacto directo con los ojos. Mantener fuera del alcance de los niños.

*No es recomendable para pieles sensibles.

*No es recomendable para mujeres embarazadas o en lactancia.

Para mayor información, comunícate con una de nuestras asesoras al número (+52) 55 8789 4808.

Valoraciones

No hay valoraciones aún.

Mostrar reseñas en todos los idiomas (241)

Sé el primero en valorar “Sérum Clarificante Crystal Rose Con AHA+BHA”

Sérum Clarificante Crystal Rose Con AHA+BHA

$648.00 MXN

¿Cambiar de idioma?

Estás cambiando de ubicación y hay elementos en el carrito. Si continuas a México, se vaciará el carrito y tendrás que agregar al mismo los elementos nuevamente.

This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.