ES2881658T3 - Medición de conversión agregada - Google Patents

Medición de conversión agregada Download PDF

Info

Publication number
ES2881658T3
ES2881658T3 ES19722347T ES19722347T ES2881658T3 ES 2881658 T3 ES2881658 T3 ES 2881658T3 ES 19722347 T ES19722347 T ES 19722347T ES 19722347 T ES19722347 T ES 19722347T ES 2881658 T3 ES2881658 T3 ES 2881658T3
Authority
ES
Spain
Prior art keywords
url
content
web browser
client device
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES19722347T
Other languages
English (en)
Inventor
Michael West
Charles Harrison
Gang Wang
Yian Gao
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Application granted granted Critical
Publication of ES2881658T3 publication Critical patent/ES2881658T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Un procedimiento para autorizar transmisiones de datos en un entorno de red, que comprende: recibir, mediante un navegador web que se ejecuta por un dispositivo cliente (102), una solicitud de registro de un elemento de contenido que se muestra por el navegador web, en el que la solicitud de registro comprende un primer localizador uniforme de recursos "URL" y un segundo URL; almacenar, mediante el navegador web que se ejecuta por el dispositivo cliente, el primer URL, el segundo URL y una marca de tiempo en una tabla de registro (214) que se almacena en el dispositivo cliente; identificar, mediante el navegador web que se ejecuta por el dispositivo cliente, un tercer URL de una página web que se muestra por el navegador web; determinar, mediante el navegador web que se ejecuta por el dispositivo cliente, que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de una duración de tiempo predeterminada de la marca de tiempo; y transmitir, mediante el navegador web que se ejecuta por el dispositivo cliente, un mensaje al segundo URL en base a la determinación de que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de la duración de tiempo predeterminada de la marca de tiempo.

Description

