Как настроить собственный SyncML сервер без VDS

Все больше современных пользователей ежедневно работают с несколькими компьютерами и мобильными устройствами. В такой ситуации большое знамение приобретает синхронизация данных между ними.

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

В качестве основы такого сервера можно использовать разработки компании Funambol. Ее OpenSource-проект Funambol Community Edition работает с протоколом SyncML.
Преимущество данной технологии — в возможности работы не только с современными гаджетами, но и с самыми простыми моделями телефонов. В результате синхронизироваться по SyncML без установки каких-либо дополнительных клиентов способно огромное количество устройств самых разных производителей. С помощью SyncML синхронизируются адресные книги, календари, заметки, напоминания, архивы SMS и почты. Для ускорения инсталляции разработчики предлагают набор серверных пакетов для платформ Windows и GNU/Linux. На обычном хостинге такой сервер не удасться создать, нужен специально настроенный VPS сервер. Наряду с собственно сервером Funambol, в пакет загрузки входят несколько вспомогательных инструментов, в том числе построенная на Java панель администрирования, тестовые веб- и Java-клиенты и другие вспомогательные средства.
Предлагаемые пакеты являются вполне доработанными продуктами. Они сконфигурированы для «быстрого старта», их развертывание не требует специфических знаний для инсталляции и конфигурирования. Funambol снабжен толковой справочной документацией, правда доступной только на английском языке. Давайте остановимся на основных моментах установки и настройки сервера и клиентских программ в среде Windows.

 

Установка сервера

Собственно инсталляция скачанного пакета идет в автоматическом режиме. Пояснений требует разве что выбор каталога установки. Дело в том, что в среде Windows при выборе предлагаемого по умолчанию варианта иногда могут возникать проблемы с запуском сервера. Избежать их очень просто: достаточно расположить каталог Funambol в корневой папке диска. Не будем забывать и о необходимости дополнительной настройки файервола: вам понадобится разрешить Funambol отправку и прием пакетов.
Установленный сервер работает в фоновом режиме, проверить его статус можно с помощью значка в системном трее. Для настройки используется Java-приложение Funambol Administration Tool.

По умолчанию данный инструмент сконфигурирован для доступа к серверу на локальном компьютере. Для первой авторизации на сервере используются логин admin и пароль sa, которые впоследствии разрешается изменить. Поддерживается и подключение к удаленному серверу Funambol, для чего в настройках доступа понадобится указать его IP и порт соединения, по умолчанию — 8080.

 

Настройка сервера

Все инструменты настройкикомпонентов Funambol собраны в левой колонке панели администрирования. Целесообразно выстроить работу в следующем порядке: сначала настроить внешний доступ к серверу, затем зарегистрировать пользователей, настроить параметры соединения с синхронизируемыми устройствами. Затем, если необходимо, можно поработать с настройкой дополнительных функций: веб-интерфейсом и Push-сервисами. Для настройки внешнего адреса понадобится обратиться к разделу Server Settings. Постоянный IP сервера и порт, который планируется использовать для внешних соединений, указываются в строке Server URL. В этом же разделе настраиваются и параметры шифрования информации, передаваемой между сервером Funambol и клиентским устройством. Набор предварительно настроенных схем шифрования доступен в диалоге DataTransformer Manager.

Funambol

Регистрация пользователей

Регистрация пользователей может быть проведена администратором сервера. Допустима и самостоятельная регистрация при обращении клиентов к серверу Funambol. Это значит, что логин и пароль клиенты задают самостоятельно на своих устройствах. При первой синхронизации они будут занесены в базу на сервере Funambol. Рекомендуем использовать в именах аккаунтов латиницу. К сожалению, применение кириллицы не позволит впоследствии вести поиск по базе, а также иногда приводит к проблемам с авторизацией на сервере.

 

Выбор модели синхронизации

Следующая важная настройка, которая потребуется уже при первом старте сервера. — выбор модели синхронизации. Данная опция находится в разделе Server Settings-Strategy Configuration. Она отвечает за приоритет данных, изменяемых при синхронизации. Предлагаются три стандартные модели. Выбор ServerWins приведет к тому, что при синхронизации данные из баз сервера всегда будут переписывать данные в мобильном устройстве. Политика ClientWins действует противоположным образом: данные клиентского устройства получают безусловный приоритет. Модель MergeData наиболее привычна и универсальна — сервер сравнивает даты изменения данных и объединяет наиболее свежие значения. Реализуется и возможность гибкой ручной настройки приоритетов определенных типов данных. После сохранения названных настроек сервер будет готов к началу реальной работы.

Funambol

Настройка клиентских устройств

Поскольку наш сервер не умеет высылать SMS с настройками, на синхронизируемых устройствах их придется выставить вручную. Сложности здесь возникнуть не должны, поскольку SyncML — давно известная технология с хорошей поддержкой.

Funambol

В устройстве создается новый профиль синхронизации, где указываются публичный адрес вашего сервера Funambol в виде адрес_сервера:порт/funambol/ds, логин и пароль. В качестве транспортного протокола задается HTTP. Если в вашем мобильном телефоне предусмотрены настройки DataPath или Database, то для них нужно будет задать синхронизируемые таблицы. Для Contacts указывается значение card, для Tasks и Notes — task и note, а для Calendar — cat.
На сайте проекта Funambol предлагается хороший выбор клиентов для различных мобильных платформ: Android, Blackberry, iPhone, Symbian, Windows Mobile, а также Javaклиент с немного упрощенным функционалом. Все они распространяются свободно, просты в освоении, упрощают настройку соединения и предлагают несколько дополнительных функций синхронизации.
В стартовый пакет Funambol Community Edition для Windows также включен «настольный» клиент, позволяющий выполнять синхронизацию различных типов данных одним щелчком. Кроме того, Funambol умеет взаимодействовать с пакетом Outlook. Это открывает широкие возможности по созданию календарей, адресных книг и другого контента с его последующим использованием в рамках своей группы пользователей. На сайте проекта также можно скачать клиент для Mac OS.
В комплект серверного пакета входит и веб-интерфейс, доступ к которому можно получить по адресу адрес_вашеro_cepBepa:8080/webdemo/main.jsp. Его назначение — демонстрация технологий, поэтому он весьма аскетичен в дизайне и предлагаемых функциях. При желании можно попробовать самостоятельно его доработать. Подобная бедность веб-решемия вполне объяснима. Основной бизнес Funambol — внедрение корпоративных SyncML-сервисов, а также разработка полнофункциональных веб-решений. Для демонстрации возможностей предлагаемых решений развернут портал myFunambol (my.funambol.com). Это онлайновый SyncML-сервер, на котором можно зарегистрировать аккаунт и познакомиться с веб-перспективами Funambol во всей красе.
Итог таков. Funambol Community Edition — замечательный инструмент. Он позволяет быстро развернуть рабочий SyncML-сервер даже тем пользователям, которые не обладают большим опытом в администрировании серверных решений. Поставить данной программе самые высокие оценки мешает только отсутствие русификации интерфейса и справочных материалов на русском языке.