OneLink Smart Script V2

De un vistazo: Personaliza los OneLinks que se generan automáticamente e incrustan detrás de un botón o banner en el sitio web de tu marca.

Acerca de OneLink Smart Script

OneLink Smart Script utiliza las URL entrantes que llevan a la página web para generar automáticamente URL de OneLink salientes únicas que llevan a la tienda de aplicaciones.

Las URL salientes se generan utilizando los argumentos que recibes del marketer e introduces en el script. Nota: El afParameters tiene una estructura compuesta por varios otros argumentos (parámetros), cada uno de los cuales contiene un objeto de configuración que tiene claves, valores de anulación y un valor predeterminado.

Pasos de implementación

Para configurar el Smart Script, puedes:

Embed the script in your website

La inicialización del Smart Script y el código de llamada pueden proceder del generador de Smart Script en el panel de control de AppsFlyer (recomendado) o importarse y llamarse manualmente por el desarrollador.

📘

Conservar los parámetros de URL entrantes

Para garantizar que los parámetros de URL entrantes se asignarán al OneLink generado, se recomienda importar el Smart Script en cada página del sitio web, ya sea que se genere un OneLink en la página o no.

Disponible a partir de la versión 2.5.0.

Más detalles y un ejemplo completo aquí.

Utilizar el código generado por el generador de Smart Script

  1. Obtén el archivo del marketer que incluye el script, el código de inicialización y los argumentos.
  2. Test the script on the Smart Script test page. Ensure the correct outgoing URL is generated.
  3. Sigue las instrucciones para probar y utilizar el resultado de Smart Script.

Ver ejemplo de integración en Github

Configurar manualmente el script

  1. Descarga el script.
  2. Haz que los argumentos llamen al script que asigna los parámetros entrantes a los parámetros salientes del marketer.
  3. Inicializa los argumentos de Smart Script y los objetos de configuración.
  4. Genera las URL llamando a la secuencia de comandos en el HTML de la web/página de aterrizaje utilizando el siguiente método:
var result = window.AF_SMART_SCRIPT.generateOneLinkURL({
  oneLinkURL,
  afParameters,
  referrerSkipList, // optional
  urlSkipList // optional
})
  1. Sigue las instrucciones para probar y utilizar el resultado de Smart Script.

Comprobar y utilizar el resultado de Smart Script

  1. Comprueba el valor devuelto en result. Los posibles valores devueltos son:
    • An outgoing Onelink URL. Use the result value as needed. For example, to place it as a link under a CTA on your website.
    • null. Si el script devuelve null, implementa el flujo de error deseado. Por ejemplo: la URL existente de la web/página de aterrizaje no cambia.
      var result_url = "No output from script"
      if (result) {
            result_url = result.clickURL;            
            // Put the generated OneLink URL behind CTA buttons
            document.getElementById('andrd_link').setAttribute('href', result_url);
            document.getElementById('ios_link').setAttribute('href', result_url);
            // Optionally - Create QR code from the generated OneLink URL
            window.AF_SMART_SCRIPT.displayQrCode("my_qr_code_div_id");
            //The size of the QR code is defined in the CSS file under #my_qr_code_div_id
            // #my_qr_code_div_id canvas { 
            //  height: 200px;
            //  width: 200px;
            //}
            // Optionally - fire an impression.
            // The impression will fire to https://impressions.onelink.me//.... 
            setTimeout(() => {
              window.AF_SMART_SCRIPT.fireImpressionsLink();
              console.log("Impression fired"); 
            }, 1000);
      }

Use Google Tag Manager

Para configurar el Smart Script en Google Tag Manager:

  1. Confirm that the marketer followed their instructions and placed the Smart Script code into GTM.
  2. Comprueba el valor devuelto en AF_SMART_SCRIPT_RESULT. Los posibles valores devueltos son:
    • Una URL de OneLink saliente. Utiliza el valor del resultado según sea necesario. Por ejemplo, para colocarlo como enlace debajo de un CTA en tu sitio web.
    • null. Si el script devuelve null, implementa el flujo de error deseado. Por ejemplo: la URL existente de la web/página de aterrizaje no cambia.
      var result_url = AF_SMART_SCRIPT_RESULT.clickURL;
      if (result_url) {
            document.getElementById('andrd_link').setAttribute('href', result_url);
            document.getElementById('ios_link').setAttribute('href', result_url);
            // Optionally - Create QR code from the generated OneLink URL
            window.AF_SMART_SCRIPT.displayQrCode("my_qr_code_div_id");
            //The size of the QR code is defined in the CSS file under #my_qr_code_div_id
            // #my_qr_code_div_id canvas { 
            //  height: 200px;
            //  width: 200px;
            //}
            // Optionally - fire an impression.
            // The impression will fire to https://impressions.onelink.me//.... 
            setTimeout(() => {
              window.AF_SMART_SCRIPT.fireImpressionsLink();
              console.log("Impression fired"); 
            }, 1000);            
      }
  1. Test the script on the Smart Script test page. Ensure the correct outgoing URL is generated.

