Технология создания активного канала
Liburnia

Некоторые российские активные Web-каналы


Все в этом мире становится динамичнее. Это в полной мере относится и к Internet: аплеты Java, анимированные файлы, изменяемое содержимое. Следующий шаг - обустройство активных каналов для поступления данных прямо на рабочее место. Это стало возможным благодаря так называемой push-технологии. Ее суть лучше всего выражается популярной фразой: "Овес к лошади не ходит", т. е. негоже пользователю самому бродить по серверам в поисках требуемой информации, а лучше пусть та сама к нему приходит. Неким аналогом push-технологии можно считать активно использующиеся рекламными компаниями листовки, которыми "бомбили" почтовые ящики несчастных пользователей разнообразной зазывной белибердой. Теперь же, учтя горький опыт рекламистов, концепция доставки данных была изменена. Человек на клиентской машине сам решает, какую информацию получать. Он может подписаться на любой Web-узел, указав время, когда браузер должен делать "нырок" на тот или иной сервер. Если появляется что-то новенькое, пользователю сообщается об этом дополнительно. Но еще удобнее пользоваться подпиской не на узлы, а на каналы. Название "канал" образовалось по аналогии с телевизионным каналом. Однако активный Web-канал - это удобный информационный источник периодически обновляемых данных. Можно подписаться на канал, можно остановить подписку. Браузер сам отслеживает изменение данных в канале и предлагает пользователю ознакомиться с новым содержимым. Как и в телевидении, можно переключать каналы, а можно разместить на рабочей области активное окошко, внутри которого отображается информация, идущая по каналу. Пока только два браузера, Netscape Communicator и Internet Explorer 4.0, поддерживают push-технологию и подписку на активные каналы, причем методика работы с каналами разная. Однако, заглянув в продукт для Web-разработчиков под названием Internet SDK, можно узнать, как сделать свой канал так, чтобы и Netscape Communicator его понял. В этой статье мы рассмотрим процесс изготовления активных каналов для браузера Internet Explorer 4.0.

Технология создания активного канала

Создать канал не так уж и сложно. Нужно лишь освоить формат описания каналов CDF, задаваемый языком XML (eXtensible Markup Language), который очень похож на HTML и отличается лишь именами используемых тегов. Еще один важный момент связан со структурой файла CDF. Он, как и обычная Web-страница, состоит из определенных обязательных секций, обозначаемых парами специальных тегов.

Первое, что требуется сделать, - показать всем, что у вас есть свой канал и посетители вашего узла могут подписаться на него. Лучше всего разместить такое объявление прямо на главной странице вашего узла, чтобы невозможно было пройти мимо него. Объявление можно сделать двумя способами. Первый из них -тегами и сделайте гипертекстовую ссылку на CDF-файл, описывающий ваш активный канал. Второй способ, рекомендуемый Microsoft, - вставьте на странице стандартную кнопку-картинку, призывающую подписаться на ваш канал. Стандартный фрагмент на языке HTML для этого приводится ниже:

 Подпишитесь сейчас!

Вставьте его в свою корневую страницу Web, поменяв адресную ссылку на действительный адрес страницы и имя CDF-файла, которое вы планируете использовать. Файл рисунка кнопки произволен, хотя лучше будет, если вы придержитесь негласного стандарта и сделаете кнопку размером 24x110 пикселов с текстом "Add to Channels".

На следующем этапе создается файл описания канала с расширением CDF. Это самый обычный текстовый файл, так что вы можете воспользоваться таким примитивным текстовым редактором, как Notepad. Главное - сохранить CDF-файл с тем же именем, что и в ссылке, привязанной к кнопке подписки на вашей Web-странице.

Cоздание канала начинается с записи пары тегов и . Они сообщают, что внутри находятся детали, описывающие реализацию вашего канала. У тега имеется три полезных атрибута:

BASE="адрес" - задает базовый адрес канала и служит корневым адресом для всех дальнейших ссылок; так, если у вашего узла очень длинный адрес, имеет смысл задать его в этом атрибуте, тогда браузер, найдя любой относительный адрес в CDF-файле, автоматически добавит его к адресу, указанному в BASE, формируя полный абсолютный адрес;

HREF="адрес" - определяет адрес канала; по этому адресу переходит браузер в том случае, когда пользователь выбрал ваш канал;

