P
USRE47952EActiveUtilityPatentIndex 98

Providing content to a user across multiple devices

Assignee: GOOGLE LLCPriority: Mar 6, 2012Filed: Apr 14, 2017Granted: Apr 14, 2020
Est. expiryMar 6, 2032(~5.7 yrs left)· nominal 20-yr term from priority
Inventors:RAMACHANDRAN VINOD KUMARWU PINGRAJKUMAR NARESHKUMAR
H04N 21/2396H04L 63/102H04L 63/0421
98
PatentIndex Score
87
Cited by
124
References
42
Claims

Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer-readable storage medium, and including a method for providing content. The method comprises receiving a first login request from a first device used by a user, the request being associated with a first anonymous identifier associated with the first device, and determining a user tag for the user, that does not include any personally identifiable information associated with the user. The method further comprises receiving a second login request from a second different device used by the user, the request being associated with a second different anonymous identifier associated with the second different device, and storing an association between the user tag, the first anonymous identifier and the second different anonymous identifier. The method further comprises receiving a request for content from either the first or second different device and providing content in response to the request using the association.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented method comprising:
 receiving a first login request from a first device used by a user for logging into a service;   after logging in the user based on the received first login request, identifying a first anonymous identifier that is associated with the user wherein identifying includes either receiving the first anonymous identifier during a session while the user is logged in or locating the first anonymous identifier that is associated with the user and was received prior to the login;   determining, using one or more processors and personal information associated with the user that is unique to the user, a user tag for the user including constructing the user tag by obfuscating at least a portion of the personal information, wherein the user tag does not include any personally identifiable information associated with the user;   receiving a second login request from a second different device used by the user;   after logging in the user based on the received second login request, identifying a second anonymous identifier that is associated with the user wherein identifying includes either receiving the second anonymous identifier during a session while the user is logged in or locating the second anonymous identifier that is associated with the user and was received prior to the login, wherein the second anonymous identifier is different from the first anonymous identifier;   after identifying the second anonymous identifier, storing an association between the user tag, the first anonymous identifier and the second different anonymous identifier, the association anonymously linking the user with the first device and the second different device;   receiving a request for content from either:
 the first device wherein the request includes the first anonymous identifier; 
   or
 the second different device wherein the request includes the second different anonymous identifier; 
 using the received first anonymous identifier to locate a plurality of different devices that are mapped to the user including locating another of the first or second different device; 
 determining, using the one or more processors, session history information associated with each the user's use of the first and second different device; 
 creating, using the one or more processors, aggregated session history using the determined session history information; and 
 providing, using the one or more processors, content in response to the request using the association and the aggregated session history. 
   
     
     
       2. The method of  claim 1  wherein the first and second different anonymous identifiers are associated with different browsers. 
     
     
       3. The method of  claim 1  wherein receiving the login request includes receiving a request to log into a social service. 
     
     
       4. The method of  claim 1  wherein determining a user tag for the user further includes determining a random or pseudo-random number based at least in part on the personal information and providing the random or pseudo-random number as the user tag. 
     
     
       5. The method of  claim 1  wherein determining a user tag for the user further includes applying a one-way function to at least a portion of the personal information producing a result and using the result as the user tag. 
     
     
       6. The method of  claim 5  wherein the one-way function is a hash function. 
     
     
       7. The method of  claim 5  wherein the portion of information is a login identifier associated with the user. 
     
     
       8. The method of  claim 5  wherein the portion of information is an email address of the user. 
     
     
       9. The method of  claim 1  wherein storing the association includes storing the user tag, the first anonymous identifier, and the second different anonymous identifier as an entry in a table. 
     
     
       10. The method of  claim 1  wherein storing the association includes mapping the user tag to both the first and the second different anonymous identifiers. 
     
     
       11. The method of  claim 1  wherein storing the association includes removing the user tag after expiration of a first time period. 
     
     
       12. The method of  claim 11  wherein storing the association includes removing the second different anonymous identifier after expiration of a second time period. 
     
     
       13. The method of  claim 12  wherein the first and the second time periods are the same. 
     
     
       14. The method of  claim 11  wherein the first and the second time periods expire at logout by the user from the service. 
     
     
       15. The method of  claim 11  wherein the first and the second time periods expire after an amount of time has passed since login that would enable a user to have logged in from multiple different devices. 
     
     
       16. The method of  claim 1  wherein the first and second different anonymous identifiers are selected from a group comprising a browser cookie and a device identifier. 
     
     
       17. The method of  claim 1  further comprising:
 receiving a login request from a third device used by the user, the login request being associated with a third different anonymous identifier associated with the third device; 
 storing an association between the user tag, the first anonymous identifier, the second different anonymous identifier and the third different anonymous identifier; 
 receiving a request for content from either: 
 the first device including the first anonymous identifier; the second different device including the second different anonymous identifier; or the third different device including the third different anonymous identifier; and providing content in response to the request and using the association. 
 
     
     
       18. The method of  claim 1  wherein receiving a request for content includes receiving a request for advertising content. 
     
     
       19. The method of  claim 1  wherein receiving a request for content includes receiving a request from the first device including the first anonymous identifier, where the first anonymous identifier is a cookie. 
     
     
       20. The method of  claim 1  wherein providing content in response to the request further includes using information about the user to provide content to the user. 
     
     
       21. A computer-implemented method comprising:
 receiving a first login request from a first device used by a user;   after logging in the user based on the received first login request, identifying a first anonymous identifier that is associated with the user wherein identifying includes either receiving the first anonymous identifier during a session while the user is logged in or locating the first anonymous identifier that is associated with the user and was received prior to the login;   determining, using one or more processors and personal information associated with the user that is unique to the user, a user tag for the user, including constructing the user tag by obfuscating at least a portion of the personal information, and providing the user tag to the first device, wherein the user tag does not include any personally identifiable information associated with the user;   receiving a second login request from a second different device used by the user;   after logging in the user based on the received second login request, identifying a second anonymous identifier that is associated with the user wherein identifying includes either receiving the second anonymous identifier during a session while the user is logged in or locating the second anonymous identifier that is associated with the user and was received prior to the login, wherein the second anonymous identifier is different from the first anonymous identifier;   determining that the user has logged into the second different device;   after identifying the second anonymous identifier, storing an association between the user tag, the first anonymous identifier and the second different anonymous identifier, the association anonymously linking the user with the first device and the second different device;   receiving a request for content from either:
 the first device wherein the request includes the first anonymous identifier; 
 or 
 the second different device using wherein the request includes the second different anonymous identifier; 
 using the received first anonymous identifier to locate a plurality of different devices that are mapped to the user including locating another of the first or second different device; 
 determining, using the one or more processors, session history information associated with each the user's use of the first and second different device; 
 creating, using the one or more processors, aggregated session history using the determined session history information; and 
 providing, using the one or more processors, content in response to the request for content using either the first anonymous identifier or the second different anonymous identifier and based on the association and the aggregated session history. 
   
     
     
       22. A computer program product tangibly embodied in a computer-readable storage device and comprising instructions that, when executed by a processor, cause the processor to:
 receive a first login request from a first device used by a user for logging into a service;   after logging in the user based on the received first login request, identify a first anonymous identifier that is associated with the user wherein identifying includes either receiving the first anonymous identifier during a session while the user is logged in or locating the first anonymous identifier that is associated with the user and was received prior to the login;   determine, using personal information associated with the user that is unique to the user, a user tag for the user including constructing the user tag by obfuscating at least a portion of the personal information, wherein the user tag does not include any personally identifiable information associated with the user;   receive a second login request from a second different device used by the user;   after logging in the user based on the received second login request, identify a second anonymous identifier that is associated with the user wherein identifying includes either receiving the second anonymous identifier during a session while the user is logged in or locating the second anonymous identifier that is associated with the user and was received prior to the login, wherein the second anonymous identifier is different from the first anonymous identifier;   after identifying the second anonymous identifier, store an association between the user tag, the first anonymous identifier and the second different anonymous identifier, the association anonymously linking the user with the first device and the second different device;   receive a request for content from either:
 the first device including wherein the request includes the first anonymous identifier; 
 or 
 the second different device wherein the request includes the second different anonymous identifier; 
 use the received first anonymous identifier to locate a plurality of different devices that are mapped to the user including locating another of the first or second different device; 
 determine, using the one or more processors, session history information associated with each the user's use of the first and second different device; 
 create, using the one or more processors, aggregated session history using the determined session history information; and 
 provide content in response to the request using the association and the aggregated session history. 
   
     
     
       23. A computer-implemented method comprising:
 receiving, by one or more processors, a first login request from a first device used by a user for logging into a service, the first login request including a first device identifier (ID) identifying the first device and a user login ID of a user of the first device;   determining, by the one or more processors, a user tag for the user based on the user login ID;   automatically storing, by the one or more processors, responsive to the first login request, a first association between the user tag and the first device ID, the first association linking the user with the first device;   receiving, by the one or more processors, a second login request from a second device different from the first device, the second login request including a second device ID identifying the second device and the user login ID;   automatically storing, by the one or more processors, responsive to the second login request, a second association between the user tag and the second device ID, the association linking the user with the second device;   receiving, by the one or more processors, a request for content from the first device, the request for content includes the first device ID;   using, by the one or more processors, the first device ID received in the request for content to identify at least the first device and the second device through which the user previously logged in to the service;   determining, by the one or more processors, session history information associated with each of the first device and second device;   creating, by the one or more processors, in response to the request for content, aggregated session history using the session history information; and   providing, by the one or more processors, content in response to the request for content using the first association, the second association and the aggregated session history.   
     
     
       24. The method of claim 23, wherein storing the first association and storing the second association include storing the user tag, the first device ID and the second ID as entries of a table. 
     
     
       25. The method of claim 23, wherein the service includes a web service. 
     
     
       26. The method of claim 23, wherein the service includes a social networking service. 
     
     
       27. The method of claim 23, wherein the request for content includes a first request for content and the method further comprising:
 receiving, by the one or more processors, a second request for content from the second device, the second request for content including the second device ID;   using, by the one or more processors, the second device ID received in the second request for content to identify at least the first device and the second device through which the user previously logged in to the service;   determining, by the one or more processors, second session history information associated with each of the first device and second device;   creating, by the one or more processors, in response to the second request for content, second aggregated session history using the second session history information; and   providing, by the one or more processors, second content in response to the second request for content using the first association, the second association, and the second aggregated session history.   
     
     
       28. The method of claim 23 wherein determining a user tag for the user includes determining a random or pseudo-random number based on the user login ID and storing the random or pseudo-random number as the user tag. 
     
     
       29. The method of claim 23 wherein determining a user tag for the user includes applying a hash function to the user login ID to generate the user tag. 
     
     
       30. The method of claim 23 further comprising deleting the first association or the second association after expiration of a time period after receipt of the first login request or the second login request. 
     
     
       31. The method of claim 23 further comprising deleting the first association or the second association responsive to logout by the user from the service. 
     
     
       32. A system comprising:
 at least one processor; and   at least one memory storing computer code instructions, the computer code instructions when executed, cause the at least one processor to:
 receive a first login request from a first device used by a user for logging into a service, the first login request including a first device identifier (ID) identifying the first device and a user login ID of a user of the first device; 
 determine a user tag for the user based on the user login ID; 
 automatically store responsive to the first login request, a first association between the user tag and the first device ID, the first association linking the user with the first device; 
 receive a second login request from a second device, different from the first device, the second login request including a second device ID identifying the second device and the user login ID; 
 automatically store responsive to the second login request, a second association between the user tag and the second device ID, the second association linking the user with the second device; 
 receive a request for content from the first device wherein the request for content includes the first device ID; 
 use the first device ID received in the request for content to identify at least the first device and the second device through which the user previously logged in to the service; 
 determine session history information associated with each of the first device and second device; 
 create, in response to the request for content, aggregated session history using the session history information; and 
 provide content in response to the request for content using the first association, the second association, and the aggregated session history. 
   
     
     
       33. The system of claim 32, wherein storing the first association and storing the second association include storing the user tag, the first device ID and the second ID as entries of a table. 
     
     
       34. The system of claim 32, wherein the service includes a web service. 
     
     
       35. The system of claim 32, wherein the service includes a social networking service. 
     
     
       36. The system of claim 32, wherein the request for content includes a first request for content and the computer code instructions when executed, further cause the at least one processor to
 receive a second request for content from the second device wherein the second request for content includes the second device ID;   use the second device ID received in the second request for content to identify at least the first device and the second device through which the user previously logged in to the service;   determine second session history information associated with each of the first device and second device;   create, in response to the second request for content, second aggregated session history using the second session history information; and   provide second content in response to the second request for content using the first association, the second association, and the second aggregated session history.   
     
     
       37. The system of claim 32, wherein determining a user tag for the user includes determining a random or pseudo-random number based on the user login ID and storing the random or pseudo-random number as the user tag. 
     
     
       38. The system of claim 32, wherein determining a user tag for the user includes applying a hash function to the user login ID to generate the user tag. 
     
     
       39. The system of claim 32, wherein the computer code instructions, when executed, further cause the at least one processor to delete the first association or the second association after expiration of a time period after receipt of the first login request or the second login request. 
     
     
       40. The system of claim 32, wherein the computer code instructions, when executed, further cause the at least one processor to delete the first association or the second association responsive to logout by the user from the service. 
     
     
       41. A non-transitory computer-readable medium comprising computer code instructions stored thereon, the computer code instructions, when executed by a processor, cause the processor to:
 receive a first login request from a first device used by a user for logging into a service, the first login request including a first device identifier (ID) identifying the first device and a user login ID of a user of the first device;   determine a user tag for the user based on the user login ID;   automatically store responsive to the first login request, a first association between the user tag and the first device ID, the first association linking the user with the first device;   receive a second login request from a second device, different from the first device, the second login request including a second device ID identifying the second device and the user login ID-;   automatically store responsive to the second login request, a second association between the user tag and the second device ID, the second association linking the user with the second device;   receive a request for content from the first device, the request for content including the first device ID;   use the first device ID received in the request for content to identify at least the first device and the second device through which the user previously logged in to the service;   determine session history information associated with each of the first device and second device;   create, in response to the request for content, aggregated session history using the session history information; and   provide content in response to the request for content using the first association, the second association, and the aggregated session history.   
     
     
       42. The non-transitory computer-readable medium of claim 41, wherein the service includes a web service or a social networking service.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.