Amazon Best VPN GoSearch

favicon do OnWorks

claws-mail-perl-filter - Online na nuvem

Execute claws-mail-perl-filter no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando claws-mail-perl-filter que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online Windows ou emulador online MAC OS

PROGRAMA:

NOME


cm_perl - Um plug-in Perl para o Claws Mail

DESCRIÇÃO


Este plugin fornece um mecanismo de filtragem estendido para o cliente de email Claws Mail. Isto
permite o uso de poder total do Perl em filtros de e-mail.

QUICK Abra


Para começar, você pode usar o matcherrc2perlfilter.pl script no ferramentas-diretório para
traduza suas regras de filtragem antigas para Perl. Basta executar o script e seguir o
instruções. (note que com as versões recentes do Claws Mail, este script pode não funcionar
devido a alterações de sintaxe upstream. Isso será atualizado no futuro. Envie-me um e-mail se
você tem problemas para começar).

No entanto, você pode querer considerar a leitura do restante deste manual e reescrever seu
regras se você escolher usar o plugin, uma vez que o código Perl produzido por este script não é
exatamente bonito.

Não fala Perl? Sem problemas, "perldoc perlintro" deve fornecer informações suficientes para fazer
coisa chique.

USO


O plugin Perl espera um arquivo de script Perl chamado filtro_perl na configuração do Claws Mail '
(geralmente $ HOME / .claws-mail - tente `claws-mail --config-dir 'se não tiver certeza).
Se esse arquivo não existir no início do plugin, um vazio será criado. Este arquivo, que
não precisa começar com um sha-bang (! # / bin / perl), contém as instruções Perl para o seu
filtros de e-mail. Para encorajar algumas boas maneiras, o código é executado em um "uso estrito;"
ambiente.

Filtragem de ambos os Claws Mail ' condições e Ações são mapeados para funções Perl com
nomes correspondentes, sempre que possível.

FUNÇÃO LISTA


Para uma descrição detalhada da função, consulte a seção "DESCRIÇÕES DA FUNÇÃO" abaixo.

Condições de filtragem padrão
todos, marcados, não lidos, excluídos, novos, respondidos,
encaminhado, bloqueado, ignore_thread, colorlabel,
correspondência, caixa de correspondência, regexp, S
size_maior, size_smaller, size_equal,
pontuação_maior, pontuação_menor, pontuação_igual, idade_maior,
age_lower, parcial, marcado

Ações de filtragem padrão
marcar, desmarcar, dele, mark_as_unread, mark_as_read,
bloquear, desbloquear, mover, copiar, colorir, executar,
ocultar, definir pontuação, alterar pontuação, parar, avançar,
forward_as_attachment, redirecionar, set_tag, unset_tag,
limpar_tags

Coisas divertidas
cabeçalho, corpo, caminho de arquivo, extract_addresses,
move_to_trash, abortar, addr_in_addressbook,
from_in_addressbook, get_attribute_value, SA_is_spam,
saída, manual, make_sure_folder_exists,
filtro_log, filtro_log_verbosidade,
make_sure_tag_exists

FUNÇÃO DESCRIÇÃO


Em geral, após a filtragem invocada pelo script Perl, o e-mail é repassado para
Motor de filtragem interno do Claws, a menos que a final regra foi atingida. As regras finais não param apenas
o script de filtragem Perl no ponto de sua ocorrência, mas também impede o processamento
aquele e-mail pelo mecanismo de filtragem interna do Claws (isso pode parecer confuso, mas você está
já estou familiarizado com esse conceito de filtros padrão: depois que um e-mail foi, por exemplo moverd,
as seguintes regras não se aplicam mais).

Além disso, tenha cuidado com a maneira como você cita. Em particular, lembre-se de que o @ -sign tem um
significado especial em Perl e é interpolado entre aspas duplas. Veja "Citação e Orçamento-
like Operators "em perlop para aprender mais sobre cotação e interpolação.

Padrão Filtragem Condições
all Retorna um valor verdadeiro. Disponível apenas para ser completado.

marcado Retorna um valor verdadeiro se o sinalizador marcado estiver definido, caso contrário, falso.

não lido Retorna um valor verdadeiro se o sinalizador de não lido é definido, caso contrário, falso.

excluído Retorna um valor verdadeiro se o sinalizador excluído for definido, caso contrário, falso.

new Retorna um valor verdadeiro se o novo sinalizador for definido, caso contrário, falso.

respondido Retorna um valor verdadeiro se o sinalizador de resposta é definido, falso caso contrário.

encaminhado
Retorna um valor verdadeiro se o sinalizador encaminhado é definido, caso contrário, retorna falso.

bloqueado Retorna um valor verdadeiro se o sinalizador bloqueado for definido, caso contrário, falso.

ignore_thread
Retorna um valor verdadeiro se o sinalizador "Ignorar Thread" estiver definido, caso contrário, retorna falso.

colorlabel COR
etiqueta colorida
Retorna um valor verdadeiro se a mensagem tiver a cor COLOR. COR pode ser um numérico
valor entre 0 e 7 (com cores correspondentes à filtragem interna
motor), ou o nome da cor em inglês, conforme apresentado na caixa de diálogo de filtragem
(ou seja, um de: nenhum, laranja, vermelho, rosa, azul celeste, azul, verde ou marrom, enquanto
letras maiúsculas e minúsculas não fazem diferença). Se COLOR for omitido, 0 (nenhum) é
assumido.

size_maior SIZE
Retorna um valor verdadeiro se o tamanho da mensagem for maior que SIZE, caso contrário, falso.

tamanho_menor TAMANHO
Retorna um valor verdadeiro se o tamanho da mensagem for menor que SIZE, caso contrário, falso.

size_igual SIZE
Retorna um valor verdadeiro se o tamanho da mensagem for igual a SIZE e falso caso contrário.

pontuação_maior PONTUAÇÃO
Retorna um valor verdadeiro se a pontuação da mensagem for maior que SCORE, caso contrário, falso.

score_lower PONTUAÇÃO
Retorna um valor verdadeiro se a pontuação da mensagem for inferior a SCORE, caso contrário, retorna falso.

score_igual SCORE
Retorna um valor verdadeiro se a pontuação da mensagem for igual a SCORE, caso contrário, retorna falso.

idade_maior AGE
Retorna um valor verdadeiro se a idade da mensagem for maior que AGE e falso caso contrário.

idade_idade inferior
Retorna um valor verdadeiro se a idade da mensagem for inferior a AGE e falso caso contrário.

parcial Retorna um valor verdadeiro se a mensagem foi baixada apenas parcialmente, falso
de outra forma.

tagged Retorna um valor verdadeiro se a mensagem tiver uma ou mais tags.

teste Corresponde à regra de filtragem interna 'teste'. Em particular, ele aceita o mesmo
símbolos, a saber:

%%%

% s assunto

% f de

% t para

% c Cc

% d data

% i Message-ID

% n grupos de notícias

% r referências

% F Nome do arquivo - não deve ser modificado

combinar ONDE O QUE
caixa de fósforos ONDE O QUE
regexp ONDE O QUE
regexpcase ONDE O QUE
As funções correspondentes têm uma sintaxe especial. O primeiro argumento é qualquer um dos
to_or_cc, body_part, headers_part, headers_cont, mensagem, to, from, subject, cc,
newsgroups, inreplyto, referências ou tag (essas strings podem ou não ser
citado), a correspondência de padrões funciona nessa área. Se for qualquer outra string (que
deve ser colocado entre aspas), essa string é considerada o nome de um campo de cabeçalho.

O segundo argumento é a string a ser procurada. Para match, matchcase, regexp e
regexpcase, temos correspondência normal com distinção entre maiúsculas e minúsculas, normal sem distinção entre maiúsculas e minúsculas
correspondência, correspondência de expressão regular com distinção entre maiúsculas e minúsculas e regular sem distinção entre maiúsculas e minúsculas
correspondência de padrão de expressão, respectivamente.

As funções retornam verdadeiro se o padrão for encontrado, falso caso contrário.

Assim como com o mecanismo de filtragem embutido, o corpo da mensagem é pesquisado e
fornecido no estado em que se encontra - nenhuma análise do conjunto de caracteres é feita. Da mesma forma, nenhuma tag HTML é
despojado. Deve ser possível usar módulos externos ou programas para estes
tarefas embora. Se você estiver fazendo isso, deixe-me uma mensagem com suas experiências.

Com o Perl tendo seus pontos fortes na correspondência de padrões, usando os operadores internos do Perl
geralmente são uma opção melhor do que usar essas funções.

Padrão Filtragem Opções
As ações retornam um valor verdadeiro em caso de sucesso e 'undef' quando ocorre um erro. final
regras de mensagem são indicadas. (Veja acima um esboço do que é uma regra final)

marcar Marque a mensagem.

desmarque Desmarque a mensagem.

dele Exclua a mensagem. Observe a mudança de nome de "deletar" do Claws Mail para "dele". Isto
é porque "delete" é um dos comandos embutidos do Perl que não pode ser redefinido
(se puder, diga-me como).

Isto é um final regra.

marcar como Lido
Marque a mensagem como lida

marcar como não lido
Marque a mensagem como não lida

bloquear Bloquear a mensagem

desbloquear Remova o bloqueio de mensagem

mover DESTINO
Mova a mensagem para a pasta DESTINATION. A notação da pasta é a mesma que o Claws
Usos de correio. Você pode copiar e colar da caixa de diálogo de movimentação da filtragem normal,
até sentir a notação.

Isto é um final regra.

copiar DESTINO
Copie a mensagem para a pasta DESTINATION. A notação da pasta é a mesma que o Claws
Usos de correio. Você pode copiar e colar da caixa de diálogo de movimentação da filtragem normal,
até sentir a notação.

executar COMANDO
Este é o mesmo que o teste - regra da seção "Condições de filtragem padrão"
executar que sempre retorna um valor verdadeiro.

esconder Esconder a mensagem

set_score PONTUAÇÃO
Defina a pontuação da mensagem para SCORE

mudança_pontuação PONTUAÇÃO
Alterar pontuação da mensagem em SCORE

pare o script de Stop Perl neste ponto. Observe que este é não uma regra final, o que significa que
o e-mail é repassado para o mecanismo de filtragem interno. Veja "abortar" abaixo se
você não quer isso.

encaminhar ACCOUNT, EMAIL
Encaminhe a mensagem para o endereço de e-mail EMAIL, usando o ID da conta ACCOUNT como remetente
conta. Até agora, você deve criar uma regra no mecanismo de filtragem normal para encontrar
esse número.

forward_as_attachment, E-MAIL DA CONTA
Encaminhe a mensagem para o endereço de e-mail EMAIL em anexo, usando o ID da conta
ACCOUNT como conta do remetente. Até agora, você tem que criar uma regra no normal
mecanismo de filtragem para descobrir esse número.

redirecionar ACCOUNT, EMAIL
Redirecione a mensagem para EMAIL, usando o ID da conta ACCOUNT como conta do remetente. assim
agora, você tem que criar uma regra no mecanismo de filtragem normal para descobrir que
número.

set_tagTAG
Aplicar tag TAG. TAG deve existir.

TAG unset_tag
Tag não definida TAG.

limpar_tags
Limpe todas as tags.

Diversão coisas
Funções

cabeçalho ARG
header Se ARG não for fornecido, retorna uma lista de todos os nomes de campos de cabeçalho do e-mail.

Se ARG é fornecido, retorna 'undef' se o campo de cabeçalho ARG não existe no
o email. Caso contrário, ele retorna

no contexto escalar
O valor do campo de cabeçalho ARG.

no contexto da lista
Uma lista de todos os valores de campo de cabeçalho disponíveis. Isso é útil se um campo de cabeçalho
ocorre mais de uma vez em um e-mail (por exemplo, o cabeçalho Recebido).

O campo de cabeçalho "Referências" constitui um caso especial. Em um contexto escalar,
retorna a primeira referência. Em um contexto de lista, ele retorna uma lista de todos
referências.

body Retorna o corpo do e-mail em um escalar.

caminho de arquivo
Retorna o arquivo e o caminho do e-mail que está filtrado no momento (corresponde a
o argumento% F na regra de 'teste').

extrato_endereços
Extrai endereços de e-mail de uma string e retorna uma lista de endereços encontrados.
Atualmente, um endereço de e-mail é encontrado usando a expressão regular
'[-. + \ w] + \ @ [-. + \ w] +'. Isso não encontrará todos os endereços de e-mail válidos. Sinta-se livre para
envie-me um regexp melhor.

mover para lixeira
Mova a mensagem de e-mail para a pasta de lixo padrão.

Isto é um final regra.

abortar o script Perl de parada neste ponto.

Em contraste com 'parar', este é um final regra.

addr_in_addressbook EMAIL, LIVRO DE ENDEREÇOS
addr_in_addressbook E-MAIL
Retorna um valor verdadeiro se o endereço de e-mail EMAIL estiver no catálogo de endereços com o
nome ADDRESSBOOK. Se ADDRESSBOOK não for fornecido, retorna verdadeiro se o endereço de e-mail
está em qualquer catálogo de endereços.

from_in_addressbook LIVRO DE ENDEREÇOS
from_in_addressbook
Verifica se o endereço de e-mail encontrado no cabeçalho De está no livro de endereços LIVRO DE ENDEREÇOS
(ou qualquer, se omitido). É implementado como

meu ($ de) = extract_addresses (cabeçalho ("de"));
retorna 0 a menos que $ de;
return addr_in_addressbook ($ from, @ _);

portanto, as mesmas restrições para extract_addresses se aplicam.

get_attribute_value EMAIL, ATRIBUTO, LIVRO DE ENDEREÇOS
get_attribute_value EMAIL, ATRIBUTO
Procura no livro de endereços ADDRESSBOOK (ou em todos os livros de endereços, se omitidos) por um
contato com um endereço de e-mail EMAIL. Se encontrado, a função verifica se este
contato tem um atributo de usuário com o nome ATTRIBUTE. Ele retorna o valor deste
atributo, ou uma string vazia se não foi encontrado. Como de costume, 'undef' é retornado
se ocorreu um erro.

SA_é_spam
É um apelido para

não teste 'spamc -c <% F> / dev / null'

exit Foi redefinido para ser um apelido para 'parar'. Você não deve usar a própria 'saída' do Perl
comando, uma vez que iria sair do Claws Mail.

manual Retorna um valor verdadeiro se o script de filtro foi chamado manualmente, ou seja, por meio do
Menu de ferramentas.

make_sure_folder_exists IDENTIFICADOR
Retorna um valor verdadeiro se a pasta com id IDENTIFICADOR (por exemplo, # mh / Mail / foo / bar)
existe ou pode ser criado.

make_sure_tag_exists TAG
Retorna um valor verdadeiro se a tag TAG existe ou pode ser criada.

filter_log SEÇÃO, TEXTO
filter_log TEXTO
Grava TEXT no arquivo de log do filtro. SECTION pode ser qualquer um dos

· "LOG_MANUAL"

· "LOG_MATCH"

· "LOG_ACTION"

Se a SEÇÃO for omitida, "LOG_MANUAL" será assumido.

filter_log_verbosity VERBOSIDADE
filter_log_verbosity
Altera o detalhamento do log de filtro para o e-mail atual. VERBOSIDADE deve ser qualquer um dos

0 Fique em silêncio

1 tipo de registro MANUAL

2 Tipo de ação de log

3 Log tipo MATCH

Para saber o significado desses números, leia a seção "LOGGING". Se VERBOSITY for omitido,
o detalhamento do arquivo de log do filtro não é alterado.

Esta função retorna o número filter_log_verbosity antes da mudança (se houver).

Variáveis

$ permanente
Este escalar mantém seu valor entre as mensagens de correio filtradas. No início do plugin, é
inicializado com a string vazia.

EXPLORAÇÃO MADEIREIRA


Para acompanhar o que foi feito com os e-mails durante a filtragem, o plug-in suporta
exploração madeireira. Três níveis de verbosidade são reconhecidos:

0 registro desabilitado

1 log apenas mensagens manuais, ou seja, mensagens introduzidas pelo comando "filter_log" em
scripts de filtro

2 registrar mensagens manuais e filtrar ações

3 registrar mensagens manuais, filtrar ações e filtrar correspondências

As mensagens são registradas na janela de registro do Claws Mail. O nível de registro padrão é 2. Nível de registro
3 não é recomendado, porque as funções de correspondência registram uma mensagem se forem bem-sucedidas, e
portanto, se você tiver cheques negativos, obterá entradas confusas. Se você quiser acompanhar
de correspondência, faça manualmente, usando "filter_log", ou habilite temporariamente o matcher
log usando "filter_log_verbosity".

A primeira vez que você descarrega este plugin (ou fecha o Claws Mail), uma seção chamada
[Plugin Perl] será criado no arquivo de configuração do Claws Mail garrasrc, contendo um
variável:

* filter_log_verbosidade

Se você deseja alterar o comportamento padrão, pode editar esta linha. Certifique-se de que Claws Mail
não está funcionando enquanto você faz isso.

Será possível acessar essas configurações através da GUI, assim que eu encontrar tempo para
escreva um plugin GTK correspondente, ou outra pessoa está interessada em contribuir com isso.

EXEMPLO


Esta seção lista um pequeno exemplo de arquivo de script Perl. Tenho certeza que você entendeu.

# -8 <---------------------------------------------- ------
# - * - perl - * -

# funções locais

# Aprenda mensagens amadoras e mova-as para a pasta especificada. Isto é
# útil para garantir que um filtro bayes também veja presunto.
sub aprender_e_mover {
execute ('coloque o comando para aprender o ham aqui');
jogada(@_);
}

# Filtro de spam em dois estágios. Cada e-mail com pontuação superior a 15
# no SpamAssassin é movido para a pasta de lixo padrão.
# Todos os e-mails inferiores a isso, mas superiores aos de SpamAssassin
# 'required_hits' vá para # mh / mail / Spam.
sub verificação de spam {
meu $ sure_spam = 15;
meu $ filepath = filepath;
meu $ spamc = `spamc -c <$ filepath`;
my ($ value, $ threshold) = ($ spamc = ~ m | ([-., 0-9] +) / ([-., 0-9] +) |);
if ($ value> = $ sure_spam) {
marcar como Lido;
mover para lixeira;
}
if ($ value> = $ threshold) {mark_as_read; mover '# mh / mail / Spam';}
}

# A execução do script Perl começa aqui.

# Alguma classificação específica
learn_and_move '# mh / mail / MailLists / Claws Mail / user'
se matchcase ('remetente', '[email protegido]');
learn_and_move '# mh / mail / MailLists / Sylpheed'
if matchcase ('list-id', 'sylpheed.good-day.net');

# Implementar pastas imcomming usando livro de endereços
# atributos. As pastas de destino para endereços de e-mail específicos são
# armazenado diretamente na agenda. Assim, se um e-mail
# mudanças de endereço, só temos que atualizar o livro de endereços, não
# as regras de filtro! Além disso, podemos organizar bastante o
# script de filtro.

# obter o endereço de e-mail no cabeçalho from
meu $ fromheader = cabeçalho "de";
my ($ from) = extract_addresses $ fromheader;

# verifique se este endereço de e-mail tem um atributo associado
# chamado de "incomming_folder". Se tiver, o valor deste
# atributo deve ser a pasta de destino.
meu $ value = get_attribute_value $ from, "incomming_folder";
learn_and_move ($ value) se $ value;

# Um exemplo de lista de permissões: Se o endereço de origem estiver em meu
# livro de endereços "office", mova o e-mail para a pasta # mh / mail / office
learn_and_move '# mh / mail / office' if from_in_addressbook ("office");

# Se o endereço de origem estiver em qualquer outro catálogo de endereços, mova o
# mail para a pasta # mh / mail / inbox / known
learn_and_move '# mh / mail / inbox / known' if from_in_addressbook;

# Alimente os e-mails restantes através do SpamAssassin.
verificação de spam;

# e-mails que chegam ao final do script são repassados ​​para
# o mecanismo de filtragem interno. Se as regras internas não dizem
# caso contrário, os e-mails acabarão na caixa de entrada padrão.
# -8 <---------------------------------------------- ------

Use claws-mail-perl-filter online usando serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

Comandos Linux

Ad




×
Anúncios
❤ ️Compre, reserve ou compre aqui — sem custos, ajuda a manter os serviços gratuitos.