DESCRIPCIÓN
Medición de conversión agregada
Antecedentes de la divulgación
Cuando un dispositivo cliente visita un sitio web, el sitio web puede transmitir pequeños paquetes de datos al dispositivo cliente. Los pequeños paquetes de datos pueden incluir preferencias, información de sesión, o se usan para autenticar y mantener una sesión entre el dispositivo cliente y el dispositivo que aloja el sitio web. Los datos que almacena el sitio web se pueden almacenar indefinidamente o se pueden eliminar a intervalos regulares. Los navegadores web pueden impedir que los dominios accedan a los datos de otros dominios o que almacenen datos en el dispositivo cliente cuando el dispositivo cliente no está en una sesión activa con el dominio.
El documento US 2012/173345 A1 describe los métodos y el sistema para recopilar y desambiguar datos entre múltiples editores dispares mediante el uso de un localizador uniforme de recursos de seguimiento (URL).
El documento US 2013/018721 A1 describe los sistemas y métodos para rastrear el acceso del usuario a un anuncio y las transacciones del usuario con un ordenador de comercio electrónico asociado con el anuncio.
Sumario de la divulgación
Los elementos de contenido que proporciona un tercero para llenar los espacios de contenido en una página web se pueden asociar con una página web secundaria. La página web secundaria se puede denominar página de destino porque al activar (por ejemplo, hacer clic en) el elemento de contenido puede llevar al navegador web a la página secundaria. Por ejemplo, el elemento de contenido puede incluir un enlace HTML en la página web secundaria. En algunas implementaciones, el usuario puede ver el elemento de contenido pero no activar el elemento de contenido para visitar la página de destino. Luego, en un momento posterior y sin activar el elemento de contenido, el usuario puede navegar independientemente a la página de destino. La atribución de la visita a la página de destino se puede dificultar en entornos "sin cookies" que impiden el uso de cookies de terceros. El sistema y procedimiento que se describen en la presente memoria pueden atribuir la navegación a la página de destino al elemento de contenido mientras aumenta la privacidad del usuario.
Por ejemplo, el sistema que se describe en la presente memoria puede incluir una interfaz de programación de aplicaciones basada en navegador (API). La API permite que los elementos de contenido que se muestran en una página web realicen una llamada al navegador para solicitar que el navegador registre el elemento de contenido en el navegador. La solicitud (por ejemplo, la llamada a la API) puede incluir: los URL de página de destino, los URL de informe de conversión, y los ID de campaña. Después que el elemento de contenido se registra en el navegador, y el navegador visita diferentes URL, el navegador puede comparar los URL de la página actual con los URL de página de destino que se registran en el navegador. Cuando el navegador determina que se visita una de los URL de página de destino registradas, el navegador puede generar un mensaje de respuesta al URL de informe de conversión que se asocia con el URL de página de destino. El navegador puede establecer y hacer cumplir una serie de políticas para registrar los elementos de contenido con el navegador y para la transmisión del mensaje de respuesta al URL de informe de conversión. Por ejemplo, las políticas pueden establecer requisitos de tiempo que requieren que el elemento de contenido se muestre durante un período de tiempo predeterminado antes de que se produzca el registro, mostrar los requisitos que impiden que los no visibles o pequeños (por ejemplo, píxeles de seguimiento) se registren en el navegador, entre otros.
La presente invención se define en las reivindicaciones independientes adjuntas. Las reivindicaciones dependientes constituyen realizaciones de la invención. Cualquier otro contenido fuera del ámbito de protección de las reivindicaciones se debe considerar como ejemplos que no están de acuerdo con la invención.
La descripción general anterior y la siguiente descripción de los dibujos y la descripción detallada son ilustrativas y explicativas y se destinan para proporcionar una explicación adicional de la invención como se reivindicó.
Breve descripción de los dibujos
Los dibujos adjuntos no se destinan a dibujarse a escala. Los números de referencia y designaciones similares en los diversos dibujos indican elementos similares. Para mayor claridad, no todos los componentes se etiquetan en todos los dibujos. En los dibujos:
La Figura 1 ilustra un diagrama de bloques de un entorno de red y dispositivo para el intercambio de datos, de acuerdo con algunas implementaciones;
La Figura 2 ilustra un diagrama de bloques que ilustra las implementaciones de los dispositivos informáticos para su uso en el entorno de red y dispositivo que se ilustra en la Figura 1, de acuerdo con algunas implementaciones;
La Figura 3 ilustra un diagrama de flujo para autorizar el intercambio de datos en el entorno de red y dispositivo que se ilustra en la Figura 1, de acuerdo con algunas implementaciones; y
La Figura 4 ilustra un diagrama de flujo de un procedimiento de ejemplo para intercambiar datos en el entorno de red y dispositivo que se ilustra en la Figura 1, de acuerdo con algunas implementaciones.
Descripción detallada
Los diversos conceptos que se introdujeron anteriormente y se analizan con mayor detalle a continuación se pueden implementar de muchas maneras, ya que los conceptos que se describen no se limitan a ninguna manera particular de implementación. Los ejemplos de implementaciones y aplicaciones específicas se proporcionan principalmente para fines ilustrativos.
El contenido descargado de la Internet y que se muestra, por ejemplo, dentro de un navegador web puede solicitar contenido adicional de servidores de terceros. Por ejemplo, una página web, que ejecuta un dispositivo cliente, puede incluir uno o más espacios de contenido que pueden incluir instrucciones ejecutables del procesador (por ejemplo, JavaScript) que pueden hacer que el navegador web solicite contenido para los espacios de contenido de servidores de terceros. El navegador web puede automáticamente generar las solicitudes al renderizar la página web. En algunas implementaciones, las instrucciones ejecutables del procesador pueden indicar al navegador web que genere una o más solicitudes que no den como resultado generar o visualizar el contenido en la página web renderizada. Por ejemplo, la solicitud que el navegador web puede enviar a los servidores puede incluir notificaciones o actualizaciones de estado al servidor de terceros que proporcionó contenido para la página web. Las solicitudes y respuestas de contenido adicional pueden resultar en un desperdicio de ancho de banda y recursos computacionales para el dispositivo cliente que no dan como resultado que el dispositivo cliente reciba el contenido adicional para renderizarlo al usuario. Los sistemas y métodos que se describen en la presente memoria pueden reducir el número de transmisiones que no dan como resultado contenido para el dispositivo cliente al ahorrar ancho de banda y recursos computacionales para el dispositivo cliente. Adicionalmente, los sistemas y métodos pueden controlar la autorización de la respuesta o la transmisión de la solicitud, lo que puede aumentar la privacidad para un usuario del dispositivo cliente.
Por ejemplo, los elementos de contenido que proporciona un tercero para llenar espacios de contenido en una página web se pueden asociar con una página web secundaria. La página web secundaria se puede denominar página de destino porque al activar (por ejemplo, hacer clic en) el elemento de contenido puede llevar al navegador web a la página secundaria. Por ejemplo, el elemento de contenido puede incluir un enlace HTML en la página web secundaria. En algunas implementaciones, el usuario puede ver el elemento de contenido pero no activar el elemento de contenido para visitar la página de destino. Luego, en un momento posterior y sin activar el elemento de contenido, el usuario puede navegar independientemente a la página de destino. La atribución de la visita a la página de destino se puede dificultar en entornos "sin cookies" que impiden el uso de cookies de terceros. El sistema y procedimiento que se describen en la presente memoria pueden atribuir la navegación a la página de destino al elemento de contenido mientras aumenta la privacidad del usuario.
Por ejemplo, el sistema que se describe en la presente memoria puede incluir una interfaz de programación de aplicaciones basada en navegador (API). La API permite que los elementos de contenido que se muestran en una página web realicen una llamada al navegador para solicitar que el navegador registre el elemento de contenido en el navegador. La solicitud (por ejemplo, la llamada a la API) puede incluir: los URL de página de destino, los URL de informe de conversión, y los ID de campaña. Después que el elemento de contenido se registra en el navegador, y el navegador visita diferentes URL, el navegador puede comparar los URL de la página actual con los URL de página de destino que se registran en el navegador. Cuando el navegador determina que se visita una de los URL de página de destino registradas, el navegador puede generar un mensaje de respuesta al URL de informe de conversión que se asocia con el URL de página de destino. En algunas implementaciones, el mensaje de respuesta se puede denominar mensaje o mensaje de solicitud. El navegador puede establecer y hacer cumplir una serie de políticas para registrar los elementos de contenido con el navegador y para la transmisión del mensaje de respuesta al URL de informe de conversión. Por ejemplo, las políticas pueden establecer requisitos de tiempo que requieren que el elemento de contenido se muestre durante un período de tiempo predeterminado antes de que se produzca el registro, mostrar los requisitos que impiden que los no visibles o pequeños (por ejemplo, píxeles de seguimiento) se registren en el navegador, entre otros.
La presente solución proporciona una serie de soluciones técnicas donde la medición de conversiones no se puede realizar en navegadores que no habilitan las cookies de terceros. Por ejemplo, el uso de la API basada en navegador, en vez del JavaScript en el elemento de contenido, protege la privacidad del usuario de varias maneras. En primer lugar, aunque el usuario no controla el JavaScript del elemento de contenido, la API basada en navegador es una característica del navegador y se puede controlar o limitar por el usuario. Esto permite al usuario establecer qué información se puede compartir y cuándo a través de la configuración de las políticas que se describen anteriormente. En segundo lugar, el proveedor del navegador (o usuario) puede establecer la longitud máxima y otros requisitos (por ejemplo, el formato) de los mensajes de respuesta a los u Rl de informe. Esto puede limitar la cantidad de información que el navegador puede transmitir a un tercero. Por ejemplo, el ID de campaña se puede limitar a un número corto, limitado de caracteres para que un hash del agente de usuario y otra información sobre el navegador no se pueda codificar y enviar de vuelta al tercero en el mensaje de informe. En tercer lugar, el navegador puede retrasar o procesar por lotes el mensaje de informe a los URL de informe de conversión para ocultar la dirección IP y el tiempo en que el navegador visitó el URL de página de destino. En cuarto lugar, el navegador puede transmitir el mensaje de informe a un proxy, que luego reenvía el mensaje de informe al tercero. El proxy puede ofuscar aún más la información que contiene el mensaje de informe.
La Figura 1 ilustra un diagrama de bloques de un entorno de red y dispositivo de ejemplo 100 para el intercambio de datos. Como se ilustra, uno o más dispositivos cliente 102 se pueden comunicar a través de redes 106 con uno o más servidores de contenido 110(1)-110(W), que se pueden denominar generalmente servidores de contenido 110. El dispositivo cliente 102 se puede comunicar con los servidores de contenido 110 a través de uno o más servidores intermediarios 108. El dispositivo cliente 102 puede incluir cualquier tipo y forma de dispositivo informático, que incluye un ordenador de escritorio, laptop, ordenador portátil, tableta, ordenador corporal, ordenador integrado, televisor inteligente, consola, dispositivo de la Internet de las Cosas (IoT) o dispositivo inteligente, o cualquier otro tipo y forma de dispositivo informático. Los dispositivos cliente 102 se pueden comunicar a través de las redes 106 con uno o más servidores remotos 104(1)-104(W), que generalmente se pueden denominar servidores remotos 104. En respuesta a una solicitud de los dispositivos cliente 102, los servidores remotos 104 de cualquier otra manera transmiten o proporcionan el contenido primario (por ejemplo, una página web) al dispositivo cliente 102. Por ejemplo, el dispositivo cliente 102 puede ejecutar una aplicación para solicitar el contenido. La aplicación puede ser un navegador web, una aplicación de redes sociales, un videojuego u otra aplicación similar. El dispositivo cliente 102 puede solicitar el contenido de los servidores remotos 104 y los servidores de contenido 110. Por ejemplo, los servidores 104 remotos pueden alojar páginas web que incluyen espacios de contenido. Los espacios de contenido de las páginas web pueden incluir JavaScript u otras instrucciones ejecutables por procesador que pueden hacer que el dispositivo cliente 102 solicite el contenido de los servidores de contenido 110 (a través del servidor intermediario 108) para llenar los espacios de contenido. Las instrucciones ejecutables del procesador se pueden ser proporcionar al servidor 104 remoto por el servidor intermediario 108 o los servidores de contenido 110.
El sistema 100 puede incluir una o más redes 106. Las redes 106 pueden incluir el tipo y la forma de red, que incluyen las redes de área local (LAN), las redes de área amplia (WAN) como la Internet, redes satelitales, redes de cable, redes de banda ancha, redes de fibra óptica, redes de microondas, redes celulares, redes inalámbricas, o cualquier combinación de estas u otras redes similares. El sistema 100 puede incluir las redes 106 del mismo tipo o de tipos diferentes. Por ejemplo, la red 106 entre el dispositivo cliente 102 y el servidor intermediario 108 puede ser de un primer tipo y la red 106 entre el servidor intermediario 108 y los servidores de contenido 110 puede ser de un segundo tipo. La red 106 entre el dispositivo cliente 102 y el servidor intermediario 108 y la red 106 entre el servidor intermediario 108 y los servidores de contenido 110 pueden ser la misma red o componentes de la misma red.
Las redes 106 pueden incluir una pluralidad de dispositivos adicionales, que incluyen, por ejemplo, puertas de enlace, módems, cortafuegos, enrutadores, conmutadores, etc. Las redes 106 pueden incluir cualquier número de dispositivos informáticos (por ejemplo, ordenador, servidores, enrutadores, conmutadores de red, etc.) que se configuran para recibir y/o transmitir datos dentro de las redes 106. Las redes 106 pueden incluir cualquier número de conexiones cableadas y/o inalámbricas. Un dispositivo cliente 102 se puede comunicar de forma inalámbrica (por ejemplo, a través de WiFi, celular, radio, etc.) con un transceptor que se cablea (por ejemplo, a través de un cable de fibra óptica, un cable CAT5, etc.) a otros dispositivos informáticos dentro de las redes 106. Las redes 106 pueden incluir o pueden ser redes virtuales, tal como una red virtual entre una pluralidad de máquinas virtuales que ejecuta una sola máquina física, o una red abstracta tal como una transferencia de datos fuera de línea a través de medios físicamente móviles (por ejemplo, una Sneakernet, que transfiere datos a través de medios de cinta, CD-ROM, medios flash, discos duros externos, disquetes, etc.).
El sistema 100 puede incluir uno o más servidores intermediarios 108. El servidor intermediario 108 puede gestionar las solicitudes de contenido que se reciben desde el dispositivo cliente 102. Las solicitudes de contenido pueden ser para el contenido, que también se puede denominar contenido secundario o elementos de contenido, para renderizar en los espacios de contenido del contenido primario que proporcionan los servidores remotos 104. El servidor intermediario 108 puede satisfacer la solicitud de contenido de una pluralidad de servidores de contenido 110. Por ejemplo, el servidor intermediario 108 puede recibir una solicitud de contenido desde el dispositivo cliente 102 y puede seleccionar entre los servidores de contenido 110 un servidor de contenido 110 para proporcionar el contenido solicitado. La selección puede ser a través de algoritmos de equilibrio de carga, algoritmos de subasta (por ejemplo, con los servidores de contenido 110 que ofertan por oportunidades para proporcionar contenido), etc. Por tanto, el servidor intermediario 108 se puede denominar servidor de intercambio, equilibrador de carga, proveedor de subastas o cualquier otro término similar.
El sistema 100 puede incluir uno o más servidores de contenido 110. Los servidores de contenido 110 pueden incluir repositorios de contenido. Los servidores de contenido 110 pueden seleccionar contenido de los repositorios de contenido en respuesta a recibir una solicitud de contenido del servidor intermediario 108 o del dispositivo cliente 102. En algunas implementaciones, la solicitud de contenido del dispositivo cliente 102 puede incluir un identificador, tal como una cookie, que proporciona el servidor de contenido 110 al dispositivo cliente 102 en un intercambio de datos anterior. El servidor de contenido 110 puede seleccionar contenido del repositorio de contenido en base al identificador. Por ejemplo, el servidor de contenido 110 puede asociar el identificador con tales como, pero no se limita a, preferencias y recursos computacionales del dispositivo cliente 102 (por ejemplo, tamaño y resolución de la pantalla), entre otros. El servidor de contenido 110 puede seleccionar el contenido del repositorio de datos en base a los datos asociados con el identificador.
El sistema 100 puede incluir uno o más servidores remotos 104. Los servidores remotos 104 pueden alojar contenido primario. El contenido principal puede incluir páginas web, páginas de medios sociales, contenido de audio, contenido de texto, contenido de video, y otras formas de datos. El contenido principal puede incluir espacios de contenido. Los espacios de contenido pueden incluir instrucciones ejecutables del procesador que, cuando las ejecuta un navegador pueden hacer que el navegador solicite contenido a un servidor intermediario 108 o al servidor de contenido 110 para que el contenido llene el espacio de contenido. En algunas implementaciones, el contenido primario que aloja los servidores remotos 104 se puede asociar con el contenido secundario que proporcionan los servidores de contenido 110. Por ejemplo, el contenido principal que aloja los servidores remotos 104 puede servir como páginas de destino para el contenido secundario. El contenido principal puede ser una página de destino para el contenido secundario cuando el contenido secundario incluye un enlace al contenido principal. En algunas implementaciones, un navegador del dispositivo cliente 102 puede navegar independientemente a una página web que aloja un servidor remoto 104, y en otras implementaciones, el navegador se puede dirigir a la página web que aloja el servidor remoto 104 mediante la activación de (por ejemplo, al hacer clic en) un enlace que se renderiza como parte del contenido secundario que proporciona un servidor de contenido 110.
El servidor intermediario 108, los servidores remotos 104, y los servidores de contenido 110 pueden incluir cualquier tipo y forma de dispositivo informático, que incluyen ordenadores de escritorio, servidores, estaciones de trabajo, laptop, ordenadores portátiles, ordenadores integrados, o cualquier otro tipo y forma de dispositivo informático. Los servidores intermediarios 108 y los servidores de contenido 110 pueden incluir máquinas virtuales que se ejecutan por uno o más dispositivos informáticos físicos, y se pueden configurar como una granja de servidores, clúster, o nube de dispositivos.
La Figura 2 ilustra un bloque que ilustra dispositivos informáticos de ejemplo para el intercambio de datos. Como se describió anteriormente en relación con la Figura 1, el sistema 100 puede incluir un dispositivo cliente 102. El dispositivo cliente 102 puede ejecutar una aplicación 208, tal como un navegador web, para recibir el contenido de los servidores remotos 104. Los servidores intermediarios 108 también pueden proporcionar el contenido, desde los servidores de contenido 110, al dispositivo cliente 102.
Como se analizó anteriormente, el dispositivo cliente 102 se puede denominar cliente, dispositivo, dispositivo cliente, dispositivo informático, dispositivo de usuario, o cualquier otro término similar. El dispositivo cliente 102 puede incluir o ser un componente de un ordenador de escritorio, laptop, tableta, teléfono inteligente, consola de videojuegos, televisor inteligente o decodificador, servidor, estación de trabajo, o cualquier otro tipo y forma de dispositivo informático capaz de comunicarse a través de una red 106. En algunas implementaciones, un dispositivo cliente 102 puede ejecutar una aplicación 208 para comunicarse a través de la red 106. La aplicación 208 puede ser de servicio, servidor, centinela, rutina, u otra lógica ejecutable para comunicarse a través de una red 106. La aplicación 208 puede ser un navegador web, cliente de correo, reproductor de video, reproductor de música, videojuego, o cualquier otra aplicación similar. Dichas aplicaciones pueden incluir una interfaz de línea de comandos, una interfaz gráfica de usuario, o cualquier combinación de estas u otras interfaces. La aplicación 208 puede incluir una instancia de un motor de conversión 212.
El dispositivo cliente 102 puede incluir uno o más procesadores 200, interfaces de red 202 e interfaces de E/S 204. El dispositivo cliente 102 puede incluir la memoria 206. La memoria 206 puede almacenar instrucciones de la máquina que, cuando se ejecutan por el procesador 200, hacen que el procesador 200 realice una o más de las operaciones que se describen en la presente memoria. El procesador 200 puede incluir un microprocesador, ASIC, FPGA, etc., o sus combinaciones. El procesador 200 puede ser un procesador multinúcleo o una matriz de procesadores. La memoria 206 puede incluir, pero no se limita a, dispositivos de almacenamiento electrónicos, ópticos, magnéticos o cualquier otro capaz de proporcionar instrucciones de programa al procesador 200. La memoria 206 puede incluir un disquete, CD-ROM, Dv D, disco magnético, chip de memoria, ROM, RAM, EEPROM, EPROM, memoria flash, medios ópticos, o cualquier otra memoria adecuada desde la que el procesador 200 pueda leer las instrucciones. Las instrucciones pueden incluir el código de cualquier lenguaje de programación de ordenador adecuado tales como, pero no se limita a, C, C++, C#, Java, JavaScript, Perl, HTML, XML, Python y Visual Basic.
El dispositivo cliente 102 puede incluir una o más interfaces de red 202. La interfaz de red 202 puede incluir cualquier tipo y forma de interfaz, que incluye Ethernet que incluye 10 Base T, 100 Base T, o 1000 Base T ("Gigabit"); cualquiera de las variedades de 802.11 inalámbrico, tal como 802.11a, 802.11b, 802.11g, 802.1 In, o 802.11ac; celular, que incluye CDMA, LTE, celular 3G, o 4G; Bluetooth u otras conexiones inalámbricas de intervalo corto; o cualquier combinación de estas u otras interfaces para comunicarse con una red 106. El dispositivo cliente 102 puede incluir una pluralidad de interfaces de red 202 de diferentes tipos, que permite conexiones a una variedad de redes 106 o una red 106 tal como la Internet a través de diferentes subredes.
El dispositivo cliente 102 puede incluir una o más interfaces de E/S 204. La interfaz de E/S 204 se puede basar en hardware o software. Las interfaces de E/S 204 pueden ser cualquier dispositivo electrónico que transmita datos a un usuario mediante la generación de información sensorial (por ejemplo, una visualización en una pantalla, uno o más sonidos, retroalimentación táctil, etc.) y/o convierta la información sensorial que recibe de un usuario en señales electrónicas (por ejemplo, un teclado, un mouse, un dispositivo señalador, una pantalla táctil, un micrófono, etc.). Uno o más dispositivos de interfaz del usuario pueden ser internos a la carcasa del dispositivo cliente 102, tal como una pantalla incorporada, pantalla táctil, micrófono, etc., o externos a la carcasa del dispositivo cliente 102, tal como un monitor que se conecta al dispositivo cliente 102, un altavoz que se conecta al dispositivo cliente 102, etc., de acuerdo con diversas implementaciones.
El dispositivo cliente 102 puede almacenar datos e instrucciones ejecutables del procesador en la memoria 206. Por ejemplo, el dispositivo cliente 102 puede almacenar la aplicación 208 como instrucciones ejecutables del procesador en la memoria 206. La aplicación 208 puede ser una aplicación, subprograma, script, servicio, centinela, rutina u otra lógica ejecutable para recibir el contenido y mostrar o enviar el contenido de cualquier otra manera a través de una interfaz de E/S 204 del dispositivo cliente (por ejemplo, pantalla, altavoz, etc.). Por ejemplo, la aplicación 208 puede ser un navegador web que recibe y renderiza una página de destino 218 u otra página web o contenido. La aplicación 208 puede incluir la funcionalidad para mostrar el contenido recibido a través de la interfaz de red 202 y/o que se genera localmente por el procesador 200.
El dispositivo cliente 102 puede incluir un ID del dispositivo 210. El dispositivo cliente 102 se puede identificar ante el servidor intermediario 108, el servidor de contenido 110, o el servidor remoto 104 con el ID del dispositivo 210. El ID del dispositivo 210 puede ser una cadena alfanumérica, cadena de datos, número de serie, dirección de control de acceso a medios (MAC), dirección de protocolo de Internet (IP), nombre de usuario o nombre de la cuenta, identificador único global (GUID), cookie, número aleatorio o pseudoaleatorio, o cualquier otro tipo y forma de identificador, que incluye las combinaciones de estos u otros identificadores. Por ejemplo, el ID del dispositivo 210 puede ser un hash del agente de usuario o la dirección MAC del dispositivo cliente. El identificador de dispositivo 210 se puede fijar al dispositivo cliente 102. Por ejemplo, el fabricante puede preconfigurar el ID del dispositivo 210 en el dispositivo. Por ejemplo, el ID del dispositivo 210 puede ser un número de serie del fabricante o una dirección MAC. El ID del dispositivo 210 se puede establecer dinámicamente en el dispositivo cliente 102, el servidor remoto 104, el servidor intermediario 108, o el servidor de contenido 110. El ID del dispositivo 210 puede ser estático. El ID del dispositivo 210 se puede actualizar en interfaces predeterminadas. Por ejemplo, se puede establecer un identificador de dispositivo único o nuevo 210 para cada comunicación con el servidor intermediario 108. El ID del dispositivo 210 se puede cambiar o actualizar periódicamente (por ejemplo, a cada hora, diariamente, semanalmente, etc.) o en otros intervalos (por ejemplo, al reiniciar el dispositivo cliente, iniciar sesión en un servicio de Internet, etc.). El ID del dispositivo 210 se puede asociar con uno o más de otros identificadores de dispositivo 210 (por ejemplo, un identificador de dispositivo para un dispositivo móvil, un identificador de dispositivo para un ordenador doméstico, etc.).
El dispositivo cliente 102 puede incluir un motor de conversión 212. El motor de conversión 212 puede ser una aplicación, subprograma, script, servicio, centinela, rutina, u otra lógica ejecutable para registrar elementos de contenido en el dispositivo cliente 102. El motor de conversión 212 puede ser un componente de la aplicación 208 o puede estar separado de la aplicación 208. Por ejemplo, el motor de conversión 212 puede ser un script que se puede separar de una aplicación específica 208 y puede recibir llamadas API desde una pluralidad de aplicaciones 208 (por ejemplo, el navegador web y el cliente de correo electrónico de los dispositivos cliente). Como se describió adicionalmente en relación con las Figuras 3 y 4, el motor de conversión 212 puede proporcionar una interfaz para que los elementos de contenido interactúen con la aplicación 208. Por ejemplo, el motor de conversión 212 puede ser un módulo, subrutina o complemento de la aplicación 208. Por ejemplo, el motor de conversión 212 puede proporcionar una API u otros enlaces que permitan que los elementos de contenido se registren en la aplicación 208. Por ejemplo, el elemento de contenido puede incluir instrucciones ejecutables del procesador que cuando se ejecuten por la aplicación 208 (a través del procesador 200) realizan una llamada a la API. La llamada puede ser para registrar el elemento de contenido en la aplicación 208. La llamada puede incluir una carga útil. La carga útil puede incluir los ID de campaña, los URL de página de destino y los URL de informe. Cuando se registra en la aplicación 208, el motor de conversión 212 puede almacenar los contenidos de la carga útil en la tabla de registro 214. Por ejemplo, la tabla de registro 214 puede ser una tabla que puede incluir una entrada para cada uno de los elementos de contenido que se registran en la aplicación 208. Cada entrada de la tabla puede almacenar, por ejemplo, el ID de campaña, el URL de página de destino, el URL de informe y una marca de tiempo. La marca de tiempo puede indicar la hora a la que se guardó la entrada en la tabla de registro 214. En algunas implementaciones, el contenido de la carga útil se puede indexar en la tabla de registro 214 el URL de página de destino.
La memoria 206 puede incluir una tabla de agregación 216. Como se describió adicionalmente en relación con las Figuras 3 y 4, el motor de conversión 212 puede incluir una o más políticas de informes. Las políticas de informes pueden indicar si los mensajes de informes se deben transmitir a un URL de informe como mensajes únicos (por ejemplo, al generarlos o con un retraso de tiempo para proteger la privacidad del usuario) o en lotes. Cuando se establece un indicador de informe por lotes en la política de informes, el motor de conversión 212 puede transmitir los mensajes de informes en lotes. En respuesta a la generación de un mensaje de informe, cuando las transmisiones por lotes están activas, el motor de conversión 212 puede guardar el mensaje de informe en la tabla de agregación 216 hasta que se cumpla un requisito de transmisión por lotes. Por ejemplo, la política de informes puede indicar que las transmisiones por lotes se deben transmitir periódicamente (por ejemplo, cada 12 horas). El motor de conversión 212 puede guardar los mensajes de informes que se generan en la tabla de agregación 216 hasta que se active un tiempo de transmisión (por ejemplo, 00:00 horas o 12:00 horas en el ejemplo anterior). El motor de conversión 212 puede entonces leer los mensajes de informes de la tabla de agregación 216 y transmitir los mensajes de informes a un URL de informe respectivo. El motor de conversión 212 puede purgar o eliminar de cualquier otra manera los mensajes de informes reportados en la tabla de agregación 216. En algunas implementaciones, la política de informes puede generar una página de destino (por ejemplo, un servidor remoto 104). Por ejemplo, el servidor remoto 104 puede especificar cuáles URL de informe o URL pueden recibir mensajes de informes u otras indicaciones de un evento de conversión.
Como se ilustra también en la Figura 2, el sistema 100 puede incluir un servidor intermediario 108. Al igual que con los dispositivos cliente 102, el servidor intermediario 108 puede incluir uno o más procesadores 200, la memoria 206, las interfaces de red 202, y las interfaces de E/S 204. El servidor intermediario 108 se puede comunicar con el dispositivo cliente 102, los servidores de contenido 110, o los servidores remotos 104 a través de la red 106. La memoria 206 del servidor intermediario 108 puede almacenar una o más aplicaciones para su ejecución por el procesador 200 del servidor intermediario 108. Por ejemplo, los servidores intermediarios 108 pueden incluir aplicaciones que permitan a los servidores intermediarios 108 funcionar como servidores FTP, servidores web, servidores de correo, servidores de intercambio de archivos, servidores entre pares, u otras aplicaciones similares para suministrar el contenido o los comandos de redireccionamiento para permitir a los clientes acceder al contenido en un servidor de contenido 110.
El servidor intermediario 108 puede incluir un selector de proveedor de contenido 220. El selector de proveedor de contenido 220 puede incluir aplicaciones, servidores, servicios, centinelas, rutinas, u otra lógica ejecutable. El selector de proveedor de contenido 220 se puede configurar para seleccionar los servidores de contenido 110 de una lista de servidores de contenido 110. Por ejemplo, el selector de proveedor de contenido 220 puede seleccionar un servidor de contenido 110 de una lista de servidores de contenido 110 mediante el uso de un sistema de turno rotativo u otro sistema de equilibrio de carga, o mediante un sistema que se basa en subastas. El selector de proveedor de contenido 220 se puede configurar para transmitir solicitudes y recibir respuestas de los servidores de contenido 110, tales como ofertas para oportunidades de proporcionar contenido a un dispositivo cliente 102. Los servidores de contenido 110 se pueden configurar para generar una respuesta a una solicitud de un dispositivo cliente 102 que puede incluir identificadores, tales como dominios o direcciones, de servidores de contenido seleccionados 110, para que el dispositivo cliente 102 pueda generar o recuperar el ID del dispositivo 210 y proporcionar el ID del dispositivo 210 al servidor intermediario 108 o al servidor de contenido 110 para la selección de un elemento de contenido.
Como se ilustra también en la Figura 2, el sistema 100 puede incluir una pluralidad de servidores de contenido 110. Cada uno de los servidores de contenido 110 puede incluir uno o más dispositivos informáticos que se conectan a la red 106 y se configuran para proporcionar elementos de contenido (por ejemplo, el contenido 222) a un dispositivo cliente 102, ya sea directamente o a través del servidor intermediario 108. El contenido 222 que proporcionan los servidores de contenido 110 se puede referir a un contenido secundario porque el contenido 222 se puede renderizar en los espacios de contenido de contenido primario que proporcionan, por ejemplo, los servidores remotos 104. En algunas implementaciones, el contenido 222 puede ser o puede incluir el contenido primario. Un servidor de contenido 110 se puede denominar diversamente como un proveedor de contenido, servidor, servidor web, servidor de datos, editor, proveedor de servicios, o mediante otros términos similares. El servidor de contenido 110 puede incluir una pluralidad de dispositivos informáticos que se configuran como una granja de servidores o nube, y puede incluir enrutadores, equilibradores de carga, traductores de direcciones de red, cortafuegos, u otros dispositivos similares. Los servidores de contenido 110 pueden ser servidores informáticos (por ejemplo, servidores FTP, servidores para compartir archivos, servidores web, etc.) o combinaciones de servidores (por ejemplo, centros de datos, plataformas informáticas en la nube, etc.). Los servidores de contenido 110 pueden proporcionar cualquier tipo y forma de contenido, que incluyen texto, imágenes, video, audio, multimedia, u otros datos, o cualquier combinación de estos. El contenido 222 puede incluir contenido multimedia en vivo, contenido multimedia pregrabado, contenido renderizado, películas, programas de televisión, podcasts, blogs de video, videojuegos u otro contenido interactivo, publicidad en cualquier formato, redes sociales, o cualquier otro tipo y forma de contenido.
El servidor de contenido 110 puede incluir uno o más procesadores 200, las interfaces de red 202, las interfaces de E/S 204, y/o la memoria 206. El servidor de contenido 110 puede incluir un selector de contenido 224. El selector de contenido 224 puede incluir una aplicación, servicio, servidor, centinela, rutina u otra lógica ejecutable para seleccionar el contenido 222 para su entrega a un dispositivo cliente 102. El selector de contenido 224 puede seleccionar el contenido 222 para su entrega al dispositivo cliente 102 en base a la información sobre el dispositivo cliente 102 que se almacena en una base de datos de identificadores. Por ejemplo, la base de datos puede incluir información sobre las capacidades del dispositivo (por ejemplo, la resolución u orientación de la pantalla, profundidad de color, ancho de banda, etc.) o cualquier otra información para seleccionar el contenido personalizado. El ID del dispositivo puede indexar la información en la base de datos. El selector de contenido 224 puede seleccionar la información de la base de datos en base al ID del dispositivo 210 que se recibe del dispositivo cliente 102. En respuesta a la selección del contenido 222, el selector de contenido 224 puede enviar, transmitir o transferir de cualquier otra manera el contenido 222 al dispositivo cliente 102. El contenido 222 puede ser cualquier tipo y forma de datos, que incluye audio, video, animaciones, texto, multimedia, gráficos fijos o animados, scripts ejecutables, o cualquier otro tipo y forma de contenido. Cada elemento de contenido 222 se puede asociar con etiquetas, identificadores, ULR, o instrucciones ejecutables del procesador. Por ejemplo, cada contenido 222 puede incluir las instrucciones ejecutables del procesador de manera que cuando la aplicación 208 renderiza y muestra el contenido 222, la selección del contenido renderizado 222 (por ejemplo, al hacer clic) puede redirigir la aplicación 208 a un URL que se identifica por el contenido 222. Por ejemplo, el contenido 222 puede incluir etiquetas HTML que identifican el contenido 222 como que contiene un enlace web (por ejemplo, URL) a una segunda página web. El URL puede ser el URL de una página de destino 218 que aloja un servidor remoto 104. El contenido 222 puede incluir o contener de cualquier otra manera un URL de informe y un ID de campaña. El ID de campaña puede identificar una clase, grupo, tema, tipo, u otra característica del contenido 222 para el servidor de contenido 110. El URL de informe puede ser un URL de un servidor en red al que se hace ping cuando la aplicación 208 del dispositivo cliente 102 renderiza el contenido 222. El URL de informe puede ser el u Rl del servidor intermediario 108, el servidor de contenido 110 u otro servidor en red.
Como se ilustra también en la Figura 2, el sistema 100 puede incluir uno o más servidores remotos 104. Un servidor remoto 104 puede incluir uno o más procesadores 200, interfaces de red 202 y/o interfaces de E/S 204. La memoria 206 del servidor remoto 104 puede almacenar una o más aplicaciones para su ejecución por el procesador 200 del servidor remoto 104. Por ejemplo, el servidor remoto 104 puede incluir aplicaciones que permitan que el servidor remoto 104 funcione como servidores FTP, servidores web, servidores de correo, servidores de intercambio de archivos, servidores entre pares, u otras aplicaciones similares para suministrar contenido al dispositivo cliente 102. Por ejemplo, el servidor remoto 104 puede incluir una o más páginas de destino 218 que se almacenan en la memoria 206. La página de destino 218 puede ser una página web u otro tipo de contenido, tal como, pero no se limita a audio, video, animaciones, texto, multimedia, gráficos fijos o animados, scripts ejecutables, o cualquier otro tipo y forma de contenido. Cada página de destino 218 se puede identificar mediante un URL. Para recuperar o acceder a la página de destino 218, el URL se puede ingresar en la aplicación 208 del dispositivo cliente 102. El dispositivo cliente 102 puede generar una solicitud al servidor remoto 104 para la página de destino 218 (u otra forma de contenido) que se ubica en el URL. Una página de destino 218 puede servir como un objetivo de redireccionamiento de un contenido 222. Por ejemplo, cuando el contenido 222 se renderiza por un navegador web, el contenido 222 puede incluir un hipervínculo a la página de destino 218 de manera que cuando el contenido 222 se activa (por ejemplo, se hace clic o se selecciona) por un usuario, la aplicación 208 se puede ser redirigir a la página de destino 218. En algunas implementaciones, un usuario del dispositivo cliente 102 puede navegar de forma nativa a la página de destino 218. Por ejemplo, el usuario puede ingresar el URL de la página de destino en una barra de navegación del navegador web o encontrar la página de destino 218 a través de una búsqueda en línea en lugar de redirigirse a la página de destino 218 mediante la activación de un contenido renderizado 222.
La Figura 3 ilustra un diagrama de flujo 300 para autorizar el intercambio de datos en un entorno de red y dispositivo. También con referencia a las Figuras 1 y 2, en la etapa 302, el dispositivo cliente 102 puede recuperar el contenido de un primer servidor remoto 104(1). Por ejemplo, el servidor remoto 104(1) puede alojar uno o más sitios web u otro contenido principal. Un usuario puede ingresar o seleccionar un URL que apunte a un sitio web que aloja el servidor remoto 104(1). Una aplicación 208 (por ejemplo, un navegador web) en el dispositivo cliente 102, puede generar una solicitud para el contenido (por ejemplo, el sitio web) que identifica el URL. El dispositivo cliente 102 puede transmitir la solicitud al servidor remoto 104(1) a través de cualquier protocolo adecuado, tal como a través de una solicitud HTTPs o una solicitud RESTful. La solicitud puede incluir un identificador de dispositivo, identificador de cuenta, identificador de usuario, identificador de sesión, u otro identificador similar, o una cookie que genera el servidor remoto 104(1) y que almacena el dispositivo cliente. Por ejemplo, el servidor remoto 104(1) puede haber proporcionado previamente una cookie al dispositivo cliente 102 (por ejemplo, durante un procedimiento de autenticación u otro evento similar), y el dispositivo cliente 102 puede proporcionar la misma cookie en la solicitud a partir de ahí.
En la etapa 304, el servidor remoto 104(1) puede devolver el contenido. El contenido puede ser una página web u otro tipo de contenido que se identifica en un URL que contiene la solicitud. El contenido devuelto puede incluir uno o más espacios de contenido. Los espacios de contenido se pueden llenar con el contenido 222 de los servidores de contenido 110 a través del servidor intermediario 108. Los espacios de contenido pueden incluir instrucciones ejecutables del procesador que pueden hacer que la aplicación 208 genere una solicitud al servidor intermediario 108 o un servidor de contenido 110 para que el contenido llene el espacio de contenido en respuesta a la aplicación 208 al menos parcialmente al renderizar (o de cualquier otra manera ejecutar las instrucciones) el contenido del servidor remoto 104(1).
En la etapa 306, el dispositivo cliente 102 puede renderizar el contenido del servidor remoto 104(1). Como se describió anteriormente, en un ejemplo, el contenido puede ser una página web que aloja el servidor remoto 104(1). El contenido puede incluir las instrucciones ejecutables del procesador que pueden hacer que la aplicación 208 solicite el contenido adicional de recursos de red adicionales tales como el servidor intermediario 108. Por ejemplo, la página web puede incluir los espacios de contenido secundarios que incluyen las instrucciones ejecutables del procesador para solicitar el contenido del servidor intermediario 108.
En la etapa 308, el dispositivo cliente 102 puede recuperar el contenido del servidor intermediario 108. La renderización de los espacios de contenido secundarios puede hacer que la aplicación 208 genere una solicitud al servidor intermediario 108 para que el contenido llene (por ejemplo, renderice) los espacios de contenido secundarios. El dispositivo cliente 102 puede transmitir la solicitud al servidor remoto 104(1) a través de cualquier protocolo adecuado, tal como a través de una solicitud HTTPs o una solicitud RESTful. La solicitud puede incluir un identificador de dispositivo, identificador de cuenta, identificador de usuario, identificador de sesión, u otro identificador similar, o una cookie que genera o proporciona el dispositivo cliente. Por ejemplo, el servidor remoto 104(1) puede haber proporcionado previamente una cookie al dispositivo cliente 102 (por ejemplo, durante un procedimiento de autenticación u otro evento similar), y el dispositivo cliente 102 puede proporcionar la misma cookie en la solicitud a partir de ahí.
En la etapa 310, el servidor intermediario 108 puede devolver el contenido al dispositivo cliente 102. En algunas implementaciones, el servidor intermediario 108 puede reenviar la solicitud de contenido en la etapa 308 a un servidor de contenido 110. El servidor intermediario 108 puede seleccionar un servidor de contenido 110 para proporcionar el contenido de una lista de servidores de contenido 110. Por ejemplo, el servidor intermediario 108 puede seleccionar un servidor de contenido 110 de una lista de servidores de contenido 110 mediante el uso de un sistema de turno rotativo u otro sistema de equilibrio de carga, o mediante un sistema basado en subastas. El servidor de contenido 110 puede seleccionar un elemento de contenido para devolver en respuesta a la solicitud y puede transmitir el elemento de contenido directamente al dispositivo cliente 102 o al dispositivo cliente 102 a través del servidor intermediario 108. Por ejemplo, el servidor de contenido 110 puede transmitir el elemento de contenido al servidor intermediario 108, el cual puede transmitir el elemento de contenido al dispositivo cliente 102 en la etapa 310.
En la etapa 312, el dispositivo cliente 102 puede renderizar el contenido. El dispositivo cliente 102 puede renderizar el contenido como parte de la renderización del contenido que se devuelve en la etapa 304. Por ejemplo, el contenido que se devuelve en la etapa 310 se puede renderizar en el espacio de contenido que provocó la generación de la solicitud del contenido. En la etapa 314, el elemento de contenido se puede registrar en el dispositivo cliente 102. La renderización del elemento de contenido (en la etapa 312) puede hacer que el elemento de contenido se registre en el dispositivo cliente 102. Por ejemplo, el elemento de contenido puede incluir una carga útil (por ejemplo, datos no visibles) e instrucciones ejecutables del procesador. La carga útil puede incluir, por ejemplo, un URL de una página de destino, uno o más identificadores, y un URL de informe. El elemento de contenido también puede incluir instrucciones ejecutables del procesador que pueden hacer que el elemento de contenido se registre en la aplicación 208. Por ejemplo, el elemento de contenido puede incluir una llamada a, por ejemplo, JavaScipt API que se expone al elemento de contenido por el motor de conversión 212 en el dispositivo cliente 102. En otro ejemplo, el elemento de contenido puede incluir una etiqueta que puede incluir uno o más atributos o instrucciones ejecutables del procesador. La llamada a la API puede incluir la carga útil del elemento de contenido. Por ejemplo, la llamada a la API puede incluir el URL de la página de destino, uno o más identificadores y el URL de informe. El motor de conversión 212 puede almacenar los datos de la llamada API en la tabla de registro 214. Las etapas 302-314 se pueden repetir una pluralidad de veces. Por ejemplo, el contenido que se proporciona al dispositivo cliente 102 desde el servidor remoto 104(1) puede incluir múltiples espacios de contenido para las cuales se devuelven múltiples elementos de contenido desde el servidor intermediario 108. En algunas implementaciones, cada uno de los elementos de contenido se pueden registrar en la tabla de registro 214 a través del motor de conversión 212. Las etapas 302-314 se pueden repetir una pluralidad de veces para una pluralidad de primeros servidores remotos diferentes 104(1). Por ejemplo, el usuario puede navegar a una pluralidad de páginas web diferentes cada una de las cuales puede incluir espacios de contenido. Los elementos de contenido devueltos para llenar los espacios de contenido para cada una de las diferentes páginas web se pueden registrar en la tabla de registro 214 mientras el dispositivo cliente 102 navega en las páginas web.
En la etapa 316, el dispositivo cliente 102 puede recuperar el contenido de un segundo servidor remoto 104(2). La solicitud de contenido en la etapa 316 puede ocurrir después de que se registren uno o más elementos de contenido en la tabla de registro 214. El segundo servidor remoto 104(2), como el primer servidor remoto 104(2), puede alojar una o más páginas web. En algunas implementaciones, una o más de las páginas web pueden ser una página de destino para uno de los elementos de contenido que se registran en la tabla de registro 214. La página web puede ser una página de destino para un elemento de contenido cuando el elemento de contenido incluye un URL que dirige un navegador web a la página web. En la etapa 316, el dispositivo cliente 102 puede transmitir la solicitud al servidor remoto 104(2) a través de cualquier protocolo adecuado, tal como a través de una solicitud HTTPs o una solicitud RESTful.
En la etapa 318, el servidor remoto 104(2) puede devolver el contenido solicitado. El servidor remoto 104(2) puede transmitir el contenido al dispositivo cliente 102 a través de HTTP, HTTPS, u otro protocolo. En respuesta a recibir el contenido del servidor remoto 104(2), el dispositivo cliente 102 puede renderizar, a través del navegador web, por ejemplo, el contenido. La renderización del contenido puede mostrar el contenido al usuario del navegador web.
En la etapa 320, el motor de conversión 212 puede hacer coincidir el URL con un URL en la tabla de registro 214. En respuesta a renderizar el contenido devuelto desde el servidor remoto 104(2), el motor de conversión 212 puede determinar si el URL para el contenido devuelto se registra en la tabla de registro 214. En algunas implementaciones, el URL puede indexar los datos en la tabla de registro 214. En este ejemplo, el motor de conversión 212 puede usar el URL del contenido devuelto desde el servidor remoto 104(2) como una clave. El motor de conversión 212 puede determinar si algunos datos (por ejemplo, identificadores de elementos de contenido o URL de informe) se asocian con el URL en la tabla de registro 214.
Si en la etapa 320 el motor de conversión 212 encuentra una coincidencia, en la etapa 322, el motor de conversión 212 puede transmitir un mensaje de informe. El motor de conversión 212 puede transmitir el mensaje de informe el URL de informe indexada el u Rl coincidente en la tabla de registro 214. En algunas implementaciones, el URL de informe puede ser un URL para o asociada con el servidor intermediario 108 (como se ilustra en la Figura 3). En algunas implementaciones, el URL de informe puede ser para un dispositivo proxy que recibe y reenvía el mensaje de informe a un destino final, tal como el servidor intermediario 108. El proxy puede procesar el mensaje de informe para eliminar datos identificables del mensaje de informe. Por ejemplo, el proxy puede eliminar la dirección IP de origen del mensaje de informe desde el mensaje de informe. En algunas implementaciones, el URL de informe puede ser un URL que se asocia con un servidor remoto 104. El mensaje de informe puede ser un mensaje de pingback al URL de informe. La recepción del mensaje de informe por el servidor en el URL de informe puede indicarle al servidor que un dispositivo cliente renderizó y mostró un elemento de contenido y que el dispositivo cliente subsecuentemente navegó de manera independiente a la página de destino del elemento de contenido.
La Figura 4 ilustra un procedimiento de ejemplo 400 para autorizar el intercambio de datos en un entorno de red y dispositivo. El procedimiento 400 puede indicar las etapas que realiza un dispositivo cliente 102, un servidor remoto 104 y un servidor intermediario 108 en el procedimiento 400. También con referencia a las Figuras 1 y 2, en la etapa 402, el dispositivo cliente 102 puede solicitar el contenido desde un servidor intermediario 108. El dispositivo cliente 102 puede generar la solicitud al servidor intermediario 108 del contenido en respuesta a la renderización de un espacio de contenido de, por ejemplo, una página web. Por ejemplo, los espacios de contenido de la página web pueden incluir instrucciones ejecutables del procesador que pueden hacer que el navegador web genere la solicitud al servidor intermediario 108. El dispositivo cliente 102 puede transmitir la solicitud al servidor remoto 104(1) a través de cualquier protocolo adecuado, tal como a través de una solicitud HTTPs o una solicitud RESTful. La solicitud puede incluir un identificador de dispositivo, identificador de cuenta, identificador de usuario, identificador de sesión, u otro identificador similar, o una cookie que genera o proporciona el dispositivo cliente 102. Por ejemplo, el servidor remoto 104(1) puede haber proporcionado previamente una cookie al dispositivo cliente 102 (por ejemplo, durante un procedimiento de autenticación u otro evento similar), y el dispositivo cliente 102 puede proporcionar la misma cookie en la solicitud a partir de ahí.
En la etapa 404, en respuesta a la solicitud, el servidor intermediario 108 puede seleccionar el contenido. En algunas implementaciones, el servidor intermediario 108 puede seleccionar un servidor de contenido 110 que puede seleccionar o proporcionar el contenido. Por ejemplo, el servidor intermediario 108 puede seleccionar un servidor de contenido 110 de una lista de servidores de contenido 110 mediante el uso de un sistema de turno rotativo u otro sistema de equilibrio de carga, o mediante un sistema basado en subastas. El servidor de contenido 110 puede seleccionar un elemento de contenido para devolver en respuesta a la solicitud y puede transmitir el elemento de contenido directamente al dispositivo cliente 102 o al dispositivo cliente 102 a través del servidor intermediario 108. Por ejemplo, el servidor de contenido 110 puede transmitir el elemento de contenido al servidor intermediario 108, el cual puede transmitir el elemento de contenido al dispositivo cliente 102. En la etapa 406, el servidor intermediario 108 puede transmitir el contenido al dispositivo cliente 102 como una respuesta a la solicitud en la etapa 402.
En la etapa 408, el elemento de contenido se puede registrar en el dispositivo cliente 102. El contenido puede incluir una carga útil (por ejemplo, datos no visibles) e instrucciones ejecutables del procesador. La ejecución de las instrucciones ejecutables del procesador durante la renderización del contenido puede generar una llamada a la API que proporciona el motor de conversión 212. A través de la llamada a la API, el elemento de contenido puede pasar una carga útil al motor de conversión 212 para registrar el elemento de contenido en el dispositivo cliente 102. La carga útil puede incluir, por ejemplo, un URL de una página de destino, un ID de campaña, uno o más identificadores, y un URL de informe. El ID de campaña puede identificar el elemento de contenido en el servidor intermediario 108 o en un servidor de contenido 110. Los elementos de contenido de un mismo tipo, de un mismo tercero, o que se relacionan de cualquier otra manera pueden incluir el mismo ID de campaña.
En algunas implementaciones, el motor de conversión 212 puede incluir una o más políticas de registro. El motor de conversión 212 puede determinar si se cumple la política de registro antes de registrar el contenido en el dispositivo cliente 102. Las políticas de registro se pueden establecer o controlar por un usuario del dispositivo cliente 102. Por ejemplo, el usuario puede generar listas blancas o listas negras que indican qué contenido (o tipo del mismo) puede registrar el motor de conversión 212. Las listas blancas y las listas negras pueden indicar proveedores del contenido (por ejemplo, servidores intermediarios 108, servidores remotos 104, o servidores de contenido 110) mediante un URL. Las listas blancas y las listas negras pueden indicartipos de contenido que se pueden registrar. Por ejemplo, el usuario puede incluir en la lista negra el contenido de video de manera que ningún contenido de video (independientemente del proveedor) se pueda registrar en el motor de conversión 212. Las políticas de registro pueden incluir uno o más requisitos que se deben cumplir antes de que se pueda registrar el contenido. Por ejemplo, en algunas implementaciones, el motor de conversión 212 solo puede registrar el contenido si el contenido se muestra al usuario durante un período de tiempo predeterminado. El motor de conversión 212 puede generar o ejecutar un script de temporizador que se activa (por ejemplo, se inicia) cuando el elemento de contenido se renderiza y se muestra al usuario. El motor de conversión 212 puede finalizar cuando se cierra la ventana que contiene el elemento de contenido, el usuario navega a una página web diferente, o el contenido de cualquier otra manera ya no se dispone o no se muestra al usuario. El usuario puede establecer un umbral de tiempo (por ejemplo, 10 segundos, 30 segundos, 1 minuto). El motor de conversión 212 sólo puede registrar el elemento de contenido si el período de tiempo que se muestra el contenido supera el umbral de tiempo. La política de registro puede establecer una frecuencia de visualización para el registro. La frecuencia de visualización puede ser un número de veces por ventana de tiempo en que el elemento de contenido se debe mostrar antes de que el elemento de contenido se pueda registrar en el motor de conversión 212. La ventana de tiempo puede ser de 1 día, 1 semana, 1 mes, o 3 meses. Por ejemplo, la política de registro puede indicar que el elemento de contenido se debe mostrar al menos dos veces con un mes antes de que se pueda registrar el elemento de contenido. En estas implementaciones, el motor de conversión 212 puede registrar el elemento de contenido en la tabla de registro 214 como un elemento de contenido candidato. El motor de conversión 212 puede periódicamente purgar (por ejemplo, eliminar) elementos de contenido candidatos de la tabla de registro 214 que no cumplen con la frecuencia de visualización dentro de un umbral predeterminado. Por ejemplo, el motor de conversión 212 puede purgar los elementos de contenido candidatos cada hora, día, semana, o mes, y purgar los elementos de contenido candidatos que tienen una frecuencia de visualización por debajo de la frecuencia de visualización que indica la política de registro. Los elementos de contenido en la tabla de registro 214 pueden no estar disponibles para coincidir con los URL entrantes hasta que el elemento de contenido se muestre un número de veces por encima de la frecuencia de visualización y el motor de conversión 212 elimine una etiqueta candidata de la entrada del elemento de contenido en la tabla de registro 214. En algunas implementaciones, el usuario puede seleccionar purgar, restablecer, o de cualquier otra manera eliminar la tabla de registro 214. Por ejemplo, el motor de conversión 212 puede eliminar automáticamente entradas en la tabla de registro 214 que tengan más de un día, semana, mes, o 3 meses. En algunas implementaciones, el usuario puede desactivar el motor de conversión 212 de manera que los elementos de contenido no se puedan ingresar en la tabla de registro 214.
Las políticas de registro pueden incluir requisitos de visibilidad. En algunas implementaciones, el contenido del servidor intermediario 108 se puede no presentar visualmente a un usuario cuando se renderiza. Por ejemplo, el contenido solo puede incluir instrucciones ejecutables del procesador que hacen que el dispositivo cliente 102 genere una solicitud a un tercero y el contenido puede no incluir texto, imágenes, audio, u otros datos que se renderizan y se muestran al usuario. En otro ejemplo, el contenido se puede renderizar en un tamaño dimensional relativamente pequeño o de cualquier otra manera se puede ocultar al usuario cuando se muestra. Por ejemplo, el contenido se puede renderizar en un solo píxel. El requisito de visibilidad de la política de registro puede indicar un tamaño requerido del contenido, cuando se renderiza, para que el contenido se registre. Por ejemplo, los requisitos de visibilidad pueden indicar que el contenido que se renderiza debe ser de al menos 5 píxeles x 5 píxeles para que el motor de conversión 212 autorice el registro del contenido. Si, en este ejemplo, el contenido que se renderiza es menor de 5 píxeles x 5 píxeles, el motor de conversión 212 puede determinar no registrar el elemento de contenido.
En la etapa 410, el dispositivo cliente 102 puede generar una solicitud de contenido. La etapa 410 puede, en este ejemplo, ocurrir una vez que la tabla de registro 214 se llena con una o más entradas. El servidor remoto 104 puede alojar una o más páginas web. En algunas implementaciones, una o más de las páginas web pueden ser una página de destino para uno de los elementos de contenido que se registran en la tabla de registro 214. La página web puede ser una página de destino para un elemento de contenido cuando el elemento de contenido incluye un URL que dirige un navegador web a la página web. El dispositivo cliente 102 puede transmitir la solicitud al servidor remoto 104 a través de cualquier protocolo adecuado, tal como a través de una solicitud HTTPs o una solicitud RESTful. En la etapa 412, el servidor remoto 104 puede seleccionar el contenido que se identifica en la solicitud. Por ejemplo, la solicitud puede incluir un URL y el servidor remoto 104 puede recuperar la página web que se ubica en el URL. En la etapa 414, el servidor remoto 104 puede transmitir el contenido al dispositivo cliente 102.
En la etapa 416, el dispositivo cliente 102 puede renderizar el contenido del servidor remoto 104. El contenido del servidor remoto 104 puede ser una página web. En algunas implementaciones, el motor de conversión 212 puede ejecutar un temporizador de JavaScript (u otro procesador ejecutable) cuando la aplicación 208 (por ejemplo, el navegador web) comienza a renderizar la página web desde el servidor remoto 104. El motor de conversión 212 puede ejecutar el temporizador hasta que el navegador web del dispositivo cliente 102 navegue a otra página web o cierre la ventana que muestra la página web. La página web se puede asociar con un URL. El motor de conversión 212 puede determinar o recibir el URL del navegador web. Por ejemplo, el motor de conversión 212 puede realizar una llamada al navegador web para obtener el URL en la barra de direcciones de la ventana más frontal o activa del navegador web.
En la etapa 418, el motor de conversión 212 puede determinar si el contenido se registra. Por ejemplo, el motor de conversión 212 puede determinar si la página web que se devuelve desde el servidor remoto 104 se registra en la tabla de registro 214 o se asocia con una entrada de la tabla de registro 214. Por ejemplo, como se describió anteriormente, el motor de conversión 212 puede registrar elementos de contenido en la tabla de registro 214. Los elementos de contenido pueden incluir cargas útiles que se incluyen como entradas en la tabla de registro 214. La entrada para un elemento de contenido en la tabla de registro 214 puede incluir un URL de página de destino, uno o más identificadores, u otros datos. La tabla de registro 214 se puede indexar por el URL de página de destino. El motor de conversión 212 puede buscar en la tabla de registro 214 el URL de la página web que proporciona el servidor remoto 104 en las etapas 412 y 414. El motor de conversión 212 determina si el URL de la página web coincide con una de los URL de página de destino que se guardan en la tabla de registro 214 al realizar una búsqueda o búsqueda de la tabla de registro 214 mediante el uso del URL como clave de entrada para la tabla de registro 214. Si el motor de conversión 212 encuentra el URL de la página web en la tabla de registro 214, el dispositivo cliente 102 recibió previamente un elemento de contenido de un servidor intermediario 108 o servidor de contenido 110 que indicó que la página web (desde el servidor remoto 104 en las etapas 412 y 414 ) era la página de destino del elemento de contenido. Si el motor de conversión 212 no encuentra una coincidencia con el URL, la página web no sirvió como página de destino para un elemento de contenido recibido previamente y el procedimiento 400 puede finalizar en la etapa 420. Si el contenido se registra, el procedimiento 400 puede continuar con la etapa 422.
En la etapa 422, el motor de conversión 212 puede determinar si los informes se autorizan. El motor de conversión 212 puede hacer referencia a una política de informes para determinar si los informes se autorizan. La política de informes puede incluir reglas para si se puede informar la renderización del contenido. Por ejemplo, la política de informes puede incluir un requisito de tiempo de visualización. El requisito de tiempo de visualización puede ser un período de tiempo en segundos, minutos, u horas. El requisito de tiempo de visualización se puede establecer por el usuario o el servidor intermediario 108. El requisito de tiempo de visualización puede indicar un período de tiempo por el cual el contenido del servidor remoto se debe mostrar después de que se renderiza en la etapa 416 antes de que el motor de conversión 212 genere un mensaje de informe para el contenido. Por ejemplo, como se describió anteriormente, el motor de conversión 212 puede establecer un temporizador cuando el contenido se renderiza al usuario. En respuesta al cierre de la ventana que contiene el contenido, el motor de conversión 212 puede comparar el tiempo que determina el temporizador con el requisito de tiempo de visualización. Si el tiempo que se muestra es menor que el requisito de tiempo de visualización, el motor de conversión 212 puede determinar que los informes no se autorizan. Si el tiempo que se muestra es mayor que el requisito de tiempo de visualización, el motor de conversión 212 puede determinar que los informes se autorizan. Las políticas de informes pueden incluir listas blancas y listas negras similares a las listas blancas y listas negras de las políticas de registro. El usuario del dispositivo cliente 102 o el servidor intermediario 108 puede crear listas del servidor remoto 104 para el que se autoriza el informe (lista blanca) o para el que el informe no se autoriza (lista negra). Si en la etapa 422, el motor de conversión 212 determina que la notificación no se autoriza, el procedimiento 400 puede finalizar en la etapa 420. Si en la etapa 422, el motor de conversión 212 determina que el informe se autoriza, el procedimiento 400 puede continuar a la etapa 424.
En la etapa 426, el motor de conversión 212 puede generar un mensaje de informe. Como se describió anteriormente, en la etapa 418, el motor de conversión 212 puede determinar que el contenido se registra en la tabla de registro 214. El motor de conversión 212 puede recuperar la entrada asociada con el contenido de la tabla de registro 214, por ejemplo, mediante el uso del URL del contenido como clave para realizar una búsqueda en la tabla de registro 214. La entrada del contenido puede incluir la carga útil descrita anteriormente, que puede incluir uno o más identificadores (por ejemplo, un ID de campaña) y uno o más URL (por ejemplo, un URL de informe). El mensaje de informe puede ser una respuesta de pingback. La respuesta de pingback puede ser una llamada a procedimiento remoto XML. La respuesta se puede transmitir a un destino a través de HTTP o HTTPS y la carga útil de la respuesta se puede codificar con XML. El destino del mensaje de informe puede ser el URL de informe que se recupera de la tabla de registro 214. La carga útil de respuesta puede incluir uno o más identificadores. Los identificadores pueden ser o pueden incluir el ID del dispositivo 210, el ID de campaña, o una combinación de los mismos. Por ejemplo, el motor de conversión 212 puede concatenar los bits más significativos del ID del dispositivo 210 con el ID de campaña. Parte o toda la carga útil de respuesta se puede cifrar o aplicar hash. Por ejemplo, el motor de conversión 212 puede generar una porción de la respuesta mediante el hash de entradas de los identificadores específicos del navegador, la aplicación, el dispositivo o la sesión, los tipos de dispositivos o los números de serie, los tiempos de desviación del reloj, los identificadores de hardware, o cualquier otro dato similar. En algunas implementaciones, la política de informes puede establecer un límite de tamaño (por ejemplo, en bits o caracteres) para el contenido de la carga útil de la respuesta. Por ejemplo, la política de informes puede indicar que la carga útil de un mensaje de informe se limita al tamaño y contenido del ID de campaña. En este ejemplo, la carga útil de respuesta puede incluir información sobre el contenido que se vio, pero no información sobre el dispositivo cliente 102 que renderizó o de cualquier otra manera recibió el contenido.
En la etapa 426, el motor de conversión 212 puede determinar si los mensajes de informes se deben retener para una transmisión por lotes. La política de informes puede incluir un indicador o bit de transmisión por lotes. Cuando se configura, el motor de conversión 212 puede contener mensajes de informes para la transmisión por lotes. Si en la etapa 426, el motor de conversión 212 determina que el indicador de transmisión por lotes se establece, el procedimiento 400 puede pasar a una fase de espera en la etapa 428. En la etapa 428, el motor de conversión 212 puede escribir o guardar el mensaje de informe en la tabla de agregación 216. El motor de conversión 212 puede guardar el mensaje de informe en la tabla de agregación 216 con una marca de tiempo que indica cuándo se generó o guardó el mensaje de informe en la tabla de agregación 216. En algunas implementaciones, la política de informes puede incluir un requisito de lote. Cuando el motor de conversión 212 determina que se ha cumplido el requisito de lote, el motor de conversión 212 puede transmitir los mensajes de informes que se almacenan en la tabla de agregación 216 a sus respectivos destinos como indican sus respectivos URL de informe. El requisito de lote se puede basar en la cantidad o en el tiempo. El requisito de lote que se basa en la cantidad puede establecer una serie de mensajes de informes que se requieren para ser una transmisión por lote. Por ejemplo, el motor de conversión 212 puede transmitir los mensajes de informes cuando se agrupan 10, 50, o 100 mensajes de informes (por ejemplo, se guardan) en la tabla de agregación 216. El requisito de lote basado en el tiempo puede establecer un intervalo (por ejemplo, hora, día, semana, o mes) en el que se transmiten los mensajes de informes que se guardan en la tabla de agregación 216.
En la etapa 430, el motor de conversión 212 puede transmitir la respuesta como parte de un lote. Por ejemplo, en la etapa 430, el motor de conversión 212 puede determinar que el requisito de lote se satisface y el motor de conversión 212 puede recuperar cada uno de los mensajes de informes de la tabla de agregación 216. El motor de conversión 212 puede transmitir cada uno de los mensajes de informes a sus respectivos destinos. Si en la etapa 426, el motor de conversión 212 determina que no se ha establecido un indicador de transmisión por lotes, el procedimiento 400 puede proceder a la etapa 434 y el motor de conversión 212 puede transmitir el mensaje de informe.
En las etapas 432 y 436, el servidor intermediario 108 puede registrar las respuestas. Aunque los mensajes de informes se ilustran en la Figura 4 a medida que se transmiten al servidor intermediario 108, los mensajes de informes se pueden transmitir a cualquier servidor (por ejemplo, un servidor remoto 104, un servidor de contenido 110, o un servidor proxy). De manera similar, el motor de conversión 212 puede transmitir cada uno de los mensajes de informes en la transmisión por lotes (en la etapa 430) a diferentes destinos. Por ejemplo, el motor de conversión 212 puede transmitir una primera porción de los mensajes de informes a un primer servidor intermediario 108, una segunda porción de los mensajes de informes a un segundo servidor intermediario 108 y una tercera porción de los mensajes de informes a un servidor remoto 104. El servidor intermediario 108, o, más generalmente, el destinatario del mensaje de informe puede registrar que se recibió el mensaje de informe. El servidor intermediario 108 puede guardar una indicación del mensaje de informe en una tabla de conversión. El servidor intermediario 108 puede guardar el contenido del mensaje de informe en la tabla de conversión. Por ejemplo, el servidor intermediario 108 puede guardar un ID de campaña del mensaje de informe en la tabla de conversión. Periódicamente, el servidor intermediario 108 puede analizar la tabla de conversión para determinar, por ejemplo, con qué frecuencia se visualizó un elemento de contenido de un servidor de contenido 110 dado y luego un dispositivo cliente navegó subsecuentemente e independientemente a una página de destino del elemento de contenido.
En consecuencia, de acuerdo con al menos un aspecto de la divulgación, un procedimiento para autorizar transmisiones de datos en un entorno en red puede incluir recibir, mediante un navegador web que se ejecuta por un dispositivo cliente, una solicitud de registro de un elemento de contenido que se muestra por el navegador web. La solicitud de registro puede incluir un primer URL y un segundo URL. El procedimiento puede incluir almacenar, mediante el navegador web que se ejecuta por el dispositivo cliente, el primer URL, el segundo URL, y una marca de tiempo en una tabla de registro que se almacena en el dispositivo cliente. El procedimiento puede incluir identificar, mediante el navegador web que se ejecuta por el dispositivo cliente, un tercer URL de una página web que se muestra por el navegador web. El procedimiento puede incluir determinar, mediante el navegador web que se ejecuta por el dispositivo cliente, que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de una duración de tiempo predeterminada de la marca de tiempo. El procedimiento puede incluir transmitir, mediante el navegador web que se ejecuta por el dispositivo cliente, una respuesta al segundo URL.
En algunas implementaciones, el procedimiento puede incluir generar, mediante el navegador web, la respuesta al segundo URL. El procedimiento puede incluir almacenar, mediante el navegador web, la respuesta al segundo URL en una tabla de agregación. El procedimiento puede incluir determinar, mediante el navegador web, que se satisface un requisito de lote. El procedimiento puede incluir transmitir, mediante el navegador web, la respuesta al segundo URL como una transmisión por lotes que comprende una pluralidad de respuestas.
En algunas implementaciones, el procedimiento puede incluir determinar, mediante el navegador web, la duración de tiempo que el navegador web muestra la página web. El procedimiento puede incluir transmitir, mediante el navegador web, la respuesta al segundo URL en respuesta a la duración de tiempo que el navegador web muestra la página web al estar por encima de un umbral predeterminado.
En algunas implementaciones, el procedimiento puede incluir determinar, mediante el navegador web, la duración de tiempo que el navegador web muestra el elemento de contenido. El procedimiento puede incluir almacenar, mediante el navegador web, la primera ULR, el segundo URL, y la marca de tiempo en respuesta a la duración de tiempo que el navegador web muestra el elemento de contenido que está por encima de un umbral predeterminado.
En algunas implementaciones, el procedimiento puede incluir determinar, mediante el navegador web que se ejecuta por el dispositivo cliente, que el primer URL y el segundo URL se almacenaron en el navegador web durante menos de un período de tiempo predeterminado. El procedimiento puede incluir eliminar, mediante el navegador web, el primer URL y el segundo URL de una tabla de conversión, que se almacena en el dispositivo cliente, después de un período de tiempo predeterminado. La solicitud de registro comprende una llamada de interfaz de programación de aplicaciones (API) que tiene una carga útil de datos. El procedimiento puede incluir transmitir al menos una porción de la carga útil de datos al segundo URL en la respuesta. El procedimiento puede incluir establecer un límite de carga útil para la respuesta al segundo URL. El procedimiento puede incluir transmitir la respuesta al segundo URL a través de un servidor proxy.
De acuerdo con al menos un aspecto de la divulgación, un sistema para autorizar transmisiones de datos en un entorno en red puede incluir un navegador web que se ejecuta por un dispositivo cliente. El navegador web puede ejecutar un motor de conversión para recibir una solicitud de registro de un elemento de contenido que se muestra por el navegador web. La solicitud de registro puede incluir un primer URL y un segundo URL. El motor de conversión puede almacenar el primer URL, el segundo URL, y una marca de tiempo en una tabla de registro que se almacena en el dispositivo cliente. El motor de conversión puede identificar un tercer URL de una página web que se muestra por el navegador web. El motor de conversión puede determinar que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de una duración predeterminada de la marca de tiempo. El motor de conversión puede transmitir una respuesta al segundo URL.
En algunas implementaciones, el navegador web puede generar la respuesta al segundo URL. El navegador web puede almacenar la respuesta al segundo URL en una tabla de agregación. El navegador web puede determinar que se satisface un requisito de lote y transmitir la respuesta al segundo URL como una transmisión por lotes que comprende una pluralidad de respuestas.
En algunas implementaciones, el navegador web puede determinar la duración de tiempo que la página web se muestra por el navegador web. El navegador web puede transmitir la respuesta al segundo URL en respuesta a la duración de tiempo que la página web se muestra por el navegador web al estar por encima de un umbral predeterminado.
En algunas implementaciones, el navegador web puede determinar la duración de tiempo que el elemento de contenido se muestra por el navegador web. El navegador web puede almacenar la primera ULR, el segundo URL, y la marca de tiempo en respuesta a la duración de tiempo en que el elemento de contenido se muestra por el navegador web que está por encima de un umbral predeterminado.
El navegador web puede determinar que el primer URL y el segundo URL se almacenaron en el navegador web durante menos de un período de tiempo predeterminado. El navegador web puede eliminar el primer URL y el segundo URL de una tabla de conversión, que se almacena en el dispositivo cliente, después de un período de tiempo predeterminado. La solicitud de registro comprende una llamada de interfaz de programación de aplicaciones (API) que tiene una carga útil de datos.
En algunas implementaciones, el navegador web puede transmitir al menos una porción de la carga útil de datos al segundo URL en la respuesta. El navegador web puede establecer un límite de carga útil para la respuesta al segundo URL. El navegador web puede transmitir la respuesta al segundo URL a través de un servidor proxy. En algunas implementaciones, el servidor proxy puede ocultar la dirección IP del dispositivo cliente a servidores de terceros de manera que no se pueda rastrear la dirección IP del dispositivo cliente. El proxy también puede agregar mensajes de informes de múltiples dispositivos cliente para generar el informe por lotes y proteger la privacidad del usuario individual.
Las implementaciones del tema y las operaciones descritas en esta memoria descriptiva se pueden implementar en circuitos electrónicos digitales, o en software, firmware, o hardware de ordenador, que incluye las estructuras divulgadas en esta memoria descriptiva y sus equivalentes estructurales, o en combinaciones de uno o más de ellos. Las implementaciones del tema descrito en esta memoria descriptiva se pueden implementar como uno o más programas informáticos, es decir, uno o más módulos de instrucciones de programas informáticos, que se codifican en uno o más medios de almacenamiento informático para su ejecución por, o para controlar la operación de, aparatos de procesamiento de datos. Alternativamente o además, las instrucciones del programa se pueden codificar en una señal propagada generada artificialmente, por ejemplo, una señal eléctrica, óptica o electromagnética generada por una máquina, que se genera para codificar información para su transmisión a un aparato receptor adecuado para su ejecución mediante un aparato de procesamiento de datos. Un medio de almacenamiento informático puede ser, o estar incluido en, un dispositivo de almacenamiento legible por ordenador, un sustrato de almacenamiento legible por ordenador, una matriz o dispositivo de memoria de acceso aleatorio o en serie, o una combinación de uno o más de ellos. Además, aunque un medio de almacenamiento informático no es una señal propagada, un medio de almacenamiento informático puede ser una fuente o destino de instrucciones de programas informáticos que se codifican en una señal propagada generada artificialmente. El medio de almacenamiento informático también puede ser, o estar incluido en, uno o más componentes o medios separados (por ejemplo, múltiples CD, discos, u otros dispositivos de almacenamiento). En consecuencia, el medio de almacenamiento informático puede ser tangible.
Las operaciones descritas en esta memoria descriptiva pueden implementarse como operaciones realizadas por un aparato de procesamiento de datos sobre datos almacenados en uno o más dispositivos de almacenamiento legibles por ordenador o recibidos de otras fuentes.
El término "cliente" o "servidor" incluye todo tipo de aparatos, dispositivos, y máquinas para procesar datos, tales como un procesador programable, un ordenador, un sistema en un chip, o múltiples, o combinaciones de los anteriores. El aparato puede incluir circuitos lógicos de propósito especial, por ejemplo, un FPGA (matriz de puertas lógicas programable en campo) o un ASIC (circuito integrado específico de la aplicación). El aparato también puede incluir, además del hardware, código que crea un entorno de ejecución para el programa informático en cuestión, por ejemplo, código que constituye el firmware del procesador, una pila de protocolos, un sistema de gestión de bases de datos, un sistema operativo, un tiempo de ejecución multiplataforma. entorno, una máquina virtual o una combinación de uno o más de ellos. El aparato y el entorno de ejecución pueden realizar diversas infraestructuras de modelos informáticos diferentes, tales como servicios web, informática distribuida e infraestructuras informáticas en red.
Un programa informático(también conocido como programa, aplicación de software, texto, o código) puede escribirse en cualquier forma de lenguaje de programación, que incluye lenguajes compilados o interpretados, y puede implementarse en cualquier forma, que incluye un programa independiente o un módulo, subrutina, u otra unidad adecuada para su uso en un ambiente de ordenadores. Un programa de ordenador puede, pero no necesariamente, corresponder a un archivo en un sistema de archivos. Un programa se puede almacenar en una porción de un archivo que contiene otros programas o datos (por ejemplo, uno o más scripts que se almacenan en un documento de lenguaje de marcado), en un solo archivo dedicado al programa en cuestión, o en múltiples archivos coordinados (por ejemplo, los archivos que almacenan uno o más módulos, subprogramas, o porciones de código). Un programa informático puede implementarse para ejecutarse en un ordenador o en múltiples ordenadores en un sitio o distribuidos a través de múltiples sitios e interconectados por una red de comunicación.
Los procesos y flujos lógicos descritos en esta memoria descriptiva pueden realizarse mediante uno o más procesadores programables que ejecutan uno o más programas informáticos para realizar funciones operando sobre los datos de entrada y generando la salida correspondiente. Los procesos y los flujos lógicos también se pueden realizar, y el aparato también se puede implementar como un circuito lógico de propósito especial, por ejemplo, un FPGA (matriz de puertas lógicas programable en campo) o un ASIC (circuito integrado específico de la aplicación).
Los procesadores adecuados para la ejecución de un programa informático incluyen microprocesadores de propósito general y especial, y uno o más procesadores de cualquier tipo de ordenador digital. Generalmente, el procesador recibirá instrucciones y datos de una memoria de solo lectura o de una memoria de acceso aleatorio. Los elementos esenciales de un ordenador son un procesador para ejecutar instrucciones y uno o más dispositivos de memoria para almacenar instrucciones y datos. Generalmente, un ordenador también incluirá, o se acoplará operativamente para recibir datos desde o transferir datos a, o ambos, uno o más dispositivos de almacenamiento masivo para almacenar datos, por ejemplo, discos magnéticos, magneto-ópticos, o discos ópticos. Sin embargo, un ordenador no necesita tener tales dispositivos. Además, un ordenador puede integrarse en otro dispositivo, por ejemplo, un teléfono móvil, un asistente digital personal (PDA), un reproductor de audio o video móvil, una consola de juegos, un receptor del Sistema de posicionamiento global (GPS) o un dispositivo de almacenamiento portátil. (por ejemplo, una unidad flash de bus serie universal (USB)), por nombrar sólo algunos. Los dispositivos adecuados para almacenar instrucciones y datos de programas informáticos incluyen todas las formas de memoria no volátil, medios y dispositivos de memoria, que incluyen dispositivos de memoria semiconductores, por ejemplo, EPROM, EEPROM, y dispositivos de memoria flash; discos magnéticos, por ejemplo, discos duros internos o discos extraíbles; discos magneto-ópticos; y discos CD-ROM y DVD-ROM. El procesador y la memoria pueden complementarse o incorporarse en un circuito lógico de propósito especial.
Para proporcionar la interacción con un usuario, las implementaciones del tema descrito en esta memoria descriptiva se pueden implementar en un ordenador que tenga un dispositivo de visualización, por ejemplo, un CRT (tubo de rayos catódicos), LCD (pantalla de cristal líquido), OLED (diodo orgánico de emisión de luz), TFT (transistor de películas finas), plasma, otra configuración flexible, o cualquier otro monitor para mostrar información al usuario y un teclado, un dispositivo señalador, por ejemplo, un mouse, rueda de desplazamiento, etc., o una pantalla táctil, panel táctil, etc., mediante el cual el usuario puede proporcionar información al ordenador. También se pueden usar otros tipos de dispositivos para proporcionar la interacción con un usuario; la retroalimentación proporcionada al usuario puede ser cualquier forma de retroalimentación sensorial, por ejemplo, retroalimentación visual, retroalimentación auditiva, o retroalimentación táctil; y la entrada del usuario se puede recibir de cualquier forma, que incluye la entrada acústica, de voz, o táctil. Además, un ordenador puede interactuar con un usuario al enviar documentos y al recibir documentos desde un dispositivo que se usa por el usuario; al enviar páginas web a un navegador web en el dispositivo cliente de un usuario en respuesta a las solicitudes recibidas desde el navegador web.
Las implementaciones del tema descrito en esta memoria descriptiva se pueden implementar en un sistema informático que incluye un componente posterior, por ejemplo, como un servidor de datos, o que incluye un componente de software intermedio, por ejemplo, un servidor de aplicaciones, o que incluye un componente frontal, por ejemplo, un ordenador cliente que tiene una interfaz gráfica de usuario o un navegador web a través del cual un usuario puede interactuar con una implementación del tema descrito en esta memoria descriptiva, o cualquier combinación de uno o más de tales componentes posterior, de software intermedio, o frontal. Los componentes del sistema pueden estar interconectados por cualquier forma o medio de comunicación de datos digitales, por ejemplo, una red de comunicación. Las redes de comunicación pueden incluir una red de área local ("LAN") y una red de área amplia ("WAN"), una inter-red (por ejemplo, la Internet) y redes entre pares (por ejemplo, redes entre pares ad hoc).
Para situaciones en las que los sistemas analizados en la presente memoria recopilan información personal sobre los usuarios, o pueden hacer uso de información personal, los usuarios pueden tener la oportunidad de controlar si los programas o características que pueden recopilar información personal (por ejemplo, información sobre la red social de un usuario, acciones o actividades sociales, preferencias de un usuario o ubicación de un usuario), o para controlar si recibir o cómo recibir contenido de un servidor de contenido u otro sistema de procesamiento de datos que pueda ser más relevante para el usuario. Además, ciertos datos se pueden anonimizar de una o más formas antes de que se almacenen o usen, para que la información de identificación personal se elimine al generar parámetros. Por ejemplo, la identidad de un usuario se puede anonimizar para que no se pueda determinar información de identificación personal para el usuario, o se puede generalizar la ubicación geográfica de un usuario donde se obtiene la información de ubicación (tal como a nivel de ciudad, código postal, o estado), para que no se pueda determinar una ubicación particular de un usuario. Por lo tanto, el usuario puede tener control sobre cómo se recopila la información sobre él o ella y se usa por el servidor de contenido.
Aunque esta memoria descriptiva contiene muchos detalles de implementación específicos, estos no se deben interpretar como limitaciones en el ámbito de ninguna invención o de lo que se puede reclamar, sino más bien como descripciones de características específicas de implementaciones particulares de invenciones particulares. Ciertas características que se describen en esta memoria descriptiva en el contexto de implementaciones separadas también se pueden implementar en combinación en una única implementación. De manera inversa, diversas características divulgadas en el contexto de una única implementación pueden implementarse además en implementaciones múltiples de manera separada o en cualquier subcombinación adecuada. Además, aunque las características pueden describirse anteriormente como que actúan en ciertas combinaciones e incluso inicialmente reivindicadas como tales, una o más características de una combinación reivindicada puede en algunos casos eliminarse de la combinación, y la combinación reivindicada puede dirigirse a una subcombinación o variación de una subcombinación.
De manera similar, aunque las operaciones se representan en los dibujos en un orden particular, esto no debe entenderse que requiere que dichas operaciones se realicen en el orden particular que se muestra o en orden secuencial, o que todas las operaciones ilustradas se realicen, para lograr los resultados convenientes. En determinadas circunstancias, la multitarea y el procesamiento en paralelo pueden resultar ventajosos. Además, la separación de varios componentes del sistema en las implementaciones descritas anteriormente no debe entenderse que requiera dicha separación en todas las implementaciones, y debe entenderse que los componentes y sistemas del programa descritos generalmente se pueden integrar juntos en un solo producto de software o se empaquetan en múltiples productos de software.
Por tanto, se han descrito implementaciones particulares del tema. En algunos casos, las acciones enumeradas en las reivindicaciones se pueden realizar en un orden diferente y aún así lograr resultados convenientes. Además, los procesos que se representan en las figuras adjuntas no requieren necesariamente el orden particular que se muestra, o el orden secuencial, para lograr resultados convenientes. En ciertas implementaciones, se puede utilizar procesamiento en paralelo o multitarea.