Create a QR code with the Smart Script result

Prerrequisito: Smart Script V2.6+

📘

Mejores prácticas

  • Personaliza el código QR según la marca de tu aplicación con un logotipo central y un color de código relevante.
  • Muestra el código QR cuando los usuarios estén en el escritorio y muestra el botón con el enlace cuando los usuarios estén en el móvil.

Para crear un código QR:

  1. Crea una etiqueta div con un ID específico en la página HTML de tu sitio para alojar el código QR.
    Puedes modificar el estilo de la etiqueta div como quieras.
  2. Después de ejecutar el Smart Script y generar una URL de OneLink, llama al siguiente método displayQrCode

displayQrCode


Firma de método

const qrOptions = {
  logo,
  colorCode
}

window.AF_SMART_SCRIPT.displayQrCode(divId, qrOptions)

Argumentos de entrada

TipoObligatorioNombreDescripciónComentario
StringdivIDA div con un ID específico en la página HTML de tu sitio para alojar el código QR.
ObjectNoqrOptionsObjeto de configuración (ver detalles en la tabla a continuación)Si falta el objeto, el código QR se creará sin un logotipo en color predeterminado

qrOptions objeto

TipoObligatorioNombreDescripciónComentario
StringNologoUna URL de imagen válida o un URI de datos de imagenSi el valor no es válido, el código QR se generará sin el logotipo
StringNocolorCodeColor hexadecimal del código QRSi el valor no es válido, el color del código volverá al color negro predeterminado

Ejemplos de uso:

Fire an impression

You can fire an impression when a page loads, a CTA or banner displays, etc. Note: Impressions can only be fired on mobile devices; not on desktop.

Prerrequisito: Smart Script V2.2+

Para activar una impresión:

  1. Sigue las instrucciones para ejecutar el Smart Script y generar una URL de clic.
  2. Asegúrate de que el resultado sea válido (y no nulo).
  3. Ejecuta la siguiente función de impresión:

🚧

Solución

Encapsula la llamada en fireImpressionsLink con setTimeout para asegurarte de que haya al menos 1 segundo de retraso entre la llamada a generateOneLinkURL and fireImpressionsLink

setTimeout(() => {
  window.AF_SMART_SCRIPT.fireImpressionsLink();
  console.log("Impression fired"); 
}, 1000);

You can find examples for firing impressions for mobile only and for cross platform support

Argumentos

Argumento Observaciones Ejemplo
oneLinkURL (obligatorio)
  • Proporciona el dominio de plantilla de OneLink + ID de plantilla. Nota: ¡No es una URL de enlace personalizado de OneLink!
  • yourbrand.onelink.me/A1b2
  • Ejemplo de dominio de marca: click.yourbrand.com/A1b2

afParameters

(obligatorio)

 

 

 


mediaSource

(obligatorio)

Objeto de configuración para la fuente de medios

  • Claves: ['incoming_mediasource’' 'utm_source']
  • Valores a sobrescribir: {twitter: 'twitter_int', orig_src: 'new_src'}
  • Valor predeterminado: ['any_source']

campaign

Objeto de configuración para la campaña

  • Claves: ['incoming_campaign', 'utm_campaign']
  • Valores a sobrescribir: {campaign_name: 'new_campaign_name'}
  • Valor predeterminado: ['any_campaign_name']

channel

Objeto de configuración para el canal

  • Claves: ['incoming_channel', 'utm_channel']
  • Valores a sobrescribir: {video: 'new_video'}
  • Valor predeterminado: ['any_video']

ad

Objeto de configuración para el anuncio

  • Claves: ['incoming_ad', 'utm_ad']
  • Valores a sobrescribir: {ad_name: 'new_ad_name'}
  • Valor predeterminado: ['any_ad_name']
adSet

Objeto de configuración para conjunto de anuncios

  • Claves: ['incoming_adset', 'utm_adset']
  • Valores a sobrescribir: {'adset_name': 'new_adset_name'}
  • Valor predeterminado: ['any_adset_name']
