Advanced Workflows
Descrizione
Un plugin per la configurazione flessibile e l'automazione dei processi aziendali. Permette di configurare ed eseguire automaticamente scenari complessi che vanno oltre i flussi di lavoro standard di Redmine. Un sistema flessibile di "regole personalizzate" consente inoltre di impostare restrizioni specifiche.
Caratteristiche principali
- Nuovo formato campo personalizzato: "Data e Ora"
- Regole personalizzate
- Azioni automatiche
Compatibilità
Redmine: 5.0 - 6.0
Browser Web: Chrome, Firefox, Safari, Edge
Database: MySQL 5.7, MySQL 8.0, PostgreSQL 14-16, SQLite
Plugin: redmine_kanban, redmine_advanced_checklists, advanced_charts, appearance_custom, module_manager, periodic_reminder, user_group_editor, queries_perfect, selectbox_autocompiler, cost_calculator.
Installazione e Aggiornamento
-
Rimuovere la vecchia versione del plugin da Redmine, se esiste.
cd redmine/plugins rm -r advanced_workflows -
Copiare la nuova cartella del plugin
advanced_workflowsinredmine/plugins/. -
Eseguire le migrazioni nella cartella principale di Redmine.
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflows -
Arrestare e avviare Redmine. (In alcune installazioni di Redmine (ad esempio, Docker), è importante arrestare e avviare il server, non solo riavviarlo.)
Disinstallazione
- Eseguire il comando di disinstallazione nella cartella principale di Redmine.
bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=advanced_workflows VERSION=0
- Rimuovere la cartella del plugin
advanced_workflowsdaredmine/plugins/.
rm -r advanced_workflows
- Arrestare e avviare Redmine.
Configurazione
- Configurare i ruoli utente in Amministrazione -> Ruoli e permessi.
- Attivare il modulo «Advanced Workflows» per i progetti nelle impostazioni di ogni progetto.
- Verificare e modificare le altre impostazioni del plugin in Amministrazione -> Plugin -> Advanced Workflows.
Amministrazione
Sezione "Ruoli e permessi"
- Gestire le regole a livello di progetto - accesso per modificare regole e azioni nel progetto.
Sezione "Campi personalizzati"
Il plugin Advanced Workflows aggiunge un nuovo formato campo personalizzato: "Data e Ora"


"Data e Ora" può essere utilizzato come filtro (condizione).

Opzioni disponibili:
- Ora successiva - il filtro includerà le richieste il cui valore del campo "Data e Ora" rientra nell'ora successiva dall'ora UTC corrente.

Sezione "Plugin"
In Amministrazione → Plugin → Advanced Workflows è possibile configurare:
- Esegui come utente - Possibilità di selezionare un amministratore per conto del quale verranno eseguite le azioni pianificate.
- Numero massimo di richieste durante l'esecuzione di azioni pianificate.

Sezione "Regole personalizzate"
Le regole personalizzate consentono di impostare restrizioni sull'assegnazione delle richieste agli utenti in condizioni definite.
In Amministrazione → Regole personalizzate è possibile creare e configurare regole:

Creazione regole
Durante la creazione, specificare il nome e la visualizzazione nelle impostazioni del progetto:

Modifica regole
Dopo aver creato una regola, è possibile modificarne le condizioni e le restrizioni.

Facendo clic sul nome della regola, si aprirà la finestra di modifica. Qui è possibile specificare in quali progetti la regola sarà attivata.

Condizioni possibili
- Progetto
- Tracker
- Versione
- Autore
- Utente corrente
- Gruppo dell'assegnatario
- Gruppo dell'autore
- Ruolo dell'assegnatario
- Ruolo dell'utente corrente
- Stato richiesta
- Tracker della richiesta padre
- Versione della richiesta padre
- Campi personalizzati "Richieste" di tipo "Elenco", "Testo", "Virgola mobile", "Intero", "Data", "Data e Ora".
- Campi personalizzati "Progetti" di tipo "Elenco", "Testo", "Virgola mobile", "Intero", "Data".


Restrizioni possibili
- Assegnatario
- Gruppo dell'assegnatario
- Ruolo dell'assegnatario
- Data di scadenza
- Tracker
- Versione

Sezione "Azioni automatiche"
Le azioni automatiche consentono di eseguire azioni selezionate quando si salva una richiesta o secondo una pianificazione, nell'ambito delle condizioni specificate.
In Amministrazione → Azioni automatiche è possibile creare e configurare azioni:

Creazione azioni
Durante la creazione, specificare il nome, il metodo di esecuzione e la visualizzazione nelle impostazioni del progetto. Le azioni possono essere eseguite in due modi diversi:
- Al salvataggio - le azioni verranno eseguite istantaneamente durante la creazione o la modifica di una richiesta.
- Pianificata (cron) - le regole verranno eseguite periodicamente secondo una pianificazione cron.