Claims (15)

REIVINDICACIONES
1. Un procedimiento para autorizar transmisiones de datos en un entorno de red, que comprende:
recibir, mediante un navegador web que se ejecuta por un dispositivo cliente (102), una solicitud de registro de un elemento de contenido que se muestra por el navegador web, en el que la solicitud de registro comprende un primer localizador uniforme de recursos "URL" y un segundo URL;
almacenar, mediante el navegador web que se ejecuta por el dispositivo cliente, el primer URL, el segundo URL y una marca de tiempo en una tabla de registro (214) que se almacena en el dispositivo cliente; identificar, mediante el navegador web que se ejecuta por el dispositivo cliente, un tercer URL de una página web que se muestra por el navegador web;
determinar, mediante el navegador web que se ejecuta por el dispositivo cliente, que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de una duración de tiempo predeterminada de la marca de tiempo; y
transmitir, mediante el navegador web que se ejecuta por el dispositivo cliente, un mensaje al segundo URL en base a la determinación de que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de la duración de tiempo predeterminada de la marca de tiempo.
2. El procedimiento de la reivindicación 1, que comprende además:
generar, mediante el navegador web, el mensaje al segundo URL;
almacenar, mediante el navegador web, el mensaje al segundo URL en una tabla de agregación (216); determinar, mediante el navegador web, que se satisface un requisito de lote; y
transmitir, mediante el navegador web, el mensaje al segundo URL como una transmisión por lotes que comprende una pluralidad de mensajes.
3. El procedimiento de la reivindicación 1, que comprende además:
determinar, mediante el navegador web, la duración de tiempo que el navegador web muestra la página web; y
transmitir, mediante el navegador web, el mensaje al segundo URL en respuesta a que la duración de tiempo que el navegador web muestra la página web supera un umbral.
4. El procedimiento de la reivindicación 1, que comprende además:
determinar, mediante el navegador web, la duración de tiempo que el navegador web muestra el elemento de contenido; y
almacenar, mediante el navegador web, el primer URL, el segundo URL, y la marca de tiempo en respuesta a que la duración de tiempo en que el elemento de contenido se muestra por el navegador web supera un umbral.
5. El procedimiento de la reivindicación 1, que comprende además determinar, mediante el navegador web que se ejecuta por el dispositivo cliente, que el primer URL y el segundo URL se almacenaron en el navegador web durante menos de una duración predeterminada.
6. El procedimiento de la reivindicación 1, que comprende además eliminar, mediante el navegador web, el primer URL y el segundo URL de una tabla de conversión, que se almacena en el dispositivo cliente, en respuesta a una diferencia entre el tiempo de almacenamiento del primer URL y el segundo URL y un tiempo presente que excede un umbral.
7. El procedimiento de la reivindicación 1, en el que la solicitud de registro comprende una llamada a la interfaz de programación de aplicaciones "API" que tiene una carga útil de datos.
8. El procedimiento de la reivindicación 7, que comprende además transmitir al menos una porción de la carga útil de datos al segundo URL en el mensaje.
9. El procedimiento de la reivindicación 1, que comprende además establecer un límite de carga útil para el mensaje al segundo URL.
10. El procedimiento de la reivindicación 1, que comprende además transmitir el mensaje al segundo URL a través de un servidor proxy.
11. Un sistema (100) para autorizar transmisiones de datos en un entorno de red, que comprende:
un navegador web que se ejecuta por un dispositivo cliente (102), el navegador web que ejecuta un motor de conversión (212) para:
recibir una solicitud de registro de un elemento de contenido que se muestra por el navegador web, en el que la solicitud de registro comprende un primer localizador uniforme de recursos "URL" y un segundo URL; almacenar el primer URL, el segundo URL, y una marca de tiempo en una tabla de registro (214) que se almacena en el dispositivo cliente;
identificar un tercer URL de una página web que se muestra por el navegador web;
determinar que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de una duración de tiempo predeterminada de la marca de tiempo; y
transmitir un mensaje al segundo URL en base a la determinación de que el tercer URL coincide con el primer URL que se almacena en la tabla de registro y que el tiempo de visualización de la página web está dentro de la duración de tiempo predeterminada de la marca de tiempo.
12. El sistema de la reivindicación 11, que comprende además el motor de conversión para:
generar el mensaje al segundo URL;
almacenar el mensaje al segundo URL en una tabla de agregación (216);
determinar que un requisito de lote se cumple; y
transmitir el mensaje al segundo URL como una transmisión por lotes que comprende una pluralidad de mensajes.
13. El sistema de la reivindicación 11, que comprende además el motor de conversión para:
determinar la duración de tiempo que la página web se muestra por el navegador web; y
transmitir el mensaje al segundo URL en respuesta a que la duración de tiempo que la página web se muestra por el navegador web está por encima de un umbral.
14. El sistema de la reivindicación 11, que comprende además el motor de conversión para:
determinar la duración de tiempo que el elemento de contenido se muestra por el navegador web; y almacenar el primer URL, el segundo URL, y la marca de tiempo en respuesta a que la duración de tiempo que el elemento de contenido se muestra por el navegador web está por encima de un umbral.
15. El sistema de la reivindicación 11, que comprende además el motor de conversión para eliminar el primer URL y el segundo URL de una tabla de conversión, que se almacena en el dispositivo cliente, después de una duración predeterminada.
ES19722347T 2019-04-16 2019-04-16 Medición de conversión agregada Active ES2881658T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/027735 WO2020214155A1 (en) 2019-04-16 2019-04-16 Aggregated conversion measurement