LEVEL="n" - указывает глубину (в ссылках) чтения браузером содержимого вашего канала; например при n = 2 браузер загрузит в кэш вашего компьютера страницу и все связанные с ней страницы до второго уровня; по умолчанию n = 0.

означает, что базовый адрес канала - сервер с адресом http://mitrich, а страница, на которую должен "прыгнуть" браузер, носит имя index.html. Когда пользователь выберет наш канал, его браузер возьмет базовый адрес, "склеит" его в полный адрес http://mitrich/index.html и обратится по этому адресу. Microsoft рекомендует использовать при описании канала необязательный тег , который ссылается на сам CDF-файл:

Его следует разместить внутри пары тегов и .

К описанию канала неплохо добавить некоторую полезную для подписчика информацию:

канал Александра Пушкина
Этот канал подойдет для разработчиков,
которым требуются нестандартные решения

Тег дает заголовок каналу, а тег <ABSTRACT> формирует подсказку, которая появится, если подержать курсор мыши над ссылкой на канал.</P> <P>Итак, каркас CDF-файла у нас уже имеется. Продолжим описание канала заданием расписания обновления данных. Для этого используется пара тегов <SCHEDULE> и </SCHEDULE>. Между ними заключаются параметры расписания, а также параметры STARTDATE и ENDDATE, задающие дату начала и окончания действия расписания канала в формате "год-месяц-день". Не правда ли, похоже на расписание телевизионных программ?</P> <P>Само расписание обновления задается тремя специальными тегами:</P> <LI><INTERVALTIME/> - интервал обновления данных; </LI> <LI><EARLIESTTIME/> - начальное время, с которого можно начинать обновление; </LI> <LI><LATESTTIME/> - конечное время обновления. </LI> <P>У каждого из этих тегов могут быть параметры DAY, HOUR и MIN, определяющие дату и время действия тегов. Допустим, ваш канал действует с первого августа и до конца года и обновляется раз в неделю с двенадцати дня до полуночи. Тогда:</P> <PRE><SCHEDULE STARTDATE="1997-08-01" ENDDATE="1997-12-31"> <INTERVALTIME DAY="7"/> <EARLIESTTIME HOUR="12"/> <LATESTTIME HOUR="24"/> </SCHEDULE></PRE> <P>Каналу могут потребоваться логотипы. Для этого существует тег <LOGO/>. Внутри него нужно подставить гипертекстовую ссылку на файл логотипа и стиль отображения. Это может быть пиктограмма в формате ICO размером 32x34 пиксела ("ICON") или картинка в форматах .GIF или .JPEG размером 80x32 пиксела ("IMAGE"). Пиктограмма уместна в списке каналов главного меню, а большой логотип в палитре каналов. Поэтому укажем оба логотипа:</P> <PRE><LOGO HREF="channel.ico" STYLE="ICON"/> <LOGO HREF="logo.jpg" STYLE="IMAGE"/></PRE> <P>Обратите внимание, что для заливки вокруг логотипа используется цвет, задаваемый верхним левым пикселом картинки.</P> <P>Для браузера Internet Explorer 4.0 вы можете задать хранитель экрана в виде страницы Web, описав его в CDF-файле следующим образом:</P> <PRE><LOGO HREF="channel.ico" STYLE="ICON"/> <LOGO HREF="logo.jpg" STYLE="IMAGE"/></PRE> <P>Нужно только поменять ссылку на HTML-файл на актуальное имя. Ради чистоты эксперимента создадим простейший хранитель экрана:</P> <PRE><HTML> <BODY BGCOLOR=BLACK TEXT=#00FF33> <MARQUEE ALIGN=MIDDLE BEHAVIOR=ALTERNATE> <FONT SIZE=30>Hey, don't touch my toys!</FONT> </MARQUEE> </BODY> </HTML></PRE> <P>Канал может содержать список страниц, определяемых тегами <ITEM> и </ITEM>, которые должны загружаться в кэш при получении обновленной информации по каналу. Между ними вставляется описание раздела с заголовками, логотипами, описаниями разделов, т. е. тех же структурных элементов, что мы делали для самого канала. Расширив канал несколькими разделами, получим готовый файл описания нашего канала:</P> <PRE><CHANNEL BASE="HTTP://MITRICH/" HREF="INDEX.HTML"> <SELF="CHANNEL.CDF> <TITLE>Канал Александра Пушкина This channel is for Windows developers who need to find non-standard solutions The C++ Page This page contains C++ samples The Java JavaScript Page This page contains samples written in Java and JavaScript

