×
10.10.2014
216.012.fba7

СПОСОБ ВСТАВКИ СООБЩЕНИЙ В ЭЛЕКТРОННЫЕ ДОКУМЕНТЫ ВНЕДРЕННЫМ КЛИЕНТСКИМ СКРИПТОМ

Вид РИД

Изобретение

Юридическая информация Свернуть Развернуть
№ охранного документа
0002530269
Дата охранного документа
10.10.2014
Краткое описание РИД Свернуть Развернуть
Аннотация: Изобретение относится к компьютерным системам адаптации контента. Техническим результатом является обеспечение возможности переноса вставки сообщения с веб-сервера или сервера-посредника на клиентское устройство для получения данных о возможностях клиентского устройства и учета их при вставке сообщения таким образом, чтобы отображаемая информация не теряла изначальную структуру, внешний вид и читабельность. Заявлен способ вставки сообщений в электронные документы внедренным клиентским скриптом, осуществляющий изменение содержимого в качестве ответа на первый веб-запрос и применение адаптации содержимого. Заявленный способ характеризуется тем, что функции промежуточной сетевой сущности разделены между сервером адаптации контента, сервером данных и двумя клиентскими скриптами с сохранением изменения содержимого в качестве ответа на первый веб-запрос и применением адаптации содержимого. 1 ил.
Основные результаты: Способ вставки сообщений в электронные документы внедренным клиентским скриптом, осуществляющий изменение содержимого в качестве ответа на первый веб-запрос и применение адаптации содержимого, отличающийся тем, что клиентское устройство отправляет в сеть запрос на получение ответа от веб-сервера, сервер адаптации контента, включенный во взаимодействие между веб-сервером и клиентским устройством, пропускает его в неизменном виде, веб-сервер формирует ответ, который может содержать документ, в который необходимо вставить сообщение, ответ приходит на сервер адаптации контента, анализируется последним на предмет наличия документа и его пригодности к вставке клиентских скриптов, при допустимости вставки сервер адаптации контента осуществляет вставку скрипта подгрузки в допустимое место документа и отправляет измененный ответ, содержащий измененный документ с внедренным скриптом подгрузки, клиентскому устройству, на котором последний выполняется и формирует запрос серверу скриптов на получение основного скрипта, принимающего решение о возможности вставки сообщения в измененный документ по результатам анализов конфигурации сервера адаптации контента, измененного документа, его структуры, важных для вставки сообщения особенностей, таких как расположение элементов, зависимости отображения элементов от связанных с измененным документом клиентских скриптов, общий размер отображения, порядок загрузки и отображения элементов, а также возможности и особенности среды, в которой он выполняется на клиентском устройстве, включая такие, как поддерживаемые операции скрипта, размер экрана, средства ввода, при допустимости вставки сообщения основной скрипт формирует запрос серверу данных, в ответ на который сервер данных возвращает ответ сервера данных, содержащий сообщение для вставки, клиентскому устройству, при этом сервер адаптации контента пропускает запрос серверу скриптов, основной скрипт к клиентскому устройству, запрос серверу данных и ответ сервера данных клиентскому устройству в неизмененном виде, а основной скрипт производит манипуляции над содержимым измененного документа таким образом, чтобы выделить место для сообщения, помещает в него новый элемент для отображения сообщения или изменяет один из существующих элементов таким образом, чтобы тот отображал сообщение, используя при этом данные, полученные при анализе возможности вставки, при невозможности вставки клиентских скриптов в документ или сообщения по результату любой аналитической операции основного скрипта вставка сообщения не происходит.
Реферат Свернуть Развернуть

Настоящее изобретение относится к рекламе и информационным сообщениям в компьютерных вычислительных сетях таких, как Интернет, а также в программах, использующих эти сети как среду обмена данными.

