Общая адресная книга

Этот вопрос давно висел в воздухе, но вспомнили про него только недавно. Задача: сделать общую адресную книгу для сети аптек. Сразу скажу, что в качестве почтового клиента там используется TheBat! Это довольно важный вопрос, ниже опишу почему.
Я перебрал несколько самых разных вариантов серверов, которые работают с carddav. Основной упор был на то, чтобы либо поставить его из репозитория системы, либо он должен быть полностью автономным. Например, написанным на PHP. В итоге мне попался Baikal, который работал по второму варианту. Установка и настройка крайне просты, описывать их смысла нет. Но, как оказалось позднее, есть в настройках один нюанс, из-за которого TheBat! не сможет работать с ним, в то время как остальные программы типа Thunderbird или EssentialPIM прекрасно выполняют синхронизацию. Этот параметр называется «WebDAV authentication type» и предоставляет на выбор два варианта: Digest и Basic. Если вы при установке Baikal выберете Digest, то сможете использовать адресную книгу или календарь такими программами как Thunderbird, но не сможете использовать TheBat!. В случае с Basic TheBat! прекрасно работает, но в этом случае не сможет синхронизироваться Thunderbird. Другие почтовые клиенты я не проверял за их отсутствием.
Допустим, вы установили и настроили Baikal, сейчас вам нужно настроить клиента. Приведу настройки для трех программ: Thunderbird, TheBat! и EssentialPIM.

Thunderbird
Для того, чтобы иметь возможность подключения к серверу carddav, сначала нужно установить SOGo Connector. Для этого идем по этому адресу, выбираем вкладку Frontends и скачиваем последнюю версию SOGo Connector. На этот момент это версия 31.0.5, которая прекрасно работает с Mozilla Thunderbird 45.
Открываем пункт меню Инструменты — Адресная книга. Если вы правильно установили расширение для программы, то у нас появится пункт меню Файл — Создать — Remote address book. Выбираем его. В поле Name вводим любое название книги, в поле URL, соответственно, адрес подключения к адресной книге. Выглядеть он будет примерно так:

http://example.com/card.php/addressbooks/kini/default/

где kini — имя пользователя, созданного нами ранее в Baikal.
Выставляем галочки в окне в соответствии со своими предпочтениями и нажимаем «ОК». Теперь щелкаем правой кнопкой мыши на созданную книгу и выбираем пункт Synchronize. В случае. если вы указали все верно, Thunderbird спросит логин и пароль пользователя, затем начнет синхронизацию. В противном случае, он просто промолчит :-) Пока что это единственная встреченная мной программа, которой все равно какой тип аутентификации вы выбрали в настройках Baikal.

TheBat!
Открываем меню Инструменты — Адресная книга. Или просто нажимаем клавишу F8. В открывшемся окне выбираем пункт меню Файл — Создать — Адресная книга. Задаем ей любое название, в поле «Эта адресная книга» выбираем вариант «Связана с сервером Carddav». Теперь у нас появляется возможность ввести данные для подключения. В поле адрес сервера вводим адрес нужной нам книги, который будет выглядеть так же, как и для Thunderbird. В два поля ниже вводим имя пользователя и пароль соответственно. При необходимости настраиваем периодичность синхронизации адресов. Все, нажимаем кнопку «ОК».
Для проверки работоспособности нажимаем правой кнопкой мыши на созданную нами книгу и выбираем пункт «Синхронизировать». Если все нормально, то в строке состояния мы увидим, что идет процесс синхронизации. В противном случае там ничего не будет. Возможно, что TheBat! будет снова и снова запрашивать логин и пароль пользователя. Это значит, что при установке Baikal, вы выбрали тип аутентификации Digest и вам нужно изменить его на Basic. В журнале веб-сервера при этом будет выдаваться сообщение об ошибке 401 «Not auth».

EssentialPIM
Тут тоже все очень просто. Открываем меню Файл — Синхронизация — Добавить синхронизацию — Carddav. В окне вводим адрес нужной книги, логин и пароль пользователя. Проверяем, что стоит галочка на пункте «Контакты» чуть ниже и нажимаем кнопку «Далее». В поле «Имя синхронизации» вводим любое, задаем с какой периодичностью она будет выполняться, ставим галочку «Синхронизировать сейчас» и жмем кнопку «Завершить».

Отправить
Поделиться
Запинить