deepLinkValue

Objeto de configuración para deep_link_value

  • Claves: ['product_id', 'page_name']
  • Valores a sobrescribir: {twenty_percent_off: 'thirty_percent_off'}
  • Valor predeterminado: 'new_offers_page'
afSub1-5

Objeto de configuración para af_sub[1-5]

 
googleClickIdKey

Indica cómo llamar al parámetro que lleva el GCLID.
Nota: Para mostrarse en los reportes de raw data de AppsFlyer, el parámetro debe ser uno de af_sub[1-5].

 
Otros parámetros de consulta (personalizados)
  • Lista de cualquier otro parámetro que desees incluir en la URL de OneLink saliente para atribución o enlaces profundos, junto con sus objetos de configuración.
  • El desarrollador enumera el nombre del parámetro personalizado como paramKey en el objeto de configuración.
  • paramKey: 'deep_link_sub1'
  • Claves: ['page_id']
  • Valores a sobrescribir: {page12: 'new_page12'}
  • Valor predeterminado: 'page1'
 
referrerSkipList
Lista de las cadenas en el referente HTTP para un clic en particular (por ejemplo, Twitter o Anuncios de Meta) que, si se encuentra, hace que el Smart Script devuelva null. Esto puede ser útil para SRN como Twitter y Anuncios de Meta, para las cuales ya se reportan los clics.  
urlSkipList Lista de cadenas en la URL para un clic en particular (por ejemplo, af_r) que, si se encuentra, hace que vuelva el Smart Script null. Esto puede ser útil si usas un enlace de atribución de AppsFlyer con af_r para redirigir a los usuarios a tu sitio web móvil y no deseas que se pierdan los datos del clic original.  
webReferrer This argument defines a key in the outgoing URL, which its value will be a copy of the HTTP document.referrer. The referrer is saved in the first page the user lands in, and may be used in any consecutive page in this domain which runs Smart Script with this argument.  

Objeto de configuración

El OneLink Smart Script usa argumentos para generar una URL saliente basada en los parámetros de la URL entrante y los argumentos definidos en la secuencia de comandos. El argumento afParameters tiene una estructura compuesta por otros argumentos (parámetros) utilizados para la atribución y los enlaces profundos, cada uno de los cuales contiene un objeto de configuración que tiene claves, valores de anulación y un valor predeterminado, como se describe en la tabla siguiente.

Argumento Descripción Ejemplo
keys
  • Lista de cadenas
  • Lista de posibles parámetros en la URL entrante que la secuencia de comandos busca, cuyo valor se coloca como valor en la URL saliente.
  • La secuencia de comandos busca de izquierda a derecha y se detiene en la primera coincidencia.
  • Ejemplo: ['in_channel', 'utm_channel']
  • Para el parámetro channel en la secuencia de comandos, la secuencia de comandos busca en el enlace entrante para in_channel y utiliza el valor como valor para channel.

overrideValues

  • Dictionary {string: string}
  • Para los valores que deseas cambiar en el enlace saliente, enumera los valores en la URL entrante, junto con los valores con los que deseas que se reemplacen.
  • La secuencia de comandos reemplaza los valores de parámetro de la URL entrante con los valores que definas. 

Ejemplo: {'video': 'video_new'}

Para el parámetro channel en la secuencia de comandos, cada vez que el valor entrante es video, la secuencia de comandos lo cambia a video_new en el enlace saliente.

defaultValue
  • String
  • Indica cuál deseas que sea tu valor "alternativo".
  • Si no se encuentra un parámetro en la lista de claves, se utiliza el valor defaultValue en la URL saliente.
  • Puedes forzar un valor predeterminado pasando una lista de claves vacía.

Ejemplo: ['web_video']

Para el parámetro channel en la secuencia de comandos, si no se encuentra el parámetro in_channel, se utiliza web_video como el valor de channel.

Ejemplos

Basic attribution

Consulta el ejemplo de la conversión básica de una URL entrante a una URL saliente de OneLink, con una sola clave para media_source y campaign

Multiple keys

Consulta el ejemplo de la conversión de una URL entrante en una URL de OneLink saliente, con varias claves para media_source y campaign.

UTM parameters

Consulta el ejemplo de la conversión de una URL entrante a una URL saliente de OneLink, con parámetros UTM para media_source y campaign.

Override values

Consulta el ejemplo de la conversión de una URL entrante a una URL saliente de OneLink, sustituyendo el valor de media_source entrante.

Default values