В настоящее время существует множество систем адаптации содержимого (content adaptation). Эти системы позволяют изменять проходящий через веб-сервер или сервер-посредник данные по заданным правилам. Описаны и реализованы протоколы адаптации содержимого ICAP (RFC 3507, http://tools.ietf.org/html/rfc3507) и еСАР (http://www.e-http://cap.org), реализации их включают в себя программные продукты с открытым исходным кодом, такие как squid (http://www.squid-cache.org/), и проприетарные продукты, такие как Traffic Spicer (http://spicer.measurement-factorv.com/).

Адаптация содержимого позволяет и широко используется для вставки сообщений в веб-страницы и иные документы, получаемые из локальных сетей и сети Интернет.

Одна из сложностей во вставке сообщений при адаптации содержимого возникает из-за многообразия протоколов и форматов передачи данных в сети Интернет, большинство из которых поддерживаются существующими браузерами - это, например, различные версии формата HTML, xHTML, JSON. При этом способ отображения содержимого веб-документа может отличаться от браузера к браузеру, не говоря уже о размерах экрана того или иного устройства, используемого конечным клиентом для просмотра.

Поэтому вставка сообщения таким образом, чтобы оно не нарушало структуру документа и корректно выводилось на конечном устройстве, остается трудоемкой задачей, требует от разработчика учесть особенности форматов и протоколов, что в свою очередь повышает сложность правил и модулей адаптации, отчего возрастает нагрузка на серверы, на которых эта адаптация происходит.

При этом постоянно растет вычислительная мощность клиентских мобильных и компьютерных устройств, сложность веб-браузеров, большинство из которых поддерживают тот или иной язык клиентских скриптов. Такие языки клиентских скриптов, как ЕСМА, JavaScript, VBScript и др. позволяют работать со структурированным представлением документов, изменять их содержимое, и даже оперировать с другими скриптами в документах.

В качестве ближайшего аналога заявляемого изобретения выбран патент США 7533144 «Способ обеспечения веб-страницы дополнительным содержимым, вставленным на платформе промежуточного сетевого объекта (INE)», описывающий способ вставки в веб-страницу контента с изменением содержимого в качестве ответа на первый веб-запрос и применением адаптации содержимого.

Недостатками способа, описанного в аналоге, являются:

- описанная платформа промежуточной сетевой сущности (INE platform) размещается либо на сервере адаптации контента, что ведет к потерям в производительности, либо на клиентском устройстве, что требует установки дополнительных приложений;

- размещение дополнительного содержимого в случае веб-страницы ограничено отдельным фреймом, что приводит к ограничению внешнего вида и размещения вставленного содержимого (только прямоугольная область). Также фрейм имеет отдельную сессию в браузере, и не имеет доступа к информации о родительском фрейме (т.е. модифицируемом содержимом).

Технический результат, на достижение которого направлено заявляемое изобретение, заключается в возможности перенести вставку сообщения с веб-сервера или сервера-посредника на клиентское устройство для получения данных о возможностях клиентского устройства и учесть их при вставке сообщения таким образом, чтобы отображаемая информация не теряла изначальную структуру, внешний вид и читабельность.

Технический результат достигается тем, что функции промежуточной сетевой сущности разделены между сервером адаптации контента, сервером данных и двумя клиентскими скриптами с сохранением изменения содержимого в качестве ответа на первый веб-запрос и применением адаптации содержимого. Способ, описанный в данном изобретении, существенно сокращает объем данных, необходимый для вставки, а доставка скрипта для размещения и вставляемого сообщения в два этапа (J2 и М по обозначениям ниже) позволяют реализовывать более гибкие сценарии размещения сообщения в электронном документе.

Заявляемый способ реализуется с помощью серверов, изображенных на фигуре:

- Saк - сервер адаптации контента 1;

- Sв - веб-сервер 2;

- Sк - клиентское устройство (КУ) 3;

- Scкp - сервер скриптов 4;

- Sд - сервер данных 5.

Заявляемое изобретение может быть применено в любых сетях с любым типом документов данных, отображение которых предусматривает выполнение клиентских скриптов. Примеры в данном описании для наглядности и понятности будут приведены для случая сети с транспортным протоколом передачи гипертекста HTTP версии 1.1, веб-страницами в качестве электронных документов, гипертекстовым форматом данных HTML 4.1 и языком клиентских скриптов Javascript.

Сервер адаптации контента Saк 1 включен во взаимодействие между Sв 2 и Sк 3. Это включение может быть реализовано, например, как прозрачный прокси-сервер, причем физически Saк 1 и Sв 2 могут быть реализованы на одном устройстве или на разных.

Клиентское устройство Sк 3 отправляет в сеть запрос Q1 на получение ответа от веб-сервера Sв. Saк пропускает запрос Q1 в неизменном виде к серверу Sв 2. Веб-сервер Sв 2 формирует ответ R1.1, который может содержать в себе документ D1.1, в который необходимо вставить сообщение М (например, информационного или рекламного характера) с сервера данных 5. Ответ R1.1 может также содержать не документ, а двоичные данные, например изображение, аудио- или видеопоток.

Ответ R1.1 веб-сервера 2 приходит в Saк 1. Saк анализирует R1.1 на предмет наличия документа D1.1 и пригодности D1.1 к вставке клиентских скриптов.

Если R1.1 не содержит пригодного для вставки клиентского скрипта документа D1.1, R1.1 возвращается клиентскому устройству в неизмененном виде.

Если R1.1 содержит D1.1 таковым, что вставка клиентских скриптов в D1.1 допустима, то Saк 1 вставляет клиентский скрипт - скрипт подгрузки J1 - в тело документа D1.1. Скрипт подгрузки J1 представляет собой максимально компактный скрипт, который содержит в себе конфигурацию данного сервера Saк 1.

Saк 1 осуществляет вставку J1 в допустимое место D1.1. В случае с форматом данных HTML, например, таким местом будет начало или конец содержимого секции, отмеченной тегами<head>…</head>.

Далее Saк 1 отправляет измененный ответ R1.2, содержащий измененный документ D1.2 (представляющий из себя документ D1.1 с внедренным J1), клиентскому устройству Sк 3. На КУ при обработке полученного измененного ответа R1.2, выполняется среди прочих клиентских скриптов из D1.2 и скрипт подгрузки J1.

J1 при выполнении своем на клиентском устройстве 3 формирует запрос Q2 к серверу скриптов Scкp 4 на получение основного скрипта J2. Saк 1 пропускает Q2 и J2 без изменений.

Сервер скриптов представляет собой веб-сервер, на котором хранится J2, он может быть расположен на отдельном сервере, доступном клиенту по сети Интернет, может быть расположен на одном сервере с сервером данных или на одном сервере с сервером адаптации контента.

При выполнении клиентского скрипта J1 последовательно выполняется следующее:

- J2 анализирует содержащуюся в J1 конфигурацию сервера адаптации контента Saк, что возможно в силу того, что J1 и J2 выполняются в одной и той же среде и в контексте измененного документа D1.2. J1 передает данные в J2 путем их помещения в любое доступное J2 хранилище данных, способ передачи в которое поддерживается средой исполнения клиентских скриптов пользовательского устройства, например локальное хранилище браузера или определение глобальных переменных;

- по результатам анализа конфигурации сервера адаптации контента Saк 1, содержащейся в J1, J2 принимает решение о возможности или невозможности вставки сообщения в измененный документ D1.2. В случае невозможности вставки алгоритм прерывается и вставка не происходит. В противном случае формируется конфигурация для получения сообщения, анализ продолжается на следующем шаге;

- J2 анализирует измененный документ D1.2 из ответа R1.2, его структуру и важные для вставки сообщения особенности, включая такие, как расположение элементов в измененном документе D1.2, зависимости отображения элементов от связанных с измененным документом D1.2 клиентских скриптов, общий размер отображения измененного документа D1.2, порядок загрузки и отображения элементов;

- в результате анализа J2 принимает решение о возможности или невозможности вставки сообщения М в измененный документ D1.2. В случае невозможности вставки алгоритм прерывается и вставка не происходит. В противном случае анализ продолжается на следующем шаге;

- J2 анализирует среду, в которой он выполняется на клиентском устройстве Sк 3 (в случае с HTML это веб-браузер), возможности и особенности этой среды, включая такие, как поддерживаемые операции скрипта, размер экрана, средства ввода;

- в результате анализа J2 принимает решение о возможности или невозможности вставки сообщения М и месте вставки. В случае невозможности вставки алгоритм прерывается и вставка не происходит;

- если по результатам анализа вставка возможна, J2 формирует запрос Q3 к серверу данных Sд 4. Сервер данных Sд 4, с учетом полученных в Q3 данных о среде и измененном документе D1.2 из измененного ответа R1.2, а также на основе алгоритма выдачи сообщений, возвращает ответ R3 сервера данных, содержащий сообщение М (рекламное или информационное), клиентскому устройству. Сервер адаптации контента Saк 1 пропускает Q3 и R3 в неизмененном виде.

Обработку ответа R3 сервера данных, содержащего сообщение М для вставки в электронный документ, осуществляет также скрипт J2. Он производит манипуляции над содержимым измененного документа D1.2 таким образом, чтобы выделить место для сообщения М (используя данные анализа на предыдущих шагах), помещает в измененный документ D1.2 новый элемент для отображения сообщения М из R3 или изменяет один из существующих элементов таким образом, чтобы тот отображал сообщение М, используя при этом данные, полученные при анализе возможности вставки.

Способ вставки сообщений в электронные документы внедренным клиентским скриптом, осуществляющий изменение содержимого в качестве ответа на первый веб-запрос и применение адаптации содержимого, отличающийся тем, что клиентское устройство отправляет в сеть запрос на получение ответа от веб-сервера, сервер адаптации контента, включенный во взаимодействие между веб-сервером и клиентским устройством, пропускает его в неизменном виде, веб-сервер формирует ответ, который может содержать документ, в который необходимо вставить сообщение, ответ приходит на сервер адаптации контента, анализируется последним на предмет наличия документа и его пригодности к вставке клиентских скриптов, при допустимости вставки сервер адаптации контента осуществляет вставку скрипта подгрузки в допустимое место документа и отправляет измененный ответ, содержащий измененный документ с внедренным скриптом подгрузки, клиентскому устройству, на котором последний выполняется и формирует запрос серверу скриптов на получение основного скрипта, принимающего решение о возможности вставки сообщения в измененный документ по результатам анализов конфигурации сервера адаптации контента, измененного документа, его структуры, важных для вставки сообщения особенностей, таких как расположение элементов, зависимости отображения элементов от связанных с измененным документом клиентских скриптов, общий размер отображения, порядок загрузки и отображения элементов, а также возможности и особенности среды, в которой он выполняется на клиентском устройстве, включая такие, как поддерживаемые операции скрипта, размер экрана, средства ввода, при допустимости вставки сообщения основной скрипт формирует запрос серверу данных, в ответ на который сервер данных возвращает ответ сервера данных, содержащий сообщение для вставки, клиентскому устройству, при этом сервер адаптации контента пропускает запрос серверу скриптов, основной скрипт к клиентскому устройству, запрос серверу данных и ответ сервера данных клиентскому устройству в неизмененном виде, а основной скрипт производит манипуляции над содержимым измененного документа таким образом, чтобы выделить место для сообщения, помещает в него новый элемент для отображения сообщения или изменяет один из существующих элементов таким образом, чтобы тот отображал сообщение, используя при этом данные, полученные при анализе возможности вставки, при невозможности вставки клиентских скриптов в документ или сообщения по результату любой аналитической операции основного скрипта вставка сообщения не происходит.
СПОСОБ ВСТАВКИ СООБЩЕНИЙ В ЭЛЕКТРОННЫЕ ДОКУМЕНТЫ ВНЕДРЕННЫМ КЛИЕНТСКИМ СКРИПТОМ
Источник поступления информации: Роспатент
+ добавить свой РИД