ОБЛАСТЬ ТЕХНИКИ
[01] Настоящее техническое решение относится к передаче данных в общем, и, конкретнее, к способу и системе передачи персонализированного сообщения на пользовательское электронное устройство.
УРОВЕНЬ ТЕХНИКИ
[02] Различные глобальные или локальные сети связи (Интернет, Всемирная Паутина, локальные сети и подобные им) предлагают пользователю большой объем информации. Информация включает в себя контекстуальные разделы, такие как, среди прочего, новости и текущие события, карты, информацию о компаниях, финансовую информацию и ресурсы, информацию о трафике, игры и информацию развлекательного характера. Пользователи используют множество клиентских устройств (настольный компьютер, портативный компьютер, ноутбук, смартфон, планшеты и подобные им) для получения доступа к богатому информационному содержимому (например, изображениям, аудио- и видеофайлам, анимированным изображениям и прочему мультимедийному содержимому подобных сетей).
[03] Пользователь может получать доступ к информации, доступной в Интернете различными способами. Данный пользователь может получить доступ к конкретному ресурсу напрямую, введя адрес ресурса (обычно URL или Единый указатель ресурса, например www.webpage.com, что является выдуманным URL, представленным здесь исключительно в целях иллюстрации), или же выбрав ссылку в электронном сообщении или на другом сетевом ресурсе 212. Это особенно удобно в тех случаях, когда пользователь знает, в каком именно ресурсе он заинтересован.
[04] В противном случае пользователь может выполнить поиск желаемого ресурса с помощью поисковой системы. Последнее особенно подходит для тех случаев, когда пользователю известна интересующая его тематика, но неизвестен конкретный адрес интересующего ресурса. Существуют многочисленные поисковые системы, доступные пользователю. Некоторые из них являются поисковыми системами общего назначения (например, Yandex™, Google™, Yahoo™ и тому подобное). Другие считаются вертикальными поисковыми системами - например, поисковые системы, нацеленные на определенную тему поиска, такие как Momondo™, поисковая система для поиска авиаперелетов. Вне зависимости от того, какая именно поисковая система используется, поисковая система в общем случае выполнена с возможностью получать от пользователя поисковый запрос, выполнять поиск и выводить ранжированную страницу результатов поиска (SERP) пользователю.
[05] При получении доступа к конкретной веб-странице или при проведении поиска пользователю может быть представлено общее содержимое или персонализированное содержимое. Общее содержимое представляет собой содержимое, которое будет показано любому пользователю, пытающемуся получить доступ к конкретному ресурсу, без учета связанных с пользователем параметров, например, интересов пользователя, истории взаимодействия пользователя и так далее. Персонализированное содержимое представляет собой тип содержимого, который конкретно персонализирован для данного пользователя на основе предсказанных или известных параметров пользовательского интереса.
[06] Например, ранжирование результатов поиска может быть общим (с помощью общего алгоритма ранжирования результатов поиска) или персонализированным для данного пользователя (т.е. ранжированным по меньшей мере частично на основе информации, которая известна о данном пользователе, например, на основе предыдущих запросов, предыдущих взаимодействий с результатами поиска и так далее). Аналогичным образом, данный сетевой ресурс 212 может предлагать пользователю общее содержимое и персонализированное содержимое. Персонализированное содержимое может принимать различные формы, например, целевое сообщение, внедренное в содержимое веб-сайта, целевое сообщение, которые было выбрано для данного пользователя как актуальное на основе конкретной информации, известной о данном пользователе.
[07] Целевое сообщение может быть предоставлено поставщиком общего содержимого данного сетевого ресурса 212 или, альтернативно, оно может поступать от стороннего источника и может быть внедрено в общее содержимое, доступное на сетевом ресурсе 212.
[08] Со ссылкой на Фиг. 1 представлена типичная для известного уровня техники система (не пронумерована) доставки персонализированного содержимого пользователю 104 электронного устройства 102 через сеть 106 передачи данных. Для этого с сетью 106 передачи данных связаны сервер 108 поставщика содержимого и сервер 110 поставщика персонализированного содержимого. Предполагается, что пользователь 104 желает получить доступ к сетевому ресурсу 212 112, расположенному на сервере 108 поставщика содержимого. Для этого, электронное устройство 102 может использовать браузер, например браузер GOOGLE™, YANDEX™, SAFARI™ и так далее. Также предполагается, что пользователь 104 вводит URL адрес, связанный с сетевым ресурсом 112 (например ,www.example-address.com, что является выдуманным URL, представленным здесь исключительно в целях иллюстрации).
[09] В ответ на то, что пользователь 104 пытается получить доступ к сетевому ресурсу 112, электронное устройство 102 создает запрос 120 ресурса в соответствии с подходящим протоколом связи, и передает его через сеть 106 передачи данных серверу 108 поставщика содержимого. Сервер 108 поставщика содержимого получает запрос 120 ресурса и определяет, что сетевой ресурс 112 является тем, что ищет пользователь 104 (например, на основе процесса перевода URL в IP адрес). Сервер 108 поставщика содержимого определяет, что сетевой ресурс 112 содержит общую часть и персонализированную часть. Сервер 108 поставщика содержимого может дополнительно определять, что содержимое общей части сохраняется сервером 108 поставщика содержимого, и что содержимое персонализированной части сохраняется сервером 110 поставщика персонализированного содержимого. По этой причине сервер 108 поставщика содержимого передает запрос 122 на персонализированное содержимое через сеть 106 передачи данных (или отдельную сеть, в зависимости от обстоятельств) серверу 110 поставщика персонализированного содержимого. Запрос 122 на персонализированное содержимое включает в се6я,среди про чего, указание на идентификатор пользователя и/или указание на интересы пользователя, связанные с пользователем 104.
[10] На основе идентификатора пользователя и/или интересов пользователя, сервер 110 поставщика персонализированного содержимого выбирает содержимое для части персонализированного содержимого и передает данные 124 части персонализированного содержимого через сеть 106 передачи данных серверу 108 поставщика содержимого. Данные 124 части персонализированного содержимого могут, например, содержать скрипт для внедрения их в персонализированную часть сетевого ресурса 112, скрипт, который выполняется электронным устройством 102 для получения персонализированного содержимого с сервера 110 поставщика персонализированного содержимого.
[11] В американской патентной заявке №2016/0063578 (опубликованной 3 марта, 2016 под авторством Карассо, и выданной компании Adsupply Inc.) описана система обхода блокировщика рекламы для того, чтобы рекламные объявления были загружены и представлены на пользовательском устройстве, где установлен один или несколько блокировщиков рекламы. Система обхода блокировщика рекламы включает в себя обходной загрузчик и обходную прокси. Обходной загрузчик - компонент, который встроен в содержимое издателя. Когда содержимое издателя загружается и подвергается парсингу со стороны пользовательского устройства, обходной загрузчик выполняется путем обнаружения наличия любого блокировщика рекламы на пользовательском устройстве. Если они найдены, обходной загрузчик перенаправляет любое заблокированное рекламное объявление на обходную прокси. Обходная прокси извлекает запрашиваемые рекламные объявления и возвращает их обходному загрузчику, который далее повторно вводит рекламные объявления в финальную презентацию содержимого или отрисовку. Обходная прокси может также модифицировать содержимое издателя путем замены любого заблокированного рекламного объявления, встроенного в содержимое, ссылками на обходную прокси.
[12] Американская патентная заявка №2017/0109797 (опубликованная 20 апреля, 2017 под авторством Боффа и др., и выданная компании Akamai Technologies Inc.) описывает методику со стороны сервера для определения и смягчения фильтрации со стороны клиента, например, блокировки рекламы. Во время работы, методика работает на стороне сервера во время связи клиент-сервер для предоставления определения в реальном времени наличия клиентского фильтра (например, расширения в виде блокировщика рекламы) с помощью очевидных обменов запросами, и дальнейшего смягчения (отключения) этого фильтра с помощью одной или нескольких процедур, предназначенных для модификации тела ответа HTML или скрытия URL иным путем. Предпочтительно, издатель (клиент CDN) определяет один или несколько критериев ресурсов страницы, которые предоставляются с перекрыванием, и которые необходимо защитить от фильтрации со стороны клиента.
РАСКРЫТИЕ ТЕХНОЛОГИИ
[13] Разработчики настоящего технического решения рассматривали по меньшей мере одну проблему, соответствующую известному уровню техники, которая связана с доставкой персонализированного содержимого пользователю 104. Конкретнее, многие браузерные приложения, выполняемые электронными устройствами 102 исполняют так называемые приложения фильтрования содержимого также известные как «блокировщики рекламы» («ad blocker»). Приложения по фильтрации содержимого обычно используются как "расширения" для браузерного приложения, выполняемого электронным устройством 102.
[14] Приложения фильтрования содержимого обычно выполнены с возможностью убрать или изменять персонализированное содержимое, которое будет представлено как часть сетевых ресурсов 112. Обычно, приложения фильтрования содержимого направлены на рекламные или другие коммерческие сообщения, расположенные на сетевом ресурсе 112, без установления ограничений. Таким образом, приложение фильтрования содержимого может изменять, убирать или каким-либо иным способом мешать пользователю 104 получать доступ к персонализированному содержимому на сетевом ресурсе 112, в котором пользователь 104 может быть в противном случае заинтересован.
[15] Дополнительно, разработчики настоящей технологии предполагают, что из-за принципов работы существующих блокировщиков рекламы (например, белые листы, черные листы, фильтрация на основе формата ссылки и и.д.) в сочетании с тем фактом, что большая часть сетевых ресурсов 212 состоит из стандартного (общего) и нестандартного (персонализированного) содержимого, связанного и извлеченного из вызовов, существует риск того, что блокировщик рекламы удалит не только персонализированное содержимое (например, рекламу), но и общее содержимое, которое сетевой ресурс 212 должен предоставлять пользователю. Таким образом, изобретатели настоящей технологии предполагают, что выполнение блокирующего рекламу программного обеспечения может удалять общее содержимое сетевого ресурса и, тем самым, "портить" предоставление сетевого ресурса 112 электронного устройства 102.
[16] Это может приводить к недовольству пользователя 104 любым или обоими из сетевого ресурса 212 и браузерного приложения, с которым работает пользователь 104.
[17] Задачей предлагаемой технологии является устранение по меньшей мере некоторых недостатков, присущих известному уровню техники.
[18] Первым объектом настоящего технического решения является способ передачи персонализированного содержимого электронному устройству, связанному с пользователем, причем способ выполняется в системе персонализированного содержимого. Система персонализированного содержимого включает в себя: сеть передачи данных; сервер сетевого ресурса, размещающий сетевой ресурс, и доступный через сеть передачи данных; электронное устройство выполнено с возможностью получать доступ к сетевому ресурсу через сеть передачи данных, сервер персонализированного содержимого, соединенный с сетью передачи данных, и доступный серверу сетевого ресурса и электронному устройству через сеть передачи данных; причем сетевой ресурс обладает ссылкой на общее содержимое и персонализированной ссылкой на содержимое; ссылка на общее содержимое предназначена для получения доступа к общей части содержимого, расположенной на сервере сетевого ресурса, которая предназначена для отображения в виде части сетевого ресурса при отображении электронным устройством, и ссылка на персонализированное содержимое предназначена для доступа к персонализированной части содержимого, расположенной на сервере персонализированного содержимого, которое предназначено для отображения в виде части сетевого ресурса при отображении электронным устройством. Способ включает в себя: получение сервером персонализированного содержимого от сервера сетевого ресурса, прокси-запроса на сетевой ресурс, причем прокси-запрос был создан на основе запроса на сетевой ресурс, полученного от электронного устройства; на основе прокси-запроса, запрос сервером персонализированного содержимого содержимого сетевого ресурса с сервера сетевого ресурса; парсинг, сервером персонализированного содержимого, содержимого сетевого ресурса, для определения множества ссылок, содержащихся на нем, причем множество ссылок включает в себя ссылку на общее содержимое и ссылку на персонализированное содержимое; выполнение сервером персонализированного содержимого процедуры обфускации, которая применяется ко всему множеству ссылок таким образом, что: каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан, по меньшей мере частично, на доменном имени сервере сетевого ресурса; передачу содержимого сетевого ресурса со множеством ссылок, которые были обфусцированы, электронному устройству.
[19] В некоторых вариантах осуществления способа, способ далее включает в себя получение, сервером персонализированного содержимого, от сервера сетевого ресурса, прокси-запроса на содержимое для сетевого ресурса, причем прокси-запрос на содержимое был создан сервером сетевого ресурса в ответ на получение запроса на извлечение содержимого, который был создан электронным устройством в ответ на множество ссылок, которые были обфусцированы сервером персонализированного содержимого. Технический результат заключается в расширении арсенала технических средств передачи персонализированного содержимого электронному устройству.
[20] В некоторых вариантах осуществления способа, способ далее включает в себя выполнение сервером персонализированного содержимого, процедуры де-обфускации ссылки, которая применяется ко всему множеству ссылок, которые были обфусцированы для извлечения де-обфусцированных ссылок, включая ссылку на общее содержимое и ссылку на персонализированное содержимое.
[21] В некоторых вариантах осуществления способа, способ далее включает в себя, на основе ссылки на общее содержимое, извлечение части общего содержимого, и на основе ссылки на персонализированное содержимое, извлечение части персонализированного содержимого; и причем способ далее включает в себя передачу части общего содержимого и часть персонализированного содержимого на электронное устройство.
[22] В некоторых вариантах осуществления способа, прокси-запрос включает в себя указание по меньшей мере на один пользовательский параметр, и причем указание по меньшей мере на один пользовательский параметр используется для выбора конкретной одной из частей персонализированного содержимого в ответ на получение прокси-запроса на содержимое.
[23] В некоторых вариантах осуществления способа, прокси-запрос был создан с помощью сервера сетевого ресурса в ответ на запрос на ресурс, полученный сервером сетевого ресурса, содержащим заранее определенный флаг обработки.
[24] В некоторых вариантах осуществления способа, заранее определенный флаг обработки был создан на основе встроенного сценария, который выполняется как часть предыдущего сетевого ресурса, загружаемого с сервера сетевого ресурса на электронное устройство.
[25] В некоторых вариантах осуществления способа, встроенный сценарий выполнен с возможностью определять блокирующее программное обеспечение, выполняемое на электронном устройстве.
[26] В некоторых вариантах осуществления способа, выполнение процедуры обфускации ссылки приводит к тому, что: ссылка на общее содержимое, которое было обфусцировано, становится обфусцированной ссылкой на общее содержимое; ссылка на персонализированное содержимое, которое было обфусцировано, становится обфусцированной ссылкой на персонализированное содержимое; и при этом как обфусцированная ссылка на общее содержимое, так и обфусцированная ссылка на персонализированное содержимое обладают одним и тем же форматом, основанным на заранее определенном шаблоне ссылки.
[27] В некоторых вариантах осуществления способа, одинаковый формат как обфусцированной ссылки на общее содержимое, так и обфусцированной ссылки на персонализированное содержимое инициируют их указывать, при выполнении электронным устройством, на доменное имя сервера сетевого ресурса.
[28] В некоторых вариантах осуществления способа, один и тот же формат обладает стандартной (общей) частью и индивидуализированной (персонализированной) частью, причем стандартная часть основана на доменном имени, а индивидуализированная часть основана на типе содержимого, на которое указывает соответствующая ссылка.
[29] В некоторых вариантах осуществления способа, индивидуализированная часть включает в себя ключевую часть и закодированную часть, причем ключевая часть указывает на ключ, используемый на обфускации закодированной версии.
[30] В некоторых вариантах осуществления способа, закодированная часть включает в себя по меньшей мере два набора символов, разделенных соответствующим специальным символом, причем ключевая часть указывает на тип и число соответствующих специальных символов.
[31] В некоторых вариантах осуществления способа, число наборов и соответствующее число соответствующих специальных символов выбирается случайным образом.
[32] В некоторых вариантах осуществления способа, специальные символы представляют собой одно из следующего - косую черту и группу буквенно-цифровых символов.
[33] В некоторых вариантах осуществления способа, ключевая часть периодически изменяется.
[34] В некоторых вариантах осуществления способа, способ далее включает в себя выполнение процедуры обфускации дерева DOM для изменения по меньшей мере одного из - идентификаторов и класса, связанного по меньшей мере с одним элементом дерева DOM.
[35] В некоторых вариантах осуществления способа, по меньшей мере один элемент дерева DOM связан с частью персонализированного содержимого.
[36] В некоторых вариантах осуществления способа, способ далее включает в себя выполнение дополнительной процедуры обфускации для изменения по меньшей мере дополнительного содержимого сетевого ресурса.
[37] В некоторых вариантах осуществления способа, по меньшей мере одно дополнительное содержимое является по меньшей мере одним из: изображением, Каскадной Таблицей Стилей и JAVA-скриптом.
[38] В некоторых вариантах осуществления способа, сервер персонализированного содержимого выполнен с возможностью осуществлять процедуру создания персонализированного содержимого и процедуру прокси-сервера.
[39] В некоторых вариантах осуществления способа, процедура создания персонализированного содержимого и процедура прокси-сервера выполняются в распределенном виде, каждая на соответствующем сервере.
[40] Еще одним объектом настоящего технического решения является сервер персонализированного содержимого. Сервер персонализированного содержимого, содержащий: процессор; память, доступную процессору; интерфейс передачи данных, связанный с процессором, и выполненный с возможностью осуществлять двустороннюю связь по сети передачи данных для связи с: сервером сетевого ресурса, на котором находится сетевой ресурс, и который доступен через сеть передачи данных; электронное устройство выполнено с возможностью получать доступ к сетевому ресурсу через сеть передачи данных, причем сетевой ресурс обладает ссылкой на общее содержимое и персонализированной ссылкой на содержимое; ссылка на общее содержимое предназначена для получения доступа к общей части содержимого, расположенной на сервере сетевого ресурса, которая предназначена для отображения в виде части сетевого ресурса при отображении электронным устройством, и ссылка на персонализированное содержимое предназначена для доступа к персонализированной части содержимого, расположенной на сервере персонализированного содержимого, которое предназначено для отображения в виде части сетевого ресурса при отображении электронным устройством. Процессор выполнен с возможностью осуществлять: получение от сервера сетевого ресурса, прокси-запроса на сетевой ресурс, причем прокси-запрос был создан на основе запроса на сетевой ресурс, полученного от электронного устройства; на основе прокси-запроса, запрос содержимого сетевого ресурса с сервера сетевого ресурса; парсинг содержимого сетевого ресурса, для определения множества ссылок, содержащихся на нем, причем множество ссылок включает в себя ссылку на общее содержимое и ссылку на персонализированное содержимое; выполнение процедуры обфускации, которая применяется ко всему множеству ссылок таким образом, что: каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан, по меньшей мере частично, на доменном имени сервере сетевого ресурса; передачу содержимого сетевого ресурса со множеством ссылок, которые были обфусцированы, электронному устройству.
[41] В контексте настоящего описания «сервер» подразумевает под собой компьютерную программу, работающую на соответствующем оборудовании, которая способна получать запросы (например, от клиентских устройств) по сети и выполнять эти запросы или инициировать выполнение этих запросов. Оборудование может представлять собой один физический компьютер или одну физическую компьютерную систему, но ни то, ни другое не является обязательным для данной технологии. В контексте настоящего технического решения использование выражения «сервер» не означает, что каждая задача (например, полученные команды или запросы) или какая-либо конкретная задача будет получена, выполнена или инициирована к выполнению одним и тем же сервером (то есть одним и тем же программным обеспечением и/или аппаратным обеспечением); это означает, что любое количество элементов программного обеспечения или аппаратных устройств может быть вовлечено в прием/передачу, выполнение или инициирование выполнения любого запроса или последствия любого запроса, связанного с клиентским устройством, и все это программное и аппаратное обеспечение может быть одним сервером или несколькими серверами, оба варианта включены в выражение «по меньшей мере один сервер».
[42] В контексте настоящего описания «клиентское устройство» подразумевает под собой аппаратное устройство, способное работать с программным обеспечением, подходящим к решению соответствующей задачи. Таким образом, примерами электронных устройств (среди прочего) могут служить персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.) смартфоны, планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует иметь в виду, что устройство, ведущее себя как электронное устройство в настоящем контексте, может вести себя как сервер по отношению к другим электронным устройствам. Использование выражения «электронное устройство» не исключает возможности использования множества электронных устройств для получения/отправки, выполнения или инициирования выполнения любой задачи или запроса, или же последствий любой задачи или запроса, или же этапов любого вышеописанного метода.
[43] В контексте настоящего описания «база данных» подразумевает под собой любой структурированный набор данных, не зависящий от конкретной структуры, программного обеспечения по управлению базой данных, аппаратного обеспечения компьютера, на котором данные хранятся, используются или иным образом оказываются доступны для использования. База данных может находиться на том же оборудовании, выполняющем процесс, на котором хранится или используется информация, хранящаяся в базе данных, или же база данных может находиться на отдельном оборудовании, например, выделенном сервере или множестве серверов.
[44] В контексте настоящего описания «информация» включает в себя информацию любую информацию, которая может храниться в базе данных. Таким образом, информация включает в себя, среди прочего, аудиовизуальные произведения (изображения, видео, звукозаписи, презентации и т.д.), данные (данные о местоположении, цифровые данные и т.д.), текст (мнения, комментарии, вопросы, сообщения и т.д.), документы, таблицы и т.д.
[45] В контексте настоящего описания термин «фактор релевантности набора поисковых результатов» означает вероятность того, что пользователь, который вводит поисковый запрос, желает увидеть данные, расположенные в наборе результатов поиска.
[46] В контексте настоящего описания «компонент» подразумевает под собой программное обеспечение (соответствующее конкретному аппаратному контексту), которое является необходимым и достаточным для выполнения конкретной(ых) указанной(ых) функции(й).
[47] В контексте настоящего описания термин «набор результатов поиска» является списком результатов, выводимых поисковой системой, которая может охватывать один или несколько общих или специализированных поисковых модулей, в ответ на поисковый запрос. Набор результатов поиска может содержать список результатов, которые выводятся модулем веб-поиска или одним или несколькими модулями вертикального поиска или путем комбинации результатов, выведенных веб-модулем или одним или несколькими вертикальными модулями. Набор результатов поиска также может не содержать результатов.
[48] В контексте настоящего описания термин «страница результатов поиска (SERP)» является списком результатов, которые будут показаны на электронном устройстве, список создается путем комбинации наборов результатов поиска с целевыми сообщениями.
[49] В контексте настоящего описания «используемый компьютером носитель компьютерной информации» подразумевает под собой носитель абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д.
[50] В контексте настоящего описания слова «первый», «второй», «третий» и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной взаимосвязи между этими существительными. Так, например, следует иметь в виду, что использование терминов «первый сервер» и «третий сервер» не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) серверов/между серверами, равно как и их использование (само по себе) не предполагает, что некий "второй сервер" обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание «первого» элемента и «второго» элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, «первый» сервер и «второй» сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях они могут являться разным программным и/или аппаратным обеспечением.
[51] Каждый вариант осуществления настоящей технологии преследует по меньшей мере одну из вышеупомянутых целей и/или объектов, но наличие всех не является обязательным. Следует иметь в виду, что некоторые объекты данной технологии, полученные в результате попыток достичь вышеупомянутой цели, могут не удовлетворять этой цели и/или могут удовлетворять другим целям, отдельно не указанным здесь.
[52] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящей технологии станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[53] Для лучшего понимания настоящей технологии, а также других ее аспектов и характерных черт, сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:
[54] На Фиг. 1 представлена система доставки персонализированного содержимого на электронное устройство, присущая известному уровню техники.
[55] На Фиг. 2 представлена принципиальная схема системы, выполненной в соответствии с неограничивающими вариантами осуществления настоящего технического решения.
[56] На Фиг. 3 представлено изображение сетевого ресурса, который обладаетчастью общего содержимого и частью персонализированного содержимого, сетевой ресурс доступен в системе, показанной на Фиг. 2
[57] На Фиг. 4 представлен неограничивающий вариант осуществления базы данных общего содержимого, выполненный в соответствии с неограничивающими вариантами осуществления настоящего технического решения, база данных общего содержимого является частью системы, показанной на Фиг. 2.
[58] На Фиг. 5 представлен неограничивающий вариант осуществления базы данных персонализированного содержимого, выполненный в соответствии с неограничивающими вариантами осуществления настоящего технического решения, база данных персонализированного содержимого является частью системы, показанной на Фиг. 2.
[59] На Фиг. 6 представлена принципиальная схема потока сигнала между различными компонентами системы, показанной на Фиг. 2, причем система реализована в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.
[60] На Фиг. 7 представлена схематическая иллюстрация структуры обфусцированной ссылки, выполненной в соответствии с некоторыми неограничивающими вариантами осуществления настоящей технологии.
[61] На Фиг. 8 представлена принципиальная схема потока сигнала между различными компонентами системы, показанной на Фиг. 2, причем система реализована в соответствии с другими неограничивающими вариантами осуществления настоящей технологии.
[62] На Фиг. 9 представлена блок-схема способа передачи персонализированного сообщения электронному устройству, способ выполняется в системе, показанной на Фиг. 2, в соответствии с некоторыми неограничивающими вариантами осуществления настоящего технического решения.
ОСУЩЕСТВЛЕНИЕ
[63] На Фиг. 2 представлена схема системы 200, реализованной в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем. Важно иметь в виду, что сервер ранжирования 200 является только одним из вариантов осуществления настоящего технического решения. Таким образом, все последующее описание представлено только как описание иллюстративного примера настоящей технологии. Это описание не предназначено для определения объема или установления границ настоящей технологии. Некоторые полезные примеры модификаций системы 200 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящей технологии. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где это еще не было сделано, т.е. там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным вариантом осуществления этого элемента настоящей технологии. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что система 200 представляет собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящего технического решения, и в подобном случае представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящей технологии будут обладать гораздо большей сложностью.
[64] На Фиг. 2 показана система 200, выполненная в соответствии с одним неограничивающим вариантом осуществления настоящего технического решения. Система 200 включает в себя электронное устройство 202. Электронное устройство 202 обычно связано с пользователем 204 и, таким образом, иногда может упоминаться как «клиентское устройство». Следует отметить, что тот факт, что электронное устройство 202 связано с пользователем, не подразумевает какого-либо конкретного режима работы, равно как и необходимости входа в систему, быть зарегистрированным, или чего-либо подобного. Естественно, система 200 может обладать множеством электронных устройств, аналогичных или отличающихся от электронного устройства 202.
[65] Варианты электронного устройства 202 конкретно не ограничены, но в качестве примера электронного устройства 202 могут использоваться персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), беспроводное электронное устройство (мобильные телефоны, смартфоны, планшеты и т.п.), а также сетевое оборудование (маршрутизаторы, коммутаторы или шлюзы). Общий вариант осуществления электронного устройства 202 известен в области техники, и поэтому не будет здесь подробно описан. Достаточно сказать, что электронное устройство 202 содержит пользовательский интерфейс ввода (например, клавиатуру, мышь, сенсорную панель, сенсорный экран и т.п.) для получения пользовательского ввода; пользовательский интерфейс вывода (например, экран, сенсорный экран, принтер и т.п.) для предоставления визуального или звукового вывода пользователю; интерфейс сетевой связи (например, модем, сетевую карту и т.п.) для двусторонней связи по сети 206 передачи данных; и процессор, соединенный с пользовательским интерфейсом ввода, пользовательским интерфейсом вывода и интерфейсом сетевой связи, который выполнен с возможностью выполнять различные процедуры, включая те, что описаны ниже. С этой целью процессор может сохранять или иметь доступ к машиночитаемым командам, выполнение которых инициирует процессор выполнять различные описанные здесь процедуры.
[66] Электронное устройство 202 содержит аппаратное и/или прикладное программное и/или системное программное обеспечение (или их комбинацию), которая позволяет электронному устройству 202 выполнять браузерное приложение 208. В общем случае, задачей браузерного приложения 208 является позволить пользователю 204 получить доступ к одному или нескольким сетевым ресурсам через сеть 206 передачи данных, например, к сетевому ресурсу 212, расположенному на сервере 210 сетевого ресурса.
[67] Кроме того, система 200 включает в себя вышеупомянутую сеть 206 передачи данных. В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, сеть 206 передачи данных может представлять собой Интернет. В других вариантах осуществления настоящей технологии сеть 206 передачи данных может быть реализована иначе - в виде глобальной сети передачи данных, локальной сети передачи данных, частной сети передачи данных и т.п.
[68] Система 200 дополнительно включает в себя вышеупомянутый сервер 210 сетевого ресурса, соединенный с сетью 206 передачи данных через соответствующую линию (не показано). Сервер 210 сетевого ресурса может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящего технического решения, сервер 210 сетевого ресурса может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™. Излишне говорить, что сервер 210 сетевого ресурса может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение или их комбинацию. В представленном варианте осуществления настоящего технического решения, не ограничивающем ее объем, сервер 210 сетевого ресурса является одиночным сервером. В других вариантах осуществления настоящего технического решения, не ограничивающих ее объем, функциональность сервера 210 сетевого ресурса может быть разделена, и может выполняться с помощью нескольких серверов.
[69] Вариант осуществления сервера 210 сетевого ресурса хорошо известен. Тем не менее, вкратце, сервер 210 сетевого ресурса содержит интерфейс связи (не показан), который настроен и выполнен с возможностью устанавливать соединение с различными элементам (например, электронным устройством 102 и другими устройствами, потенциально присоединенными к сети 206 передачи данных) через сеть 206 передачи данных. Сервер 210 сетевого ресурса дополнительно включает в себя один или несколько пунктов из следующего: компьютерный процессор (не показан), функционально соединенный с интерфейсом связи и настроенный и выполненный с возможностью выполнять различные процессы, описанные здесь.
[70] Сервер 210 сетевого ресурса выполнен с возможностью предоставлять доступ ко множеству сетевых ресурсов, одним из которых является сетевой ресурс 212, представленный на Фиг. 2. Сетевой ресурс 212 может получить доступ к пользователю 204 с помощью электронного устройства 202 различными способами, например, путем ввода URL, связанного с сетевым ресурсом 121, в браузерное приложение 208, выполняемое на электронном устройстве 202, путем нажатия на ссылку (например, в электронном письме, на другом сетевом ресурсе или на странице результатов поиска), ведущую на сетевой ресурс 212 или любым другим подходящим способом.
[71] Сетевой ресурс 212 может представлять собой веб-сайт, веб-портал, страницу результатов поиска и тому подобное. Со ссылкой на Фиг. 3, сетевой ресурс 212 (при отрисовке, например, электронным устройством 202) обладает частью 302 общего содержимого и частью 304 персонализированного содержимого (или их множеством). Часть 302 общего содержимого представляет собой содержимое, которое будет показано любому пользователю, пытающемуся получить доступ к сетевому ресурсу 212, без учета связанных с пользователем параметров, например, интересов пользователя, истории взаимодействия пользователя и так далее. Часть 304 персонализированного содержимого представляет собой тип содержимого, который конкретно персонализирован (т.е. выбран) для данного пользователя (например, пользователя 204) на основе предсказанных или известных параметров пользовательского интереса.
[72] Например, для портала газеты (например, www.cnn.com или тому подобного), который является сетевым ресурсом 212, часть 302 общего содержимого может содержать наиболее важные новости, которые могут быть показаны любому пользователю, пытающемуся получить доступ к порталу газет, а часть 304 персонализированного содержимого может включать в себя новости, связанные с конкретной темой, которая интересна пользователю 204 (т.е. часть 304 персонализированного содержимого может обладать выборкой новостей, специально выбранной для данного пользователя, например, пользователя 204. Аналогичным образом, часть 304 персонализированного содержимого на том же портале газеты может включать в себя целевые сообщения, например, рекламное объявление, специально выбранное для пользователя 204.
[73] Несмотря на то, что Фиг. 3 схематично показан один элемент части 302 общего содержимого и один элемент части 304 персонализированного содержимого, это не является обязательным в каждом варианте осуществления настоящего технического решения. Таким образом, предполагается, что данный сетевой ресурс 212 может обладать одной или несколькими элементами части 302 общего содержимого и одной или несколькими элементами части 304 персонализированного содержимого. Также следует отметить, что расположение одного или нескольких элементов части 302 общего содержимого и одного или нескольких элементов части 304 персонализированного содержимого никак конкретно не ограничено.
[74] В некоторых вариантах осуществления настоящего технического решения некоторые или все элементы из части 304 персонализированного содержимого могут визуально отличаться от одного или нескольких элементов части 302 общего содержимого. В некоторых вариантах осуществления настоящего технического решения любой элемент из части 304 персонализированного содержимого может находиться над, под, слева или справа по отношению к одному или нескольким элементам части 302 общего содержимого. В некоторых вариантах осуществления настоящего технического решения, любой элемент из части 304 персонализированного содержимого может находиться между любыми двумя из одного или нескольких элементов части 302 общего содержимого (и при этом быть визуально отличными -например, обладать разным внешним видом, шрифтом, цветом, границами и так далее).
[75] В других вариантах осуществления настоящего технического решения некоторые или все из элементов части 304 персонализированного содержимого могут визуально не отличаться от одного или нескольких элементов части 302 общего содержимого. В этих вариантах осуществления настоящего технического решения любой элемент из части 304 персонализированного содержимого может находиться между любыми двумя из одного или нескольких элементов части общего содержимого. Этот подход особенно успешно применяется в тех вариантах осуществления технического решения (без установления ограничений), где сетевой ресурс 212 является страницей результатов поиска и часть 302 общего содержимого представляет результаты поиска, ранжированные в соответствии с алгоритмом общего ранжирования, а часть 304 персонализированного содержимого представляет результаты поиска, ранжированные в соответствии с персонализированным для пользователя алгоритмом ранжирования.
[76] В некоторых вариантах осуществления настоящей технологии, некоторое содержимое из части 302 общего содержимого и/или части 304 персонализированного содержимого может быть "встроено" в кодировку сетевого ресурса 212 (например, в язык разметки гипертекста (HTML) сетевого ресурса 212). В других вариантах осуществления настоящей технологии, некоторое или все содержимое из части 302 общего содержимого и/или части 304 персонализированного содержимого может быть размещено на соответствующих хостах, и HTML сетевого ресурса 212 может может содержать встроенную в него ссылку, причем ссылка инициирует загрузку соответствующего содержимого с соответствующего хоста, причем HTML сетевого ресурса 212 обрабатывается и отрисовывается электронным устройством 202.
[77] С этой целью, сетевой ресурс 212 может обладать указание на первую ссылку 306 и вторую ссылку 308. Первая ссылка 306 (которая может считаться "ссылкой на общее содержимое" 306) для доступа к содержимому части стандартного содержимого 302 сетевого ресурса 212, расположенного на сервере 210 сетевого ресурса, которое предназначено для отображения в виде части сетевого ресурса 212 при отображении электронным устройством 202. Вторая ссылка 308 (которая может считаться "ссылкой на персонализированное содержимое" 308) для доступа к содержимому части персонализированного содержимого 304, расположенного на сервере 214 персонализированного содержимого, которое предназначено для отображения в виде части сетевого ресурса 212 при отображении электронным устройством 202. Следует отметить, что вторая ссылка 308 не обязана указывать на конкретное содержимое, размещенное на сервере 214 персонализированного содержимого, вторая ссылка 308 выполнена с возможностью инициировать "вызов" на сервер 214 персонализированного содержимого, причем вызов инициирует сервер 214 персонализированного содержимого выбирать конкретное персонализированное содержимое на основе выбора критерия, и выводить таким образом выбранное персонализированное содержимое для отображения браузерным приложением 208. Процесс выбора персонализированного содержимого будет описан более подробное далее.
[78] Несмотря на то, что Фиг. 3 схематично показана одна первая ссылка 306 (и одна вторая ссылка 308), это не является обязательным в каждом варианте осуществления настоящей технологии. Таким образом, сетевой ресурс 212 может содержать множество первых ссылок 306 (и множество вторых ссылок 308). Например, данный пример сетевого ресурса 212 может обладать несколькими частями общего содержимого (например, несколько изображений, несколько текстовых окон, несколько встроенных видео и так далее). В этом примере каждая (или группа) из частей общего содержимого может обладать соответствующей первой ссылкой 306. Тоже самое, с соответствующими изменениями, применяется ко второй ссылке 308 и персонализированному содержимому.
[79] Сетевой ресурс 212 также может содержать один дополнительный элемент 310 содержимого. По меньшей мере один элемент 310 содержимого может включать в себя один или несколько дополнительных элементов содержимого для упрощения процесса и описания содержимого сетевого ресурса 212 электронным устройством 202. Примеры таких дополнительных элементов содержимого могут представлять собой одно или несколько из: изображение, Каскадную Таблицу Стилей (CCS), JAVA-скрипт и так далее.
[80] Сетевой ресурс 212 может также обладать встроенным (т.е. в код сетевого ресурса) апплетом 320. Апплет 320 может быть выполнен как интерфейса программирования приложений (API), как скрипт и так далее. Функциональность апплета 320 будет описана далее более подробно.
[81] Возвращаясь к описанию Фиг. 2, в соответствии с неограничивающими вариантами осуществления настоящей технологии, содержимое часть 302 общего содержимого расположено на сервере 210 сетевого ресурса и, конкретнее, сохранено в базе 211 данных общего содержимого, база 211 данных общего содержимого доступна либо серверу 210 сетевого ресурса, либо выполнена как часть сервера 210 сетевого ресурса.
[82] На Фиг. 4 представлен неограничивающий вариант осуществления базы 211 данных общего содержимого, который выполняется в соответствии с одним неограничивающим вариантом осуществления настоящего технического решения. База 211 данных общего содержимого сохраняет содержимое части 302 общего содержимого, представленной на Фиг. 4 под номером 402. База 211 данных общего содержимого также сохраняет содержимое множества дополнительных сетевых ресурсов, содержимое представлено на Фиг. 4 под номером 404. Общее содержимое, представленное под номером 404, может представлять собой общее содержимое для других страниц в сетевом ресурсе 212 (сетевой ресурс 212 является веб-сайтом или веб-порталом) или может быть общим содержимым для другого сетевого ресурса, который сохраняется сервером 210 сетевого ресурса, аналогичного или отличного от сетевого ресурса 212.
[83] Содержимое, хранящееся в базе 211 данных общего содержимого, может быть индивидуально адресуемым (т.е. получаемым) сервером 210 сетевого ресурса с помощью уникального идентификатора содержимого (например, уникального идентификатора ресурса или URJ, числового идентификатора содержимого и тому подобного), причем указание может предоставляться как часть первой ссылки 306.
[84] Продолжая с Фиг. 2, система 200 дополнительно включает в себя вышеупомянутый сервер 214 персонализированного содержимого, соединенный с сетью 206 передачи данных через соответствующую линию (не показано). Сервер 214 персонализированного содержимого может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящей технологии сервер 214 персонализированного содержимого может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™.
[85] Излишне говорить, что сервер 214 персонализированного содержимого может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение или их комбинацию. В представленном варианте осуществления настоящей технологии, не ограничивающем ее объем, сервер 214 персонализированного содержимого является одиночным сервером. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, функциональность сервера 214 персонализированного содержимого может быть разделена, и может выполняться с помощью нескольких серверов.
[86] В некоторых неограничивающих вариантах осуществления настоящей технологии, сервер 214 персонализированного содержимого может находиться под контролем и/или управлением поставщика персонализированного содержимого. В конкретном неограничивающем варианте осуществления технологии, сервер 214 персонализированного содержимого может находиться под контролем и/или управлением поисковой системы.
[87] Вариант осуществления сервера 214 персонализированного содержимого хорошо известен. Тем не менее, вкратце, сервер 214 персонализированного содержимого содержит интерфейс связи (не показан), который настроен и выполнен с возможностью устанавливать соединение с различными элементам (например, электронным устройством 102 и другими устройствами, потенциально присоединенными к сети 206 передачи данных) через сеть 206 передачи данных. Сервер 214 персонализированного содержимого дополнительно включает в себя один или несколько пунктов из следующего: компьютерный процессор (не показан), функционально соединенный с интерфейсом связи и настроенный и выполненный с возможностью выполнять различные процессы, описанные здесь.
[88] Как показано на Фиг. 2, сервер 214 персонализированного содержимого обладает доступом к базе 216 данных персонализированного содержимого. Содержимое части 304 персонализированного содержимого хранится в базе 216 данных персонализированного содержимого. На Фиг. 5 представлен неограничивающий вариант осуществления базы 216 данных персонализированного содержимого, который выполняется в соответствии с одним неограничивающим вариантом осуществления настоящего технического решения. База 216 данных персонализированного содержимого хранит множество возможного содержимого для выбора и включения в часть 304 персонализированного содержимого (часть 304 персонализированного содержимого выбрана для конкретного пользователя или группы пользователей, для которых предназначена часть 304 персонализированного содержимого).
[89] Таким образом, база 216 данных персонализированного содержимого соотносит указание на сохраненное персонализированное содержимое 502 с параметром 504 выбора, связанным соответственно с данным сохраненным персонализированным содержимым 502. Параметр 504 выбора сохраняет указание на один или несколько дескрипторов, которые описывают потенциальную аудиторию (например, пользователя 204 или других пользователей, аналогичных или отличных от пользователя 204), для которой предназначено соответствующее сохраненное персонализированное содержимое 502.
[90] Например, параметр 504 выбора может идентифицировать один или несколько из следующих параметров: тендер, социально-экономический статус, возрастной диапазон, диапазон доходов, параметры общих интересов (например, автомобили, спорт, коллекционирование, известные артисты и так далее), время дня, когда следует показывать персонализированное содержимое, географический регион, где следует показывать персонализированное содержимое и так далее.
[91] В описании Фиг. 5 персонализированное содержимое с идентификатором <файл_1> связано с <Параметр_1>, персонализированное содержимое с идентификатором <файл_2> связано с <Параметр_2> и персонализированное содержимое с идентификатором <файл_3> связано с <Параметр_3>. База 216 данных персонализированного содержимого может дополнительно сохранять число дополнительных возможных выборов содержимого для части 304 персонализированного содержимого, которые совместно представлены под номером 506.
[92] Должно быть очевидно, что, несмотря на то что персонализированное содержимое 502 описано как «персонализированное» для данного пользователя 204, не следует предполагать, что данный элемент хранимого персонализированного содержимого 502 будет исключительно выбран для одного из множества пользователей (включая пользователя 204).
[93] Наоборот, сохраненное персонализированное содержимое 502 может быть выбрано для пользователя 204 (на основе конкретных параметров, как будет описано ниже), а также для другого пользователя, который может, например, обладать интересами, аналогичными интересам пользователя 204. Исключительно в качестве примера предполагается, что сохраненное персонализированное содержимое 502 является выборкой наиболее популярных новостей, связанных с категорией «Спорт». Предполагается, что предыдущая браузерная активность пользователя 204 указывает на то, что пользователь 204 конкретно заинтересован в спорте и, следовательно, на основе параметра 504 выбора, данное сохраненное персонализированное содержимое 502 может быть выбрано для пользователя 204. Тем не менее, если другой пользователь (не показано) также определен как заинтересованный в спорте, то же данное сохраненное персонализированное содержимое 502 может быть выбрано также и для другого пользователя.
[94] Содержимое, сохраненное в базе 216 данных персонализированного содержимого, может быть индивидуально адресуемым (т.е. получаемым) сервером 210 сетевого ресурса и/или электронным устройством 102 с помощью уникального идентификатора содержимого (например, URL, числового идентификатора содержимого и так далее), который в некоторых вариантах осуществления технического решения может быть тем же самым, что и указание на сохраненное персонализированное содержимое 502. Этот адрес может быть использован по меньшей мере частично для создания второй ссылки 308.
[95] На Фиг. 6 представлена диаграмма блок-схемы, представляющая поток информации между различными компонентами системы 200 во время выполнения способов в соответствии с неограничивающими вариантами осуществления настоящей технологии. Конкретнее, на Фиг. 6 представлено браузерное приложение 208, выполняемое электронным устройством 202, сервером 210 сетевого ресурса, и сервером 214 персонализированного содержимого.
[96] В конкретном неограничивающем варианте осуществления, который представлен на Фиг. 6, сервер 214 персонализированного содержимого выполняет две суб-процедуры - процедуру 602 прокси-сервера и процедуру 604 создания персонализированного содержимого. В различных вариантах осуществления настоящей технологии, процедура 604 создания персонализированного содержимого и процедура 602 прокси-сервера могут выполняться как процедура программного обеспечения одним сервером (т.е. сервер 214 персонализированного содержимого). В других вариантах осуществления настоящей технологии, процедура 604 создания персонализированного содержимого и процедура 602 прокси-сервера могут каждая выполняться соответствующим сервером.
[97] Как часть сигнального потока 606, браузерное приложение 208 передает запрос на содержимое серверу 210 сетевого ресурса. Запрос на содержимое представлен как часть сигнального потока 606 может создаваться браузерным приложением 208 в ответ на пользовательское взаимодействие с браузерным приложением 208 (например, ввод пользователем URL, связанного с сетевым ресурсом 212, размещенным на сервере 210 сетевого ресурса, нажатие пользователем на ссылку на сетевой ресурс 212 в электронном письме, на другом сетевом ресурсе, в чате и т.д.). Запрос на содержимое, представленный как часть сигнального потока 606, может создаваться браузерным приложением 208 без пользовательского взаимодействия с браузерным приложением 208 (например, в ответ на то, что браузерное приложение 208 исполняет ссылку на сетевой ресурс 212 само по себе или тому подобное).
[98] В соответствии с вариантами осуществления настоящей технологии, сервер 210 сетевого ресурса анализирует содержимое запроса на содержимое, полученное как часть сигнального потока 606. В некоторых вариантах осуществления настоящей технологии, сервер 210 сетевого ресурса анализирует содержимое запроса на содержимое, полученное как часть сигнального потока 606 для представления заранее определенного флага обработки. В некоторых вариантах осуществления настоящей технологии, запрос на содержимое, который был получен как часть сигнального потока 606, может содержать пользовательский идентификатор (например, "пользовательские куки", связанные с электронным устройством 202 и заранее назначенные сервером 210 сетевого ресурса или тому подобное), идентифицируя отправителя запроса, связанного с запросом на содержимое (идентификация может осуществляться с помощью одного из: ID пользователя и ID электронного устройства 202).
[99] В некоторых вариантах осуществления настоящей технологии, заранее определенный флаг обработки создается вышеупомянутым апплетом 320 предыдущего сетевого ресурса, загруженным на электронное устройство 202 в ответ на заранее определенное условие. В некоторых вариантах осуществления настоящей технологии, заранее определенным условием является осуществление браузерным приложением 208 блокировщика рекламы. Например, в ответ на то, что предыдущий сетевой ресурс, который был загружен на электронное устройство 202, обнаружил наличие блокировщика рекламы (например, путем выполнения апплета 320), апплет 320 может учитывать пользовательские куки с указанием на заранее определенный флаг обработки.
[100] В конкретном неограничивающем примере, апплет 320 может быть выполнен как Detect (апплет на основе JAVA-скрипта), и заранее определенный флаг обработки может быть его значением (adb=1), указывающим на браузерное приложение 208, выполняющее, например, приложение блокировщика рекламы. Естественно, другие типы и варианты осуществления апплета 320, и заранее определенный флаг обработки может быть использован, не выходя за пределы объема настоящей технологии.
[101] В ответ на то, что сервер 210 сетевого ресурса определяет, что содержимое запроса на содержимое, полученного как часть сигнального потока 606, содержит заранее определенный флаг обработки, сервер 210 сетевого ресурса создает сигнальный поток 608, предназначенный для процедуры 602 прокси-сервера, которая осуществляется сервером 214 персонализированного содержимого.
[102] Сигнальный поток 608 содержит прокси-запрос для сетевого ресурса 212, который "имитирует" запрос на содержимое, полученное как часть сигнального потока 606. Путем отправления сигнального потока 608процедура 602 прокси-сервера, сервер 210 сетевого ресурса, в некотором смысле, имитирует запрошенный сетевой ресурс 212.
[103] Следует отметить, что сервер 210 сетевого ресурса определяет, что процедура 602 прокси-сервера сервера 214 персонализированного содержимого должна быть конечным пунктом сигнального потока 608 на основе того факта, что часть 304 персонализированного содержимого запрошенного сетевого ресурса 212 связан с сервером 214 персонализированного содержимого. Подобная связь может сохраняться во внутренней памяти (не показано) или другой базе данных, расположенной на сервере 210 сетевого ресурса.
[104] В ответ на получение сигнального потока 608, процедура 602 прокси-сервера обрабатывает прокси-запрос, содержащийся в нем. В некоторых вариантах осуществления настоящей технологии, процедура 602 прокси-сервера удаляет заранее определенный флаг обработки из прокси-запроса. Процедура 602 прокси-сервера далее создает сигнальный поток 610, направленный на сервер 210 сетевого ресурса, причем сигнальный поток 610 содержит запрос на содержимое на сетевой ресурс 212.
[105] В ответ на получение сигнального потока 610, сервер 210 сетевого ресурса создает сигнальный поток 612, включающий в себя содержимое запрашиваемого сетевого ресурса 212 (например, в форме HTML файла) и передает сигнальный поток 612 на процедуру 602 прокси-сервера сервера 214 персонализированного содержимого.
[106] В некоторых вариантах осуществления настоящей технологии, сигнальные потоки 610 и 612 могут быть опущены, и процедура 602 прокси-сервера сервера 214 персонализированного содержимого может получать содержимое запрашиваемого сетевого ресурса 212 как часть сигнального потока 208.
[107] Как часть сигнального потока 612, процедура 602 прокси-сервера сервера 214 персонализированного содержимого получает содержимое запрашиваемого сетевого ресурса 212 и, конкретнее, указание на множество ссылок, содержащихся в сетевом ресурсе 212 (включая первую ссылку 306 и вторую ссылку 308).
[108] Процедура 602 прокси-сервера сервера 214 персонализированного содержимого подвергает парсингу полученное содержимое сигнального потока 612 для извлечения множества ссылок, содержащихся в сетевом ресурсе 212 (включая первую ссылку 306 и вторую ссылку 308). Процедура 602 прокси-сервера сервера 214 персонализированного содержимого далее выполняет процедуру обфускации ссылки, показанную на Фиг. 6 под номером 614.
[109] Как часть процедуры 614 обфускации ссылки, процедура 602 прокси-сервера сервера 214 персонализированного содержимого обфусцирует каждый (или все) из множества ссылок, содержащихся в сетевом ресурсе 212 (включая первую ссылку 306 и вторую ссылку 308). Конкретнее, процедура 602 прокси-сервера сервера 214 персонализированного содержимого обфусцирует каждую ссылку из множества ссылок, содержащихся в сетевом ресурсе 212 (включая первую ссылку 406 и вторую ссылку 308), используя заранее определенный шаблон ссылок, который основан, по меньшей мере частично, на доменном имени сервера 210 сетевого ресурса.
[110] С этой целью, процедура 614 обфускации ссылки извлекает содержимое первой ссылки 306 и второй ссылки 308 (т.е. URL) и обфусцирует их с помощью заранее определенного шаблона ссылки. Предположим, что первая ссылка 306 представляет собой https:\\resource.net\page_1. В качестве неограничивающего примера, процедура 614 обфускации ссылки может обфусцировать первую ссылку 306 с помощью заранее определенного шаблона ссылки, и итоговая обфусцированная первая ссылка может представлять собой:
[111] На Фиг. 7 представлен неограничивающий вариант обфусцированной ссылки 700. Обфусцированная ссылка 700 основана на заранее определенном шаблоне 702 ссылки.
[112] В представленном примере, заранее определенный шаблон 702 ссылки включает в себя две части - первую часть 704 (на основе доменного имени) и вторую часть 706. Первая часть 704 может считаться "общей частью", и может быть одинаковой для всех из множества ссылок, которые поступают с одного и того же сервера 210 сетевого ресурса.
[113] Вторая часть 706 может считаться "индивидуализированной частью" и создаваться на основе содержимого оригинальной ссылки. В представленном примере, вторая часть 706 содержит ключевую часть 705 и три закодированных части - первую закодированную часть 708, вторую закодированную часть 710 и третью закодированную часть 712; все закодированные части разделены косой чертой "/").
[114] Ключевая часть 705 содержит "ключ", который был использован для кодировки первой закодированной частью 708, второй закодированной частью 710 и третьей закодированной частью 712. В представленном примере, ключевая часть 705 содержит информацию о числе закодированных частей (т.е. три - первую закодированную часть 708, вторую закодированную часть 710 и третью закодированную часть 712), а также специальный символ, который был использован для разделения первой закодированной части 708, второй закодированной части 710 и третьей закодированной части 712 (в этом примере, специальный символ представляет собой косую черту "/").
[115] Сочетание символов во второй части 706, в некотором роде "кодирует" или "шифрует" соответствующую ссылку. Следует отметить, что шаблон 700 обфусцированной ссылки основан (по меньшей мере, частично) на доменном имени, связанном с сервером 210 сетевого ресурса (а именно, первая часть 704, которая основана на, или другими словами, включает в себя доменное имя или его часть сервера 219 сетевого ресурса). Следует также отметить, что шаблон 700 обфусцированной ссылки применяется ко всем ссылкам, связанным с сетевым ресурсом 212.
[116] Следовательно, исключительно в целях иллюстрации, все из множества ссылок обфусцированы с помощью процедуры 614 обфускации ссылок. Кодовая часть далее представляет собой все ссылки до выполнения процедуры 614 обфускации ссылки:
[117] Кодовая часть далее представляет собой все ссылки после выполнения процедуры 614 обфускации ссылки:
[118] Процедура 602 прокси-сервера сервера 214 персонализированного содержимого создает сигнальный поток 616, который содержит сетевой ресурс 212 со множеством обфусцированных ссылок. Процедура 602 прокси-сервера сервера 214 персонализированного содержимого далее передает сигнальный поток 616 браузерному приложению 208 электронного устройства 202.
[119] Браузерное приложение 208 получает сигнальный поток 616 и извлекает сетевой ресурс 212. Браузерное приложение 208 начинает обрабатывать содержимое сетевого ресурса 212. Когда браузерное приложение 208 сталкивается с обфусцированной ссылкой, оно создает соответствующий сигнальный поток 618 на сервер 210 сетевого ресурса (с учетом того, что обфусцированные ссылки основаны, по меньшей мере частично, на доменном имени сервера 210 сетевого ресурса), и соответствующий сигнальный поток 618 является "вызовом" содержимого на основе соответствующей обфусцированной ссылки.
[120] Когда сервер 210 сетевого ресурса получает соответствующий сигнальный поток 618 и основан, например, на пользовательских куки, которые содержатся в нем, сервер 210 сетевого ресурса создает сигнальный поток 620, который содержит прокси-запрос на содержимое для сетевого ресурса 212. Таким образом, можно сказать, что сигнальный поток 620 создается сервером 210 сетевого ресурса в ответ на получение запроса на извлечение содержимое (как часть сигнального потока 618), который был создан электронным устройством 202 в ответ на обработку множества ссылок, которые были обфусцированы сервером 214 персонализированного содержимого.
[121] Когда процедура 602 прокси-сервера получает сигнальный поток 620, она выполняет процедуру 622 де-обфускации ссылки, которая применяется к соответствующему сигнальному потоку 618 (как часть применения процедуры 622 де-обфускации ссылки ко всему множеству ссылок, который были обфусцированы, для извлечения де-обфусцированных ссылок, включая ссылку на общее содержимое и ссылку на персонализированное содержимое).
[122] Обработка де-обфусцированной ссылки зависит от содержимого де-обфусцированной ссылки.
[123] Соответствующий сигнальный поток 618 предназначен для части 304 персонализированного содержимого.
[124] В этом сценарии, на основе де-обфусцированной ссылки(ссылок), процедура 602 прокси-сервера создает сигнальный поток 624, который содержит запрос на часть персонализированного содержимого на основе де-обфусцированной ссылки на персонализированное содержимое. Процедура 602 прокси-сервера передает сигнальный поток 624 процедуре 604 создания персонализированного содержимого. Процедура 604 создания персонализированного содержимого выбирает часть 304 персонализированного содержимого (как будет описано более подробно далее) и создает сигнальный поток 626, который содержит таким образом выбранную часть 304 персонализированного содержимого, и передает сигнальный поток 626 процедуре 602 прокси-сервера.
[125] Соответствующий сигнальный поток 618 предназначен для части 303 общего содержимого.
[126] В этом сценарии, процедура 602 прокси-сервера создает сигнальный поток 628 серверу 210 сетевого ресурса, причем сигнальный поток 628 содержит запрос на часть 302 собщего содержимого на основе обфусцированной ссылки на общее содержимое. В качестве части сигнального потока 628, сервер 210 сетевого ресурса выводит таким образом запрошенную часть 302 общего содержимого. Следует отметить, что сигнальный поток 628 может быть опциональным. Например, в альтернативных неограничивающих вариантах осуществления настоящей технологии, содержимое части 302 общего содержимого может быть передано как часть сигнального потока 620. Следует отметить, что, несмотря на то, что сигнальный поток 620 представлен как один двусторонний поток, он также может быть выполнен как другой сигнальный поток, представленный выше.
[127] Также следует отметить, что процедура 602 прокси-сервера может создавать несколько сигнальных потоков 624 и 628, в зависимости от числа ссылок, содержащихся на сетевом ресурсе 212.
[128] Процедура 602 прокси-сервера далее создает сигнальный поток 628, предназначенный для передачи части 302 общего содержимого и части 304 персонализированного содержимого электронному устройству 202. Сигнальный поток 628 предоставляет содержимое части 302 общего содержимого и части 304 персонализированного содержимого для отображения браузерным приложением 208.
[129] Выбор персонализированного содержимого
[130] Далее, обратимся к тому, как процедура 604 создания персонализированного содержимого сервера 214 персонализированного содержимого выбирает один элемент сохраненного персонализированного содержимого 502. В соответствии с вариантами осуществления настоящей технологии, процедура 604 создания персонализированного содержимого сервера 214 персонализированного содержимого выполнен с возможностью осуществлять выбор конкретного элемент сохраненного персонализированного содержимого 502 основан, по меньшей мере частично, по меньшей мере на части персонализированных данных, связанных с пользователем, который связан с электронным устройством 202 (т.е. пользователем 204). Персонализированные данные могут включать в себя по меньшей мере одно из: (i) браузерную историю, (ii) список приложений, установленных на электронном устройстве, (iii) использование информации, связанной по меньшей мере с одним из приложений, установленных на электронном устройстве, и (iv) гео-информацию, связанную с электронным устройством, гео-информация представляет собой по меньшей мере одно из:информацию из истории или текущую информацию. Естественно, персонализированные данные могут быть реализованы множеством различных способов.
[131] По меньшей мере часть персонализированных данных может быть получена процедурой 604 создания персонализированного содержимого сервера 214 персонализированного содержимого множеством различных способов (естественно, это может быть осуществлено в момент времени до выполнения выбора данного элемента сохраненного персонализированного содержимого 502). В конкретном варианте осуществления настоящего технического решения, процедура 604 создания персонализированного содержимого сервера 214 персонализированного содержимого может получать по меньшей мере часть браузерной истории от электронного устройства 202. Например, с учетом того, что электронное устройство 202 выполняет браузерное приложение 208 (браузерное приложение 208 позволяет пользователю 204 получить доступ к сетевому ресурсу 212), браузерная история может быть скомпилирована, по меньшей мере частично, браузерным приложением 208.
[132] Альтернативно, по меньшей мере часть браузерной истории может быть получена сервером 214 персонализированного содержимого путем внедрения апплета слежения (не показан) в один или несколько ресурсов, которые были посещены пользователем 204 электронного устройства 202. Одним примером такого апплета слежения является Яндекс.Метрика™. Другим примером подобного приложения для слежения слежения является продукт Google Analytical (Premium). Естественно, комбинация этих двух подходов и/или других подходов может быть использована сервером 214 персонализированного содержимого для определения браузерной истории, связанной с пользователем 204.
[133] Следует иметь в виду, что, несмотря на то, что представленное описание использует браузерную историю (или персонализированную информацию в целом) как посредник для определения интересов пользователя, процедура 604 создания персонализированного содержимого сервера 214 персонализированного содержимого может использовать другую информацию для определения интереса пользователя. Например, в альтернативных вариантах осуществления технологии, пользователь 204 может явно предоставлять свои интересы (например, посещая веб-портал, связанный с сервером 214 персонализированного содержимого). В других дополнительных вариантах осуществления технологии, сервер 214 персонализированного содержимого может использовать другую информацию для определения интересов пользователя.
[134] В альтернативных вариантах осуществления настоящей технологии, процедура 604 создания персонализированного содержимого сервера 214 персонализированного содержимого передает, в дополнение к выбранному персонализированному содержимому 502, указание на требования к тому, как внедрять выбранное персонализированное содержимое 502 в часть 304 персонализированного содержимого. Например, в тех вариантах осуществления технического решения, где сетевой ресурс 212 закодирован в HTML, указание на требования может быть передано в форме дополнительного HTML кода, который будет введен в HTML код сетевого ресурса 212, таким образом, выбранное персонализированное содержимое 502 вводится в часть 304 персонализированного содержимого.
[135] С учетом архитектуры, описанной выше, возможно использовать способ передачи персонализированного содержимого электронному устройству 202, связанному с пользователем 204. На Фиг. 8 представлена блок-схема способа 900, который выполняется в соответствии с неограничивающими вариантами осуществления настоящего технического решения. В некоторых вариантах осуществления настоящего технического решения, способ 900 может выполняться в системе 200, которая включает в себя: сеть 206 передачи данных; сервер 210 сетевого ресурса, размещающий сетевой ресурс 212, который доступен через сеть 206 передачи данных, сетевой ресурс 212 обладает частью 302 общего содержимого и частью 304 персонализированного содержимого; электронное устройство 202, выполненное с возможностью получать доступ к сетевому ресурсу 212 через сеть 206 передачи данных, сервер 214 персонализированного содержимого, соединенный с сетью 206 передачи данных и доступный серверу 210 сетевого ресурса и электронному устройству 202 через сеть 206 передачи данных.
[136] Этап 902 - получение сервером персонализированного содержимого от сервера сетевого ресурса, прокси-запроса на сетевой ресурс 212, который был создан на основе запроса на ресурс для сетевого ресурса 212, полученного от электронного устройства
[137] Способ 900 начинается на этапе 902, где сервер 214 персонализированного содержимого получает от сервера 210 сетевого ресурса, прокси-запрос на сетевой ресурс, который был создан на основе запроса на ресурс для сетевого ресурса, полученного от электронного устройства 202. Этот этап представлен как сигнальный поток 608 на Фиг. 6.
[138] Этап 904 - на основе прокси-запроса, запрос сервером персонализированного содержимого содержимого сетевого ресурса с сервера 212 сетевого ресурса
[139] На этапе 904, на основе полученного прокси-запроса (как части сигнального потока 608), сервер 214 персонализированного содержимого запрашивает от сервера 210 сетевого ресурса содержимое сетевого ресурса 212. Это представлено как сигнальный поток 610 на Фиг. 6.
[140] Этап 906 - парсинг, сервером персонализированного содержимого, содержимого сетевого ресурса 212, для определения множества ссылок, содержащихся на нем, причем множество ссылок включает в себя ссылку на общее содержимое и ссылку на персонализированное содержимое
[141] На этапе 906, сервер 214 персонализированного содержимого подвергает парсингу содержимое сетевого ресурса 212, который был получен как часть сигнального потока 610. Парсинг выполняется для обнаружения множества ссылок, содержащихся в таком образом полученном сетевом ресурсе 212, причем множество ссылок включает в себя ссылку 306 на общее содержимое и ссылку 308 на персонализированное содержимое.
[142] Этап 908 - выполнение сервером персонализированного содержимого процедуры обфускации, которая применяется ко всему множеству ссылок таким образом, что: каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан, по меньшей мере частично, на доменном имени сервере сетевого ресурса
[143] На этапе 908, сервер 214 персонализированного содержимого выполняет процедуру обфускации (показано на Фиг. 6 под номером 614), которая применяется ко всему множеству ссылок таким образом, что: каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан, по меньшей мере частично, на доменном имени сервере 210 сетевого ресурса
[144] Этап 910 - передача содержимого сетевого ресурса со множеством ссылок, которые были обфусцированы, электронному устройству
[145] На этапе 910, сервер 214 персонализированного содержимого передает содержимое сетевого ресурса со множеством ссылок, которые подвергались обфускации, электронному устройству 202 (это показано как сигнальный поток 616 на Фиг. 6).
[146] Выполнение способа 900, как было описано выше, позволяет электронному устройству 202 извлекать часть 302 общего содержимого и часть 304 персонализированного содержимого с помощью обфусцированных ссылок. Далее следует описание того, как в неограничивающих вариантов осуществления технологии, электронное устройство 202 может обработать таким образом полученные обфусцированные ссылки, а также некоторые неограничивающие варианты осуществления способа 900.
[147] В некоторых вариантах осуществления способа 900, сервер 214 персонализированного содержимого получает, от сервера 210 сетевого ресурса, прокси-запрос на содержимое для сетевого ресурса 212, причем прокси-запрос на содержимое был создан сервером 210 сетевого ресурса в ответ на получение запроса на извлечение содержимого, который был создан электронным устройством в ответ на множество ссылок, которые были обфусцированы сервером 214 персонализированного содержимого. На Фиг. 6 представлена последовательность сигнальных потоков 618 (запрос на извлечение содержимого) и сигнального потока 620. Последовательность сигнальных потоков 618 (запрос на извлечение содержимого) и сигнальный поток 620 выполняется в ответ на то, что электронное устройство 202 обрабатывает сетевой ресурс 212 с обфусцированными ссылками, которые были получены электронным устройством как часть сигнального потока.
[148] В некоторых вариантах осуществления настоящей способа 900, сервер 214 персонализированного содержимого далее выполняет процедуру де-обфускации ссылки (показано на Фиг. 6 на 622), которая применяется ко всему множеству ссылок, которые были обфусцированы для извлечения де-обфусцированных ссылок, включая ссылку 306 на общее содержимоеи ссылку 308 на персонализированное содержимое.
[149] В некоторых неограничивающих вариантах осуществления способа 900, сервер 214 персонализированного содержимого, извлекает, на основе ссылки на общее содержимого, часть 302 общего содержимого и, на основе ссылки на персонализированное содержимое, часть 304 персонализированного содержимого. В тех вариантах осуществления настоящей технологии, способ 900 далее включает в себя передачу части 302 общего и части 304 персонализированного содержимого электронному устройству 202 (показано как сигнальный поток 628 на Фиг. 6).
[150] В некоторых вариантах осуществления способа 900, прокси-запрос включает в себя указание по меньшей мере на один пользовательский параметр, и указание по меньшей мере на один пользовательский параметр используется для выбора конкретной одной из частей 304 персонализированного содержимого в ответ на получение прокси-запроса на содержимое. Процесс показан на Фиг. 6 как сигнальные потоки 624 и 626.
[151] В некоторых вариантах осуществления способа 900, котором прокси-запрос был создан с помощью сервера 210 сетевого ресурса в ответ на запрос на ресурс, полученный сервером 210 сетевого ресурса, содержащим заранее определенный флаг обработки. Заранее определенный флаг обработки был создан на основе встроенного сценария, который выполняется как часть предыдущего сетевого ресурса, загружаемого с сервера 210 сетевого ресурса на электронное устройство 202. Варианты осуществления настоящей технологии подразумевают несколько вариантов осуществления того, как может создаваться заранее определенный флаг обработки. Некоторые из этих неограничивающих вариантов осуществления были описаны ранее только в качестве примера, встроенный сценарий выполнен с возможностью определять блокирующее программное обеспечение, выполняемое на электронном устройстве 202.
[152] Подробности процедуры обфускации ссылок и обфускации ссылок
[153] В некоторых неограничивающих вариантах осуществления способа 900, выполнение процедуры 614 обфускации ссылки приводит к тому, что: ссылка 306 на общее содержимое, которое было обфусцировано, становится обфусцированной ссылкой на общее содержимое; ссылка 308 на персонализированное содержимое, которое было обфусцировано, становится обфусцированной ссылкой на персонализированное содержимое; и при этом как обфусцированная ссылка на общее содержимое, так и обфусцированная ссылка на персонализированное содержимое обладают одним и тем же форматом, основанным на заранее определенном шаблоне ссылки.
[154] В некоторых неограничивающих вариантах осуществления способа 900, одинаковый формат как обфусцированной ссылки на общее содержимое, так и обфусцированной ссылки на персонализированное содержимое инициируют их указывать, при выполнении электронным устройством 202, на доменное имя сервера 210 сетевого ресурса.
[155] В некоторых неограничивающих вариантах осуществления способа 900, один и тот же формат обладает частью общего содержимого 704 и частью персонализированного содержимого 706 (Фиг. 7), причем часть общего содержимого 704 основана на доменном имени, а часть персонализированного содержимого 706 основана на типе содержимого, на которое указывает соответствующая ссылка.
[156] В некоторых неограничивающих вариантах осуществления способа 900, часть персонализированного содержимого 706 включает в себя ключевую часть 705 и закодированную часть 708, 710, 712, причем ключевая часть указывает 705 на ключ, используемый на обфускации закодированной версии 708, 710, 712.
[157] В некоторых неограничивающих вариантах осуществления способа 900, закодированная часть 708, 710, 712 включает в себя по меньшей мере два набора символов, разделенных соответствующим специальным символом, причем ключевая часть 705 указывает на тип и число соответствующих специальных символов.
[158] В некоторых неограничивающих вариантах осуществления способа 900, число наборов и соответствующее число соответствующих специальных символов выбирается случайным образом.
[159] В некоторых неограничивающих вариантах осуществления способа 900, специальные символы представляют собой одно из следующего - косую черту и группу буквенно-цифровых символов.
[160] В некоторых неограничивающих вариантах осуществления способа 900, ключевая часть 704 периодически изменяется.
[161] Другие процедуры обфускации
[162] В некоторых неограничивающих вариантах осуществления способа 900, процедура 614 обфускации ссылки не является единственной процедурой обфускации, выполняемой сервером 214 персонализированного содержимого. В некоторых неограничивающих вариантах осуществления технологии, способ 900 далее включает в себя сервер 214 персонализированного содержимого, который выполняет процедуру обфускации дерева DOM для изменения по меньшей мере одного из - идентификаторов и класса, связанного по меньшей мере с одним элементом дерева DOM.
[163] В некоторых неограничивающих вариантах осуществления способа 900, по меньшей мере один элемент дерева DOM связан с частью 308 персонализированного содержимого. В других вариантах осуществления настоящей технологии, по меньшей мере один элемент дерева DOM связан как с частью 308 персонализированного содержимого, так и с частью 302 общего содержимого.
[164] В некоторых неограничивающих вариантах осуществления технологии, способ 900 далее включает в себя сервер 214 персонализированного содержимого, выполняющий дополнительную процедуру обфускации для изменения по меньшей мере дополнительного содержимого 310 сетевого ресурса 212. По меньшей мере одно дополнительное содержимое 310 может быть по меньшей мере одним из: изображением, Каскадной Таблицей Стилей и JAVA-скриптом.
[165] Сравнение куки
[166] Как было упомянуто ранее, в некоторых вариантах осуществления настоящей технологии, заранее определенный флаг обработки создается вышепомянутым апплетом 320 предыдущего сетевого ресурса, загруженного на электронное устройство 202 в ответ на заранее определенное условие. В некоторых вариантах осуществления настоящей технологии, заранее определенным условием является осуществление браузерным приложением 208 блокировщика рекламы. Например, в ответ на то, что предыдущий сетевой ресурс, который был загружен на электронное устройство 202, обнаружил наличие блокировщика рекламы (например, путем выполнения апплета 320), апплет 320 может учитывать пользовательские куки с указанием на заранее определенный флаг обработки.
[167] Это особенно полезно в тех случаях, когда сервер 210 сетевого ресурса является партнерским сайтом сервера 214 персонализированного содержимого в том смысле, что сервер 210 сетевого ресурса подписан на сервис выбора персонализированного содержимого, предоставляемого сервером 214 персонализированного содержимого. Альтернативно или дополнительно, это также применимо в случае, когда процедура 604 создания персонализированного содержимого выполняется как часть сервера 214 персонализированного содержимого или на отдельном сервере, который находится под контролем и/или управлением того же поставщика, что и процедура 602 прокси-сервера.
[168] На Фиг. 8 представлена диаграмма другого сигнального потока, которая изображает сигнальный поток во время предоставления куки и процедуры сравнения куки, реализованной в соответствии с некоторыми альтернативными неограничивающими вариантами осуществления настоящей технологии. Эти альтернативные варианты осуществления технологии особенно полезны в тех случаях, где (!) сервер 210 сетевого ресурса не является партнерским сайтом сервера 214 персонализированного содержимого и/или (ii) процедура 604 создания персонализированного содержимого не выполняется ни как часть сервера 214 персонализированного содержимого ни на отдельном сервере, который находится под контролем и/или управлением того же поставщика, что и процедура 602 прокси-сервера.
[169] Сервер 210 сетевого ресурса передает сигнальный поток 802 браузерному приложению 208, причем сигнальный поток 802 содержит куки cookie setting script (например, set_cookie выполняется как Java-скрипт, встроенный в предыдущий сетевой ресурс 212, который передается браузерному приложению 208 сервером 210 сетевого ресурса).
[170] Браузерное приложение 208 передает сигнальный поток 804 серверу 210 сетевого ресурса, причем сигнальный поток 804, содержащий куки, назначенные браузерному приложению 208 сервером 210 сетевого ресурса.
[171] Сервер 210 сетевого ресурса передает сигнальный поток 806 на сервер 214 персонализированного содержимого, причем сигнальный поток 806 включает в себя куки, полученные сервером 210 сетевого ресурса от браузерного приложения 208. Куки, таким образом, позволяют электронному устройству 202 быть идентифицированным для сервера 214 персонализированного содержимого.
[172] Сервер 214 персонализированного содержимого выполняет процедуру 808 сравнения куки, полученных как часть сигнального потока 804, с форматом куки, известным серверу 214 персонализированного содержимого. В одном примере, формат, известный серверу 214 персонализированного содержимого может представлять собой формат куки, используемый для создания персонализированного содержимого сервером 214 персонализированного содержимого.
[173] Пример сигнального потока 804 может выглядеть следующим образом:
<an.domain.com/mapuid/<tag>/<ext_uid>
[174] В некоторых вариантах осуществления настоящей технологии, <tag> - заранее назначается каждому из серверов 214 персонализированного содержимого третьей стороны. Параметр <ext_uid> - клиентский идентификатор пользователя, который был назначен сервером 214 персонализированного содержимого.
[175] Сервер 214 персонализированного содержимого сохраняет совпадающие куки как запись 8100 в базе 216 данных персонализированного содержимого. Пример записи 810 может выглядеть следующим образом:
<ext_uid>:<native_uid>
[176] Ext_uid - формат куки, назначенный браузерному приоложению 208, a native_uid - это нативный формат куки, известный серверу 214 персонализированного содержимого. Запись 810 может быть использована для сопоставления ext_uid, полученного во время различных сигнальных потоков для определения native_uid that, который далее используется для выбора конкретного сохраненного персонализированного содержимого 502.
[177] В некоторых вариантах осуществления настоящей технологии, сигнальный поток 802 инициирует браузерное приложение 208 перезагрузить сетевой ресурс 212 с проксированием на сервер 214 персонализированного содержимого (либо напрямую либо через сервер 210 сетевого ресурса).
[178] Природа целевого сообщения никак конкретно не ограничена. В некоторых вариантах осуществления настоящего технического решения, целевое сообщение может представлять собой рекламный баннер. Целевое сообщение может быть реализовано в виде любого целевого сообщения: промоутирующее сообщение, информационное сообщение, баннерная реклама, текстовая реклама и тому подобное.
[179] В некоторых вариантах осуществления настоящего технического решения, технический эффект может быть достигнут путем доставки персонализированного содержимого в соответствии с вариантами осуществления настоящего технического решения. При доставке персонализированного содержимого, как описано здесь, пользователь 204 может быть способен получать информацию, интересную пользователю 202, за меньшее число взаимодействий с сервером 210 сетевого ресурса, следовательно, уменьшая потребление траффика и/или снижая нагрузку на сервер 210 сетевого ресурса. Альтернативно, пользователь 204 может быть способен получить знание о персонализированном содержимом без дополнительного просмотра или поиска. Таким образом, это не только более удобно для пользователя, но и снижает нагрузку на сервер 210 сетевого ресурса и сеть 206 передачи данных. Дополнительно, более быстрое получение информации может снизить нагрузку на батарею электронного устройства 202, что особенно полезно, без установления ограничений, в тех вариантах осуществления технического решения, где электронное устройство 202 реализовано как беспроводное электронное устройство.
[180] Модификации и улучшения вышеописанных вариантов осуществления настоящей технологии будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не устанавливает никаких ограничений. Таким образом, объем настоящей технологии ограничен только объемом прилагаемой формулы изобретения.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ, СИСТЕМА И СЕРВЕР ДЛЯ ПЕРЕДАЧИ ПЕРСОНАЛИЗИРОВАННОГО СООБЩЕНИЯ НА ПОЛЬЗОВАТЕЛЬСКОЕ ЭЛЕКТРОННОЕ УСТРОЙСТВО | 2015 |
|
RU2640635C2 |
СПОСОБ И СИСТЕМА ДЛЯ ОПРЕДЕЛЕНИЯ ВРЕДОНОСНЫХ ДЕЙСТВИЙ ОПРЕДЕЛЕННОГО ВИДА | 2019 |
|
RU2757007C2 |
Система и способ управления браузерным приложением, постоянный машиночитаемый носитель и электронное устройство | 2015 |
|
RU2633180C2 |
СПОСОБ ОТОБРАЖЕНИЯ ВЕБ-РЕСУРСА ПОЛЬЗОВАТЕЛЮ (ВАРИАНТЫ) И ЭЛЕКТРОННОЕ УСТРОЙСТВО | 2014 |
|
RU2595497C2 |
СПОСОБ И СИСТЕМА ДЛЯ ОБЕСПЕЧЕНИЯ УРОВНЯ СЕРВИСА ПРИ РЕКЛАМЕ ЭЛЕМЕНТА КОНТЕНТА | 2019 |
|
RU2757406C1 |
СПОСОБ И СЕРВЕР ДЛЯ ОТПРАВКИ ТАРГЕТИРОВАННОГО СООБЩЕНИЯ ЭЛЕКТРОННОМУ УСТРОЙСТВУ ПОЛЬЗОВАТЕЛЯ | 2019 |
|
RU2805513C1 |
Способ и система определения параметра релевантность для элементов содержимого | 2018 |
|
RU2714594C1 |
СПОСОБ И СИСТЕМА ДЛЯ СОЗДАНИЯ ПЕРСОНАЛИЗИРОВАННОГО ПОЛЬЗОВАТЕЛЬСКОГО ПАРАМЕТРА ИНТЕРЕСА ДЛЯ ИДЕНТИФИКАЦИИ ПЕРСОНАЛИЗИРОВАННОГО ЦЕЛЕВОГО ЭЛЕМЕНТА СОДЕРЖИМОГО | 2017 |
|
RU2757546C2 |
СПОСОБ И СЕРВЕР СОЗДАНИЯ РЕКОМЕНДОВАННОГО НАБОРА ЭЛЕМЕНТОВ | 2015 |
|
RU2632100C2 |
СПОСОБ И СИСТЕМА ДЛЯ СОЗДАНИЯ РЕКОМЕНДАЦИИ ЦИФРОВОГО СОДЕРЖИМОГО | 2018 |
|
RU2720952C2 |
Изобретение относится к области вычислительной техники. Технический результат заключается в расширении арсенала технических средств передачи персонализированного содержимого электронному устройству. Раскрыт способ передачи персонализированного содержимого электронному устройству, связанному с пользователем, способ выполняется в системе персонализированного содержимого, система персонализированного содержимого включает в себя: сеть передачи данных; сервер сетевого ресурса, на котором находится сетевой ресурс и который доступен через сеть передачи данных; электронное устройство, выполненное с возможностью осуществлять получение доступа к сетевому ресурсу через сеть передачи данных, сервер персонализированного содержимого, соединенный с сетью передачи данных и доступный серверу сетевого ресурса и электронному устройству через сеть передачи данных; сетевой ресурс, обладающий ссылкой на общее содержимое и ссылкой на персонализированное содержимое; причем ссылка на общее содержимое предназначена для получения доступа к части общего содержимого, расположенного на сервере сетевого ресурса, которая предназначена для отображения в виде части сетевого ресурса при отображении электронным устройством, и ссылка на персонализированное содержимое предназначена для доступа к части персонализированного содержимого, расположенного на сервере персонализированного содержимого, которое предназначено для отображения в виде части сетевого ресурса при отображении электронным устройством; причем способ включает в себя: получение сервером персонализированного содержимого от сервера сетевого ресурса прокси-запроса на сетевой ресурс, который был создан на основе запроса на ресурс для сетевого ресурса, полученного от электронного устройства, а также прокси-запроса на содержимое для сетевого ресурса, причем прокси-запрос на содержимое был создан сервером сетевого ресурса в ответ на получение запроса на извлечение содержимого, который был создан электронным устройством в ответ на множество ссылок, которые были обфусцированы сервером персонализированного содержимого; на основе прокси-запроса на сетевой ресурс запрос сервером персонализированного содержимого сетевого ресурса с сервера сетевого ресурса; парсинг, сервером персонализированного содержимого, содержимого сетевого ресурса, для определения множества ссылок, содержащихся на нем, причем множество ссылок включает в себя ссылку на общее содержимое и ссылку на персонализированное содержимое; выполнение сервером персонализированного содержимого процедуры обфускации, которая применяется ко всему множеству ссылок таким образом, что: каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан по меньшей мере частично на доменном имени сервера сетевого ресурса; выполнение сервером персонализированного содержимого процедуры де-обфускации ссылки, которая применяется ко всему множеству ссылок, которые были обфусцированы для извлечения де-обфусцированных ссылок, включая ссылку на общее содержимое и ссылку на персонализированное содержимое; и на основе ссылки на общее содержимое извлечение части общего содержимого, и на основе ссылки на персонализированное содержимое извлечение части персонализированного содержимого; передачу части общего содержимого и части персонализированного содержимого на электронное устройство, связанное с пользователем. 2 н. и 18 з.п. ф-лы, 9 ил.
1. Способ передачи персонализированного содержимого электронному устройству, связанному с пользователем, способ выполняется в системе персонализированного содержимого, система персонализированного содержимого включает в себя:
сеть передачи данных;
сервер сетевого ресурса, на котором находится сетевой ресурс и который доступен через сеть передачи данных;
электронное устройство, выполненное с возможностью осуществлять получение доступа к сетевому ресурсу через сеть передачи данных;
сервер персонализированного содержимого, соединенный с сетью передачи данных и доступный серверу сетевого ресурса и электронному устройству через сеть передачи данных;
сетевой ресурс, обладающий ссылкой на общее содержимое и ссылкой на персонализированное содержимое; причем ссылка на общее содержимое предназначена для получения доступа к части общего содержимого, расположенного на сервере сетевого ресурса, которая предназначена для отображения в виде части сетевого ресурса при отображении электронным устройством, и ссылка на персонализированное содержимое предназначена для доступа к части персонализированного содержимого, расположенного на сервере персонализированного содержимого, которое предназначено для отображения в виде части сетевого ресурса при отображении электронным устройством;
причем способ включает в себя:
получение сервером персонализированного содержимого от сервера сетевого ресурса прокси-запроса на сетевой ресурс, который был создан на основе запроса на ресурс для сетевого ресурса, полученного от электронного устройства, а также прокси-запроса на содержимое для сетевого ресурса, причем прокси-запрос на содержимое был создан сервером сетевого ресурса в ответ на получение запроса на извлечение содержимого, который был создан электронным устройством в ответ на множество ссылок, которые были обфусцированы сервером персонализированного содержимого;
на основе прокси-запроса на сетевой ресурс запрос сервером персонализированного содержимого сетевого ресурса с сервера сетевого ресурса;
парсинг, сервером персонализированного содержимого, содержимого сетевого ресурса, для определения множества ссылок, содержащихся на нем, причем множество ссылок включает в себя ссылку на общее содержимое и ссылку на персонализированное содержимое;
выполнение сервером персонализированного содержимого процедуры обфускации, которая применяется ко всему множеству ссылок таким образом, что:
каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан по меньшей мере частично на доменном имени сервере сетевого ресурса;
выполнение сервером персонализированного содержимого процедуры де-обфускации ссылки, которая применяется ко всему множеству ссылок, которые были обфусцированы для извлечения де-обфусцированных ссылок, включая ссылку на общее содержимое и ссылку на персонализированное содержимое; и
на основе ссылки на общее содержимое извлечение части общего содержимого, и на основе ссылки на персонализированное содержимое извлечение части персонализированного содержимого;
передачу части общего содержимого и части персонализированного содержимого на электронное устройство, связанное с пользователем.
2. Способ по п. 1, в котором прокси-запрос включает в себя указание по меньшей мере на один пользовательский параметр, и причем указание по меньшей мере на один пользовательский параметр используется для выбора конкретной одной из частей персонализированного содержимого в ответ на получение прокси-запроса на содержимое.
3. Способ по п. 1, в котором прокси-запрос был создан с помощью сервера сетевого ресурса в ответ на запрос на ресурс, полученный сервером сетевого ресурса, содержащим заранее определенный флаг обработки.
4. Способ по п. 3, в котором заранее определенный флаг обработки был создан на основе встроенного сценария, который выполняется как часть предыдущего сетевого ресурса, загружаемого с сервера сетевого ресурса на электронное устройство.
5. Способ по п. 4, в котором встроенный сценарий выполнен с возможностью определять блокирующее программное обеспечение, выполняемое на электронном устройстве.
6. Способ по п. 1, в котором выполнение процедуры обфускации ссылки приводит к тому, что:
ссылка на общее содержимое, которая была обфусцирована, становится обфусцированной ссылкой на общее содержимое;
ссылка на персонализированное содержимое, которая была обфусцирована, становится обфусцированной ссылкой на персонализированное содержимое; и при этом
как обфусцированная ссылка на общее содержимое, так и обфусцированная ссылка на персонализированное содержимое обладают одним и тем же форматом, основанным на заранее определенном шаблоне ссылки.
7. Способ по п. 6, в котором:
одинаковый формат как обфусцированной ссылки на общее содержимое, так и обфусцированной ссылки на персонализированное содержимое инициируют их указывать, при выполнении электронным устройством, на доменное имя сервера сетевого ресурса.
8. Способ по п. 6, в котором один и тот же формат обладает частью общего содержимого и частью персонализированного содержимого, причем часть общего содержимого основана на доменном имени, а часть персонализированного содержимого основана на типе содержимого, на которое указывает соответствующая ссылка.
9. Способ по п. 8, в котором часть персонализированного содержимого включает в себя ключевую часть и закодированную часть, причем ключевая часть указывает на ключ, используемый на обфускации закодированной версии.
10. Способ по п. 9, в котором закодированная часть включает в себя по меньшей мере два набора символов, разделенных соответствующим специальным символом, причем ключевая часть указывает на тип и число соответствующих специальных символов.
11. Способ по п. 10, в котором число наборов и соответствующее число соответствующих специальных символов выбираются случайным образом.
12. Способ по п. 9, в котором специальные символы представляют собой одно из следующего - косую черту и группу буквенно-цифровых символов.
13. Способ по п. 9, в котором ключевая часть периодически изменяется.
14. Способ по п. 1, далее включающий в себя выполнение процедуры обфускации дерева DOM для изменения по меньшей мере одного из - идентификаторов и класса, связанного по меньшей мере с одним элементом дерева DOM.
15. Способ по п. 14, в котором по меньшей мере один элемент дерева DOM связан с частью персонализированного содержимого.
16. Способ по п. 1, далее включающий в себя выполнение дополнительной процедуры обфускации для изменения по меньшей мере дополнительного содержимого сетевого ресурса.
17. Способ по п. 16, в котором по меньшей мере одно дополнительное содержимое является по меньшей мере одним из: изображением, Каскадной Таблицей Стилей и JAVA-скриптом.
18. Способ по п. 1, в котором сервер персонализированного содержимого выполнен с возможностью осуществлять процедуру создания персонализированного содержимого и процедуру прокси-сервера.
19. Способ по п. 18, в котором процедура создания персонализированного содержимого и процедура прокси-сервера выполняются в распределенном виде, каждая на соответствующем сервере.
20. Сервер персонализированного содержимого для передачи персонализированного содержимого электронному устройству, связанному с пользователем, сервер, содержащий:
процессор;
память, доступную процессору;
интерфейс передачи данных, связанный с процессором и выполненный с возможностью осуществлять двустороннюю связь по сети передачи данных для связи с:
сервером сетевого ресурса, на котором находится сетевой ресурс и который доступен через сеть передачи данных;
электронным устройством, выполненным с возможностью получать доступ к сетевому ресурсу через сеть передачи данных, причем сетевой ресурс обладает ссылкой на общее содержимое и ссылкой на персонализированное содержимое; причем ссылка на общее содержимое предназначена для получения доступа к части общего содержимого, расположенного на сервере сетевого ресурса, которая предназначена для отображения в виде части сетевого ресурса при отображении электронным устройством, и ссылка на персонализированное содержимое предназначена для доступа к части персонализированного содержимого, расположенного на сервере персонализированного содержимого, которое предназначено для отображения в виде части сетевого ресурса при отображении электронным устройством;
процессор, выполненный с возможностью осуществлять:
получение от сервера сетевого ресурса прокси-запроса на сетевой ресурс, который был создан на основе запроса на ресурс для сетевого ресурса, полученного от электронного устройства;
на основе прокси-запроса запрос содержимого сетевого ресурса с сервера сетевого ресурса;
парсинг содержимого сетевого ресурса, для определения множества ссылок, содержащихся на нем, причем множество ссылок включает в себя ссылку на общее содержимое и ссылку на персонализированное содержимое;
выполнение процедуры обфускации, которая применяется ко всему множеству ссылок таким образом, что:
каждая ссылка из множества ссылок обфусцирована с помощью заранее определенного шаблона ссылки, который основан по меньшей мере частично на доменном имени сервера сетевого ресурса;
выполнение сервером персонализированного содержимого процедуры де-обфускации ссылки, которая применяется ко всему множеству ссылок, которые были обфусцированы для извлечения де-обфусцированных ссылок, включая ссылку на общее содержимое и ссылку на персонализированное содержимое; и
на основе ссылки на общее содержимое извлечение части общего содержимого, и на основе ссылки на персонализированное содержимое извлечение части персонализированного содержимого;
передачу части общего содержимого и части персонализированного содержимого на электронное устройство, связанное с пользователем.
Токарный резец | 1924 |
|
SU2016A1 |
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
DE 102015115108 A1, 09.03.2017 | |||
СПОСОБ И УСТРОЙСТВО ОТОБРАЖЕНИЯ СТРАНИЦЫ | 2013 |
|
RU2611965C2 |
Авторы
Даты
2020-12-28—Публикация
2017-11-30—Подача