Liburnia

Кому-то создание файлов описания каналов может показаться рутинной и утомительной работой. Ну что же, воспользуйтесь специальным мастером создания каналов Liburnia, который можно найти на Web-сервере компании Microsoft. Он позволяет легко создавать CDF-файлы в пошаговом режиме.

Вам придется пройти всего через десяток шагов. Этого достаточно, чтобы сделать новый канал. В двухпанельном окне Liburnia показывается иерархическое строение файла описания канала и его исходный текст на языке XML.

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


Некоторые российские активные Web-каналы

Компания Название канала Заголовок канала URL вводной страницы URL странцы подписки URL канала URL для ознакомления и справочника каналов Коротко о канале
Russia-On-Line Russia-On-Line News Russia-On-Line News http://www.online.ru/
channel
http://www.online.ru/
channel/rsubs.rhtml
http://www.online.ru/
channel/rol-ie4.cdf
http://www.online.ru/
channel/rguide.rhtml
Ежедневные новости "России-Он-Лайн"
Netskate Moscow Observer Moscow Observer http://www.cityline.ru/
obs/
http://www.cityline.ru/
obs/
http://www.cityline.ru/
obs/obs.cdf
http://www.cityline.ru/
obs/
"Московский Обозреватель" - это первый московский Web-узел, посвященный культурной жизни города. Информация обо всех культурных событиях, досуг. Новости кинематографа; музыка; обзоры СD, видео и книг; интревью; художественные проекты. Обновляется ежедневно.
Garant Park Парк Park http://channel.park.ru/
intro.asp
http://channel.park.ru/
subscribe.asp
http://channel.park.ru/ http://channel.park.ru/
preview.asp
Деловой канал. Экономическая, правовая и финансовая информация.
Russia-Izvestia "Известия" on-line News from Russia http://www.izvestia.ru/ http://www.izvestia.ru/ http://www.izvestia.ru/
izvestia.cdf
http://www.izvestia.ru/
channel.html
Газеты: "Известия", "Финансовые Известия", "Неделя", "Известия-Экспертиза"; жирнал "Закон". Ежедневные обзоры прессы: политика, бизнес (на англ. яз.). Базы данных: политика, финансы, бизнес, персоналии, юридическая и др. (рус./англ. яз.).
Video International РБН Российское Бюро Новостей http://rbn.newstv.ru/
intro.html
http://rbn.newstv.ru/ http://rbn.newstv.ru/
rbn.cdf
http://rbn.newstv.ru
/ppane.html
"Российское бюро новостей" - информационная картина дня
ACC Group ZDNet/Russia ZDNet/Russia http://www.zdnet.ru/
channels/default.asp
http://www.zdnet.ru/
channels/default.asp
http://www.zdnet.ru/
channels/ZDNetRU.cdf
http://www.zdnet.ru/
default.asp
ZDNet в России на русском языке: самые свежие свежие новости и обзоры из России и со всего мира
ROCIT ROCITInfo ROCIT Info http://www.rocit.ru/
cdf/intro.htm
http://www.rocit.ru/
cdf/rocit.cdf
http://www.rocit.ru/
cdf/rocit.cdf
http://www.rocit.ru/
cdf/channel.htm
Статистика и обзоры, факты и тенденции, новости
Gorod-Info Weekend Weekend Channel http://www.weekend.ru/
Channel/
http://www.weekend.ru/
Channel/ieweekend.asp
http://www.weekend.ru/
Channel/ieweekend.asp
http://www.weekend.ru/
Channel/iepush.asp
Ежедневно - музыка, кино, игры, афиша и многое другое для развлечения и не только...
Vinco+ Игры в Интернете от ВИНКО+ Vinco Online Games http://www.vinco.ru/
channel/
http://www.vinco.ru/
channel/
http://www.vinco.ru/
channel/default.cdf
http://www.vinco.ru/
channel/preview.asp
Настольные игры и IRC. Ежедневно блиц-турниры; списки 100 лучших игроков в мире и в каждой отдельной стране...