- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF111:Calendar
Материал из Linuxformat.
- Календарь Упростите себе работу с телефоном и ПК
Содержание |
Календарь: в такт с телефоном
- Как много нужно сделать, как много можно забыть… Саймон Пиксток повышает свою организованность, синхронизируя календарь рабочего стола с мобильником.
Если вы тип вроде меня, вам так же сложно запомнить, что запланировано на завтра, не говоря уж о годовщинах свадьбы, днях рождения и даже еженедельных планерках. Вдобавок большинство из нас работают на нескольких компьютерах и разнообразных операционных системах, и чтобы быть организованными, приходится прилагать немалые усилия. Все мои телефоны за последние пять лет имели некое подобие встроенного календаря, но эта функция неизменно была дурно воплощена, требовала использования проприетарного ПО для синхронизации с ПК или признавала только Microsoft Outlook.
К счастью, ситуация улучшается, но все равно далека от совершенства. Если телефон продается с программным обеспечением, оно, как правило, создано для работы только с Windows, а клиент календаря по умолчанию – нечестивый Outlook. Правда, поскольку множество телефонных календарей совместимы со стандартом iCalendar, обычно можно задействовать и другие календарные приложения. Вдобавок большинство телефонов имеют возможность синхронизации через Bluetooth, и вам не потребуются USB-кабели или драйверы. Некоторые телефоны могут даже синхронизироваться через беспроводное интернет-соединение. На данном уроке мы рассмотрим синхронизацию календаря рабочего стола не только с телефоном, но и с Google Calendar и календарями на других компьютерах, независимо от используемой ОС.
Часть 1 Mozilla Sunbird
В Ubuntu возможен выбор из двух календарей: Evolution и Mozilla Sunbird/Thunderbird. Наша цель – создать простой способ синхронизации календаря под Ubuntu, OS X и Windows, а способ ее осуществить – использовать Google Calendar в качестве посредника. Мы начнем с Mozilla Sunbird, поскольку это самое простое решение, затем перейдем к Evolution.
Sunbird – самостоятельное календарное приложение от Mozilla, его можно скачать с сайта http://www.mozilla.org/projects/calendar/sunbird. Как и все приложения от Mozilla, оно кросс-платформенное и предлагает одинаковый интерфейс для всех используемых ОС. Кроме того, вместо запуска трех отдельных приложений – Firefox, Thunderbird и Sunbird – можно встроить функционал Sunbird в Thunderbird с помощью дополнения Lightning (http://www.mozilla.org/projects/calendar/lightning), приведя его в большее соответствие с Evolution.
Объединять, а не разделять
Для установки Lightning скачайте XPI-файл, запустите Thunderbird, перейдите в Инструменты > Дополнения > Установка [Tools > Addons > Install] и укажите место, где вы сохранили модуль. После перезапуска Thunderbird календарь будет встроен, и вы сможете переключаться между ним, почтой и задачами, используя три иконки в нижнем левом углу в Thunderbird. Иногда это приводит к проблемам с отображением, поэтому на данном уроке мы используем чистый Sunbird.
В Sunbird есть два способа использования Google Calendar: подписка или синхронизированный календарь. Подписные календари доступны только для чтения – это, несомненно, полезно для встраивания чужих календарей в свой, но для нашего проекта подходит меньше. Если вам как раз и нужен режим только для чтения, потребуется всего лишь адрес страницы ICS-файла календаря, на который вы хотели бы подписаться. Чтобы получить его в Google Calendar, нажмите на стрелку рядом с календарем, который вы хотите использовать совместно, и выберите Установки календаря [Calendar Settings]. Внизу страницы, в Адресе календаря [Calendar Address], нажмите правой клавишей мыши на зеленую кнопку iCal и скопируйте ссылку в буфер обмена или, если календарь принадлежит кому-то другому, попросите прислать вам эту ссылку. В Sunbird, выберите Файл > Создать календарь [File > New Calendar], затем отметьте опцию В сети [On The Network]. Укажите формат iCal и вставьте ссылку на календарь в адресную строку.
Для синхронизации Sunbird с Google нужно сделать Google сервером, а Sunbird клиентом. То есть нужно сначала установить календарь в Google, а потом уж в Sunbird, или воспользоваться уже настроенным календарем Google, если такой у вас есть. Потребуется также установить модуль Provider – его можно скачать с сайта https://addons.mozilla.org/en-US/thunderbird/addon/4631: он позволяет делать синхронизацию в обоих направлениях. И хотя уже доступна 0.4 версия модуля, вам, возможно, больше подойдет более старая версия 0.3, если у вас установлен Sunbird 0.7 с Synaptic. Provider 0.4 требует Sunbird версии 0.8, который можно скачать с сайта http://www.mozilla.org/projects/calendar/sunbird и установить вручную. Видимо, потребуется установить еще и libstdc++, это можно сделать через Synaptic.
Как и с подписным календарем, нам снова потребуется уже существующий календарь Google: он у нас будет сервером. Кликните на стрелке около календаря Google, с которым хотите синхронизироваться, выберите Установки календаря, и в Персональном адресе [Private Address] щелкните правой кнопкой мыши по оранжевой кнопке XML и скопируйте адрес ссылки. Теперь перейдите в Sunbird, откройте Файл > Создать календарь > В сети и выберите Календарь Google. Вставьте ссылку на XML в адресную строку, а затем введите имя пользователя и пароль Google Calendar. После этого два календаря будут связаны таким образом, что информация, введенная в одном из них, автоматически добавится во второй. Проделайте эту процедуру на всех компьютерах, где используется тот же самый календарь.
Простота – в совмещении
Хотя для первой части нашего урока мы использовали Sunbird, вы, разумеется, можете встроить функции Sunbird в Thunderbird, чтобы не запускать календарь и почтовый клиент по отдельности. У нас была проблема с модулем Lightning при интеграции в Thunderbird в первый раз, но после удаления и переустановки модуля все заработало корректно. Для изменения настроек календаря нажмите на Правка > Настройки [Edit > Preferences] и затем на иконку Lightning. Хотя вы можете использовать функцию категорий для классификации разных событий, все, что вы получите – это цветную линию вокруг события. Причем линия настолько тонка, что в зависимости от цвета может быть вообще не видна. Мы пришли к выводу, что намного проще создать по календарю на категорию и дать им соответствующие имена – например: Дни Рождения, Персональный или Работа.
- Сервис GooSync позволяет синхронизировать несколько календарей Google с вашим мобильником. Каждому календарю можно присвоить короткий тэг для его идентификации.
Часть 2 Evolution
Provider и GCALDaemon позволяют синхронизировать ваш календарь с несколькими календарями Google, так что можно завести события разного рода: работа, дни рождения, частные события. Вы можете выбрать синхронизацию со всеми календарями или только с одним.
Если для работы с календарем вы предпочитаете использовать Evolution, то существует и другой способ синхронизации с Google Calendar, хотя и более сложный. Тут вам нужен не модуль расширения, а сторонний инструмент под названием GCALDaemon, который можно скачать с http://gcaldaemon.sourceforge.net. У кого еще не установлена среда Java 1.5, сделайте это сейчас.
Скачав Zip-файл, разархивируйте его в папку /usr/local/sbin. Мы пользовались файловым менеджером в Ubuntu; при установке из командной строки, запустите следующее:
sudo bash cd /usr/local/sbin unzip /downloads/gcaldaemon-linux-1.x.zip chmod -R g+w /usr/local/sbin/GCALDaemon chmod 755 /usr/local/sbin/GCALDaemon/bin/*.sh
Закройте окно терминала, запустите Evolution, создайте новый календарь и назовите его, например, Google. Закройте Evolution и просмотрите в файловом менеджере каталог /home/yourusername/.evolution/calendar/local. Там должна появиться новая папка; в моем случае это 1218038 862.11.810.22@simon-laptop, и здесь находится файл calendar.ics, соответствующий новому, только что созданному календарю. Откройте окно терминала и скомандуйте следующее:
sudo bash cd /usr/local/sbin/GCALDeamon/bin ./ config-editor.sh
Запустится графический редактор настроек или, если вы предпочитаете работать в любимом текстовом редакторе, откройте файл конфигурации: /usr/local/sbin/GCALDaemon/conf/gcal-daemon.cfg. В последнем случае примените инструмент шифрования пароля, чтобы он сохранился как хэш, а не в простом текстовом формате:
sudo bash cd /usr/local/sbin/GCALDaemon/bin ./password-encoder.sh
Введите пароль от вашего Google Calendar, затем скопируйте зашифрованный хэш в файл конфигурации. Синхронизируйте еще разок Если вы вошли в редактор настроек, вы увидите слева несколько закладок. Нажмите на вкладку Синхронизатор файлов [File Synchroniser] и, справа внизу, на Учетные записи Google [Google Accounts]. Тут вам нужно добавить имя пользователя и пароль от вашей учетной записи Google Calendar, используя нормальный (незашифрованный) пароль, который требуется набрать дважды. Нажмите на кнопку Проверить [Verify], чтобы убедиться, что GCALDaemon может соединиться с вашей учетной записью Google. Для настройки синхронизации нажмите кнопку New. Выберите учетную запись для синхронизации с Evolution. В окне iCal, введите полный путь к файлу Evolution iCal – нечто вроде /home/yourusername/.evolution/calendar/local/128038862.11.81.22@simon-laptop/calendar.ics. Теперь осталось закрыть инструмент настройки и сохранить изменения.
Поскольку в Evolution нет синхронизации в реальном времени, изменения, сделанные в вашем Google Calendar, не появятся в Evolution, пока вы не выполните синхронизацию двух календарей и перезапустите Evolution, и наоборот. Для синхронизации двух календарей, откройте окно терминала и запустите следующее:
sudo bash cd /usr/local/sbin/GCALDaemon/bin ./standalone-start.sh
Чтобы создать новую иконку на рабочем столе – для синхронизации – нажмите правой клавишей мыши и выберите Создать ярлык приложения [Create Launcher]. В поле Тип [Type] укажите Программа в терминале [Application In Terminal], присвойте какое-нибудь имя и введите команду /usr/local/sbin/GCALDaemon/bin/sync-now.sh.
Часть 3 Синхронизация с телефоном
Теперь мы настроили синхронизацию с Google Calendar и для Evolution, и для Sunbird; но как передать эту информацию на мобильный телефон? Мы обнаружили два способа решения этой задачи: первый – с использованием GCalSync, это приложение Java, запускаемое на вашем телефоне. Если ваш телефон может запускать приложения Java через встроенный интернет-обозреватель, скачайте приложение отсюда: http://wap.gcalsync.com. Программа бесплатная, но не лишена ограничений и известных проблем: изучите http://www.gcalsync.com для более подробной информации. Кому так удобнее, можно скачать файлы с главного сайта, а потом передать их на телефон вручную. Существует подписанная и неподписанная версии, на случай, если телефон не примет первую.
Доступен и более быстрый способ, но, к сожалению, не бесплатный – GooSync. Он работает со множеством телефонов и использует встроенный сервис синхронизации – у большинства телефонов, имеющих функцию календаря, он есть. Можно синхронизироваться с несколькими Календарями Google (на одной учетной записи), и каждое событие будет выводиться с коротким кодом-префиксом, чтобы было понятно, какому календарю оно принадлежит. Кроме синхронизации с вашими календарями, GooSync умеет также создавать резервную копию ваших контактов – те, кто хоть раз терял свой телефон, весьма оценят эту полезную функцию. GooSync стоит около 1000 рублей в год, а пожизненную подписку можно приобрести за 2000. Вдобавок можно создать несколько папок контактов – так вы сможете сохранить больше контактов, чем помещается в телефоне, и дописывать их либо удалять из папки синхронизации, или перенести устаревшие контакты в другую папку, если вы не хотите их забывать, но сейчас они вам в телефоне не требуются.
Шаг за шагом: Настройка GCALDaemon
- 1 Начнем
- Запустите Evolution и создайте новый календарь, выбрав Создать > Календарь [New > Calendar]. Выберите создание календаря на вашем компьютере и дайте ему имя, например, Google Calendar. Выберите цвет, который вы хотите использовать для событий.
- 2 Найдите правильный файл
- Используя файловый менеджер, включите опцию показа скрытых файлов в меню Вид [View], затем выберите /home/username/.evolution/calendar/local. Запишите имя только что созданной папки, которая содержит файл нового календаря.
- 3 Графическая настройка
- Откройте окно терминала, перейдите в каталог binaries программы GCALDaemon и запустите config-editor.sh. После запуска GUI, выберите нужные функции – например, оповещение – из вкладки Стандартные параметры [Common Options].
- 4 Давай подробности
- Для добавления параметров учетной записи Google откройте вкладку Синхронизатор файлов, затем нажмите на кнопку Google Accounts внизу слева. Введите ваш email адрес, имя пользователя и – дважды – пароль. Нажмите на кнопку Verify для проверки, что GCALDaemon может соединиться с вашей учетной записью.
- 5 Путь к успеху
- Нажмите на кнопку Создать и добавьте требуемые параметры: вашу учетную запись Google, Google Calendar, с которым вы хотите синхронизироваться, и путь к ICS-файлу в Evolution, созданному на шаге 1. Указав все детали, закройте редактор конфигурации и при подсказке сохраните изменения.
- 6 Начните синхронизацию
- До запуска Evolution нужно запустить GCALDaemon – откройте окно терминала, перейдите туда, где хранятся двоичные файлы GCALDaemon и запустите standalone-start.sh. Если все выполнено правильно, вы получите список статусных уведомлений. Если в нем нет ошибок, синхронизация работает, и можно запускать Evolution. LXF