Publications (1)

Publication Number Publication Date
ES2881658T3 true ES2881658T3 (es) 2021-11-30

Family

ID=66429572

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19722347T Active ES2881658T3 (es) 2019-04-16 2019-04-16 Medición de conversión agregada

Country Status (7)

Country Link
US (2) US11212351B2 (es)
EP (1) EP3759893B1 (es)
JP (2) JP7015939B2 (es)
KR (1) KR102239281B1 (es)
CN (2) CN114500489B (es)
ES (1) ES2881658T3 (es)
WO (1) WO2020214155A1 (es)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102417742B1 (ko) * 2021-09-08 2022-07-06 비엠텍시스템 주식회사 Api 데이터 수집시스템 및 그에 관한 방법

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963915A (en) * 1996-02-21 1999-10-05 Infoseek Corporation Secure, convenient and efficient system and method of performing trans-internet purchase transactions
EP1203281B1 (en) * 1999-08-02 2012-10-10 DOT Assets No. 2 LLC System for protecting information over the internet
KR20020084374A (ko) * 2001-04-30 2002-11-07 주식회사 팬택 무선 인터넷 상에서 비정상 유알엘의 판별 및 표시 방법
US20050255833A1 (en) * 2004-05-13 2005-11-17 Mobile (R&D) Ltd. Message aggregation system and method for a mobile communication device
WO2009052531A1 (en) * 2007-10-18 2009-04-23 Linkshare Corporation Methods and systems for tracking electronic commerce transactions
JP4952531B2 (ja) 2007-11-19 2012-06-13 富士通株式会社 記録装置、記録プログラム、および記録方法
US8868637B2 (en) * 2009-09-02 2014-10-21 Facebook, Inc. Page rendering for dynamic web pages
US20110072502A1 (en) * 2009-09-18 2011-03-24 Zhexuan Song Method and Apparatus for Identity Verification
US10298614B2 (en) * 2010-11-29 2019-05-21 Biocatch Ltd. System, device, and method of generating and managing behavioral biometric cookies
US20120173345A1 (en) * 2010-12-30 2012-07-05 Microsoft Corporation Unified Tracking and Reporting Across Multiple Publishers
CN103092857A (zh) * 2011-11-01 2013-05-08 腾讯科技(深圳)有限公司 历史记录的整理方法和装置
US8935798B1 (en) * 2011-11-08 2015-01-13 Google Inc. Automatically enabling private browsing of a web page, and applications thereof
US8984091B1 (en) * 2012-08-03 2015-03-17 Google Inc. Providing content based on timestamp of last request for content
US9104767B2 (en) 2012-08-28 2015-08-11 Adobe Systems Incorporated Identifying web pages that are likely to guide browsing viewers to improve conversion rate
US20140068411A1 (en) * 2012-08-31 2014-03-06 Scott Ross Methods and apparatus to monitor usage of internet advertising networks
CN104166652B (zh) * 2013-05-16 2019-03-26 腾讯科技(深圳)有限公司 浏览信息同步方法和装置
CN104216921B (zh) * 2013-06-05 2019-06-04 腾讯科技(深圳)有限公司 一种实现浏览器中快速链接的添加提示方法、装置及系统
CN106462561B (zh) * 2014-06-26 2020-06-09 谷歌有限责任公司 优化浏览器渲染过程
CN104346464B (zh) * 2014-11-07 2018-05-15 北京奇虎科技有限公司 网页元素信息的处理方法、装置和浏览器客户端
US9571512B2 (en) * 2014-12-15 2017-02-14 Sophos Limited Threat detection using endpoint variance
US10091076B2 (en) * 2015-08-25 2018-10-02 Google Llc Systems and methods for configuring a resource for network traffic analysis
US10892968B2 (en) * 2015-12-18 2021-01-12 Google Llc Systems and methods for latency reduction in content item interactions using client-generated click identifiers
CN108476244A (zh) 2016-01-13 2018-08-31 三星电子株式会社 通过利用网络延迟来缩短页面加载时间的方法和系统
JP2017167684A (ja) * 2016-03-14 2017-09-21 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
CN106503134B (zh) * 2016-10-19 2019-08-13 Oppo广东移动通信有限公司 浏览器跳转至应用程序的数据同步方法及装置
JP6615941B2 (ja) 2018-05-21 2019-12-04 グリー株式会社 通信端末、コンバージョン計測方法及びコンバージョン計測システム