Modifica azioni
Dopo aver creato un'azione, è possibile modificare la regola, le condizioni e le azioni.

Facendo clic sul nome della regola, si aprirà la finestra di modifica. Qui è possibile specificare in quali progetti la regola sarà attivata.

Condizioni possibili
- Filtri richieste standard
- Filtri richieste personalizzati
- Filtri richieste da altri plugin
Azioni possibili
- Assegnatario
- Impedisci salvataggio
- Invia email
- Stato
- Tracker
- Progetto
- Versione
- Versione delle sotto-richieste aperte
- Osservatori
- Webhook (GET)
- Webhook Mattermost
- Webhook Telegram
- Checklist (se il plugin redmine_advanced_checklists è installato)


Per le azioni "Invia email", "Webhook (GET)", "Webhook Mattermost" e "Webhook Telegram", sono disponibili variabili d'azione.

Utilizzo
Attivazione di regole e azioni
Dopo aver creato regole e azioni, è necessario attivarle singolarmente nelle impostazioni del progetto.
Per farlo, andare in:
Progetto → Impostazioni → Regole personalizzate, attivare le regole necessarie in questo progetto.

Progetto → Impostazioni → Azioni automatiche, attivare le azioni necessarie in questo progetto.

Regole personalizzate
Restrizioni disponibili che verranno applicate quando le condizioni sono soddisfatte:
Assegnatario
La richiesta può essere assegnata solo agli utenti selezionati.

Gruppo dell'assegnatario
La richiesta può essere assegnata solo agli utenti che appartengono ai gruppi selezionati.

Ruolo dell'assegnatario
La richiesta può essere assegnata solo agli utenti con il ruolo selezionato per il progetto.

Data di scadenza
La data di scadenza delle richieste può essere impostata solo entro un intervallo di date specificato.

Tracker
Le richieste possono avere solo i tracker selezionati.

Versione
Le richieste possono avere solo le versioni selezionate.

Azioni automatiche
Metodo di esecuzione "Pianificata"
Le azioni verranno eseguite periodicamente secondo la pianificazione cron.
Affinché un'azione automatica funzioni correttamente, è necessario aggiungere un nuovo comando nel crontab del server che esegue il comando bundle exec rake advanced_workflows:run_actions
Comando di esempio:
*/5 * * * * cd /percorso/assoluto/per/redmine && bundle exec rake advanced_workflows:run_actions >> /percorso/assoluto/per/redmine/logs/cron_advanced_workflows.log
Aggiungere questo comando a cron come utente con cui viene eseguito Redmine, sostituendo /percorso/assoluto/per/redmine con il percorso assoluto della cartella di installazione di Redmine.
Il comando cron verrà eseguito ogni 5 minuti */5 * * * *
Tutti i messaggi standard verranno aggiunti al file .../logs/cron_advanced_workflows.log
Azioni disponibili che verranno eseguite quando le condizioni sono soddisfatte:
Webhook (GET)
Invia una richiesta GET all'URL specificato. Utilizzato per l'integrazione con sistemi esterni, ad esempio per la sincronizzazione con Jira.
Supporta tutte le variabili dei campi della richiesta.

Webhook Mattermost
Invia un messaggio a un canale Mattermost.
- URL: URL del webhook in entrata di Mattermost.
- Dati POST: il messaggio da inviare.
Supporta tutte le variabili dei campi della richiesta. 
Webhook Telegram
Invia un messaggio a una chat di gruppo Telegram utilizzando un bot.
- Token: token del bot Telegram
- ID chat: ID della chat in cui è stato aggiunto questo bot
- Dati POST: il messaggio da inviare
Supporta tutte le variabili dei campi della richiesta. 
Invia email
Invia un'email agli indirizzi email specificati. Gli indirizzi possono essere separati da virgole , o ;.
Supporta tutte le variabili dei campi della richiesta.

Versione
Modifica automaticamente la versione della richiesta.
- Sostituisci con la versione corrente della richiesta - Sostituisce la versione della richiesta con la versione corrente (attiva) del progetto.

Versione delle sotto-richieste aperte
- Cambia in - Cambia la versione di tutte le sotto-richieste aperte in quella specificata.
- Imposta uguale alla versione della richiesta - Cambia la versione di tutte le sotto-richieste aperte nella versione della richiesta.

Impedisci salvataggio
Impedisce la creazione/modifica della richiesta. 
Osservatori
Aggiunge gli osservatori specificati alla richiesta. 
Stato
Cambia lo stato della richiesta in quello specificato. 
Tracker
Cambia il tracker della richiesta in quello specificato. 
Checklist
Disponibile se il plugin redmine_advanced_checklists è installato.
Crea automaticamente una checklist da modelli quando le condizioni sono soddisfatte.
Utilizzare modelli preparati in anticipo. 
Progetto
Cambia il progetto della richiesta in quello specificato.

If you have any problems or questions, write us an email [email protected]