Method, apparatus and system for associating different instances of user engagement with a content provider - Patents.com

JP2024524367A5Active Publication Date: 2025-06-18NOVATIQ TECHNOLOGIES LIMITED
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2023580423
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2021-07-01
Filing Date
2022-06-28
Publication Date
2025-06-18
Estimated Expiration
2042-06-28

AI Technical Summary

Technical Problem

Existing methods, such as cookies, fail to accurately identify the same user across multiple instances of engagement with different devices or after expiration, leading to inefficiencies in user interaction continuity and analytics for content providers.

Method used

A method involving a service provider network that generates and associates unique identifiers (IDs) across different instances of user engagement, enabling the content provider to link interactions through a cloud entity, even with different devices, by storing these IDs in association with subscriber identifiers.

Benefits of technology

Enables content providers to maintain user continuity and provide accurate analytics across multiple engagements, even with different devices, enhancing efficiency and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The method includes receiving, at a first entity in a service provider network for a first instance of user engagement with a content provider, a first message including a first ID associated with the provision of content from the content provider, identifying a subscriber and determining an identifier for the subscriber, and transmitting the subscriber's identifier and the first ID to a second entity. The first ID is stored in association with the subscriber's identifier. This is repeated for a second instance upon receipt of a second message including a second ID from the subscriber or another subscriber device of the subscriber. The second ID is stored together with the subscriber identifier and thus with the first ID. Information indicative of the stored association is provided to the content provider, thereby enabling the content provider to associate the first instance with the second instance.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a method, apparatus and system for associating different instances of user engagement with a content provider. [Background technology]

[0002] A user can engage with a content provider over the Internet using a device such as a personal computer or a smartphone. As one example of a user's engagement with a content provider, the user can control a browser on the device to send a request for content to a content provider over a computer network such as the Internet (e.g., by entering the content provider's URL into the browser), and the content provider can send a response including the content (e.g., a web page) over the computer network back to the user device for user viewing and interaction.

[0003] When there are multiple instances of such engagement between a user and a content provider (e.g., multiple request and response cycles), it is desirable for the content provider to know that each engagement is with the same user. For example, this may allow a website provided by the content provider to function more efficiently. For example, this may enable the content provider to provide continuity across instances of engagement (e.g., maintaining a login or shopping cart across instances of engagement) and / or provide accurate analytics such as how many unique users have engaged with the content provider or how each user interacts with the content provider.

[0004] It is known to use cookies to identify a user across multiple instances of engagement with a content provider. A cookie is a packet of data sent by a content provider to a user device's browser that is returned by the browser on each subsequent access of the browser to the content provider and is used to identify the user or track the user's access to the content provider. Cookies that are set by the domain with which the user is engaged (i.e., the content provider) are known as first party cookies.

[0005] However, cookies have drawbacks. As an example, cookies are set on the browser of a user's particular device. Thus, cookies do not allow the content provider to know when the same user engages with the content provider, using different devices. As another example, cookies expire. For example, browsers are set to delete cookies when a session is closed or after a certain time, or the cookies themselves expire after a certain time. Thus, even if the same device is used across different instances of engagement, depending on the deletion and / or expiration of the cookies, cookies may not allow the content provider to know when the same user engages with the content provider at different times.

[0006] It is an object of the present invention to alleviate at least some of the disadvantages of the prior art. Summary of the Invention

[0007] According to a first aspect of the present invention, there is provided a method for associating different instances of engagement of a subscriber of a service provider network with a first content provider, the method comprising the steps of: receiving, at a first entity in the service provider network, for the first instance, a first message from a subscriber device of the subscriber, the first message including a first ID associated with the provision of content from the first content provider to the subscriber device at the first instance; identifying the subscriber based on the received first message; determining an identifier for the subscriber based on the subscriber's identification information; transmitting the subscriber's identifier and the first ID to a second entity; and storing, at the second entity, the first ID in association with the subscriber's identifier; The method includes the steps of: receiving a second message from the subscriber device, the second message including a second ID different from the first ID, the second ID being associated with providing content from the first content provider to the subscriber device or another subscriber device at a second instance; identifying the subscriber based on the received second message; determining an identifier for the subscriber based on the subscriber's identification information; transmitting the identifier for the subscriber and the second ID to a second entity; and storing, at the second entity, the second ID in association with the subscriber's identifier, thereby in association with the first ID, the method further including the step of providing, at the second entity, information indicating the stored association between the second ID and the first ID to a third entity associated with the first content provider, thereby enabling the third entity to associate the first instance with the second instance.

[0008] Optionally, a first ID is generated when the subscriber device obtains content from the first content provider at a first instance, and / or a second ID is generated when the subscriber device or another subscriber device obtains content from the first content provider at a second instance.

[0009] Optionally, a first ID is generated by the first content provider and provided to the subscriber device when the subscriber device obtains content from the first content provider in a first instance, and / or a second ID is generated by the first content provider and provided to the subscriber device or other subscriber device when the subscriber device or other subscriber device obtains content from the first content provider in a second instance.

[0010] Optionally, the first ID is stored on the subscriber device as a cookie by the first content provider and / or the second ID is stored on the subscriber device or another subscriber device as a cookie by the first content provider.

[0011] Optionally, content obtained by the subscriber device from the first content provider in a first instance includes code or a link to code that causes the subscriber device to send a first message to a first entity in the service provider network, and / or content obtained by the subscriber device or other subscriber device from the first content provider in a second instance includes code or a link to code that causes the subscriber device or other subscriber device to send a second message to a first entity in the service provider network.

[0012] Optionally, a second message is received from the other subscriber device, and a second ID is associated with the provision of content from the first content provider to the other subscriber device at a second instance.

[0013] Optionally, a second message is received from the subscriber device, a second ID associated with a provision of content from the first content provider to the subscriber device at a second instance, the second instance being at a different time than the first instance.

[0014] Optionally, the second entity is external to the service provider network, and for the first instance, identifying the subscriber based on the first message at the first entity includes determining a first subscriber identifier of the subscriber that identifies the subscriber within the service provider network, and determining an identifier of the subscriber based on the subscriber's identity includes deriving a second subscriber identifier of the subscriber that identifies the subscriber at the second entity based on the first subscriber identifier, and the method further includes modifying, at the first entity, the first message to include the second subscriber identifier, and transmitting the modified first message to the second entity to receive the second subscriber identifier. and for a second instance, identifying the subscriber based on the second message at the first entity includes determining a first subscriber identifier for the subscriber, determining the subscriber's identifier based on the subscriber's identification includes deriving a second subscriber identifier for the subscriber based on the first subscriber identifier, the method including modifying, at the first entity, the second message to include the second subscriber identifier, and sending the modified second message to the second entity for use in storing the second ID in association with the subscriber's identifier.

[0015] Optionally, the method further comprises storing, for the first instance, at the second entity, the first ID in association with the second subscriber identifier, and for the second instance, storing, for the second entity, the second ID in association with the second subscriber identifier.

[0016] Optionally, for the first instance, the second subscriber identifier of the subscriber is already stored in association with the first subscriber identifier at the first entity, and the step of deriving the second subscriber identifier comprises a step of looking up the second subscriber identifier using the first subscriber identifier, and / or the second subscriber identifier of the subscriber is not already stored in association with the first subscriber identifier at the first entity, and the step of deriving the second subscriber identifier comprises a step of generating a second subscriber identifier for the first subscriber identifier.

[0017] Optionally, the first message and the second message each include a third ID identifying a first content provider to which the content is provided, and the method includes storing, for the first instance and the second instance, at the second entity, the third ID in association with the first ID and the second ID, respectively.

[0018] Optionally, the step of providing information to a third entity indicating the association between the second ID and the first ID is in response to determining that the first ID and the second ID are stored in association with the third ID.

[0019] Optionally, the first message and the second message include consent information associated with the first ID and the second ID, respectively, the consent information for the first ID and the second ID indicating whether the subscriber consents to use of the identification information by the service provider network for the first ID and the second ID, respectively, and the method includes, for the first instance and the second instance, storing, at the second entity, the consent information for the first ID in association with the first ID and storing the consent information for the second ID in association with the second ID, respectively.

[0020] Optionally, the step of providing information to a third entity indicating the association between the second ID and the first ID is responsive to a determination that there is valid consent for use of the subscriber's identification information by the service provider network for the first ID and the second ID based on the stored consent information for the first ID and the second ID.

[0021] Optionally, the consent information for the first ID includes a consent expiration date for the first ID and the consent information for the second ID includes a consent expiration date for the second ID, and the step of determining that there is valid consent for the first ID and the second ID is based on a comparison of stored consent expiration dates for the first ID and the second ID with a current time.

[0022] Optionally, the method comprises updating a stored consent expiration date for the first identity based on consent information associated with the second identity included in the second message.

[0023] Optionally, the method includes, for the third instance, receiving at the second entity a third message including the first ID and updated consent information associated with the first ID or including the second ID and updated consent information associated with the second ID, and updating at the second entity stored consent information for the first ID or the second ID based on the updated consent information associated with the first ID and / or the second ID, respectively.

[0024] Optionally, a third message is received by the second entity from the subscriber device via an access network other than the service provider network and without via the service provider network.

[0025] Optionally, the method includes receiving, at the second entity, from a third entity the first ID and / or the second ID in association with browsing attributes indicative of attributes of the subscriber's engagement with the content provider in the first instance and / or the second instance, respectively; determining, at the second entity, a subscriber identifier associated with the browsing attributes based on the received first ID and / or the second ID and a stored association between the first ID, the second ID, and the subscriber identifier; storing, at the second entity, the browsing attributes in association with the subscriber identifier; and providing, at the second entity, segment information indicative of at least the browsing attributes to an advertising entity.

[0026] Optionally, the method includes a step of receiving, at the second entity, a token from the advertising entity, the token being provided by the subscriber's subscriber device to the advertising entity when the subscriber's subscriber device requests an advertisement, and a step of matching, at the second entity, the token from the advertising entity with a token associated with the subscriber's identifier and stored at the second entity, wherein a step of providing segment information indicative of at least browsing attributes to the advertising entity is responsive to the step of matching the tokens.

[0027] According to a second aspect of the present invention, there is provided a system for associating different instances of engagement of a subscriber of a service provider network with a first content provider, the system comprising: a first entity in the service provider network; and a second entity, the first entity receiving a first message from a subscriber device of the subscriber for the first instance, the first message including a first ID associated with the provision of content from the first content provider to the subscriber device in the first instance, identifying the subscriber based on the received first message, determining an identifier for the subscriber based on the subscriber's identification information, transmitting the subscriber's identifier and the first ID to the second entity; receiving a second message from the subscriber device or another subscriber device of the subscriber for the second instance, the second message including a first ID associated with the provision of content from the first content provider to the subscriber device in the first instance, identifying the subscriber based on the received first message, determining an identifier for the subscriber based on the subscriber's identification information, transmitting the subscriber's identifier and the first ID to the second entity, receiving a second message from the subscriber device or another subscriber device of the subscriber for the second instance, the second message including a first ID associated with the provision of content from the first content provider to the subscriber device in the first instance, D, the second ID being associated with a provision of content from the first content provider to the subscriber device or another subscriber device in the second instance; configured to identify the subscriber based on the received second message, determine a subscriber identifier based on the subscriber identification information, and transmit the subscriber identifier and the second ID to a second entity; the second entity is configured to store the first ID in association with the subscriber identifier for the first instance, and to associate the second ID with the subscriber identifier, thereby storing the second ID in association with the first ID, for the second instance; and provide information to a third entity associated with the first content provider indicating the stored association between the second ID and the first ID, thereby enabling the third entity to associate the first instance with the second instance.

