Обратите внимание, что новости можно получать по RSS.
X
-

Информационные технологии, LiveJournal cr_it - архив

5 ноября 2008, 18:05 (3540 дней назад, №8743)Определение характеристик мобильных устройств [браузером].

"UAProf" - Wapforum реализация W3C стандарта "CC/PP". Иногда употребляются как синонимы.

Предназначение CC/PP, UAProf - предоставить серверу (а также прокси и гейту) информацию о технических возможностях мобильного устройства (телефона)  пользователя и о его, пользователя предпочтениях (например, на каком языке он предпочитает видеть контент, включён ли у него звук и т.п.).
 

Информация об устройстве и его установках передаётся в X_WAP_PROFILE (http header "x-wap-profile" или "profile" ) либо в виде ссылки на .xml/rdf лежащий на сайте производителя телефона, либо в виде самого .xml (реже, т.к. он большой). Возможны смешанные варианты, когда внутри xml отдельные блоки представлены ссылками.
К примеру, общий профайл телефона может содержать ссылки на блоки относящиеся к Software (и хранящиеся на сайте symbian.com), Hardware (на сайте nokia.com) и UserPreferences (прямым XML'ем, в профайле).

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

Поскольку реальные устройства по установкам отличаются от исходных заводских (например, может быть увеличена память или в данный момент быть выключен звук) отличия передаются отдельно, в X_WAP_PROFILE_DIFF (http header "x-wap-profile-diff" или "profile-diff") хотя, по стандарту они вполне могут быть включены внутрь X_WAP_PROFILE.
С точки зрения обмена между устройством и гейтом, при выключении звука на устройстве, гейту посылается только информация об этом факте, после чего гейтом вносится изменение в хранящийся в кэше профайл. С точки зрения же сервера, гейт выдаёт полную информацию (кэш+изменения присланные ему устройством). Данный факт отражается в X_WAP_PROFILE_WARNING соответствующим кодом.

Вся передаваемая через CC/PP информация относится исключительно к текущей HTTP сессии.

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

Свойства (capabilities) устройств стандартизированы, их словарь содержится в XML Scheme,  на который ссылается профайл (например: http://www.wapforum.org/profiles/UAPROF/ccppschema-20020710 ). Однако, некоторые производители могут добавлять свои свойства, в этом списке отсутствующие или использовать разные словари. Так что, одно и то же свойство потенциально может быть обозначено по-разному. Кроме того, есть жалобы на недоступность профайлов на сайтах производителей и на ошибки в них.

Кстати, существует возможность устраивать DOS атаки, указывая в профайле вместо ссылок на блоки, ссылки на атакуемую систему.

По данным на 2007 год CC/PP профайлы передают примерно 70% устройств.

Встречаются сайты, где люди собирают базы данных по устройствам, преимущественно на основе UAProf, но кто во что горазд в смысле форматов и условий доступа. К примеру:
http://wurfl.sourceforge.net
http://www.mobilemultimedia.be/en/uaprof/parser.php
http://www.detectright.com/page/index
http://devices.pdata.ru/
http://deviceatlas.com/devices

Итак, с практической точки зрения (реализация WAP сайтов, учитывающих возможности девайса) существуют два разных подхода:

1.Принимаем CC/PP профайл, на лету распарсиваем и решаем, что и как отдавать.

Недостатки:
- Запрос на получение блоков профайла по ссылкам может отнимать очень ощутимое время.
- Не все телефоны присылают CC/PP профайл. Некоторые присылают его не вполне корректно.

Так что, первый вариант представляется неразумным.

2.Принимаем USER_AGENT, содержащий название телефона. На его основе лезем в базу (расположенную у нас), из которой достаём нужную информацию о его возможностях. Если данный телефон передал еще и CC/PP данные, _при_необходимости_  достаём из них то, что относится к настройкам телефона и используем совместно с данными из нашей базы.

Если исходить из варианта (2) то можно идти как минимум двумя путями:

а) Сформировать эту базу самим, путём сбора статистики HTTP заголовков с какого-нибудь нашего посещаемого WAP сайта.

б) Использовать существующую базу WURFL, бесплатную и свободную в т.ч. и для коммерческого использования (содержит около 5000 устройств, обновляется, по одному из исследований покрывает порядка 75% устройств. UAProf - 70%).

Полезные ссылки:

http://www.w3.org/Mobile/CCPP/ - (официальная страница CC/PP)
http://www.w3.org/TR/NOTE-CCPP/ (общее описание CC/PP)
http://www.w3.org/TR/NOTE-CCPPexchange (передача CC/PP данных поверх HTTP)
http://www.w3.org/TR/CCPP-struct-vocab/ (общее описание CC/PP)
http://www.wapforum.org/profiles/UAPROF/ccppschema-20020710 (пример списка возможностей устройств по CC/PP)
http://delicon.sourceforge.net/profiles.html (список UAProf профайлов устройств. 500 шт.)
http://www.w3.org/TR/REC-rdf-syntax/ (RDF)
http://en.wikipedia.org/wiki/UAProf
http://developer.openwave.com/dvl/tools_and_sdk/wurfl_and_wall/intro_wurfl.htm (популярное описание WURFL)
http://www.wapforum.org/what/technical/SPEC-UAProf-19991110.pdf - стандарт UAProf (не самая свежая версия)
http://delicon.sourceforge.net/ (DELI API and validator for UAProf and CC/PP. Java.)
http://www.detectright.com/docs/DetectRight_Compared.pdf (сравнительная таблица особенностей WURLF, UAProf, DetectRight, Browsercaps)
http://developer.openwave.com/dvl/tools_and_sdk/wurfl_and_wall/intro_wall.htm
http://wall.laacz.lv/

(написано несколько месяцев назад)



Опубликовано: Пётр Соболев

Случайная заметка

6933 дня назад, 02:3423 июля 1999 После того как компания Amiga повернулась спиной к QNX в пользу Linux'a, QNX Software Systems не отступилась. В конце 1999-го выйдет QNX Neutrino OS для акселераторов Амиги (на базе PowerPC). Сюда войдет оконная система, приложения, драйвера и эмулятор обычной 68k Амиги. Система будет распространяться бесплатно. Более того, фирма Phase5 Digital Products (выпускающая ...далее

Избранное

437 дней назад, 01:575 мая 2017 Часть 1: От четырёх до восьми Я люблю читать воспоминания людей, заставших первые шаги вычислительной техники в их стране. В них всегда есть какая-то романтика, причём какого она рода — сильно зависит от того, с каких компьютеров люди начали. Обычно это определяется обстоятельствами — местом работы, учёбы, а иногда и вовсе — ...далее

1942 дня назад, 00:5922 марта 2013 Прочёл тут книжку - iWoz ( ссылка ) , 2006 года. Это автобиография Стива Возняка. Похоже, что на русский её не переводили (в отличие от книг про Стива Джобса). В этой парочке, как известно, Возняк был инженером (собственно, и спроектировавшим Apple I и II), а Джобс - скорее предпринимателем. В книге есть довольно интересные ...далее

1046 дней назад, 23:404 сентября 2015 Небольшое видео про CC'2015 ( версия без фоновой музыки здесь: ссылка )

1414 дня назад, 03:121 сентября 2014 Мой семинар на Chaos Constructions'2014 (слайды можно в виде PDF скачать здесь: ссылка ) и несколько интервью с разными людьми: Вячеслав Славинский (svo) о Vectrex: ссылка Вячеслав Славинский (svo) о 3D Imager для Vectrex: ссылка Вячеслав Славинский (svo) о световом пере для Vectrex: ссылка ...далее