2025-11-01 01:02:03 +03:00
|
|
|
|
# 🔄 WORKFLOW ПРИЛОЖЕНИЯ В NEXTCLOUD
|
|
|
|
|
|
|
|
|
|
|
|
## 1️⃣ **Workflow OCR Backend** (workflow_ocr)
|
|
|
|
|
|
|
|
|
|
|
|
### **ЧТО ЭТО:**
|
|
|
|
|
|
Приложение для **автоматического распознавания текста (OCR)** из изображений и PDF файлов.
|
|
|
|
|
|
|
|
|
|
|
|
### **КАК РАБОТАЕТ:**
|
|
|
|
|
|
```
|
|
|
|
|
|
PDF/Изображение загружено →
|
|
|
|
|
|
→ Workflow Engine видит событие →
|
|
|
|
|
|
→ Tesseract OCR обрабатывает →
|
|
|
|
|
|
→ Создаёт текстовый файл с распознанным текстом
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ:**
|
|
|
|
|
|
|
|
|
|
|
|
**1. Автоматическое распознавание сканов:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Если загружен файл *.pdf в папку /Scans
|
|
|
|
|
|
Действие: Распознать текст и создать .txt файл
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**2. Обработка чеков:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Если загружена фотография в /Receipts
|
|
|
|
|
|
Действие: OCR → поиск по тексту
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**3. Юридические документы:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Если загружен скан решения суда
|
|
|
|
|
|
Действие: Распознать текст → сделать документ searchable
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **НАСТРОЙКА:**
|
|
|
|
|
|
|
|
|
|
|
|
**1. Создать правило:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Settings → Flow → Add rule:
|
|
|
|
|
|
- When: File created
|
|
|
|
|
|
- And: Mime type is image/* OR application/pdf
|
|
|
|
|
|
- And: Path matches /Scans/*
|
|
|
|
|
|
- Then: OCR processing
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**2. Выбрать язык:**
|
|
|
|
|
|
- Russian (rus)
|
|
|
|
|
|
- English (eng)
|
|
|
|
|
|
- Multi (rus+eng)
|
|
|
|
|
|
|
|
|
|
|
|
### **ТЕКУЩИЙ СТАТУС:**
|
|
|
|
|
|
- ✅ Установлено: workflow_ocr 1.31.3
|
|
|
|
|
|
- ✅ Tesseract OCR: 5.5.0 (движок распознавания)
|
|
|
|
|
|
- ❌ Правил НЕТ (не настроено)
|
|
|
|
|
|
|
|
|
|
|
|
**Вывод:** Приложение установлено, но **НЕ ИСПОЛЬЗУЕТСЯ** (нет правил).
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 2️⃣ **Flow Notifications** (flow_notifications)
|
|
|
|
|
|
|
|
|
|
|
|
### **ЧТО ЭТО:**
|
|
|
|
|
|
Приложение для **отправки уведомлений** на основе событий Workflow.
|
|
|
|
|
|
|
|
|
|
|
|
### **КАК РАБОТАЕТ:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Событие в Nextcloud →
|
|
|
|
|
|
→ Workflow Engine проверяет правила →
|
|
|
|
|
|
→ Flow Notifications отправляет уведомление
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ:**
|
|
|
|
|
|
|
|
|
|
|
|
**1. Уведомление при загрузке важного файла:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Если файл загружен в /Important
|
|
|
|
|
|
Действие: Отправить уведомление "Загружен важный файл"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**2. Уведомление о новом контракте:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Если PDF загружен в /Contracts
|
|
|
|
|
|
Действие: Уведомить юриста
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**3. Алерт при большом файле:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Если размер файла > 100MB
|
|
|
|
|
|
Действие: Уведомить администратора
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **ТИПЫ УВЕДОМЛЕНИЙ:**
|
|
|
|
|
|
- 🔔 Push-уведомления в браузере
|
|
|
|
|
|
- 📧 Email
|
|
|
|
|
|
- 📱 Nextcloud app (Android/iOS)
|
|
|
|
|
|
- 🔗 Webhook (для интеграций)
|
|
|
|
|
|
|
|
|
|
|
|
### **НАСТРОЙКА:**
|
|
|
|
|
|
|
|
|
|
|
|
**Пример правила:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Settings → Flow → Add rule:
|
|
|
|
|
|
- When: File created
|
|
|
|
|
|
- And: File size > 100000000 (100MB)
|
|
|
|
|
|
- Then: Send notification
|
|
|
|
|
|
- User: admin
|
|
|
|
|
|
- Message: "Large file uploaded: {file}"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **ТЕКУЩИЙ СТАТУС:**
|
|
|
|
|
|
- ✅ Установлено: flow_notifications 2.0.1
|
|
|
|
|
|
- ❌ Правил НЕТ (не настроено)
|
|
|
|
|
|
|
|
|
|
|
|
**Вывод:** Приложение установлено, но **НЕ ИСПОЛЬЗУЕТСЯ**.
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 3️⃣ **Workflow Engine** (workflowengine)
|
|
|
|
|
|
|
|
|
|
|
|
### **ЧТО ЭТО:**
|
|
|
|
|
|
**Основной движок** для всех workflow - автоматизация действий на основе событий.
|
|
|
|
|
|
|
|
|
|
|
|
### **АРХИТЕКТУРА:**
|
|
|
|
|
|
```
|
|
|
|
|
|
┌─────────────────┐
|
|
|
|
|
|
│ Workflow Engine │
|
|
|
|
|
|
│ (ядро) │
|
|
|
|
|
|
└────────┬─────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
┌─────────────────┼─────────────────┐
|
|
|
|
|
|
│ │ │
|
|
|
|
|
|
▼ ▼ ▼
|
|
|
|
|
|
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
|
|
|
|
|
|
│ workflow_ocr │ │flow_notifications││workflow_script│
|
|
|
|
|
|
│ (OCR) │ │ (уведомления) │ │ (скрипты) │
|
|
|
|
|
|
└───────────────┘ └───────────────┘ └───────────────┘
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **ДОСТУПНЫЕ ДЕЙСТВИЯ:**
|
|
|
|
|
|
|
|
|
|
|
|
**Стандартные:**
|
|
|
|
|
|
- ✅ Отправить уведомление
|
|
|
|
|
|
- ✅ Добавить тег
|
|
|
|
|
|
- ✅ Переместить файл
|
|
|
|
|
|
- ✅ Конвертировать в PDF
|
|
|
|
|
|
- ✅ Запустить скрипт
|
|
|
|
|
|
|
|
|
|
|
|
**С установленными приложениями:**
|
|
|
|
|
|
- ✅ OCR обработка (workflow_ocr)
|
|
|
|
|
|
- ✅ Конвертация PDF (workflow_pdf_converter)
|
|
|
|
|
|
- ✅ Запуск скриптов (workflow_script)
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 4️⃣ **Другие установленные Workflow приложения:**
|
|
|
|
|
|
|
|
|
|
|
|
### **workflow_pdf_converter**
|
|
|
|
|
|
Конвертация документов в PDF:
|
|
|
|
|
|
- Word → PDF
|
|
|
|
|
|
- Excel → PDF
|
|
|
|
|
|
- Images → PDF
|
|
|
|
|
|
|
|
|
|
|
|
### **workflow_script**
|
|
|
|
|
|
Запуск произвольных скриптов при событиях:
|
|
|
|
|
|
```bash
|
|
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
# Пример: отправка файла по API
|
|
|
|
|
|
curl -X POST https://api.example.com/upload \
|
|
|
|
|
|
-F "file=@$1"
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 🎯 **ТЕКУЩАЯ СИТУАЦИЯ:**
|
|
|
|
|
|
|
|
|
|
|
|
### **Установлено:**
|
|
|
|
|
|
```
|
|
|
|
|
|
✅ workflowengine: 2.13.0 (ядро)
|
|
|
|
|
|
✅ workflow_ocr: 1.31.3 (OCR)
|
|
|
|
|
|
✅ workflow_pdf_converter: 2.0.0 (PDF конвертер)
|
|
|
|
|
|
✅ workflow_script: 2.0.0 (скрипты)
|
|
|
|
|
|
✅ flow_notifications: 2.0.1 (уведомления)
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **Активных правил:** 0 ❌
|
|
|
|
|
|
|
|
|
|
|
|
**Вывод:** Все приложения установлены, но **НЕ НАСТРОЕНЫ** и **НЕ ИСПОЛЬЗУЮТСЯ**.
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 💡 **РЕКОМЕНДАЦИИ:**
|
|
|
|
|
|
|
|
|
|
|
|
### **Вариант 1: ИСПОЛЬЗОВАТЬ для автоматизации**
|
|
|
|
|
|
|
|
|
|
|
|
**Полезные сценарии для CRM:**
|
|
|
|
|
|
|
|
|
|
|
|
**1. OCR судебных решений:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: PDF загружен в Documents/Project/*/Судебные решения
|
|
|
|
|
|
Действие: OCR → текст извлечён → можно искать
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**2. Уведомления о новых документах:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Файл загружен в Documents/Project/*
|
|
|
|
|
|
Действие: Уведомить ответственного юриста
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**3. Автоматическая конвертация в PDF:**
|
|
|
|
|
|
```
|
|
|
|
|
|
Правило: Word/Excel загружен
|
|
|
|
|
|
Действие: Конвертировать в PDF
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **Вариант 2: ОТКЛЮЧИТЬ если не нужно**
|
|
|
|
|
|
|
|
|
|
|
|
Если не планируете использовать автоматизацию:
|
|
|
|
|
|
```bash
|
|
|
|
|
|
docker exec -u www-data nextcloud-fresh php occ app:disable workflow_ocr
|
|
|
|
|
|
docker exec -u www-data nextcloud-fresh php occ app:disable flow_notifications
|
|
|
|
|
|
docker exec -u www-data nextcloud-fresh php occ app:disable workflow_pdf_converter
|
|
|
|
|
|
docker exec -u www-data nextcloud-fresh php occ app:disable workflow_script
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**Оставить только ядро:** `workflowengine` (базовая функциональность)
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 🔧 **КАК НАСТРОИТЬ (если нужно):**
|
|
|
|
|
|
|
|
|
|
|
|
### **Шаг 1: Открыть настройки Flow**
|
|
|
|
|
|
```
|
|
|
|
|
|
https://office.clientright.ru:8443/settings/admin/workflow
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **Шаг 2: Создать правило**
|
|
|
|
|
|
```
|
|
|
|
|
|
1. Add rule
|
|
|
|
|
|
2. Выбрать событие (File created, File updated, etc.)
|
|
|
|
|
|
3. Добавить условия (path, mime type, size)
|
|
|
|
|
|
4. Выбрать действие (OCR, notification, convert)
|
|
|
|
|
|
5. Save
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### **Шаг 3: Протестировать**
|
|
|
|
|
|
Загрузить тестовый файл → проверить что правило сработало
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 📊 **ИСПОЛЬЗУЕМЫЕ РЕСУРСЫ:**
|
|
|
|
|
|
|
|
|
|
|
|
### **Tesseract OCR:**
|
|
|
|
|
|
- Версия: 5.5.0
|
|
|
|
|
|
- Языки: русский, английский (установлены)
|
|
|
|
|
|
- CPU: ~50-100% на файл
|
|
|
|
|
|
- Время: ~10-30 сек на страницу
|
|
|
|
|
|
|
|
|
|
|
|
### **Дисковое пространство:**
|
|
|
|
|
|
OCR создаёт дополнительные текстовые файлы = +10-20% от размера PDF
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## ⚠️ **ВАЖНО:**
|
|
|
|
|
|
|
|
|
|
|
|
**Если НЕ используете эти функции** → лучше **отключить**:
|
|
|
|
|
|
- Меньше нагрузка на систему
|
|
|
|
|
|
- Меньше ошибок в логах
|
|
|
|
|
|
- Проще поддержка
|
|
|
|
|
|
|
|
|
|
|
|
**Если НУЖНА автоматизация** → настроить правила workflow
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
**Вам нужна автоматизация (OCR, уведомления)?** Или отключить эти приложения? 🤔
|
|
|
|
|
|
|
2025-11-01 12:22:12 +03:00
|
|
|
|
|