[0028] According to a third aspect of the present invention, there is provided a method for associating different instances of engagement of a subscriber of a service provider network with a first content provider, the method comprising the steps of storing, at a second entity, a first ID in association with a subscriber identifier for the first instance, the first ID being included in a first message received by the first entity in the service provider network from a subscriber device, the subscriber being identified by the first entity based on the first message, the subscriber identifier being determined by the first entity based on the subscriber identification, the first ID and the subscriber identifier being transmitted by the first entity to a second entity, the first ID being associated with the provision of content from the first content provider to the subscriber device in the first instance, and storing, at a second entity, a first ID in association with the subscriber identifier for the second instance, thereby storing the first ID in association with the subscriber identifier. and storing a second ID in association with the first ID, wherein the second ID is included in a second message received by the first entity from the subscriber device or another subscriber device, the subscriber has been identified by the first entity based on the second message, a subscriber identifier has been determined by the first entity based on the subscriber identification, the second ID and the subscriber identifier have been sent by the first entity to the second entity, and the second ID is associated with providing content from the first content provider to the subscriber device or another subscriber device in the second instance, the method further including a step of providing, at the second entity, information indicating the stored association between the second ID and the first ID to a third entity associated with the first content provider, thereby enabling the third entity to associate the first instance with the second instance.

[0029] According to a fourth aspect of the present invention, there is provided a method for associating different instances of engagement of a subscriber of a service provider network with a first content provider, the method comprising the steps of: recording, at a third entity associated with the first content provider, for the first instance, a first ID associated with the provision of content from the first content provider to a subscriber device at the first instance; recording, for a second instance, a second ID associated with the provision of content from the first content provider to the subscriber device or another subscriber device at the second instance; and receiving from the second entity information indicating an association between the first ID and the second ID, the first ID and the second ID being indicative of a link between the first ID and the second ID of the subscriber. the subscriber is identified by a first entity in the service provider network based on a first message including the first ID received from the subscriber device and based on a second message including the second ID received from the subscriber device or another subscriber device, the subscriber's identifier is determined by the first entity based on the subscriber's identification, the first ID and the subscriber's identifier are sent from the first entity to the second entity, and the second ID and the subscriber's identifier are sent from the first entity to the second entity; and associating the first instance with the second instance based on the received information indicating the association between the first ID and the second ID.

[0030] According to a fifth aspect of the present invention there is provided an apparatus configured to carry out a method according to the third or fourth aspect.

[0031] According to a sixth aspect of the present invention there is provided a computer readable medium having stored thereon instructions which, when executed by a computer system, cause the computer system to perform a method according to any one of the first, third or fourth aspects.

[0032] Further characteristics and advantages of the invention will become apparent from the following description of preferred embodiments of the invention, given by way of example only, made with reference to the accompanying drawings, in which: [Brief description of the drawings]

[0033] [Figure 1] FIG. 1 illustrates a schematic diagram of a network according to an example. [Diagram 2] FIG. 2 is a signaling diagram that illustrates generally communication between components of a network according to an example. [Diagram 3] FIG. 4 is a signaling diagram that illustrates generally communication between components of a network according to another example. [Figure 4] 1 is a flow chart that generally illustrates a method according to an example. [Diagram 5] FIG. 2 is a schematic diagram illustrating an identifier graph according to an example. [Figure 6] 1 is a flow chart that generally illustrates a method according to an example. [Figure 7] 1 is a flow chart that generally illustrates a method according to an example. [Figure 8] FIG. 1 illustrates a schematic diagram of a network according to an example. [Figure 9] FIG. 2 is a signaling diagram that illustrates generally communication between components of a network according to an example. [Figure 10] 1 is a schematic diagram of an apparatus according to an example; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0034] Referring to FIG. 1, an exemplary telecommunications network 200 in which examples of the present invention may be used is shown.

[0035] The telecommunications network 200 comprises a first subscriber device 222a, a second subscriber device 222b, a service provider network 224, a cloud 230, a computer network such as the Internet 229, and a content provider 238. The service provider network 224 comprises a first entity 226 and a data store 228. The cloud 230 comprises a second entity 234 and a data store 236. The content provider 238 comprises a third entity 240.

[0036] The service provider network 224 is operated by a telecommunications service provider. A subscriber subscribes to a telecommunications service provided by the telecommunications service provider to gain access to the Internet 229. The telecommunications service may provide access to the Internet 229 for a given subscriber device 222a, 222b, a group of subscriber devices 222a, 222b, or a residential or commercial network associated with a given subscriber. The service provider network 224 may, for example, perform subscriber authentication and may comprise a routing fabric for routing traffic between the authenticated subscriber devices 222a, 222b and the Internet 229. A service provider may include, for example, a carrier, a mobile network operator (MNO), a wireless network operator, or an Internet service provider (ISP). The subscriber devices 222a, 222b may be, for example, a personal computer, a laptop computer, a mobile phone (including a "smartphone"), a tablet computer, a personal digital assistant, or a smart TV.

[0037] In some examples, the service provider network 224 may include a carrier network operated by a carrier. The carrier network may provide wired and / or wireless network access. For example, the carrier network may include a mobile network and / or an Internet Service Provider (ISP).

[0038] In some examples, the service provider network 224 may include a mobile network (which may be in the form of a cellular network) operated by a mobile network operator (MNO). For example, the service provider network 224 may include one or more of a Global System for Mobile Communications (GSM) network and a Universal Mobile Telecommunications System (UMTS) network, for example implementing one of the Long Term Evolution (LTE) standards. The service provider network 224 may include, for example, a radio access network and a core network coupled by one or more service edge components. The radio access network may comprise one or more base stations (such as a Node Base Station - NB - or an Enhanced Node Base Station - eNB). Subscriber devices 222a, 222b, such as user equipment (e.g., in the form of mobile phones, so-called smartphones, laptops and tablets, among others), may attach to the core network via the radio access network. The core network may include a serving gateway, a packet data network gateway, and a gateway General Packet Radio Service (GPRS) support node. The subscriber devices 222a, 222b may connect to other public packet switched networks, such as the Internet 229, via the service provider's core network. An entity such as a first entity 226 in the service provider network 224 may be responsible for authentication, access management, billing, etc. of the subscribers / subscriber devices 222a, 222b. This may be performed in association with a home subscriber server or user profile server function (or authentication center for GSM) in the service provider network 224.

[0039] In some examples, the service provider network 224 includes an Internet service provider network operated by an ISP, which may provide wired network access, for example, via dial-up, (asymmetric) digital subscriber lines, cable modems, integrated services digital networks, and / or fiber optic lines.

[0040] In some examples, the service provider network 224 may alternatively or additionally provide telecommunications services in the form of wireless network (e.g., "wi-fi") access to at least one subscriber device 222a, 222b, which may be instead of or in addition to mobile access (e.g., MNO) and / or ISP functions. The wider network 229 is responsible for routing traffic (e.g., packetized data traffic encoded according to the HyperText Transfer Protocol (HTTP) or a secure extension of HTTP such as HTTPS) to and from one or more entities accessible via the Internet 229, such as content providers 238 and cloud 230.

[0041] In either case, the service provider network 224 can act as a gateway between the subscriber devices 222a, 222b and a wider network 229, such as the public Internet 229. The wider network 229 may be used, at least in part, to route data between the service provider network 224 and a content provider 238 and / or one or more other server devices 234.

[0042] The telecommunications network 200 may also include several further network portions (not shown) and several border / gateway / caching entities (not shown) that are used to cache and service commonly accessed data, to translate between the various network protocols used in each network portion as necessary, to reduce the load between the network portions, and / or to manage access to each network portion.

