🔧 Исправления: - Исправлены пути к папкам проектов: теперь /Documents/Project/{Name}_{Id} - Исправлена функция openProjectFolder() во всех JS файлах - Добавлены кнопки создания Word/Excel/PowerPoint из CRM (10 модулей) - Создание файлов напрямую в S3 с автоиндексацией через Redis - Исправлена ошибка 'Class Redis not found' (использован Predis) 📁 Изменённые файлы: - layouts/v7/lib/nextcloud-editor.js - crm_extensions/nextcloud_editor/js/nextcloud-editor.js - layouts/v7/lib/nextcloud-editor-v3.js - crm_extensions/file_storage/api/create_nextcloud_file.php - layouts/v7/modules/*/DetailViewHeaderTitle.tpl (10 модулей) - layouts/v7/modules/Documents/*.tpl (кнопки редактирования) 🎯 Результат: - Кнопка 'Папка в Nextcloud' открывает правильную папку - Создание файлов работает молниеносно (прямо в S3) - Redis события публикуются корректно - OnlyOffice открывается для редактирования Проект 391552 теперь открывается по правильному пути!
9.1 KiB
9.1 KiB
OnlyOffice + Nextcloud интеграция
Дата: 1 ноября 2025
Цель: Использовать OnlyOffice Document Server для редактирования файлов в Nextcloud
✅ Что сделано
1. Установлено приложение ONLYOFFICE
docker exec -u www-data nextcloud-fresh php occ app:install onlyoffice
# onlyoffice 9.11.0 installed ✅
2. Настроен Document Server
# Адрес OnlyOffice Document Server
DocumentServerUrl: https://office.clientright.ru:9443
# SSL проверка отключена
verify_peer_off: true
# JWT отключен (как в OnlyOffice)
jwt_secret: (пусто)
jwt_header: (пусто)
3. Отключен Collabora
# Чтобы не конфликтовал с OnlyOffice
docker exec -u www-data nextcloud-fresh php occ app:disable richdocuments
🎯 Теперь у тебя ДВА способа редактирования:
Вариант 1: Через CRM (OnlyOffice напрямую)
CRM → open_file_v2.php → OnlyOffice (9443) → S3
Преимущества:
- ⚡ Молниеносно (прямой доступ к S3)
- ✅ Автосохранение каждые 5 сек
- ✅ Файлы в CRM сразу обновляются
Когда использовать:
- Работаешь в CRM
- Нужна скорость
- Редактируешь файлы клиентов
Вариант 2: Через Nextcloud (OnlyOffice через Nextcloud)
Nextcloud → OnlyOffice (9443) → WebDAV → S3
Преимущества:
- ✅ Версионирование файлов
- ✅ История изменений
- ✅ Права доступа через Nextcloud
- ✅ Интеграция с Nextcloud UI
Когда использовать:
- Работаешь в Nextcloud
- Нужна история версий
- Совместное редактирование
- Управление файлами
🚀 Как использовать в Nextcloud
Шаг 1: Открой Nextcloud
https://office.clientright.ru:8443
Логин: admin
Пароль: office
Шаг 2: Перейди к файлам
Файлы → crm/crm2/CRM_Active_Files/Documents
Шаг 3: Открой файл для редактирования
Клик на файл .docx/.xlsx/.pptx
→ Автоматически откроется OnlyOffice!
📊 Сравнение OnlyOffice vs Collabora
| Характеристика | OnlyOffice | Collabora |
|---|---|---|
| Скорость | ⚡⚡⚡ Молниеносно | 🐌 Медленнее |
| Форматы | .docx, .xlsx, .pptx | .odt, .ods, .odp + docx |
| Совместимость | MS Office | LibreOffice |
| Интерфейс | Современный | Классический |
| Настройка | Проще | Сложнее |
| Автосохранение | ✅ Есть | ✅ Есть |
| Версионирование | ✅ Через Nextcloud | ✅ Через Nextcloud |
🔧 Настройки OnlyOffice в Nextcloud
Где найти:
Nextcloud → Настройки → Администрирование → ONLYOFFICE
Текущие настройки:
Document Server Address: https://office.clientright.ru:9443
Secret key (JWT): (отключен)
Verify peer off: ✅ (SSL проверка отключена)
Что можно настроить:
- Форматы файлов для открытия
- Права доступа (просмотр/редактирование)
- Автосохранение (интервал)
- Водяные знаки
- Шаблоны документов
🎨 Создание новых документов в Nextcloud
Теперь можно создавать файлы прямо в Nextcloud!
Как:
- Открой Nextcloud Files
- Нажми "+" (New)
- Выбери:
- 📄 Document (Word) → создаст .docx
- 📊 Spreadsheet (Excel) → создаст .xlsx
- 📽️ Presentation (PowerPoint) → создаст .pptx
- Файл откроется в OnlyOffice для редактирования!
⚙️ Команды для управления
Просмотр настроек:
# Адрес Document Server
docker exec -u www-data nextcloud-fresh php occ config:app:get onlyoffice DocumentServerUrl
# Проверка SSL
docker exec -u www-data nextcloud-fresh php occ config:app:get onlyoffice verify_peer_off
# JWT секрет
docker exec -u www-data nextcloud-fresh php occ config:app:get onlyoffice jwt_secret
Изменение настроек:
# Изменить адрес Document Server
docker exec -u www-data nextcloud-fresh php occ config:app:set onlyoffice DocumentServerUrl --value="https://NEW_ADDRESS"
# Включить/отключить SSL проверку
docker exec -u www-data nextcloud-fresh php occ config:app:set onlyoffice verify_peer_off --value="true"
Переключение между OnlyOffice и Collabora:
# Включить OnlyOffice
docker exec -u www-data nextcloud-fresh php occ app:enable onlyoffice
docker exec -u www-data nextcloud-fresh php occ app:disable richdocuments
# Включить Collabora
docker exec -u www-data nextcloud-fresh php occ app:disable onlyoffice
docker exec -u www-data nextcloud-fresh php occ app:enable richdocuments
🐛 Отладка
Если файл не открывается:
1. Проверь доступность OnlyOffice:
curl -s https://office.clientright.ru:9443/healthcheck
# Должен вернуть: true
2. Проверь настройки в Nextcloud:
docker exec -u www-data nextcloud-fresh php occ config:app:get onlyoffice DocumentServerUrl
# Должно быть: https://office.clientright.ru:9443
3. Проверь логи OnlyOffice:
docker logs --tail 50 onlyoffice-standalone
4. Проверь логи Nextcloud:
docker exec -u www-data nextcloud-fresh php occ log:tail 50
5. Проверь что приложение включено:
docker exec -u www-data nextcloud-fresh php occ app:list | grep onlyoffice
# Должно быть в Enabled
🔒 Безопасность
⚠️ Сейчас JWT отключен!
Что это значит:
- Любой может использовать твой OnlyOffice сервер
- Не рекомендуется для продакшна
Для продакшна:
1. Включи JWT в OnlyOffice:
# Генерируй случайный секрет
SECRET=$(openssl rand -base64 32)
# Добавь в OnlyOffice config
docker exec onlyoffice-standalone bash -c "cat > /etc/onlyoffice/documentserver/local-jwt.json << EOF
{
\"services\": {
\"CoAuthoring\": {
\"token\": {
\"enable\": {
\"request\": {
\"inbox\": true,
\"outbox\": true
}
}
},
\"secret\": {
\"inbox\": {
\"string\": \"$SECRET\"
},
\"outbox\": {
\"string\": \"$SECRET\"
}
}
}
}
}
EOF
"
# Перезапусти OnlyOffice
docker restart onlyoffice-standalone
2. Добавь секрет в Nextcloud:
docker exec -u www-data nextcloud-fresh php occ config:app:set onlyoffice jwt_secret --value="$SECRET"
docker exec -u www-data nextcloud-fresh php occ config:app:set onlyoffice jwt_header --value="Authorization"
📈 Статистика
Текущая конфигурация:
- ✅ OnlyOffice Document Server: 9.0.4
- ✅ Nextcloud ONLYOFFICE app: 9.11.0
- ✅ Nextcloud: 30.0.2
- ✅ SSL: самоподписанный сертификат (проверка отключена)
- ⚠️ JWT: отключен (включи для продакшна!)
🎯 Итог
Что работает сейчас:
- ✅ CRM → OnlyOffice - прямой доступ (молниеносно)
- ✅ Nextcloud → OnlyOffice - через интеграцию (с версионированием)
- ✅ Создание новых файлов в Nextcloud
- ✅ Редактирование docx, xlsx, pptx
- ✅ Автосохранение в обоих случаях
Что использовать:
- Работа в CRM → используй прямой OnlyOffice (быстрее)
- Работа в Nextcloud → используй интеграцию (больше функций)
- Создание новых файлов → Nextcloud (удобнее)
Попробуй открыть файл в Nextcloud! Должно работать! 🚀
Теперь у тебя:
- ⚡ Быстрое редактирование через CRM
- 📚 Версионирование через Nextcloud
- 🆕 Создание новых файлов
- ✅ Единый OnlyOffice для всего!