Прошло уже примерно 2 года с того момента, как я перестал пользоваться бесплатными почтовыми серверами и полностью переехал на свой собственный почтовик. То есть всё моё почтовое хозяйство крутится на моём собственном виртуальном сервере, доступ на который есть только у меня*. То есть у меня есть некоторые основания считать, что сейчас моя почта никем не сканируется и не пополняет чью-нибудь базу знаний о пользователях. Но сейчас не об этом.
Удобно, когда кроме стандартных почтовых программ можно получить доступ к почте из любого браузера через веб-интерфейс. (Например, если политика безопасности в офисе разрешает исходящие соединения с рабочих компьютеров только на http/https.) И для этих целей у меня настроена веб-почта Roundcube.
Эта самая Roundcube прекрасно работает, но для того, чтобы она умела работать с моим сервером контактов, доступным по протоколу CardDav, а также с моим сервером календаря, доступным по протоколу CalDav, приходится прилагать дополнительные усилия.
И контакты, и календарь прикручиваются с помощью специальных плагинов для Roundcube.
С контактами всё просто: нужный плагин нашёлся сразу и подключился без проблем. А вот с календарём почему-то было всё непросто. Плагинов для подключения CalDav-календарей в штатном репозитории Roundcube оказалось совсем немного, вроде бы их толи 2, толи 3, причём, как мне кажется, это клоны, имеющие общего предка. И все они давно заброшены и с моим сервером не работают. (Насколько я понял, они изначально разрабатывались для работы исключительно с OwnCloud, а там есть свои нюансы.)
Недавно я после очередного перерыва снова занялся календарём, и нашёл вот это: https://kb.vander.host/application-software/how-to-connect-roundcube-to-a-calendar/. Это было почти то, что нужно. Календарь заработал. Вот только то, что там заработало, не умело подключаться с CalDav серверам, а работало со своей собственной базой. Это не совсем то, что мне было нужно.
И вот буквально вчера я набрёл на эту страничку: http://www.kentavr.com.ru/forum/viewtopic.php?t=9133. Нужная мне часть там выглядела предельно лаконично:
Оставалось только пройти по указанной ссылке и выполнить находящуюся там инструкцию по установке. И оно заработало (см. рис. 1). Оно стало уметь добавлять CalDav календари и без проблем с ними работать.
Теперь у меня есть веб-клиент с контактами и календарём, которые синхронизируются со всеми моими компьютерами и устройствами. И на мой вкус, Roundcube в работе заметно удобнее, чем всякие ГМейлы, Яндекс-почты и прочие мейл.ру.
* — Я понимаю, что админы VPS-провайдера всё равно могут на мой сервер залезть, используя инструменты для управления виртуальными машинами. Но вряд ли это им надо, и в любом случае подобное проникновение оставит следы, которые я сумею увидеть.
Добрый день, могли бы вы выложить в облако три папки:
Потому как по всей видимости на днях убрали поддержку caldav из этого источника
calendar
libcalendaring
libkolab
я недавно ставил плагин из того источника на тестовую машину, да поддержка Caldav была, сейчас вновь развернул roundcube, установил roundcube все увы поддержки caldav нет.
Добрый день.
Думаю, что проблему надо искать на вашей стороне, т.к. файлы (по ссылке на github) не менялись уже давно:
Если работало «недавно», то должно работать и сейчас.
Файлами с моего работающего в данный момент сайта я поделиться не могу; в первую очередь — исходя из соображений безопасности.
Какая у вас сейчас версия roundcube ?
Я пробовал на последней 1.6.3
Обновлять не собираюсь (не вижу причин это делать).
У вас на скриншоте версия dev-master
У меня в тот раз также было, а в этотраз там стоят версии
calendar 3.5.7 AGPL-3,0 Загрузить
libcalendaring 3.5.11 AGPL-3,0 Загрузить
libkolab dev-master AGPL-3,0 Загрузить
Ну можно попробовать удалить плагины вручную и повторить установку в точности по инструкции со странички на гитхабе.
Но я бы не мудрил, и ставил бы roundcube 1.5.x
Кстати, вот и причина, почему у вас не работает календарь:
Этот плагин календаря работает солько со скином «Larry». Поддержку которого убрали в 1.6.0.
понял, спасибо.
Хотя странно, плагин же вроде как запускается.
Только нет строки add caldav calendar
Я даже пробовать 1.6+ не буду.
(Раз уж мне повезло совместить все нужные версии так, что всё работает как надо.)
Обратите внимание, в самих исходниках плагина в каталоге «skins» есть описания стилей только для скина Larry. Я, конечно, веб-программист ненастоящий, но для меня это значит, что Larry — это единственный поддерживаемый скин.
Поставил версию 1.5.4 плагин установился, но не дает сохранять и добавлять ни события ни календари.
подскажите пожалуйста, какой веесии у вас PHP и Composer?
Скин кстати не причем.
А вот эта менюшка есть?
PHP 7.4.3
Composer version 2.4.2
Менюшка есть.
Значит не повезло и придётся копать вглубь проблемы. 🙁
Мда странно как то все это:
Debian 11
php7.4
composer 2.4.2
roundcube 1.5.3
postgres 13
может базу данных надо поменять на что то другое, раз он сохранять не хочет и вываливает в ошибку.
Так… базу…
А что в базе? Нужные таблицы созданы?
По всей видимости нет!
Они автоматом должны создаваться? или руками?
Список отношений
Схема | Имя | Тип | Владелец
———+———————-+———+————
public | attachments | таблица | roundcube
public | cache | таблица | roundcube
public | cache_index | таблица | roundcube
public | cache_messages | таблица | roundcube
public | cache_shared | таблица | roundcube
public | cache_thread | таблица | roundcube
public | calendars | таблица | roundcube
public | carddav_accounts | таблица | roundcube
public | carddav_addressbooks | таблица | roundcube
public | carddav_contacts | таблица | roundcube
public | carddav_group_user | таблица | roundcube
public | carddav_groups | таблица | roundcube
public | carddav_migrations | таблица | roundcube
public | carddav_xsubtypes | таблица | roundcube
public | collected_addresses | таблица | roundcube
public | contactgroupmembers | таблица | roundcube
public | contactgroups | таблица | roundcube
public | contacts | таблица | roundcube
public | dictionary | таблица | roundcube
public | events | таблица | roundcube
public | filestore | таблица | roundcube
public | identities | таблица | roundcube
public | itipinvitations | таблица | roundcube
public | kolab_alarms | таблица | roundcube
public | responses | таблица | roundcube
public | searches | таблица | roundcube
public | session | таблица | roundcube
public | system | таблица | roundcube
public | users | таблица | roundcube
(29 строк)
В инструкции с гитхаба написано:
cd /pathTo/roundcubemail
composer config repositories.calendar vcs https://github.com/JodliDev/calendar
composer config repositories.libcalendaring vcs https://github.com/JodliDev/libcalendaring
composer config minimum-stability dev
composer require kolab/calendar
bin/initdb.sh --dir=plugins/calendar/drivers/caldav/SQL
Последняя строчка, по идее, и должна создавать нужные таблицы.
Должен подхватываться и выполняться скрипт postgres.initial.sql для постгреса. Ну или можно залогиниться в базу пользователем roundcube и выполнить скрипт вручную.
Кстати, таблицы calendars, events, attachments у вас скорее всего пустые и их можно удалить. Для CalDav они не нужны.
Сейчас у себя смотрю вижу немного другой путь
/var/www/roundcube/plugins/calendar/drivers/kolab/SQL
Если выполнять
bin/initdb.sh —dir=/var/www/roundcube/plugins/calendar/drivers/kolab/SQL
то получаем
Creating database schema… ERROR: [7] ОШИБКА: отношение «kolab_alarms_user_id_idx» уже существует (SQL Query: CREATE INDEX kolab_alarms_user_id_idx ON kolab_alarms (user_id))
[FAILED]
ERROR: [7] ОШИБКА: отношение «kolab_alarms_user_id_idx» уже существует
не там посмотрел
root@roundcube3:/var/www/roundcube# bin/initdb.sh —dir=plugins/calendar/drivers/kolab/SQL
Creating database schema… ERROR: [7] ОШИБКА: отношение «itipinvitations_user_id_event_uid_idx» уже существует (SQL Query: CREATE INDEX itipinvitations_user_id_event_uid_idx ON itipinvitations (user_id, event_uid))
[FAILED]
ERROR: [7] ОШИБКА: отношение «itipinvitations_user_id_event_uid_idx» уже существует
Не надо ‘kolab’. У вас неправильные плагины:
Надо чтобы «dev-master».
Поэтому и таблицы созданы неправильные: calendars, attachments, events вместо caldav_attachments, и т.д.
Прошу прощения, опять не там посмотрел.
В общем спасибо вам за помощь, все заработало.
напишу наверное подробную инструкцию, могу вам прислать чтоб опубликовали, я думаю многим пригодится.
Вроде на гитхабе уже и так рабочая инструкция? Я ничем другим не пользовался, насколько помню.
Рано радовался, календари создаются, записываются, но события уходят в ошибку.
Щас еще посмотрю может что-то где то еще надо проверить.
Таблицы создались
У вас какая база данных? mysql
public | caldav_attachments | таблица | roundcube
public | caldav_calendars | таблица | roundcube
public | caldav_events | таблица | roundcube
public | caldav_sources | таблица | roundcube
У меня mysql, да
а версия какая ?
хочу попробовать сменить все же базу данных.
Версия сервера: 8.0.34-0ubuntu0.20.04.1
Все как то странно.
все тоже самое что у вас. все компоненты
при установке самого плагина
Do you want to activate the plugin calendar? [Y|n] y
Updated local config at /var/www/roundcube/config/config.inc.php
Creating package config file
Running database initialization script for calendar
Creating database schema… ERROR: [1064] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘system (name, value) VALUES (‘calendar-database-version’, ‘2015022700’)’ at line 1 (SQL Query: REPLACE INTO system (name, value) VALUES (‘calendar-database-version’, ‘2015022700’))
[FAILED]
ERROR: [1064] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘system (name, value) VALUES (‘calendar-database-version’, ‘2015022700’)’ at line 1
потом запускаем еще раз команду: composer require kolab/calendar
Ошибок второй раз нет.
инициализируем root@roundcube-ubuntu:/var/www/roundcube# bin/initdb.sh —dir=plugins/calendar/drivers/caldav/SQL
При создании события в календаре ошибки.
Выглядит так, как будто функционал, добавляющий CalDav source, и функционал, добавляющий события в календарь, не согласованы.
1) удаляйте все плагины календаря
2) удаляйте таблицы: calendars, events, attachments, caldav_sources, caldav_calendars, caldav_attachments, caldav_events
3) повторяйте установку по инструкции с гитхаба. После установки убеждайтесь, что:
— версии календарных плагинов = «dev-master»
— созданы ТОЛЬКО таблицы caldav_* (таблиц calendars, events, attachments быть не должно)
Если таблицы calendars, events, attachments появляются, то надо искать, кто их создаёт; это и будет виновник того, что не работает создание событий.
Я бы так делал.
Доброго дня.
С календарями вроде бы разобрались, работают.
Пытаюсь заставить одновременно работать плагин carddav, с календарями.
Активируешь плагин с адресными книгами, плагин календаря вообще не хочет открываться.
Выключаешь плагин адресной книги, календари начинают работать.
Какая то ерунда.
Ну поздравляю как минимум с этим 🙂
Я кстати обновился до 1.5.4 и версии выглядят теперь так:
Отбой, обновил плагин carddav до версии 4.4.6 и все поехало.
На 1.6.0 плагин календаря хоть и устанавливается но не работает. Видимо 1.5.4 это потолок.
Спасибо.
С новыми скинами Roundcube с этими плагинами работает хорошо.
Интересно, можно ли в плагине Carddav в конфиге прописать свои параметры carddav сервера?
Странно, с недавних пор перестала отправляться почта.
ничего не менялось.
При этом ошибка: smtp ошибка -1 сбой соединения с сервером.
Обновляю до версии 1.6.0 и выше почта ходит великолепно
сейчас стояла 1.5.3 пробовал обновлять до 1.5.6 тоже самое.
проблема найдена в конфиге:
Было так
$config[‘smtp_host’] = ‘ssl://mail.ваш почтовый сервер:465’;
а надо так
$config[‘smtp_server’] = ‘ssl://mail.ваш почтовый сервер’;
$config[‘smtp_port’] = 465;
Посмотрел у себя. У меня всегда был вариант с 2 строчками.