Di seguito vengono forniti alcuni esempi di utilizzo del filtro semplice:
Configurare un'azione per l'esecuzione di un comando quando una periferica è conforme ai requisiti del filtro. Ad esempio, creare una cartella contenente solo stampanti con numero di pagine superiore a 10.000. Quando il conteggio pagine di una stampante controllata supera tale valore, la stampante viene aggiunta alla cartella.
Controllare solo le stampanti con una periferica flash installata. Ad esempio, se una cartella contiene solo stampanti dotate di una periferica flash e una periferica di questo tipo viene rimossa da una stampante controllata, quest'ultima viene rimossa dalla cartella. La cartella viene automaticamente aggiornata quando la stampante non è conforme ai requisiti del filtro.
L'opzione "Con un ritardo di" consente di ritardare l'esecuzione di un'azione per un determinato periodo di tempo successivo all'aggiunta o alla rimozione di una periferica da una cartella.
Il filtro "Esegui se Attivo" consente di impostare l'esecuzione di un comando solo quando una condizione diventa attiva. Ad esempio, se si rimuove un vassoio da una stampante durante la verifica dell'evento di tipo Vassoio mancante, la stampante genera un evento di tipo Vassoio mancante con stato Attivo. Lo stato Attivo soddisfa la condizione del filtro, pertanto l'azione specificata viene eseguita. Quando il vassoio viene reinserito, la stampante genera un altro evento di tipo Vassoio mancante con stato Eliminato. Lo stato Eliminato non soddisfa la condizione del filtro, pertanto l'azione non viene eseguita.
Scegliere il filtro "Esegui se Attivo o Eliminato" per impostare l'esecuzione di un'azione ogni volta che una condizione diventa attiva o viene eliminata. Ad esempio, è possibile utilizzare questo filtro per creare un registro degli inceppamenti della stampante e determinare il tempo medio necessario per rimuoverli. Quando si verifica un inceppamento, la stampante crea un evento con stato Attivo. Tale evento soddisfa la condizione del filtro e consente di eseguire l'azione. Quando l'inceppamento viene rimosso, la stampante crea un altro evento con stato Eliminato. Anche questo evento soddisfa la condizione del filtro e consente di eseguire l'azione. A questo punto, nel file di registro vengono visualizzate due righe, una con l'orario in cui si è verificato l'inceppamento e l'altra con l'orario in cui è stato rimosso.
L'uso di un filtro personalizzato consente di definire la modalità di esecuzione di un'azione. Caricare un file script o scriverne uno nuovo. MarkVision Messenger utilizza un linguaggio molto semplice per la definizione dei filtri. Di seguito è riportato un elenco completo delle istruzioni e delle condizioni utilizzabili in un filtro personalizzato:
(Condizione)
(Condizione)
(Condizione)
{ StatementList }
(Condizione_1...Condizione_n)
(Condizione_1...Condizione_n)
(chiave, valore)
(chiave, valore)
Di seguito viene rappresentato uno script di esempio del filtro predefinito "Esegui se Attivo":
IfThen (EventDataIs("state", "ACTIVE"))
DistributeLa condizione consente di richiedere all'evento il valore della parola chiave event: state. Questa parola chiave può essere inserita nelle righe di comando e nei messaggi e-mail. L'istruzione esegue l'istruzione successiva purché la condizione sia vera. Una condizione è vera se il valore della parola chiave (state) corrisponde al valore specificato (ACTIVE). L'istruzione successiva, , esegue il comando.
Di seguito viene rappresentato uno script di esempio utilizzato quando l'azione "Esegui se Attivo" viene eseguita con un ritardo di 30 secondi:
{
WaitUntil (TimeIsAfter(30))
IfThen(EventDataIs("state", "ACTIVE"))
Distribute
}Le parentesi graffe ({}) vengono utilizzate per raggruppare le istruzioni in un elenco e non sono state inserite nell'esempio precedente poiché l'istruzione e le istruzioni successive sono state considerate istruzioni singole.
L'istruzione consente di differire l'esecuzione dello script finché la condizione non diventa vera. La condizione viene interpretata come vera solo dopo il numero di secondi specificato. Se l'evento è ancora attivo dopo 30 secondi, l'istruzione esegue il comando.
Di seguito viene rappresentato uno script del filtro predefinito "Esegui se Attivo o Eliminato" utilizzato nei seguenti casi: l'evento di tipo Vassoio mancante è selezionato per il vassoio 3, è stato impostato un ritardo di 20 minuti per l'esecuzione del comando e il comando si ripete ogni 20 minuti se la condizione resta attiva.
While (And(EventDataIs("state", "ACTIVE"), EventDataIs("location", "Tray 3")))
{
WaitUntil(TimeIsAfter(1200))
IfThen(EventDataIs("state", "ACTIVE"))
Distribute
}In questo esempio, è stato utilizzato per creare una condizione composta. Il loop While viene eseguito o ripetuto solo se l'evento è attivo per il vassoio 3. Il codice all'interno del loop è identico a quello del filtro "Esegui se Attivo", tranne per il fatto che la condizione è impostata su un ritardo di 1.200 secondi (20 minuti).