Consulta el ejemplo de la conversión de una URL entrante a una URL saliente de OneLink, utilizando el valor por defecto cuando no se encuentra un valor de media_source entrante.

Forced default values

Consulta el ejemplo de la conversión de una URL entrante a una URL saliente de OneLink, utilizando el valor por defecto incluso cuando se encuentra un valor de media_source entrante.

Google click ID passthrough

See example of the conversion of an incoming URL to an outgoing OneLink URL that passes the Google click ID to af_sub4 and gclid.
Note: When a GCLID is found, the script looks for the incoming parameter keyword, and puts the keyword value in the outgoing URL as the value of af_keywords.

Facebook click ID passthrough

See example of the conversion of an incoming URL to an outgoing OneLink URL that passes the Facebook click ID to af_sub2 and fbclid.

Set attribution and OneLink parameters

Consulta el ejemplo de la conversión de una URL entrante en una URL de OneLink saliente con los parámetros de atribución de AppsFlyer y OneLink.

Set additional custom parameters

Consulta el ejemplo de la conversión de una URL entrante a una URL saliente de OneLink con parámetros personalizados adicionales (incluyendo el parámetro af_prt para agencias).

Referrer skip list

Consulta el ejemplo de cómo puedes desactivar el Smart Script para un clic en particular (por ejemplo, desde Twitter o Anuncios de Meta) creando una lista de exclusión. Si alguna de las cadenas de la lista de exclusión aparece en el referente HTTP del clic, el Smart Script devuelve null.

URL skip list

Consulta el ejemplo de cómo puedes deshabilitar el Smart Script para una cadena en particular en la URL (por ejemplo, af_r) mediante la creación de una lista de exclusión. Si alguna de las cadenas de la lista de exclusión aparece en la URL del clic, el Smart Script devuelve null.

Smart Script set up with Google Tag Manager

Consulta el ejemplo de la conversión de una URL entrante a una URL saliente de OneLink usando OneLink Smart Script configurado con Google Tag Manager.

Impressions - OneLink Template with mobile-only support

Consulta un ejemplo de impresiones activadas usando una plantilla de OneLink con soporte solo para dispositivos móviles.

🚧

Solución

Encapsula la llamada en fireImpressionsLink con setTimeout para asegurarte de que haya al menos 1 segundo de retraso entre la llamada a generateOneLinkURL and fireImpressionsLink

Impressions - OneLink Template with Cross-platform support

Consulta un ejemplo de impresiones activadas usando una plantilla de OneLink con soporte multiplataforma.
Por ejemplo, una impresión activada desde una plataforma no móvil (por ejemplo, escritorio o consola).

📘

Firing an impression from a cross platform landing page

You can find here a code example for firing an impression from a demo landing page

🚧

Solución

Encapsula la llamada en fireImpressionsLink con setTimeout para asegurarte de que haya al menos 1 segundo de retraso entre la llamada a generateOneLinkURL and fireImpressionsLink

Preserve incoming URL parameters across pages

📘

Disponible a partir de la versión 2.5.0.

Los parámetros entrantes (p. ej. utm_source) de una página de aterrizaje no se pasan a otras páginas del sitio web por defecto.
La importación de Smart Script en cada página del sitio web conserva los parámetros de URL entrantes y permite que Smart Script los use en otras páginas.

Puedes encontrar aquí un ejemplo de este caso de uso.

Copy HTTP referrer to outgoing URL

📘

Available from version 2.7.0.

You can set Smart Script to copy the HTTP document.referrer to either a custom outgoing URL parameter or predefined outgoing URL parameters. If you want to see web referrer values in dashboards or in raw data reports, we suggest using one of the following predefined outgoing URL parameters:

  • af_channel - Parameter is available in dashboards and raw data
  • af_sub1-5 - The parameter is available in raw data under the af_sub1-5 columns and in the original URL column.

If you want to set a custom parameter, Smart Script has to copy the  document.referrer property value and set it as the value of the parameter. In this example, Smart Script copies the document.referrer value to a custom outgoing URL parameter key defined by webReferrer. The selected custom key in the example is this_referrer.

For more information, see Web referrer mapping.

Utilizing Local Storage to Set Parameters for Deep Linking

You can choose to save any data from the website to local storage, and then configure Smart Script to retrieve this data and assign it to an outgoing URL parameter. For example, you can leverage website information to dynamically populate the deep_link_value parameter, enabling the deep linking of users directly to the app's relevant content.

In this example, you can see how the outgoing URL deep_link_value is populated by a value copied from the website's local storage. The copied value in this example is the product ID arriving from the website data.