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.
|