[0043] Access by the subscriber devices 222a, 222b to data and / or computer-implemented services over the telecommunications network 200 may be enabled using browser software or other applications (hereinafter "browsers") on the subscriber devices 222a, 222b. Other applications on the subscriber devices 222a, 222b may include games or software utilities that also access content over the telecommunications network 200. For example, a user may control the browser to send a request for content to a content provider (e.g., by entering the content provider's URL into the browser), and the content provider 238 may send a response including the content (e.g., a web page) back to the user device for user viewing and interaction. A browser session of one of the subscriber devices 222a, 222b may include a series of one or more requests and responses made to and received from one or more remote entities, such as the content provider 238, over the telecommunications network 200. A browser may be used to browse web pages, retrieve files, and perform services such as instant messaging over the telecommunications network 200. Browser session requests and responses may include one or more data packets, with such packetized data being formatted and transmitted in accordance with one or more network protocols used in a given portion of the network.

[0044] The content provider 238 comprises a third entity 240. The third entity 240 may be a web server 240. The third entity 240 may be configured to provide content to the subscriber devices 222a, 222b. The third entity 240 may be configured to determine an analysis of engagement with the content provider 238. For example, the third entity 240 may comprise a data management platform (DMP) for the content provider 238, whereby the content provider 238 determines and stores an analysis of engagement with the content provider 238. Although only one-third of the entities 240 are shown, it will be understood that the content provider 238 may comprise multiple more web servers. The content provider 238 is external to the service provider network 224.

[0045] The content provider 238 and the subscriber devices 222a, 222b can exchange network requests and responses such that content is provided to the subscriber devices 222a, 222b. In this example, the network requests and responses between the subscriber devices 222a, 222b and the content provider 238 are communicated over the service provider network 224 and a wider network 229, which may be, for example, the Internet. In some examples, the network requests may not be browser-based and may relate, for example, to voice and / or data requests processed by the service provider network, location requests to a positioning system, and / or network requests sent by one or more applications or operating systems on the subscriber devices 222a, 222b, among others.

[0046] In some examples, each network request may include an HTTP request sent between two entities in the network 200. As such, a browser session may include an HTTP session. An HTTP request may include a GET or POST method call. In other implementations, a network request may include a packet of data sent by another application layer protocol or another protocol in a network communications stack.

[0047] In an example, the subscriber devices 222a, 222b and the content provider 238 may communicate over a secure communication channel such that the service provider network 224 can route messages between the subscriber devices 222a, 222b and the content provider 238, but cannot read the content of the messages. For example, the subscriber devices 222a, 222b and the content provider 238 may communicate by exchanging messages using a suitable secure layer 7 communication protocol, such as HTTPS. Routing through the service provider network 224 as described herein may be implemented using policy-based routing based on the IP address of the network request.

[0048] The cloud 230 comprises a second entity 234 and a storage device 236. The second entity 234 may be implemented by one or more servers, e.g., a cloud-based web server. The cloud 230, and specifically the second entity 234, communicates with the content provider 240 and the service provider network 224. The second entity 234 may have an established, e.g., trusted, relationship with the service provider network 224. For example, as described in more detail below, the service provider network 224 may be configured to provide the second entity 234 with information about subscribers of the service provider network 224. The second entity 234 may have an established, e.g., trusted, relationship with the content provider 238. For example, as described in more detail below, the second entity 234 and the content provider 238 may exchange information to enable the content provider 238 to associate different instances of engagement between the subscriber and the content provider 238.

[0049] As mentioned above, a subscriber subscribes to a service provider network 224 (e.g., a mobile network operator, MNO, or Internet service provider, ISP) to be provided with access to the Internet 229. To provide this service, the service provider network 224 may store data regarding the subscribers to the service provider network 224, for example in the storage device 228. Each subscriber of the service provider network 224 may be assigned an identifier (also referred to herein as a first subscriber identifier) ​​that uniquely identifies the subscriber among other subscribers of the service provider network 224. The subscriber identifier may be stored by the service provider network 224, for example in the storage device 228, in association with other data to enable the service provider network 224 to provide its services. As an example, the subscriber identifier may be stored in association with an IP address or a range of IP addresses at which the ISP provides its service to the subscriber. For example, the IP address or range of addresses may be one that is assigned by the ISP to the subscriber premises. Thus, for requests and / or responses from / to a subscriber device 222a, 222b that includes this IP address or an IP address from a range of IP addresses, the ISP can determine that the request / response is associated with the subscriber and can therefore, for example, perform billing or other functions accordingly. As another example, the subscriber identifier may be stored in association with the International Mobile Equipment Identity (IMEI) of the subscriber device 222a, 222b for which the MNO provides its services to the subscriber. Thus, for requests and / or responses from / to a subscriber device 222a, 222b that includes this IMEI, the MNO can determine that the request / response is associated with the subscriber and can therefore, for example, perform billing or other functions accordingly.

[0050] When there are multiple instances of engagement between a user and the content provider 238 (e.g., multiple request and response cycles, or multiple browser sessions), it may be desirable for the content provider 238 to know that each instance of engagement is with the same user. Broadly speaking, by utilizing identification of the subscriber by the service provider network 224, as described in more detail below, examples of the present invention allow the content provider 238 to associate different instances of engagement between the subscriber and the content provider 238. Thus, the content provider 238 can know that each instance of such engagement is with the same subscriber. This may, for example, allow a website provided by the content provider 238 to function more efficiently. For example, this may allow the content provider 238 to provide continuity across instances of engagement (e.g., maintaining a login or shopping cart across instances of engagement) and / or provide accurate analytics, such as how many unique users have engaged with the content provider 238 or how each user interacts with the content provider 238. Other advantages are described below.

[0051] 2 and 3, signaling diagrams are shown illustrating signaling between components of the network 200 according to an example. In either case, the signaling allows the content provider 238 to associate different instances of engagement of a subscriber of the service provider network 224 with the content provider 238. In both FIG. 2 and FIG. 3, the signaling that occurs for a first instance of engagement of a subscriber of the service provider network 224 with the content provider 238 is indicated with the label "A" and the signaling that occurs for a second, different instance of engagement of a subscriber of the service provider network 224 with the content provider 238 is indicated with the label "B." FIG. 2 illustrates an example where the first instance A has a first subscriber device 222a and the second instance B has a second, different subscriber device 222b. FIG. 3 illustrates an example in which a first instance A is on a first subscriber device 222a at a first time, and a second instance B is also on the first subscriber device 222a, but at a later time.

[0052] 2, the first subscriber device 222a and the content provider 238 exchange one or more requests and responses 330 such that the content provider 238 provides content to the first subscriber device 222a. For example, the first subscriber device 222a may request content from the content provider 238, and the content provider may respond with content to the first subscriber device 222a. As described above, these requests / responses 330 may be routed by the service provider network 224. However, these requests / responses may be encrypted between the first subscriber device 222a and the content provider 238, for example according to the HTTPS protocol, and thus the service provider network 224 may not be able to read the encrypted content of the requests / responses 330.

[0053] The provision 330 of content by the content provider to the first subscriber device 222a is associated with a first identifier (ID). For example, the first ID may be a universally unique ID, e.g., a 128-bit string that may be randomly generated and thus unique for practical purposes. For example, the first ID may have the format "^[0-9a-f]{8}\b-[0-9a-f]{4}\b-[0-9a-f]{4}\b-[0-9a-f]{4}\b-[0-9a-f]{12}$", where "0-9a-f" indicates that the characters may be numbers 1 to 9 or letters a to f, and the numbers in the curly brackets indicate the number of characters in a particular section. An example of a UUID that may be randomly generated as the first ID is "2278de4c-d790-4beb-9b12-4721090f18f6".

[0054] The first ID may be generated when the first subscriber device 222a obtains the content from the content provider 238. For example, the first ID may be generated by the content provider 238 and provided to the first subscriber device 222a when the content is provided to the subscriber device 222a. The first ID may be included in a response including the content. For example, the first ID may be set or stored as a cookie on the first subscriber device 222a (e.g., on the browser of the first subscriber device 222a) by the content provider 238 when the content is provided. As another example, the content provided by the content provider 238 to the first subscriber device 222a may include code (or a link to code that may then be fetched by the subscriber device 222a) that causes the first subscriber device 222a to generate and send the first ID to the content provider 238. In either case, the first ID is available to both the content provider 238 and the first subscriber device 222a. The content provider 238 may store the first ID in association with information about this first instance of engagement with the content provider 238, e.g., browsing attributes, such as the characteristics of the content provided and / or the subscriber's interaction with the content, and / or persistence information, such as language preferences or the contents of a shopping cart established by the subscriber.

[0055] The first subscriber device 222a sends a first message 332 including the first ID to the first entity 224 of the service provider network 224. For example, the content provided to the first subscriber device 222a by the content provider 238 (i.e., the content that the first subscriber device 222a obtains from the first content provider 238) may include code (or a link to code that may subsequently be fetched by the subscriber device 222a) that causes the first subscriber device 222a to send the first message to the first entity 224. In some examples, the first message may be an HTTPS GET request that includes the first ID as a query parameter. In some examples, the first message 332 may be a "sync" request, i.e., a synchronization request that requests synchronization of processing of the request by the service provider network 224. The first message 332 may be encrypted between the first subscriber device 222a and the service provider network 238, and the service provider network may decrypt the first message 332 to obtain the first ID. In either case, the service provider network 238 obtains the first ID from the first message 332 .

[0056] The first entity 226 of the service provider network 224 identifies the subscriber based on the received first message 332. For example, identifying the subscriber based on the received message 332 may include determining a first subscriber identifier for the subscriber that identifies the subscriber in the service provider network 224. The first entity 226 may identify the subscriber by accessing 334 a storage device 228 at the service provider network 238. For example, the storage device 228 may store an association between the first subscriber identifier and, for example, an IP address or range of IP addresses at which the service provider network 238 serves the subscriber, and / or, for example, an International Mobile Equipment Identity (IMEI) or International Mobile Subscriber Identity (IMSI) of each of the subscriber devices 222a, 222b at which the service provider network 238 serves the subscriber. The first message 332 may include, for example, a source IP address from which the first message 332 is sent, and / or, for example, an IMEI or IMSI of the subscriber device 222a to which the first message is sent (e.g., in a header of the HTTPS request 332). The first entity 226 may use this information to look up the first subscriber identifier in the storage device 228, thereby identifying the subscriber. Other known methods for the service provider network 224 to identify a subscriber (e.g., determine the first subscriber identifier) ​​from a message sent from the subscriber device 222a, 222b may also be used.

[0057] The first entity 226 of the service provider network 224 determines an identifier for the subscriber based on the subscriber's identification information. In this example, the identifier for the subscriber may be a second subscriber identifier for the subscriber that identifies the subscriber at a second entity 234 in the cloud 230. For example, the first subscriber identifier that identifies the subscriber in the service provider network 224 may not be permitted to be transmitted outside the service provider network 224. Thus, a second subscriber identifier for the subscriber (different from the first subscriber identifier) ​​may be determined that is permitted to be transmitted outside the service provider network 224. For example, the first entity 226 may determine an identifier for the subscriber by deriving a second subscriber identifier based on the first subscriber identifier. The second subscriber identifier may uniquely identify the subscriber at the second entity 236. For example, the second subscriber identifier may be a UUID. The second subscriber identifier may be derived based on the first subscriber identifier. For example, if a second subscriber identifier for the subscriber is already stored in association with the first subscriber identifier at the first entity 226 (e.g., in the associated storage 228), deriving the second subscriber identifier may include using the first subscriber identifier to look up the second subscriber identifier. If a second subscriber identifier for the subscriber is not already stored in association with the first subscriber identifier at the first entity 226 (e.g., in the associated storage 228), deriving the second subscriber identifier may include generating a second subscriber identifier for the first subscriber identifier. In this case, the generated second subscriber identifier may be stored in association with the first subscriber identifier at the first entity 226 (e.g., in the associated storage 228).

[0058] The determined subscriber identifier and the first ID are transmitted 336 from the first entity 226 to the second entity 234. Specifically, in this example, the second subscriber identifier and the first ID are transmitted 336 from the first entity 226 in the service provider network 224 to the second entity 234 in the cloud 230. For example, the first entity 224 may be configured to modify the first message 332 (which already includes the first ID) to also include the second subscriber identifier and transmit the modified first message 336 to the second entity 234. For example, the first message 332 may be an HTTP request, and the first entity 224 may modify the HTTP request by inserting the second subscriber identifier into a header of the HTTP request.

[0059] The second entity 234 stores 338 the first ID in association with the determined subscriber identifier, e.g., in storage 236 on the cloud. For example, the second entity 234 may receive the modified first message 336, extract the second subscriber identifier and the first ID from the modified first message 336, and store 338 the first ID in association with the second subscriber identifier, e.g., in storage 236.

[0060] In either case, the second entity 234 stores 338 the first ID in association with the determined subscriber's identifier, for example in storage 236 in the cloud 230. This completes the signaling of the first instance A of user engagement with the content provider 238. At this stage, the content provider 238 has knowledge of the association of the first ID with the first instance A of subscriber engagement with the content provider 238, and the second entity has knowledge of the association of the first ID with the subscriber identified by the service provider network 224.

[0061] For a second instance B of subscriber engagement with a content provider 238, in this example the subscriber uses a different subscriber device 222b, but otherwise the signaling 340-348 is similar to the signaling 330-338 of the first instance A.

[0062] Specifically, in the second instance B, the second subscriber device 222b and the content provider 238 communicate 340 with each other, whereby the second subscriber device 222b is provided with content from the content provider 238. A second ID is associated with the provision of content from the content provider 238 to the second subscriber device 222b in the second instance B. The second ID may be different from the first ID, but may have the same format as the first ID, such as a randomly generated UUID as described above. The second ID may be generated in the same manner as the first ID, as described above. For example, the second ID may be generated when the second subscriber device 222b obtains content from the content provider 238 in the second instance. For example, the second ID may be generated by the content provider 238 when the subscriber device 222b obtains content from the content provider 238, and provided to the second subscriber device 222b. The second ID may be stored as a cookie on the second subscriber device 222b by the content provider 238. In either case, the content provider 238 may store an association of the second ID with the second instance of the engagement with the content provider (e.g., store the second ID in association with a set of browsing attributes of the subscriber's engagement with the content provider in the second instance B).

[0063] The second subscriber device 222b sends a second message 342 including the second ID to the first entity 226 in the service provider network 238. Similar to that described for the first instance A, the content obtained by the second subscriber device 222b in instance B may include code (or a link to code) that causes the second subscriber device 222b to send the second message 342 to the first entity 226. For example, the second message 342 may be an HTTPS GET request, such as a sync request, similar to that described above for the first message 332.

[0064] The first entity 226 identifies the subscriber based on the second message 342. For example, similar to what was described for the first instance A, in the second instance, identifying the subscriber based on the second message may include determining a first subscriber identifier for the subscriber by accessing 344 the storage device 228 and searching for the first subscriber identifier in the storage device 228 (e.g., based on the source IP address or IMEI or IMSI or other information included in the second message).

[0065] The first entity 226 determines the subscriber's identifier based on the subscriber's identity information. For example, the first entity 226 may use the first subscriber identifier to look up the second subscriber identifier in the storage device 228 (which, in the example, has already stored the second subscriber identifier in association with the first subscriber identifier as a result of processing the first message 332).

[0066] The first entity 226 sends 346 the second ID and an identifier of the subscriber (e.g., the second subscriber identifier) ​​to a second entity 234 in the cloud 230. For example, the first entity 226 may be configured to modify the second message 342 to include the second subscriber identifier and send the modified second message 346 to the second entity 234.

[0067] The second entity 234 stores 348 (eg, in storage 236) the second ID in association with the subscriber's identifier, thereby storing the second ID in association with the first ID.

[0068] In either case, the second entity 236 stores 348 the second ID in association with the determined subscriber's identifier, e.g., in storage 236 in the cloud 230, and thus associates it with the first ID. This completes the signaling of the second instance B of user engagement with the content provider 238. At this stage, the content provider 238 knows the association of the first ID with the first instance A of subscriber engagement and the association of the second ID with the second instance B of subscriber engagement, but does not know that the first instance A and the second instance B are by the same subscriber. However, the second entity 234 has knowledge of the association of the first ID and the second ID with the subscriber's identifier (e.g., the subscriber's second identifier), and thus the first ID and the second ID are associated with the same subscriber of the service provider network 224.

[0069] The second entity 234 provides 354 information indicating the association between the stored second ID and the first ID to a third entity 240 associated with the content provider 238. This enables the third entity 240 to associate the first instance A with the second instance B.

[0070] In some examples, the second entity 234 may provide this association information autonomously, for example, in response to the second ID being stored in association with the first ID. In some examples, the second entity 234 may provide the association information at intervals, for example at regular intervals. In some examples, the third entity 240 may request 350 the second entity 234 to provide the association information. For example, the third entity 240 may request all of the stored association information. As another example, the third entity 240 may provide the second entity 234 with the second ID and request information regarding whether the second ID is associated with other stored IDs, for example, the first ID from the first instance A. The second entity 234 may search 352 the stored associations in the storage device 236 and generate and provide information indicative of the stored associations between the second ID and the first ID to the third entity 240.

[0071] In either case, the second entity 234 provides 354 information indicating the stored association between the second ID and the first ID to a third entity 240 associated with the content provider 238. The content provider 238 now has knowledge of the association of the first ID with the first instance of subscriber engagement A, the association of the second ID with the second instance of subscriber engagement B, and the association of the first ID with the second ID. Thus, the content provider 238 can associate the first instance of user engagement A with the second instance of user engagement B. For example, the content provider 238 may determine that the first instance A and the second instance B are from the same user. However, no information identifying the subscriber has been provided to the content provider 238, and the content provider 238 does not know the identity of the subscriber 238. Thus, the content provider can determine that the two instances A and B are from the same subscriber, and not the identity of that subscriber.

[0072] The content provider 238 may enable the website provided by the content provider 238 to function more efficiently by associating the first A and second B instances of a subscriber's engagement. For example, this may enable the content provider 238 to provide continuity across instances of engagement (e.g., maintaining a login or shopping cart across instances of engagement) and / or provide accurate analytics such as how many unique users have engaged with the content provider 238 or how each user interacts with the content provider 238. Note that this is provided even if different instances of a subscriber's engagement with the content provider 238 use different subscriber devices 222a, 222b.

[0073] Referring to FIG. 3, signaling of components of a telecommunications network 220 is shown when a first instance A and a second instance B have the same subscriber device 222a.

[0074] In the example of FIG. 3, the signaling 330 to 338 in the first instance A is the same as that described above for FIG. 2 and will not be described again.

[0075] In the example of FIG. 3, the signaling 440-454 in the second instance B is similar to the signaling 340-354 in the second instance B described above for FIG. 2, except that in FIG. 3, the engagement in the second instance B is with the first subscriber device 222a.

[0076] Specifically, referring to FIG. 3, in the second instance B, the first subscriber device 222a and the content provider 238 communicate 440 such that content is provided by the content provider 238 to the first subscriber device 222a. The provision of the content 440 in the second instance B is associated with a second ID that is different from the first ID. For example, the content provider 238 may generate the second ID when the subscriber device 222a requests the content for the second instance, and the content provider 238 may set a cookie on the first subscriber device 222a that includes the second ID. This may occur, for example, if the cookie including the first ID set by the content provider 238 on the first subscriber device 222a in the first instance A has expired, or has been deleted by the browser of the first subscriber device 222a, or is unavailable to the first subscriber device 222a in the second instance. For example, the browser may delete the cookie containing the first ID after the session ends or after a specific time, or the cookie itself may expire, e.g., be required to expire, after a specific time. In this case, in a second instance, when the subscriber device 222a requests content, since it is not provided with a cookie containing the first ID, the content provider 238 generates a second ID and sets a cookie on the first subscriber device 222a containing the second ID.

[0077] Similar to the signaling 330-338 described above in the first instance A, in the second instance B, the first subscriber device 222a sends the second ID in a second message 442 to the first entity 226. The first entity 226 identifies 444 the subscriber based on the second message 442, determines an identifier for the subscriber (e.g., a second identifier) ​​based on the subscriber's identification, and sends the subscriber's identifier and the second ID to the second entity 234. For example, the first entity 226 may send a modified version 446 of the second message 442 that includes the second ID and the second subscriber identifier. The second entity 234 stores 448 the second ID in association with the subscriber's identifier, thereby storing it in association with the first ID.

[0078] The second entity 234 provides 454 to a third entity 240 associated with the content provider 238 information indicating the stored association between the second ID and the first ID, thereby enabling the third entity 240 to associate the first instance A with the second instance B. For example, the information may be provided in response to a request 450 from the third entity 240 for the association information, and the second entity 234 retrieves 452 the association information from the storage device 236.

[0079] Thus, the content provider 238 can associate a first instance of user engagement A with a second instance of user engagement B. This can provide the advantages discussed above. Note that this is provided even though different instances of engagement between the subscriber and the content provider 238 are at different times.

[0080] In the above examples described with reference to Figures 1-3, the second entity 234 is in the cloud 230 and outside the service provider network 224. However, this need not necessarily be the case and in other examples (not shown), the second entity 234 may be part of the service provider network 224. For example, the first entity 226 and the second entity 234 may both be part of the service provider network 224, e.g., implemented as part of the same device or group of devices in the service provider network 224, e.g., as functional units of a server in the service provider network 224. In these cases, the subscriber's identifier may be the second subscriber identifier or, in some cases, the first subscriber identifier. For example, the first entity 226 may identify the subscriber, determine a first identifier for the subscriber, and pass this to the second entity 234 (along with the first ID or the second ID as described above). The second entity 234 may use the first subscriber identifier as the subscriber's identifier in these cases where the second entity 234 is in the service provider network 224. In either case, in these examples, the second entity 234 may store the first ID and the second ID in association with the determined identifier of the subscriber, for example, within the service provider network 224. The second entity 234 may then provide information regarding the association of the first ID and the second ID to the content provider 238. Nevertheless, it should be noted that, as in the examples described above with reference to Figures 1-3, the second entity 234 is external to the service provider network 224, allowing the method to be extended to multiple service provider networks. For example, rather than just one service provider network 224 as in Figure 1, there may be multiple service provider networks 224 (not shown), and the method described above may be equally applicable to subscribers of each of the multiple service provider networks.

[0081] In accordance with the above, a method is provided for associating different instances A, B of engagement between a subscriber of a service provider network 224 and a content provider 238, as shown in the flow diagram of FIG.

[0082] For the first instance A, the method includes, at a first entity 226 in the service provider network 224, receiving a first message 332 from the subscriber device 222a of the subscriber, the first message 332 including a first ID associated with the provision 330 of content from the content provider 238 to the subscriber device 222a in the first instance A, and identifying the subscriber based on the received first message 332, at step 404. For example, the first entity 226 may identify the subscriber based on the received first message 332 by any of the exemplary methods described above. The method further includes, at the first entity 226, determining an identifier of the subscriber based on the subscriber's identification, at step 406. The method further includes, at the first entity 226, transmitting the subscriber's identifier and the first ID to the second entity 234, at step 408.

[0083] For the first instance A, the method further includes storing 228, at the second entity 234, the first ID in association with the subscriber's identifier in step 410. For example, the subscriber's identifier may be the first subscriber identifier determined as described above (e.g., if the second entity 234 is within the service provider network 224) or the second subscriber identifier (e.g., if the second entity 234 is outside the service provider network 224).

[0084] For the second instance B, the method includes receiving, at the first entity 226, a second message 342, 442 from the subscriber device 222a or another subscriber device 222b of the subscriber in step 412, the second message 342, 442 including a second ID different from the first ID, the second ID being associated with a content provision 330, 440 from the content provider 238 to the subscriber device 222a or another subscriber device 222b in the second instance B, and identifying the subscriber based on the received second message 342, 442 in step 414. For example, the first entity 226 may identify the subscriber based on the received second message 342, 442 by any of the exemplary methods described above. The method further includes determining, at the first entity 226, an identifier of the subscriber based on the subscriber's identification in step 416. The method further includes, at the first entity, transmitting the subscriber's identifier and the second ID to the second entity 234 in step 418 .

[0085] For the second instance B, the method further comprises, in the second entity 234, a step 348, 448 of storing, in step 420, the second ID in association with the subscriber's identifier and thereby in association with the first ID.

[0086] The method further includes, in step 422, at the second entity, providing information to a third entity 240 associated with the content provider 238 indicating the stored association between the second ID and the first ID, thereby enabling the third entity 240 to associate the first instance A with the second instance B.

[0087] In some examples, the method may further include a third entity 240 associating the first instance A with the second instance B based on the information indicating the association between the second ID and the first ID.

[0088] In some examples, the method may further include the third entity 240 modifying the content provided by the content provider 238 to the subscriber device 222a or other subscriber device 222b in the second instance B based on the determined association with the first instance A. For example, the third entity may modify the content to provide continuity with the first instance A, such as maintaining user logins, language preferences, and / or items such as a shopping cart. In some examples, the method may include providing the modified content to the subscriber device 222a or other subscriber device 222b in the second instance B. This may cause the website provided by the content provider 238 to function more efficiently, for example, allowing for efficient user interaction with content provided via different instances.

[0089] In some examples, the method may include a third entity 240 storing information about the first instance A with information about the second instance B based on the determined association between the first instance A and the second instance B, e.g., merging information about the first instance A with information about the second instance B. For example, this may more accurately reflect the number of unique users engaged with the content provider. In some examples, the information about the instances may include, for each instance A, B, characteristics of the content provided and / or browsing attributes, such as the subscriber's interaction with the content, and / or persistence information, such as language preferences or content of a shopping cart established by the subscriber. This may enable the content provider to generate more accurate analytics about the interactions of users with the content provider 238.

[0090] In the examples described above with reference to Figures 1-3, there is only one content provider 238. However, it will be appreciated that the method may be applied to multiple content providers (not shown). To facilitate this, in some examples, the first message 332 and the second message 342, 442 may each further include a third ID identifying the content provider from which the content is provided. The method may include storing, for the first instance A and the second instance B, the third ID in association with the first ID and the second ID, respectively, in the second entity 234.

[0091] In some examples, the third ID is a three-letter code (e.g., "AAA") that uniquely identifies the content provider 238 among other content providers to which the second entity 234 is configured to provide association information. In some examples, the third ID may be in any format and may be letters and / or numbers. The third ID may be included in a cookie set by the content provider 238 in the first and second instances A, B. A code (or a link to the code) included in the content may cause the first and second subscriber devices 222a, 222b to include the third ID in the first and second messages 332, 342, 442, respectively. This third ID may be passed to the second entity 234 in the same exemplary manner as described above for the first and second IDs. The second entity 234 may then store the third ID in association with the first and second IDs, respectively.

[0092] In these examples, the second entity 234 may provide the third entity 240 with information indicating an association between the second ID and the first ID in response to determining that the first ID and the second ID are stored in association with the third ID. For example, the second entity 234 may only send the content provider 238 the association information about the first and second IDs that are stored in association with the third ID that identifies the content provider 238. This may help ensure that the association information is provided only to content providers 238 that have engaged with the instances A, B to which the subscriber is associated.

[0093] In some examples, the method may be performed in an environment where subscriber consent may be required in connection with processing of data about an individual. For example, in some implementations, there may be a requirement that the subscriber consent to use of the identification by the service provider network 224 to provide the ability to associate different instances of engagement between the subscriber and the content provider, as described above.

[0094] To implement such a consent mechanism, in some examples, the first message 332 and the second message 342, 442 may include consent information associated with the first and second identities, respectively. The consent information for the first and second identities may indicate whether the subscriber consents to the use of the identity by the service provider network 224 for the first and second identities, respectively. In these examples, the method may include storing the consent information of the first ID in association with the first ID and storing the consent information of the second ID in association with the second ID at the second entity 234 for both the first and second instances A, B, respectively.

[0095] The consent information may be in the form of, for example, a consent flag or other marker in the first / second message 332, 342, 442. In some examples, the consent information may include one or more bits indicating whether the user provided consent for the first ID / second ID with which it is associated. In some examples, the consent information may include a consent expiration date. For example, the consent information for the first ID may include a consent expiration date for the first ID, and the consent information for the second ID may include a consent expiration date for the second ID. For example, if the subscriber provided consent, the consent expiration date may be set to an appropriate, for example, predetermined, future time (e.g., one day in the future), and if the subscriber did not provide consent, the consent expiration date may be set to 0. For example, if the user provided consent, the consent expiration date may be in the form of a Unix timestamp in seconds since the epoch, and if the user did not provide consent, the consent expiration date may be set to 0 (zero).

[0096] The consent information may be determined, for example, based on the subscriber's response to a dialog box or pop-up window presented to the subscriber when the subscriber device 222a, 222b processes the content received from the content provider 238. For example, the content provided to the subscriber device 222a, 222b may include code (or a link to code) that causes the subscriber device 222a, 222b (e.g., its browser) to present a dialog box or pop-up window to obtain the subscriber's consent. The consent information may be stored in a cookie set by the content provider 238 on the subscriber device 222a, 222b. This code may cause the subscriber device 222a, 222b to include the consent information associated with the first and second IDs in the first and second messages 332, 342, 442, respectively. The consent information may be passed to the second entity 234 in the same exemplary manner as described above for the first and second IDs. The second entity 234 may then store the consent information of the first ID and the second ID in association with the first ID and the second ID, respectively.

[0097] In these examples, providing the information indicating the association between the second ID and the first ID to the third entity 240 may be responsive to a determination that there is a valid consent for use of the subscriber's identification information by the service provider network 224 for the first ID and the second ID based on the stored consent information for the first ID and the second ID. For example, the determination that there is a valid consent may include determining whether the stored consent for the first ID and the second ID has expired. In some examples, the association information may be provided if the stored consent has not expired, but the association information may not be provided if the stored consent has expired. This may help ensure that the results of the subscriber's identification by the service provider network 224 are only used by the second entity 234 if a valid consent exists for its use.

[0098] In some examples, determining whether the consent has expired may include comparing a stored consent expiration date to a current time. For example, the consent information for the first ID may include a consent expiration date for the first ID, and the consent information for the second ID may include a consent expiration date for the second ID, and determining that there is valid consent for the first ID and the second ID may be based on a comparison of the stored consent expiration dates for the first ID and the second ID to the current time. For example, if the consent expiration date is in the future compared to the current time, it may be determined that the consent has not yet expired, and if the consent expiration date is in the past compared to the current time, it may be determined that the consent has expired.

[0099] In some examples, the subscriber may update or revoke consent for subsequent instances of engagement. To accomplish this, in some examples, consent information stored in the second entity 234 associated with the first identity (as included in the first message 332) may be updated based on consent information associated with the second identity (as included in the second message 342, 442). For example, the method may include updating a stored consent expiration date associated with the first identity based on consent information associated with the second identity included in the second message 342, 442.

[0100] The subscriber may consent to the use of both the first ID and the second ID. In these examples, updating the stored consent information for the first ID may be based on whether the consent for the first ID has expired when the consent information for the second ID is received. For example, if the stored consent for the first ID has not yet expired when the second ID (and its associated consent information) is received at the second entity 234, the second entity 234 may update the consent expiration date for the first ID to be the same as that provided for the second ID. This may help enforce the renewal of the subscriber's consent for identification by the service provider network 224 for purposes of associating an instance of engagement with a particular content provider 238.

[0101] In some examples, if the consent stored for the first ID has expired when the second ID (and its associated consent information) is received at the second entity 234, the second entity 234 may simply store the second ID and its associated consent expiration date without changing the consent expiration date for the first ID. This may be useful for enforcing consent expiration requirements.

[0102] As another example, the subscriber may consent to the use of the first ID but not the second ID. For example, the user may provide consent for the first ID, and thus the first message 332 may include the first ID and a consent expiration date set to a future time (e.g., one day). However, the user may not provide consent for the second ID, and thus the second message 342, 442 may include the second ID and a consent expiration date set to zero. Upon receiving the second ID with the consent expiration date set to zero, the second entity 234 may set the consent expiration date stored for the first ID and the consent expiration date stored for the second ID to the current time. Thus, in these examples, the first ID and the second ID are not used to provide association information to the third entity 240. This may help enforce the consent requirement.

[0103] In some examples, the stored consent associated with the first ID and / or the second ID may be updated by the second entity 234 upon receipt of another message. For example, at a third instance (not shown) of the subscriber's engagement with the content provider 238, the subscriber client device 222a, 222b may transmit a third message including the first ID, updated consent information associated with the first ID or the second ID, and updated consent information associated with the second ID. In these examples, the method may include updating the stored consent information for the first ID or the second ID at the second entity 234 based on the updated consent information associated with the first ID and / or the second ID, respectively. For example, the updated consent information may include a consent expiration date set to 0 indicating that the user no longer consents. In this case, the stored consent expiration dates for both the first ID and the second ID may be updated to the current time by the second entity 234. As another example, the third message may include the first ID (or second ID) and an updated consent for the first ID (or second ID), i.e., an consent with a later expiration date than the one already stored for the first ID (or second ID). In this case, the stored consent expiration date for the first ID (or second ID) may be updated and extended accordingly.

[0104] In some examples, the third message (not shown) may be similar to the first message 332 or the second message 342, 442 in that it is sent by the subscriber device 222a, 222b to a first entity 226 in the service provider network 224, which then modifies the third message and sends the modified third message to a second entity 234 in the cloud 230. However, in other examples, the third message (not shown) may be received by the second entity 234 from the subscriber device 222a, 222b via a network other than the service provider network 224 (e.g., an access network) and not via the service provider network 224. For example, in the third instance, the subscriber may be engaged with the content provider 238 using the subscriber device 222a, 222b that is not connected to the Internet 229 and the content provider 238 via the service provider's network 224 (e.g., a mobile network), but rather via another network (not shown, e.g., public wifi). For example, the content obtained by the subscriber device 222a, 222b in the third instance may include code (or a link to code) that causes the subscriber device 222a, 222b to send a third message including the first ID (or the second ID) and updated consent information for the first ID (or the second ID is set to 0, for example) to the second entity 234 in the cloud 230. In this case, the subscriber device 222a, 222b is connected to another network, not shown, so the third message is sent via the other network, not shown. For example, a domain name system (DNS, not shown) of the other network (not shown) can resolve the domain in the third message (e.g., the domain specified in the GET request that constitutes the third message) to a server in the cloud 230, e.g., the second entity 234, and thus the third message (not shown) can be routed to the second entity 234 in the cloud 230 by the other network (not shown).The second entity 234 may determine that the first ID (or second ID) provided in the third message is stored in the second entity and update the consent information associated with the stored first ID (or second ID) according to the updated consent information. This may help enforce the consent requirements, particularly providing for renewal or revocation of consent to use the first ID or second ID, even when the subscriber device 222a, 222b is not connected to the service provider network 224.

[0105] In another example, if a user does not provide consent for a particular ID (e.g., second ID), the associated message (e.g., second message 342, 442) may not be sent by the subscriber device 222a, 222b. In this case, the association between the first ID and the second ID is not made at the second entity 234 because the second ID is not available to the second entity 234. This may help to implement the case where consent is not provided in a resource efficient manner.

[0106] In some examples, the first message 332 and / or the second message 342, 442 may include one or more fourth IDs, each providing an alternative identifier for the subscriber by which the subscriber may be known to the content provider 238. The fourth ID may be in any form. The second entity 234 may store the fourth ID in association with the determined subscriber's identifier (e.g., the second subscriber identifier as described above). The fourth ID may be associated with a consent expiration date, which may be stored by the second entity 234 in association with the fourth ID. In some examples, the fourth ID may be associated with its own consent expiration date. In examples where the fourth ID is not provided in association with a consent expiration date, the consent expiration date of the first ID (or second ID) for which the fourth ID is provided may be used instead. The association information provided by the second entity to the content provider 238 may include the fourth ID stored in association with the first ID and / or second ID. This may provide the content provider 238 with further information on which it may perform analysis.

[0107] In instances where a fourth ID has already been stored in association with a subscriber's identifier (e.g., a second subscriber identifier), the stored consent expiration date may be updated with the consent expiration date associated with the fourth ID included in the first message 332 or second message 342, 442. In instances where a fourth ID has already been stored but is associated with a different second subscriber identifier than that determined for the first message 332 or second message 342, 442, the fourth ID and consent expiration date are stored in association with the second subscriber identifier determined for the first message 332 or second message 342, 442, and the consent expiration date of the fourth ID stored in association with the different subscriber identifier is updated.

[0108] Following the above example, consent may be set, updated, or revoked by a given subscriber per content provider 238. This may provide for a more flexible implementation of consent requirements compared to, for example, managing consent only per subscriber.

[0109] According to the above, in some examples, the first message 332 and the second message 342, 442, respectively, may include, for example, “https: / / <domain> / partner?party= <partid>&brands= <brandid>&consent= <consent>&altids= <altids>". The "domain" is the address to which the GET request is sent. The "part" is the first ID (or second ID) with which a particular instance of user engagement is associated and may have a UUID format. The "brandid" is a third ID that identifies the content provider 238 and may be a 3-character string. The "agreement" is the consent information associated with the first ID (or second ID) and may take the form of a consent expiration time in seconds since the Unix epoch. The optional "altids" is a fourth ID by which the subscriber may alternatively be known to the content provider 238. These may be provided as a list of IDs, separated by colons, and their associated consent information (if any), separated by colons. An example of such a GET request is "https: / / ntidsync.com / partner?partid=2278de4c-d790-4beb-9b12-4721090f18f6&brandid=123&consent=1612949292&altids=123e4567-e89b-12d3-a456-426655440000:1612949999,C73BCDCC-2669-4Bf6-81d3-E4AE73FB11FD".

[0110] In some examples, the parameters of the first message 332 and the second message 342, 442 may be verified, for example by the second entity 236, before they are further used. For example, it may be verified that one or more of the first ID (or second ID), the consent information, and the third ID are present and in the correct format. It may also be verified, for example, that the third ID is a known value. If the parameters are verified, the second entity 236 may store the parameters as described above. However, if the parameters are not verified, the second entity 236 may not store the parameters. This may be useful for implementing data privacy, as it avoids storage of information included in the first message 332 and the second message 342, 442 that was not expected to be included in those messages.

[0111] In some of the above examples, the first ID and the second ID are stored on the subscriber device 222a, 222b as cookies, but may be associated with a consent expiration date. This may provide that the first ID and / or the second ID are semi-persistent. This may be useful to allow the content provider 238 to analyze the subscriber's engagement based on the same ID (e.g., the first ID) if the transaction between the subscriber and the content provider 238 is on the same subscriber device 222a, 222b and is within the consent expiration date of the first ID (or the second ID). This may be more efficient, for example, compared to generating a new ID for each subscriber device / content provider transaction. However, having the first ID and the second ID be semi-persistent (i.e., expiring after a certain time) may help prevent a third party (e.g., a malicious third party via a "man-in-the-middle attack") from building a profile of the subscriber based on the first ID or the second ID.

[0112] In some examples, data stored in association with one another at the second entity 234 (i.e., in the storage 236 associated with the second entity 234) is stored in the form of a graph. Referring to Figure 5, a graph is shown in which data may be stored at the second entity 234 (i.e., in the storage 236 in the cloud 230) according to one example. In the example of Figure 5, the nodes of the graph (represented by circles) represent stored information and the edges (represented by arrows) represent logical links or associations between the stored information. The graph may be implemented, for example, by a graph database.

[0113] In the example of FIG. 5, a total of four subscribers are shown. These subscribers are represented by four different second subscriber identifiers "1ntid", "2ntid", "3ntid" and "4ntid" (i.e., identifiers by which the subscribers are identified in the second entity 234). The four subscribers are subscribers of two service provider networks represented by "1teloc" and "2telco". (The service provider network may be determined by the second entity 234, for example, from a message 336, 346, 446 sent by the first entity 226 in the service provider network 224 to the second entity 234, for example, from a field in the message indicating the sender of the message). In the example of FIG. 5, there are five content providers represented by third IDs "1brand", "2brand", "3brand", "4brand", "5brand". Content providers "1brand" and "3brand" are "children" of "2brand" in the sense that content provider "brand2" provides or controls both content providers "1brand" and "3brand". Associated with subscribers and content providers are eight first identities (or second identities), represented by "1partid", "2partid", "3partid", "4partid", "5partid", "6partid", "7partid" and "8partid". For example, these are first identities or second identities provided by the content provider when the subscriber engages with the content provider at a particular instance. If the agreement has expired for a first identity, the graph shows "Expired Agreement". This is the case, for example, for first identities "1partid" and "7partid". The most recent first identities or second identities for a combination of subscriber and content provider network are represented by the edge label "Known" and past combinations are represented by the edge label "More Known".Associated with the subscribers and content providers are also five fourth IDs represented by "1altid", "2altid", "3altid", "4altid" and "5altid". These are alternative identifiers provided by the content provider that would otherwise allow the content provider to know the subscriber. This is represented on the graph by an edge between each second subscriber identifier and each fourth ID that states "further known".

[0114] When multiple different second subscriber identifiers from different service provider networks are associated with a common first ID or second ID (e.g., as in the case of second subscriber identifiers "4ntid" and "1ntid" and first ID "3partid"), it may be inferred by the second entity 234 that the different subscriber identifiers are associated with the same subscriber but use different service provider networks. For example, this may occur when a subscriber device 222a, 222b switches service provider networks during an instance of engagement with a content provider.

[0115] If multiple different second subscriber identifiers for a common service provider network are associated with a common first ID or second ID (e.g., as in the case of second subscriber identifiers "2ntid" and "3ntid" and first ID "5partid"), it may be inferred by the second entity 234 that the different subscriber identifiers relate to the same subscriber, but use different accounts within the service provider network. For example, this may occur when a subscriber device 222a, 222b switches from its own mobile data connection to a mobile (e.g., 4G) hotspot from the same service provider network during an instance of engagement with a content provider, or when, for example, a device has dual SIM capability and both SIMs are from the same service provider network and the subscriber device 222a, 222b switches SIMs during an instance of engagement with a content provider (or when the same first ID or second ID is used, e.g., the same browser with the same cookie containing the first ID or second ID).

[0116] 5, take as an example a subscriber with a second subscriber identifier "1ntid", the subscriber is a subscriber of the service provider network "1telco". The second subscriber identifier "1ntid" is stored in association with a first ID "1partid" (whose consent has expired), a second ID "3partid", and fourth IDs "1altid" and "2altid", all provided by the content provider "1brand" (which happens to be a child of the content provider "2brand"). For example, if the content provider “1brand” requests association information from the second entity 234, the second entity 234 may extract the IDs “1altid”, “2altid”, “3partid”, “1partid” stored in association with the content provider “1brand” that are stored in association with the subscriber “1ntid”, and provide information to the content provider “1brand” that the IDs “1altid”, “2altid”, “3partid”, “1partid” are associated with each other (e.g., associated with a single common subscriber).

[0117] Storing IDs in a graph in this manner can provide an efficient way of storing and maintaining both the IDs and the associations between the IDs.

[0118] In accordance with the above, a particular method may be performed at a particular entity among the first entity 226, the second entity 234, and the third entity 240. To illustrate this, Figure 6 shows a method performed at the second entity 234, and Figure 7 shows a method performed at the third entity 240.

[0119] Referring to FIG. 6, the method at the second entity 234 includes, for a first instance A, storing in step 602 a first ID in association with a subscriber identifier, the first ID being included in a first message 332 received from the subscriber device 222a by the first entity 226 in the service provider network 224, the subscriber identifier being identified by the first entity 226 based on the first message 332, the subscriber being determined by the first entity 226 based on the subscriber identifier, the first ID and the subscriber identifier being transmitted by the first entity 226 to the second entity 234, and the first ID being associated with the provision of content from the content provider 238 to the subscriber device 222a in the first instance A. The method at the second entity 234 includes, in step 604, associating and storing, for a second instance B, a second ID with an identifier of the subscriber, thereby associating and storing in association with the first ID, where the second ID was included in a second message 342, 442 received by the first entity 226 from the subscriber device 222a or another subscriber device 222b, the subscriber was identified by the first entity 226 based on the second message 342, 442, the subscriber identifier was determined by the first entity based on an identification of the subscriber sent by the first entity to the second entity, and the second ID is associated with the provision of content from the content provider 238 to the subscriber device 222a or another subscriber device 222b in the second instance B. The method at the second entity 234 includes, in step 606, providing a third entity 240 associated with the content provider 238 with information indicating the stored association between the second ID and the first ID, thereby enabling the third entity 240 to associate the first instance A with the second instance B.

[0120] 7, a method is shown that is performed in a third entity 240 associated with a content provider 238. The method includes, for a first instance A, recording in the first instance A a first ID associated with the provision of content from the first content provider 238 to the subscriber device 222a in step 702. The method includes, for a second instance B, recording in the first instance A a second ID associated with the provision of content from the content provider 238 to the subscriber device 222a, 222b or another subscriber device in the second instance B in step 704. The method includes, in step 706, receiving information from the second entity 234 indicating an association between the first ID and the second ID, the first ID and the second ID being stored by the second entity 234 in association with a subscriber identifier, the subscriber being identified by the first entity 226 in the service provider network 224 based on a first message 332 including the first ID received from the subscriber device 222a and a second message 342, 442 including the second ID received from the subscriber device 222a or another subscriber device 222b, the subscriber identifier being determined by the first entity based on the subscriber identifier sent from the first entity to the second entity, the first ID, and the subscriber identifier sent from the first entity to the second entity. The method includes, in step 708, associating the first instance A with the second instance A based on the received information indicating the association between the first ID and the second ID.

[0121] In some of the above examples, the first ID and the second ID are set or stored on the subscriber device 222a, 222b as cookies (e.g., on the browser of the subscriber device 222a, 222b). However, in other examples, the first ID and / or the second ID may not be set or stored on the subscriber device 222a, 222b as cookies, or may not be set or stored as cookies. For example, in some examples, the first ID and / or the second ID may instead or additionally be stored in the local storage of the subscriber device 222a, 222b. Similarly, in some examples, the third ID, the fourth ID, and / or the consent information may alternatively or additionally be stored in the local storage of the subscriber device 222a, 222b.

[0122] In some examples, the first ID and / or the second ID may each be used for only one session (which may include one or more transactions) between the content provider 238 and the subscriber device 222a, 222b. In this regard, the first ID and / or the second ID may each be a "per session" ID. For example, within a session in which content is provided by the content provider 238 to the subscriber device 222a, 222b, the first ID (or the second ID, if necessary) may be included in the transaction between the content provider 238 and the subscriber device 222a, 222b (in some examples, if the agreement expiration date has not been reached). However, the first ID and / or the second ID may each be set or controlled to expire or be deleted from the subscriber device 222a, 222b after the session in which content is provided by the content provider 238 to the subscriber device 222a, 222b has ended. For example, a session may be terminated by the subscriber device 222a, 222b by closing the browser, or the content provider 238 may terminate the session. Similar to what was discussed above, this may be useful in allowing the content provider 238 to efficiently analyze a subscriber's engagement within a session based on the same ID (e.g., the first ID), but may be useful in preventing a third party (e.g., a malicious third party via a "man-in-the-middle attack") from building a profile of the subscriber based on the first ID or the second ID.

[0123] In some examples, the first ID and / or the second ID may be a "single-use" or "one-time" ID, respectively. For example, the first ID and / or the second ID may be used for only one transaction between the content provider 238 and the subscriber device 222a, 222b (e.g., the content provider 238 providing content to the subscriber device 222a, 222b). For example, as described above, the first ID and / or the second ID may be generated by the content provider 238 (or the subscriber device 222a, 222b) when the content provider 238 provides content to the subscriber device 222a, 222b, and the subscriber device 222a, 222b may include the first ID and / or the second ID, respectively, in the first message 332 and / or the second message 342 sent to the first entity 224. However, in some examples, the first ID and / or the second ID may not be stored on the subscriber device 222a, 222b for subsequent use (e.g., for use in a subsequent transaction between the subscriber device 222a, 222b and the content provider 238). For example, this may occur if the first ID and / or the second ID are not permitted to be stored on the subscriber device 222a, 222b for subsequent use, or if, for example, the first ID and / or the second ID are removed by the subscriber device 222a, 222b. In some examples, the first ID and / or the second ID may be set or controlled to expire or may be deleted from the subscriber device 222a, 222b after the first message 332 and / or the second message 342, respectively, are sent to the first entity 224. Having the first ID and / or second ID be "per-use" or "single-use" IDs can ensure that a third party (e.g., a malicious third party via a "man-in-the-middle attack") cannot build a profile of the subscriber based on the first ID or second ID.

[0124] The above examples illustrate how providing association information to the content provider 238 (and enabling the content provider 238 to associate different instances of a subscriber's engagement) may enable the content provider 238 to provide continuity between different instances of a subscriber's engagement and / or provide more accurate analysis. However, the association information may be used for other purposes.

[0125] Specifically, in some examples, the content provider 238 may determine one or more browsing attributes indicative of an attribute of the subscriber's engagement with the content provider 238 at a particular instance (e.g., a first instance A or a second instance B). These browsing attributes may be stored by the content provider 238 in association with the first ID (or second ID) to which the instance corresponds. In some examples, the browsing attributes may simply indicate that the subscriber engaged with the content provider 238. In some examples, the attributes may include the particular content (or an identifier for the particular content) delivered to the subscriber device during the engagement, one or more characteristics of the particular content delivered to the subscriber device, the duration of the engagement by the subscriber, and / or the level of the subscriber's engagement with the content. Any other attribute of the subscriber's engagement with the content provider at a particular instance may also be used.

[0126] In some examples, the content provider 238 can categorize the first ID (or second ID) of each instance of engagement by a category of browsing attributes. For example, the content provider 238 can compile a list of all first IDs (and second IDs) that correlate to instances of the subscriber's engagement with the content provider 238 in which the subscriber navigated to or otherwise browsed a particular web page related to, for example, a particular car. The content provider 238 can provide this list to the second entity 234. Alternatively, the content provider can provide a list of the first IDs (and second IDs) and their associated browsing attributes to the second entity, which can compile, for each of the one or more browsing attributes or combinations of browsing attributes, a list of all first IDs (and second IDs) that have the one or more browsing attributes or combinations of browsing attributes. In either case, in some examples, the second entity 238 may determine the subscriber identifiers of the list of first IDs (and second IDs) at the second entity based on the stored associations between them. The second entity 238 may then store one or more browsing attributes in association with the subscriber identifiers to which they correspond.

[0127] For example, for a subscriber having first and second instances A, B of engagement with a particular content provider 238, the method may include receiving, at the second entity 234, from the third entity 240, a first ID and / or a second ID associated with browsing attributes indicative of attributes of the subscriber's engagement with the content provider 238 in the first and / or second instances A, B, respectively. The method may then include determining, at the second entity 234, a subscriber identifier (e.g., the first subscriber identifier or the second subscriber identifier) ​​associated with the browsing attributes based on the received first ID and / or second ID and a stored association between the first ID, the second ID, and the subscriber identifier. The method may then include storing, at the second entity 234, the browsing attributes in association with the subscriber identifier.

[0128] As previously mentioned, this may be performed for multiple subscribers. In this manner, the second entity 234 may segment subscribers based on one or more particular browsing attributes. For example, the second entity 234 may determine the first subscriber ID (and / or the second subscriber ID) of all subscribers having a common browsing characteristic, e.g., all subscribers who navigated to or otherwise browsed a particular web page related to a particular car. This segmentation may be used, for example, to retarget advertisements to a particular subscriber segment. For example, as described in more detail below, the second entity 224 may provide segment information indicative of the browsing attributes to an advertising entity for use in providing targeted advertisements to the subscribers. In some examples, segmentation based on browsing attributes may be combined with other segmentation based on other data. For example, this may be combined with segmentation of subscribers based on subscriber attributes stored in the service provider network 224 or from other data sources.

[0129] An example implementation in which advertising may be retargeted using subscriber segmentation based on one or more specific browsing attributes is described with reference to Figures 8 and 9. Figure 8 illustrates an example telecommunications network 800 in which retargeting may be implemented, and Figure 9 illustrates example signaling between components of the system.

[0130] With reference to FIG. 8, the telecommunications network 800 includes a service provider network 224 comprising a first entity 226 and a storage device 228, the Internet 229, a cloud 230 comprising a second entity 234 and a storage device 236, and a subscriber device 222c. The subscriber device 222c may be the same as or different from the subscriber devices 222a, 222b of the system 200 described above with reference to FIG. 1. In this example, the network 800 also includes an advertisement platform 860 comprising an advertisement entity 862 (e.g., an advertisement server). For example, the advertisement platform 860 may include a demand side platform (DSP). The DSP may be configured to bid for the subscriber device 222c and, if successful, fulfill a request for advertisements from the subscriber device 222c. Although not shown in FIG. 8 for clarity, the network 800 may include other components, such as a content provider 238 and / or other components of the telecommunications network 200 described above with reference to FIG. 1.

[0131] FIG. 9 illustrates example signaling between components of network 600 in an example method for providing targeted advertising.

[0132] Prior to the signaling shown in FIG. 9, a content provider (not shown in FIGS. 8 and 9) has instructed the advertising platform 660 to target a particular advertisement to a particular segment of subscribers. For example, the content provider may want to target a particular car advertisement at subscribers who have browsing attributes that indicate they have navigated to or otherwise viewed content at the content provider related to a particular car. As described above, the content provider 238 may have provided a list of first IDs (and second IDs) for instances of engagement in which the subscriber viewed content related to a particular car, and the second entity 234 may determine subscriber identifiers from the first IDs (and second IDs) and store the browsing attributes in association with those subscriber identifiers. In some examples, the content provider may also want to target based on other attributes, such as the subscriber's age, that may be known to the service provider network 224, for example. In order to appropriately bid on ad requests to fill ads related to a particular vehicle, it is useful for the ad platform 860 to know whether a particular ad request is from a subscriber who has viewed content related to a particular vehicle (and in some instances is from a subscriber who meets a desired age criteria). However, this should be done in a manner that does not reveal the identity of the subscriber to the ad platform 860 and does not allow the ad platform 860 (or any other third party) to build a profile of the subscriber based on multiple such ad requests.

[0133] Now referring to FIG. 9, in an exemplary method for providing targeted advertising, the subscriber device 222c transmits an advertisement request 970 to an advertising entity 862 of the advertising platform 860. For example, when the subscriber device 222c downloads a web page to fill an advertisement space, the subscriber device 222c may be triggered by code in the web page to transmit an advertisement request to fill the advertisement space with an advertisement. This process may be facilitated by programmatic advertising. For example, the advertisement request 970 may be transmitted from the subscriber device 222a to a supplying platform SSP (not shown) to fill the advertisement space. The SSP (not shown) may then transmit a bid request to a DSP (and possibly other DSPs not shown) to bid on the advertisement space to fill the advertisement request with content provided by the DSP. In either case, the advertisement request 970 is transmitted to the advertising entity 862.

[0134] The ad request 970 includes a token. The token may be a universally unique ID. A new token may be randomly generated by the subscriber device 222c for each ad request 970 it sends. Thus, the token included in the ad request uniquely identifies the ad request 970 among all other ad requests for practical purposes. The token may be associated with an expiration date, e.g., a time to live (TTL), which may define the length of time the token may be used. The generated token may be included in the ad request 970 by the subscriber device 222c. For example, a website downloaded by the subscriber device 222c may include code (or a link to code) that causes the subscriber device 222c to generate a token and include it in the ad request 970.

[0135] The ad request 970 may be sent from the subscriber device 222c to the advertising entity 862 using an encrypted communication channel, for example, using the HTTPS protocol. Thus, even if the ad request 970 is sent to the advertising entity 862 through the service provider network 224, the service provider network 224 may not be able to read the content of the ad request, for example, may not be able to read the token.

[0136] At the same or similar time as the advertisement request 970, the subscriber device 222c also sends a fourth message 972 to the first entity 226 of the service provider network 224. The fourth message 972 includes a token that correlates with the token included in the advertisement request 970. For example, the fourth message 972 may include a copy of the token included in the advertisement request 970. The fourth message 972 may be a synchronization request. The subscriber device 222c may be triggered by code included in or linked to the downloaded website to send a copy of the generated token in the fourth message 970 to the first entity 226.

[0137] The first entity 226 identifies 974 the subscriber of the subscriber device 222c based on the fourth message 772, for example, with reference to the storage device 228. For example, the first entity 226 may identify the subscriber based on the fourth message 772 in the same or similar manner as the first message 332 and the second message 342, 442 described above with reference to Figures 1-4. For example, the first entity 225 may determine a first subscriber identifier for the subscriber. The first entity may determine the subscriber's identifier based on the subscriber's identification information. For example, the first entity 226 may determine the subscriber's second subscriber identifier based on the subscriber's first identifier, for example, as described above. In some examples, the first entity 226 may also retrieve subscriber information associated with the identified subscriber in the storage device 228 of the service provider network 224. For example, the storage device 228 may comprise a customer relationship management (CRM) database that stores information about each subscriber, such as the subscriber's age, gender, etc.

[0138] The first entity 226 transmits 976 the determined subscriber's identifier (e.g., a second subscriber identifier for the subscriber) and the token to the second entity 234. For example, the first entity 226 may modify the fourth message 972 to include the second subscriber identifier and transmit the modified fourth message 976 to the second entity 234. In some examples, the first entity 226 may also transmit subscriber information, such as attribute-value pairs of the identified subscriber, as determined from a lookup in the storage device 228, to the second entity 234. For example, the first entity 226 may include the subscriber information in the modified fourth message 976.

[0139] The second entity 234 stores 978 the token in association with the subscriber's identifier in the storage 236 of the cloud 230. In examples where subscriber information (e.g., age) is also transmitted, the second entity 234 may store 978 the token and the subscriber information in association with the subscriber's identifier. In some examples, the token may be stored in association with the subscriber's identifier in a cache associated with the second entity 234. In some examples, for a given subscriber, the storage 236 of the cloud 230 may store the subscriber's identifier, browsing attributes provided by the content provider (e.g., whether the subscriber viewed a particular car), subscriber information provided by the service provider network (e.g., the subscriber's age), and the token for the ad request in association with each other.

[0140] Upon receiving the advertisement request 970, the advertising entity 862 determines whether to fulfill the advertisement request with an advertisement provided by the content provider. For example, the DSP of the advertising entity 862 may determine how much to bid for the right to fulfill the advertisement request with an advertisement provided by the content provider. To inform this decision, the advertising entity 862 provides 980 the token that was included in the advertisement request 970 to the second entity 234. For example, the token may be provided 980 using an HTTP request from the advertising entity 662 to the second entity 234. In some examples, receipt of the request 980 may be interpreted as a request to provide segment information stored in association with the provided token (e.g., in the cache of the second entity 234). In some examples, the token may be provided with a request for specific segment information of the subscriber who requested the advertisement. For example, the request for segment information may include a request for data regarding whether the subscriber has a particular browsing attribute (i.e., has viewed content related to a particular car) and has an age that meets a predetermined age range. As another example, the request for segment information may be a request to provide browsing attributes and other subscriber information stored in the second entity 234 in association with the provided token.

[0141] In either case, in response to receiving the token from the advertising entity 862, the second entity 234 performs a lookup 982 for a match with a stored token.

[0142] For example, if the token is stored in a cache in association with a subscriber's identifier, the second entity 234 may use the cache to determine the subscriber's identifier. The second entity 234 may then use the determined identifier for the subscriber to perform a search in the storage device 236 for segment information stored in association with the determined identifier for the subscriber.

[0143] In other examples where the token is stored in association with an identifier for the subscriber in storage 236, the second entity 234 may perform a search in storage 236 to determine a match for the provided token, and if there is a match, the associated segment information may be extracted. In some examples, where the token is also stored by the second entity 234 in association with one or more fourth IDs, the second entity 234 may perform a search in storage 236 for the segment information stored in association with the one or more fourth IDs.

[0144] In either case, if there is a match (and the TTL of the token has not yet expired), the request for information 980 may be accepted, but if there is no match (and / or the TTL of the token has expired), the request for information 980 may be rejected by the second entity 234. In this example, the token is matched with a token stored with an identifier of the subscriber who requested the advertisement, and the TTL of the token has not yet expired. Thus, the second entity 234 may provide 984 at least a portion of the extracted segment information to the advertising entity 862. Thus, the advertising entity 862 may determine, based on the received segment information, that the advertisement request 770 is from a subscriber who meets the targeting criteria of the advertisement provided by the content provider. Thus, the advertising entity 862 may, for example, appropriately bid to fill the advertisement request 970 with its advertisement. Thus, the advertising entity 862 may provide 986 an advertisement in response to the advertisement request 770.

[0145] In accordance with the above, in some examples, the method includes receiving 980, at the second entity 234, a token from the advertising entity 862, the token having been provided to the advertising entity 862 by the subscriber's subscriber device 222c when the subscriber's subscriber device 222c requested 970 an advertisement, matching, at the second entity 234, the token from the advertising entity 862 with tokens stored at the second entity in association with the subscriber's identifier, and providing 984, in response to matching the tokens, segment information indicative of at least browsing attributes to the advertising entity 862. In some examples, the segment information may further include subscriber information stored at the second entity 234 in association with the subscriber's identifier and provided from the service provider network 224.

[0146] These examples may enable implementation of a system in which the advertising platform 860 can target advertisements to subscribers based on browsing attributes determined by the content provider (and in some examples also based on subscriber information provided by the service provider network). Furthermore, this may be provided without revealing the identity of the subscriber to the advertising platform 660 (or the content provider); that is, the advertising platform only knows the token associated with the ad request and the attributes provided by the second entity 234. Furthermore, the use of different tokens generated for each different ad request helps ensure that the advertising platform 660 (or other third parties) cannot build a profile of a subscriber based on multiple such ad requests.

[0147] In some examples, a system may be provided that includes a first entity 226 and a second entity 234 in a service provider network 224. The first entity 226 and the second entity 234 may be configured to perform a method and / or provide functionality according to any one of the examples described above with reference to Figures 1-9. In some examples, the system may include any of the components of the telecommunications networks 200, 600 described above with reference to Figures 1-9.

[0148] Referring to Fig. 10, an apparatus 1000 according to an example is shown. The apparatus 1000 includes a processor 1004, a memory 1006, and an input / output interface 1002. Any one of the first entity 226, the second entity 234, the third entity 240, the advertising entity 662, and the subscriber devices 222a, 222b, and 222c may be provided by an apparatus such as the exemplary apparatus 1000 of Fig. 10. For example, the memory 1006 may store instructions that, when executed by the processor 1004, cause the processor 1004 to perform functions of any one of the first entity 226, the second entity 234, the third entity 240, the advertising entity 662, and the subscriber devices 222a, 222b, and 222c described above with reference to Figs. 1 to 9. In examples in which the device 1000 embodies the first entity 226, the second entity 234, the third entity 240, or the advertising entity 662, the device 1000 may be embodied, for example, by a web server. For example, the first entity 226 may be implemented by an Internet Content Adaptation Protocol (ICAP) server.

[0149] The above embodiments should be understood as exemplary embodiments of the present invention. It should be understood that any feature described in connection with any one embodiment may be used alone or in combination with other features described, and may also be used in combination with one or more features of any other embodiment, or in any combination of any other embodiment. Moreover, equivalents and modifications not described above may also be employed without departing from the scope of the present invention as defined in the appended claims.< / altids> < / consent> < / brandid> < / partid> < / domain>

Claims

1. A method for associating different instances of subscriber engagement in a service provider network with a first content provider, comprising: For a first instance, At a first entity within the service provider network, Receiving a first message from the subscriber's subscriber device, the first message including a first ID associated with the provision of content from the first content provider to the subscriber device in the first instance; Identifying the subscriber based on the received first message; Determining an identifier of the subscriber based on the identification information identifying the subscriber; Sending the identifier of the subscriber and the first ID to a second entity; At the second entity, Storing the first ID in association with the identifier of the subscriber; For a second instance, At the first entity within the service provider network, Receiving a second message from the subscriber's subscriber device or another subscriber device, the second message including a second ID different from the first ID, the second ID being associated with the provision of content from the first content provider to the subscriber device or the another subscriber device in the second instance; Identifying the subscriber based on the received second message; Determining the identifier of the subscriber based on the identification information identifying the subscriber; Sending the identifier of the subscriber and the second ID to the second entity; In the second entity, storing the second ID in association with the identifier of the subscriber, thereby associating the second ID with the first ID; wherein the method, in the second entity, providing information indicating the stored association between the second ID and the first ID to a third entity associated with the first content provider, thereby enabling the third entity to associate the first instance with the second instance; further comprising; A method. **Claim 2** The method according to claim 1, wherein the first ID is generated when the subscriber device obtains the content from the first content provider in the first instance, and / or the second ID is generated when the subscriber device or another subscriber device obtains the content from the first content provider in the second instance. **Claim 3** The method according to claim 2, wherein the first ID is generated by the first content provider and provided to the subscriber device when the subscriber device obtains the content from the first content provider in the first instance, and / or the second ID is generated by the first content provider and provided to the subscriber device or another subscriber device when the subscriber device or another subscriber device obtains the content from the first content provider in the second instance. **Claim 4** wherein the first ID is stored as a cookie in the subscriber device by the first content provider, and / or the second ID is stored as a cookie in the subscriber device or another subscriber device by the first content provider. The method according to any one of claims 1 to 3.

5. In the first instance, the content obtained from the first content provider by the subscriber device includes code or a link to code that causes the subscriber device to send the first message to the first entity within the service provider network, and / or In the second instance, the content obtained from the first content provider by the subscriber device or the other subscriber device includes code or a link to code that causes the subscriber device or the other subscriber device to send the second message to the first entity within the service provider network. The method according to any one of claims 1 to 3.

6. The method according to any one of claims 1 to 3, wherein the second message is received from the other subscriber device, and the second ID is associated with the provision of content from the first content provider to the other subscriber device in the second instance.

7. The method according to any one of claims 1 to 3, wherein the second message is received from the subscriber device, the second ID is associated with the provision of content from the first content provider to the subscriber device in the second instance, and the second instance is at a different time from the first instance.

8. The second entity is outside the service provider network. For the first instance, The step of identifying the subscriber based on the first message in the first entity includes determining a first subscriber identifier of the subscriber for identifying the subscriber within the service provider network. The step of determining the identifier of the subscriber based on the identification information of the subscriber includes the step of deriving a second subscriber identifier of the subscriber in the second entity based on the first subscriber identifier, The method includes the step of modifying the first message in the first entity to include the second subscriber identifier, and the step of transmitting the modified first message to the second entity for use by the second entity to store the first ID in association with the identifier of the subscriber, For the second instance, The step of identifying the subscriber based on the second message in the first entity includes the step of determining the first subscriber identifier of the subscriber, The step of determining the identifier of the subscriber based on the identification of the subscriber includes the step of deriving the second subscriber identifier of the subscriber based on the first subscriber identifier, The method includes the step of modifying the second message in the first entity to include the second subscriber identifier, and the step of transmitting the modified second message to the second entity for use by the second entity to store the second ID in association with the identifier of the subscriber, The method according to any one of claims 1 to 3.

9. The method, For the first instance, The step of storing the first ID in association with the second subscriber identifier in the second entity, For the second instance, The step of storing the second ID in association with the second subscriber identifier in the second entity, The method according to claim 8, further comprising.

10. For the first instance, the second subscriber identifier of the subscriber is already stored in association with the first subscriber identifier in the first entity, and the step of deriving the second subscriber identifier includes the step of looking up the second subscriber identifier using the first subscriber identifier, and / or the second subscriber identifier of the subscriber is not already stored in association with the first subscriber identifier in the first entity, and the step of deriving the second subscriber identifier includes the step of generating the second subscriber identifier for the first subscriber identifier. The method according to claim 8.

11. each of the first message and the second message includes a third ID that identifies the first content provider from which the content is provided, and the method for the first instance and the second instance, storing, in the second entity, the third ID in association with the first ID and the second ID respectively The method according to any one of claims 1 to 3, comprising.

12. The step of providing the information indicating the association between the second ID and the first ID to the third entity is in response to a determination that the first ID and the second ID are stored in association with the third ID. The method according to claim 11.

13. the first message and the second message each include consent information associated with the first ID and the second ID respectively, and the consent information of the first ID and the second ID indicates whether the subscriber consents to the use of the identification information by the service provider network of the first ID and the second ID respectively, and the method for the first instance and the second instance, In the second entity, storing the consent information for the first ID in association with the first ID and storing the consent information for the second ID in association with the second ID The method according to any one of claims 1 to 3, comprising: **Claim 14** The step of providing the information indicating the association between the second ID and the first ID to the third entity is based on the stored consent information for the first ID and the second ID, in response to a determination that there is valid consent for the use of the subscriber's identification information by the service provider network for the first ID and the second ID. The method according to claim 13. **Claim 15** The step of determining that there is valid consent for the first ID and the second ID, wherein the consent information for the first ID includes a consent expiration date for the first ID, the consent information for the second ID includes a consent expiration date for the second ID, and is based on a comparison between the stored consent expiration dates for the first ID and the second ID and the current time. The method according to claim 14. **Claim 16** The method according to claim 14, comprising the step of updating the stored consent expiration date for the first ID based on the consent information associated with the second ID included in the second message. **Claim 17** The method, for a third instance, In the second entity, receiving a third message including the first ID and the updated consent information associated with the first ID, or including the second ID and the updated consent information associated with the second ID; In the second entity, updating the stored consent information for the first ID or the second ID based on the updated consent information respectively associated with the first ID and / or the second ID. The method according to claim 14, comprising **Claim 18** The method according to claim 17, wherein the third message is received by the second entity from the subscriber device via an access network other than the service provider network and without passing through the service provider network. **Claim 19** The method comprising at the second entity, receiving from the third entity the first ID and / or the second ID, each associated with a browsing attribute indicating an attribute of the subscriber's engagement with the content provider in the first instance and / or the second instance; at the second entity, determining the identifier of the subscriber associated with the browsing attribute based on the received first ID and / or second ID and the stored association between the first ID, the second ID, and the identifier of the subscriber; at the second entity, storing the browsing attribute in association with the identifier of the subscriber; at the second entity, providing to the advertising entity at least segment information indicating the browsing attribute; The method according to any one of claims 1 to 3, comprising **Claim 20** The method comprising at the second entity, receiving a token from the advertising entity, the token having been provided to the advertising entity by the subscriber device of the subscriber when the subscriber device requested an advertisement; at the second entity, comparing the token from the advertising entity with a token stored in the second entity in association with the identifier of the subscriber. The step of providing the segment information indicating at least the browsing attribute to the advertisement entity responds to the matching step of the token. The method according to claim 19.

21. A system for associating different instances of engagement of subscribers of a service provider network with a first content provider, a first entity within the service provider network, and a second entity, wherein the first entity for a first instance, receives a first message from the subscriber's subscriber device, the first message including a first ID associated with the provision of content from the first content provider to the subscriber device in the first instance, identifies the subscriber based on the received first message, determines an identifier of the subscriber based on the identification information identifying the subscriber, and transmits the identifier of the subscriber and the first ID to the second entity; for a second instance, is configured to receive a second message from the subscriber's subscriber device or another subscriber device, the second message including a second ID different from the first ID, the second ID being associated with the provision of content from the first content provider to the subscriber device or the another subscriber device in the second instance, identify the subscriber based on the received second message, determine an identifier of the subscriber based on the identification information identifying the subscriber, and transmit the identifier of the subscriber and the second ID to the second entity; wherein the second entity for the first instance, stores the first ID in association with the identifier of the subscriber; For the second instance, associate the second ID with the identifier of the subscriber, thereby storing it in association with the first ID. Provide information indicating the stored association between the second ID and the first ID to a third entity associated with the first content provider, thereby configuring the third entity to be able to associate the first instance with the second instance. System. Claim 22 A method for associating different instances of a subscriber's engagement in a service provider network with a first content provider, the method comprising, in a second entity, For a first instance, Storing a first ID in association with the identifier of the subscriber, the first ID being included in a first message received from a subscriber device by a first entity within the service provider network, the subscriber being identified by the first entity based on the first message, the identifier of the subscriber being determined by the first entity based on the identification of the subscriber, the first ID and the identifier of the subscriber being transmitted by the first entity to the second entity, and the first ID being associated with the provision of content from the first content provider to the subscriber device in the first instance. For a second instance, A step of associating the identifier of the subscriber with and thereby associating a second ID with the first ID, wherein the second ID is included in a second message received by the first entity from the subscriber device or another subscriber device, the subscriber is identified by the first entity based on the second message, the identifier of the subscriber is determined by the first entity based on the identification of the subscriber, the second ID and the identifier of the subscriber are transmitted by the first entity to the second entity, and the second ID is associated with the provision of content from the first content provider in the second instance to the subscriber device or the other subscriber device, the step including, wherein the method, at the second entity, further includes a step of providing information indicating the stored association between the second ID and the first ID to a third entity associated with the first content provider, thereby enabling the third entity to associate the first instance with the second instance, Method.

23. A method for associating different instances of subscriber engagement in a service provider network with a first content provider, the method including, at a third entity associated with the first content provider, for a first instance, recording a first ID associated with the provision of content from the first content provider in the first instance to a subscriber device; and for a second instance, recording a second ID associated with the provision of content from the first content provider in the second instance to the subscriber device or another subscriber device, Receiving, from a second entity, information indicating an association between the first ID and the second ID, wherein the first ID and the second ID are stored by the second entity in association with an identifier of the subscriber, and the subscriber is identified by a first entity within the service provider network based on a first message including the first ID received from a subscriber device and based on a second message including the second ID received from the subscriber device or another subscriber device, and the identifier of the subscriber is determined by the first entity based on the identification of the subscriber, and the first ID and the identifier of the subscriber are transmitted from the first entity to the second entity, and the second ID and the identifier of the subscriber are transmitted from the first entity to the second entity; Associating the first instance with the second instance based on the received information indicating the association between the first ID and the second ID; A method comprising. **Claim 24** An apparatus configured to execute the method according to claim 22 or 23. **Claim 25** A computer-readable medium storing instructions that, when executed by a computer system, cause the computer system to execute the method according to any one of claims 1 to 3, 22, and 23.