40tude Dialog - punti e azioni
Assegnare punteggi
Perché assegnare dei punti ai messaggi, o ai loro autori?
Perché è un modo efficace per separare ciò che ci interessa di più da ciò che ci interessa di meno o per niente.
Guardate questa figura:
fig.1
I messaggi che contengono "Dialog" nel Subject ricevono automaticamente 30 punti, quelli inviati da me 90 punti, quelli che sono una risposta diretta ai miei messaggi 70 punti, le risposte a questi ultimi 50 punti.
Tutto questo viene realizzato con alcune semplici regole scritte nella finestra "Punteggio e azioni", raggiungibile con un clic destro del mouse fatto nel pannello degli header o in quello dell'articolo, oppure dai menu "Messaggio" o "Impostazioni".
La finestra "Punteggio e azioni" contiene il tab Esempi nel quale potete trovare complete istruzioni su come scrivere regole per l'assegnazione di punteggi e per le azioni di cui parleremo tra poco (oltre che ovviamente nell'Help di Dialog, capitolo Reference - Scoring/Actions Syntax).
Inoltre contiene il tab Prova espressioni regolari, dove potete facilmente testare le vostre regex!
Io qui mi limito a mostrarvi come fare per ottenere qualcosa di analogo a ciò che ho descritto sopra, più qualche altra idea.
Prima di tutto ricordatevi che una regola di punteggio deve sempre iniziare con un =, o con un +, o con un - .
Cliccate sul tab Regole di punteggio e azioni della finestra "Punteggio e azioni" e scrivete le vostre regole (una per riga), prendendo spunto dalle seguenti e inserendo opportunamente i vostri dati:
(ho evidenziato le regole in rosso e per ognuna ho aggiunto una breve spiegazione)
[*]
Significa che le regole che scriverete in questa sezione valgono per tutti i newsgroup. Se volete che valgano anche per tutte le email mettete [**] .
Le sezioni vengono identificate dalle parentesi quadre.
=+90 From "<la_vostra_email>"
Qui viene usato il campo From degli header del messaggio per identificare un vostro articolo. Questo campo degli header contiene il vostro nome e la vostra email, quindi nella regola appena scritta si potrebbe anche usare il nome, ma bisognerebbe essere sicuri che non ci sia qualcun altro con lo stesso nome, o il cui nome contiene il vostro (per esempio Maria e Marianna), quindi è piuttosto rischioso.
=+70 References {vostro_FQDN_Unico>$}
Vengono assegnati 70 punti alle risposte dirette ai vostri messaggi. Per identificarle si usa il campo degli header References, che contiene tutti i Message-ID, in ordine, del thread in questione. Quindi se un messaggio in arrivo è una risposta diretta ad uno vostro, necessariamente il vostro FQDN Unico sarà l'ultimo tra tutti quelli contenuti nel campo References del messaggio in arrivo. Per indicare che deve essere l'ultimo ho usato una regex, che qui va racchiusa tra parentesi graffe. Naturalmente perché tutto questo funzioni dovete avere un FQDN Unico: leggete in fondo a questa pagina nella sezione Suggerimenti (n.11).
=+50 References {vostro_FQDN_Unico}
Vengono assegnati 50 punti alle risposte delle risposte...Qui basta che il vostro FQDN Unico compaia da qualche parte, non importa dove, nel campo References.
-10 XPost %>3
Diminuisce di 10 punti il punteggio dei messaggi in crosspost su più di 3 gruppi.
Notate che all'inizio non c'è un "=" come negli esempi precedenti: questo rende la regola "relativa", mentre con un "=" davanti l'assegnazione sarebbe "assoluta" e non più modificabile dalle regole successive.
Per un approfondimento su queste differenze guardate i Suggerimenti (n.7) in fondo alla pagina.
+20 From "<email_Amico1>" "<email_Amico2>" "<email_Amico3>"
Se avete degli amici che seguono molti dei gruppi che seguite anche voi, e volete mettere in evidenza anche i loro messaggi, aggiungete questa regola in questa sezione generale. Notate che questi vostri amici, anche se hanno fatto un crosspost su più di 3 gruppi, avranno ancora un punteggio positivo.
+2 References {^$}
Ancora una regex! Se l'header References è vuoto, il messaggio è il primo di un thread e gli aumentiamo il punteggio di 2. Notate che anche il punteggio dei vostri amici, già aumentato di 20, viene ulteriormente aumentato di 2 se hanno iniziato un nuovo thread.
[news.software.readers it.comp.software.newsreader]
Inizia una nuova sezione, che ora riguarda solo due newsgroup che si occupano di newsreader.
=+30 Subject {40tude|Dialog}
Assegna 30 punti ai messaggi che hanno nel Subject le parole "40tude" oppure "Dialog".
=-10 Subject -{40tude|Dialog}
Questo se proprio vi interessa solo Dialog...
[* -binaries]
Le regole di questa sezione valgono per tutti i newsgroup eccetto quelli che nel loro nome contengono "binaries".
Naturalmente, a seconda dei gruppi che avete sottoscritto, potete specificarne anche altri da non prendere in considerazione.
-100 Lines %>1000
Toglie 100 punti ai messaggi lunghi più di 1000 righe.
-80 Header {^Content-Type: multipart}
Toglie 80 punti ai messaggi che non sono di puro testo, ma sono in formato html oppure contengono allegati.
[email.*]
Inizia la sezione espressamente dedicata alle email. Se avete più identità, potete riferirvi espressamente ad una di esse con [email.vostraIdentità]
=-100 From "<email_odiata1>" "<email_odiata2>"
Un modo semplice per mettere da parte certi scocciatori...
=-100 Subject {\b(sex|porno|nude|enlargement)\b}
C'è bisogno di spiegazione? ;-)
Comandare azioni
Finora i messaggi hanno solo ricevuto punti, adesso con le azioni potremo fare molto di più, per esempio copiarli, spostarli, colorarli, mettere o togliere un tag...
Le azioni iniziano sempre con un punto esclamativo, e sono:
!watch !ignore !unsetwatchignore !retrieve !mark .
!unmark !keep !unkeep !markread !markunread
!delete !setcolor(coloreTesto;coloreSfondo)
!move(folder) !copy(folder)
Nella sezione generale [*] dei newsgroup sarà utile aggiungere:
!retrieve From "<la_vostra_email>"
Per scaricare sempre il corpo dei vostri messaggi; se invece non vi interessano, potete segnarli come già letti con: !markread From "<la_vostra_email>" .
!setcolor(default;$ebebfd) From "<la_vostra_email>"
Colorate di rosa lo sfondo dei vostri messaggi. I colori espressi in formato esadecimale devono essere preceduti da $ e sono nella forma BBGGRR, dove BB è il codice esadecimale per il blu, GG quello per il verde (Green), RR quello per il rosso.
Nella pagina Links, sezione "Utilità", trovate indicazioni per facilitarvi il compito.
Se vi accontentate dei colori di base e non cercate troppe sfumature, potete anche usare i nomi dei colori predefiniti, che sono: Black, White, Silver, Gray, Red, Maroon, Fuchsia, Purple, Blue Navy, Teal, Lime, Green, Yellow, Olive, Aqua, MoneyGreen, SkyBlue, Cream, MedGray .
Notate inoltre che si possono usare più azioni per una stessa condizione, senza ripetere il punto esclamativo e separandole con delle virgole. Ad esempio queste due prime regole possono essere riunite in una sola:
!retrieve,setcolor(default;$ebebfd) From "<la_vostra_email>" .
!retrieve References {vostro_FQDN_Unico}
Viene sempre scaricato il corpo di ogni messaggio che è risposta diretta o indiretta a un vostro messaggio.
!setcolor(default;$dbfdff) References {vostro_FQDN_Unico}
Colorate di giallo lo sfondo delle risposte dirette o indirette ai vostri messaggi.
Anche qui potete unire insieme queste ultime due regole:
!retrieve,setcolor(default;$dbfdff) References {vostro_FQDN_Unico} .
!setcolor(default;$fdebea) References {vostro_FQDN_Unico>$}
Colorate di azzurro lo sfondo delle risposte dirette ai vostri messaggi. Fate attenzione che questa azione deve avvenire dopo quella precedente, perché altrimenti le risposte dirette verrebbero ricolorate di giallo, in quanto questa condizione è compresa nell'altra. Anche per questo motivo non occorre più aggiungere un !retrieve .
!delete Score %<0
I messaggi con punteggio negativo vengono cancellati. Se vi basta segnarli come letti, non occorre una regola apposta: usate l'opzione presente in "Gruppo - Opzioni predefinite per i gruppi - Ordine-Punteggio".
Nella sezione [news.software.readers it.comp.software.newsreader] potete aggiungere:
!retrieve,keep Subject {40tude|Dialog}
I corpi dei messaggi riguardanti Dialog vengono sempre scaricati e protetti dal purge o da cancellazione.
!copy(Dialog) Subject {40tude|Dialog}
I messaggi riguardanti Dialog vengono copiati in una vostra cartella chiamata "Dialog".
Usate invece: !move(Dialog) Subject {40tude|Dialog} se, invece della copia, preferite uno spostamento. Pensate che non occorre neppure creare prima la cartella: la prima volta che la regola viene usata, Dialog la crea per voi!
Qualche altra idea per la sezione [email.*] dedicata alle email:
!delete Header "NNTP-Posting-Host: 12.345.67.890"
Se siete afflitti da spam che arriva sempre da uno stesso IP, con questa regola non la vedrete più.
Naturalmente il numero che ho scritto qui è del tutto fittizio.
!move(Spam) Score %<0
Le email che hanno ricevuto un punteggio negativo vengono spostate nella cartella "Spam".
I messaggi che spedite sono tutti presenti nella cartella Sent, però da lì non possono essere né copiati né spostati. Quindi, se volete essere previdenti, aggiungete questa sezione per salvare nella cartella miei tutti i vostri messaggi che non siano diretti a un gruppo di test (non penso che vogliate tenere anche quelli!):
[* -{\btest\b}]
!copy(miei) From "<la_vostra_email>"
Non c'è invece bisogno di fare un'operazione del genere per le vostre email, perché a questo riguardo c'è un'apposita opzione in Impostazioni SMPT avanzate dell'Identità.
Suggerimenti:
1. Ogni istruzione può contenere un commento, che deve iniziare con # .
2. Quando volete togliere un'istruzione, magari per fare dei test, non cancellatela: è sufficiente farla diventare un commento, mettendole davanti un # .
3. I punti possono variare da -9999 a +9999 .
4. Invece che ad ogni singolo header, ci si può riferire alla variabile globale Headers, che contiene tutti gli header disponibili (però solo dopo che è stato scaricato anche il corpo del messaggio).
5. Cliccando il tasto destro del mouse su un messaggio e scegliendo "Punteggio e azioni... - Aggiungi regola di plonk...", si apre la finestra Punteggio e azioni con già aggiunta la regola:
!markread From "nome_autore"
e la sezione indicante il newsgroup in cui si trova il messaggio.
6. Facendo come sopra, ma scegliendo "Aggiungi regola di plonk per il Subject...", viene aggiunta la regola:
!markread Subject "argomento_thread"
7. Scrivendo =-100 From "Mr.Hide", la presenza dell' = fa sì che ogni successiva assegnazione di punteggio che potrebbe coinvolgere Mr.Hide non viene più processata. Per esempio, se dopo la regola precedente appare la regola +30 Subject {esperimenti}, anche se Mr.Hide scrive un messaggio dal titolo "Esperimenti sulla natura umana", i suoi -100 punti non cambiano. Se invece la prima regola fosse stata -100 From "Mr.Hide", alla fine Mr.Hide avrebbe avuto -70 punti. Fate quindi sempre attenzione al tipo e all'ordine delle vostre regole.
8. Le vostre regole verranno applicate a tutti i nuovi messaggi che verranno scaricati.
Se volete applicarle anche a quelli già scaricati, usate il comando "Applica punteggio e azioni ai gruppi selezionati" del menu "Gruppo".
9. I messaggi che erano stati colorati in precedenza e non cadono sotto le condizioni delle vostre regole attuali non vengono ricolorati. Per eliminare queste vecchie colorazioni dovete mettere nella sezione interessata (ad esempio [**] se volete che valga per tutti i newsgroup e le email) la cosiddetta regola "gomma" (da un'idea di Enrico C su it.comp.software.newsreader): !setcolor(default;default) bytes %>0 .
E' importantissimo che questa regola sia la prima di tutte le vostre regole !setcolor, perché agisce davvero come una gomma da cancellare!
10. Per controllare che tutto funzioni perfettamente, abituatevi a testare le vostre regole sui gruppi fatti apposta per questo: per esempio it.test, oppure alt.test, ecc. (se nella categoria Filtrati usate l'opzione "espr. reg" e scrivete \btest\b , ne troverete a centinaia). Potrete così vedere l'effetto delle vostre regole senza correre il rischio di perdere messaggi importanti.
11. Ogni articolo su Usenet ha un header Message-ID, in modo che i server ne possano tenere traccia.
Se si invia un messaggio sprovvisto di Message-ID e non si usa Dialog, in generale sarà il primo server che lo riceve a mettergliene uno, che però di volta in volta sarà diverso.
Dialog provvede a creare un Message-ID, nella forma qualcosa_random.dlg_chiocciola_40tude.net.
E' evidente però che per identificare correttamente i propri messaggi è necessario avere nell'header Message-ID un FQDN (Fully Qualified Domain Name) unico.
Per ottenere un FQDN esistono vari modi:
- Se avete registrato un vostro dominio, ad esempio "tiziocaio.net" il vostro FQDN potrebbe essere: news.tiziocaio.net.
- Se avete un account presso l'ottimo newsserver (free) http://news.individual.net/, (o News.CIS.DFN.DE) potete usare il vostro user-ID (supponiamo che sia 1234567) e creare l' FQDN in questa forma:
ID-1234567.user.individual.net (o ID-1234567.user.uni-berlin.de).
- Come ultima risorsa potete inventarne uno. Dovete però avere la quasi matematica certezza che non sia usato da altri e non sfrutti il nome reale di qualche altro dominio. Un'idea può essere quella di combinare insieme alcuni dati che vi riguardano, aggiungendo .invalid alla fine; per esempio: news.data_nascita_vostro_cane.vostro_nick.invalid .
A questo punto siete pronti per far generare a Dialog il Message-ID a partire dal vostro FQDN unico. Usate il menu "Impostazioni - Server, identità, firme...", scegliete la sezione "Identità", mettete la spunta alle opzioni "Dialog deve generare il Message-ID" e "Genera da:", e inserite il vostro FQDN unico. D'ora in poi i vostri messaggi saranno sempre identificabili dal vostro unico FQDN: controllate negli header il campo Message-ID !