Also Published As

Publication number Publication date
EP3759893A1 (en) 2021-01-06
KR20200122381A (ko) 2020-10-27
US11212351B2 (en) 2021-12-28
JP7015939B2 (ja) 2022-02-03
US11711436B2 (en) 2023-07-25
WO2020214155A1 (en) 2020-10-22
EP3759893B1 (en) 2021-05-05
KR102239281B1 (ko) 2021-04-12
JP2021519467A (ja) 2021-08-10
CN114500489A (zh) 2022-05-13
CN112166589B (zh) 2022-02-25
JP2022068159A (ja) 2022-05-09
CN112166589A (zh) 2021-01-01
JP7442553B2 (ja) 2024-03-04
US20210168213A1 (en) 2021-06-03
US20220086240A1 (en) 2022-03-17
CN114500489B (zh) 2024-03-12

Similar Documents

Publication Publication Date Title
US10291719B2 (en) Enabling communication while limiting access to user information
KR102390938B1 (ko) 브라우저 쿠키를 대체하는 도메인 특정 브라우저 식별자
US10778715B2 (en) Automatic peer to peer level of activity information maintenance and sharing method and apparatus
CN112166590B (zh) 用于在联网环境中消息生成的受限环境
ES2881658T3 (es) Medición de conversión agregada
JP7015400B2 (ja) 自己認証ドメイン固有のブラウザ識別子