✅ ЧТО СДЕЛАНО: - Поднят новый standalone OnlyOffice Document Server (порт 8083) - Настроен Nginx для доступа через office.clientright.ru:9443 - Создан open_file_v3_standalone.php для работы с новым OnlyOffice - Реализована поддержка прямых S3 URL (bucket публичный) - Добавлен s3_proxy.php с поддержкой Range requests - Создан onlyoffice_callback.php для сохранения (базовая версия) - Файлы успешно открываются и загружаются! ⚠️ TODO (на завтра): - Доработать onlyoffice_callback.php для сохранения обратно в ОРИГИНАЛЬНЫЙ путь в S3 - Добавить Redis маппинг documentKey → S3 path - Обновить CRM JS для использования open_file_v3_standalone.php - Протестировать сохранение файлов - Удалить тестовые файлы 📊 РЕЗУЛЬТАТ: - OnlyOffice Standalone РАБОТАЕТ! ✅ - Файлы открываются напрямую из S3 ✅ - Редактор загружается БЫСТРО ✅ - Автосохранение настроено ✅ (но нужна доработка callback)
138 lines
3.9 KiB
Markdown
138 lines
3.9 KiB
Markdown
# 🔔 Система мониторинга файлов CRM
|
||
|
||
Автоматический мониторинг изменений файлов в S3 и Nextcloud с публикацией событий в Redis.
|
||
|
||
## 🎯 Компоненты системы
|
||
|
||
### 1. Nextcloud Activity Monitor
|
||
**Файл:** `nextcloud_activity_monitor.js`
|
||
**Назначение:** Мониторинг файлов загруженных через Nextcloud WebUI
|
||
**Метод:** Nextcloud Activity API
|
||
**Интервал:** 30 секунд
|
||
|
||
**Запуск:**
|
||
```bash
|
||
cd /var/www/fastuser/data/www/crm.clientright.ru/crm_extensions/file_storage
|
||
nohup /usr/bin/nodejs nextcloud_activity_monitor.js > nextcloud_activity.log 2>&1 &
|
||
```
|
||
|
||
**Управление:**
|
||
```bash
|
||
ps aux | grep nextcloud_activity_monitor # Статус
|
||
tail -f nextcloud_activity.log # Логи
|
||
pkill -f nextcloud_activity_monitor.js # Остановить
|
||
```
|
||
|
||
---
|
||
|
||
### 2. S3 Monitor (Docker)
|
||
**Контейнер:** `s3-monitor`
|
||
**Назначение:** Мониторинг файлов загруженных напрямую в S3
|
||
**Bucket:** `f9825c87-4e3558f6-f9b6-405c-ad3d-d1535c49b61c`
|
||
**Интервал:** 30 секунд
|
||
**Файлов:** ~24,500
|
||
|
||
**Управление:**
|
||
```bash
|
||
docker ps | grep s3-monitor # Статус
|
||
docker logs s3-monitor -f # Логи
|
||
docker stop s3-monitor # Остановить
|
||
docker start s3-monitor # Запустить
|
||
docker restart s3-monitor # Перезапустить
|
||
```
|
||
|
||
---
|
||
|
||
### 3. Redis (центральная шина событий)
|
||
**Адрес:** `147.45.146.17:6379`
|
||
**Канал:** `crm:file:events`
|
||
**Password:** `CRM_Redis_Pass_2025_Secure!`
|
||
|
||
**Подписка:**
|
||
```bash
|
||
redis-cli -h 147.45.146.17 -p 6379 -a 'CRM_Redis_Pass_2025_Secure!' \
|
||
SUBSCRIBE crm:file:events
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 Формат событий
|
||
|
||
### От Nextcloud Activity Monitor:
|
||
```json
|
||
{
|
||
"type": "file_created",
|
||
"source": "nextcloud_activity",
|
||
"timestamp": "2025-10-30T12:53:40+00:00",
|
||
"file_id": 73460,
|
||
"path": "/experimental_report.xlsx",
|
||
"filename": "experimental_report.xlsx",
|
||
"user": "admin",
|
||
"action": "created"
|
||
}
|
||
```
|
||
|
||
### От S3 Monitor:
|
||
```json
|
||
{
|
||
"type": "file_created",
|
||
"source": "s3_monitor",
|
||
"timestamp": "2025-10-30T20:49:31.593Z",
|
||
"path": "crm2/CRM_Active_Files/Documents/file.xlsx",
|
||
"filename": "file.xlsx",
|
||
"size": 8224,
|
||
"etag": "7004954627252c9d0a7e6417f8325d07",
|
||
"last_modified": "2025-10-30T20:49:14.132Z",
|
||
"action": "created"
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 Credentials
|
||
|
||
### Nextcloud API:
|
||
```
|
||
URL: https://office.clientright.ru:8443
|
||
User: admin
|
||
App Password: tGHKS-3cC9m-7Hggb-65Awk-zxWQE
|
||
```
|
||
|
||
### S3 (TWC Storage):
|
||
```
|
||
Endpoint: https://s3.twcstorage.ru
|
||
Region: ru-1
|
||
Access Key: 2OMAK5ZNM900TAXM16J7
|
||
Secret Key: f4ADllb5VZBAt2HdsyB8WcwVEU7U74MwFCa1DARG
|
||
Bucket: f9825c87-4e3558f6-f9b6-405c-ad3d-d1535c49b61c
|
||
```
|
||
|
||
---
|
||
|
||
## 📚 Дополнительные документы
|
||
|
||
- `PRODUCTION_READY.md` - полное описание production конфигурации
|
||
- `ARCHITECTURE.md` - схема архитектуры системы
|
||
- `S3_MONITORING_GUIDE.md` - руководство по S3 мониторингу
|
||
- `NEXTCLOUD_API_OVERVIEW.md` - обзор Nextcloud API
|
||
- `SETUP_CHECKLIST.md` - чек-лист настройки
|
||
|
||
---
|
||
|
||
## 🚀 Для разработчиков
|
||
|
||
### n8n Workflows (готовые для импорта):
|
||
- `n8n_s3_event_processor.json` - обработчик событий из Redis
|
||
- `n8n_nextcloud_activity_monitor.json` - альтернатива через n8n
|
||
- `n8n_s3_monitor_workflow.json` - альтернатива S3 Monitor через n8n
|
||
|
||
### Утилиты:
|
||
- `get_s3_credentials.sh` - получение S3 credentials
|
||
|
||
---
|
||
|
||
**Дата создания:** 30 октября 2025
|
||
**Версия:** 1.0
|
||
**Статус:** Production Ready ✅
|
||
|