Simple_MIME

Top  Previous  Next

Beispielsprojekte > Vollständige Mail-Parser > Simple_MIME

 

Der Name "Simple_MIME" täuscht. Einfach ist dieser Parser nur im Vergleich zu dem detailliertem MIME-Parser, aus dem Simple_MIME extrahiert wurde. Die Änderungen an der ausgeklügelten syntaktischen Struktur des Parsers ist nur versierten Kennern des TextTransformers zu empfehlen.

 

Was hingegen mehr Nutzern des IMP-Filters möglich sein sollte, ist eine semantische Erweiterung des Projekts derart, dass es eine Klassifikation in Spam- oder Nicht-Spam gemäß individuellen Kriterien vornimmt. Der Simple_MIME Parser tut in dieser Hinsicht zunächst nichts. Er ist ein bloßes Gerüst, das der Erweiterung bedarf.

 

Um solche Spam-Tests zu programmieren, sind Grundkenntnisse des Texttransformers nötig. Dann aber sind den Klassifizierungskriterien keine Grenzen mehr gesetzt, weil im Prinzip auf alle Informationen der E-Mail zugegriffen werden kann.

 

Die wichtigste Stelle, an der ein Spam-Test eingebaut werden kann ist die text_element-Produktion:

 

    WORD

  | DIGITS

  | STRING

  | PUNCTUATION

  | SPECIAL

  | NBSP  

 

 

WORD ist hier das gleiche Token zur Erkennung von Worten, das schon in einem der vorherigen Projekte verwendet wurde:

 

WORD ::= [[:alpha:]]+

 

Der erkannte Inhalt kann z.B. auf folgende Weise mit einem Spamwort verglichen werden:

 

WORD

{{

if(xState.str() == "Spamwort")

  m_iResult = -1;

}}  

 

Die text_element-Produktion kann leicht um weitere Alternativen ergänzt werden, um z.B. Links oder E-Mail-Adressen zu identifizieren und zu bewerten.

 

Die anderen Token der text-Produktion sind nötig, um für alle möglichen Zeichen eine Erkennungsalternative zu haben.