SyncML

SyncML (от англ. Synchronization Markup Language — «язык разметки синхронизации») был создан для разработки единого протокола передачи данных для всех типов портативных устройств, таких как КПК, портативные ПК, пейджеры и мобильные телефоны. Созданный в феврале 2000, SyncML быстро охватил наиболее весомых производителей мобильных устройств и мобильного программного обеспечения, таких как Nokia, Ericsson, IBM, Lotus, Motorola, Palm, Psion, Starfish. SyncML призван решить вопросы синхронизации мобильных устройств с сетевыми данными.

SyncML использует разметку XML и различные протоколы для передачи данных. Реализация клиентских приложений для SyncML позволяет использовать WAP Binary XML для уменьшения размера пакетов передаваемых данных, тем не менее, использование WBXML не является обязательным. SyncML также способен восстановить связь между устройствами, если происходят обрывы соединения (при условии, что клиент и сервер поддерживают обрывы соединения). Кроме этого, SyncML эффективно работает с различными коммуникационными протоколами, такими как HTTP, Wireless Session Protocol, OBEX (Bluetooth, IrDA), SMTP, TCP/IP.

Программная структура SyncML основана на двух протоколах:

  • Протокол представления SyncML (SyncML Representation Protocol), который определяет формат представления SyncML-сообщений и описание внутренней конструкции работы SyncML.
  • Протокол синхронизации SyncML (SyncML Synchronisation Protocol), который определяет действия между SyncML-клиентом и SyncML-сервером.

SyncML поддерживает семь различных типов синхронизации:

  • Двусторонняя синхронизация (Two-way sync);
  • Медленная синхронизация (Slow sync);
  • Односторонняя синхронизация только от клиента (One-way sync from client only);
  • Обновление только от клиента (Refresh sync from client only);
  • Односторонняя синхронизация только от сервера (One-way sync from server only);
  • Обновление только от сервера (Refresh sync from server only);
  • Синхронизация при изменении серверных данных (Server-alerted sync).

SyncML не зависим от типов синхронизируемых данных, но обычно это данные в формате text/x-vcard (визитки), text/x-vcalendar (календарь/задачи), text/plain(заметки). Следует отметить, что первые два типа имеют регламентированные наборы полей, и каждое определённое устройство может поддерживать или не поддерживать некоторые поля. Несмотря на то, что существуют спецификации на vcard и vcalendar, они позволяют производителям устройств произвольно трактовать некоторые параметры. Протокол SyncML позволяет передавать данные о поддерживаемых форматах (поля, типы, размер, возможные значения и т. д.), но, как правило, эти данные не в полном объёме предоставляются устройством для однозначной интерпретации формата или существенно различаются по значениям между устройствами различных производителей, что создаёт определённые сложности для разработчиков SyncML-серверов.

Ключевые преимущества:

  • унификация — поддержка большого числа производителей устройств и сервисов;
  • минимальный объём передаваемых данных (быстрая синхронизация передаёт только информацию об изменениях на сервере и клиенте, сжатие на базе WBXML);
  • полнота синхронизируемых данных — клиент SyncML может предоставлять всю необходимую информацию «о себе»;
  • независимость от типа контента (можно синхронизировать практически любые данные).

Русскоязычные сервисы, поддерживающие SyncML

Поставщик Целевая аудитория Цена Контакты Календарь Заметки Задачи Закладки E-mail E-mail в SMS SMS MMS WebDAV CalDAV Примечания
Google все желающие бесплатно Да Нет Нет Нет Нет Нет Нет Нет Нет Нет Нет C 30 января 2013 г. Google прекратил поддержку SyncML
MemoToo Потребители платно / бесплатно Да Да Да Да Да* Да Нет Да Да Ограничения бесплатного использования: до 10 сервисов, до 40 элементов в каждой категории
Пользователи Yota все желающие бесплатно Да Управление контактами как часть социальной сети — одного из сервисов Yota. Без ограничений.
memiana все желающие бесплатно Да
wap4b.ru Любая бесплатно Да Да Да Да Нет Нет Да
Мегафон Пользователи Мегафон Услуга подключается бесплатно + Абонентская плата Да Да Да Да Да Нет Нет Да Нет Нет Нет SyncML версии 1.0-2.0 .

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.