На последний день рождения я купил себе новый телефон (Nokia 6300). После моего старого samsung'а телефон смотрится (и пользуется) как новый ноутбук. Среди прочих функций были замечены богатые возможности планирования: календарь, заметки TODO, встречи. Телефон помнит о важных делах и даже напоминает о них. В отличие от компьютера, телефон всегда рядом и всё очень-очень было радостно за исключением одного НО: набивать текст задач и TODO на телефонной клавиатуре муторно. Одновременно с этим, на компьютере очень удобно отслеживать задачи, но он не всегда ссобой.
Задача
Синхронизировать календарные данные на телефоне и на компьютере с помощью bluetooth
Платформа
Компьютер: Ubuntu 9.04, Evolution
Телефон: Nokia 6300
Реализация
Bluetooth устройства и стек на моём ноутбуке после установки 9.04 работали "из коробки", поэтому основная задача была именно синххронизация календарных данных.
После первого же гугления я нашёл два пути синхронизации под *nix:
1.msync
2.xgnokii
xgnokii позволяет синхронизировать с телефоном адресную книгу, SMS, календарь, но вносить правки можно только встроенными средствами xgnokii, поэтому для моей задачи он не подошёл.
msync - это целый класс программ для связи с мобильными устройствами, однако, как оказалось, "не все msync одинаково полезны". Сначала я скачал multisync-gui и попытался настроить синхронизацию с помощью графического интерфейса. Телефон был правильно распознан, программа писала, что синхронизация прошла успешно, однако новых данных не появлялось ни в календаре мобильного телефона, ни в evolution'е. Немного расстроившись, я стал пробовать синхронизироваться с помощью консольных утитлит. На этот раз синхронизация прошла успешно и я получил новые данные на обеих сторонах. Далее я опишу порядок настройки:
Необходимые пакеты
Для синхронизации необходимы:
multisync multisync-tools opensync-plugin-evolution libopensync-plugin-syncml (+ все их зависимости)
Конфигурирование
Для начала необходимо собрать информацию о телефоне, в частности его bluetooth идентификатор и канал на котором работает служба синхронизации телефона. Эти данные можно узнать воспользовавшись методами предложенными здесь. А именно:
1. Перевести телефон в режим обнаружения.
2. В консоли ввести hcitool scan
Вывод утилиты hcitool будет в формате адрес: имя устройства. Нудно запомнить адрес телефона.
3. В консоли ввести sdptool browse <адрес_телефона>
Вывод утилиты sdptool будет в виде краткой информации о службах, присутствующих на телефоне. Прочитав его, узнал о телефоне много нового. Для синхронизации нужна служба "Nokia SyncML Server" и значение поля "Channel" этой службы. У меня это был 11 канал.
Теперь имея необходимые данные можно настроить параметры синхронизации:
В консоли необходимо ввести:
msynctool –addgroup evolution-nokia
msynctool –addmember evolution-nokia syncml-obex-client
msynctool –addmember evolution-nokia evo2-sync
msynctool –configure evolution-nokia 1
После последней комманды откроется окно редактора, где среди подробнейших коментариев необходимо ввести следующие данные:
<config>
<username></username>
<password></password>
<type>2</type>
<bluetooth_address>bluetooth_адресс_телефона</bluetooth_address>
<bluetooth_channel>Номер_канала_службы_синхронизации</bluetooth_channel>
<interface>0</interface>
<version>1</version>
<identifier>PC Suite</identifier>
<wbxml>1</wbxml>
<recvlimit>10000</recvlimit>
<maxobjsize>0</maxobjsize>
<usestringtable>0</usestringtable>
<onlyreplace>0</onlyreplace>
<contact_db>Contacts</contact_db>
<calendar_db>Calendar</calendar_db>
<note_db>Notes</note_db>
</config>
После созранения изменений и выхода из редактора, в консоли необходимо ввести:
msynctool –configure evolution-nokia 2
Здесь необходимо прописать пути к синхронизируемым файлам evolution'а:
<config>
<address_path>file:///home/имя_пользователя/.evolution/addressbook/local/system
<calendar_path>file:///home/имя_пользователя/.evolution/calenddar/local/system</calendar_path>
<tasks_path>file:///home/имя_пользователя/.evolution/tasks/local/system</tasks_path></config>
Сохраняюсь, выхожу из редактора. Настройка окончена. Теперь можно ввести:
msynctool –sync evolution-nokia
После выполнения этой комманды данные синхронизируются. Для того, чтобы не вводить команду каждый раз, её можно вынести на панель быстрого доступа в Gnome, однако если Вы любите вести календарь в evolution, можно поставить эту задачу в cron для автоматической синхронизации.
Комментариев нет:
Отправить комментарий