Domino 9 und frühere Versionen > Entwicklung
Spam Filter
HartiMcFly:
Hallo,
ich habe einen Agenten, der mir "Spam Mails" in einen seperaten Ordner verschiebt. Es läuft soweit alles einwandfrei. Leider bekomme ich von einer Person Mails, die ebenfalls im Spam landen, dieses aber nicht dürfen.
Kann ich in meinem Script irgendwo eine Ausnahme für eine Mail Adresse einbauen. Quasi soll diese Mail Adresse dann nicht von dem Agenten angefast werden.
Ich hoffe ihr könnt mir helfen.
Hier mal mein Code.
Danke Patrick
Sub Initialize
Dim Sitzung As New NotesSession
Dim Inhaltsliste As Variant
Dim Inhalte List As String
Dim mail As NotesDocument
Dim datenbank As NotesDatabase
Set Sitzung = New NotesSession
Set mail = Sitzung.DocumentContext
Set datenbank = Sitzung.CurrentDatabase
If mail.hasitem("X_Spam_Status") Then
Inhaltsliste = Evaluate({@explode(@ReplaceSubstring("}&mail.X_Spam_Status(0) & {"; " "; " ") ;" ")})
Forall param In Inhaltsliste
Inhalte (Strleft(param, "=")) = Strright(param, "=")
End Forall
If Val(Inhalte ("score")) >= 4.8 Then
Call datenbank.EnableFolder("Spam")
Call mail.PutInFolder( "Spam" )
Call mail.RemoveFromFolder("($Inbox)")
End If
End If
End Sub
Thomas Schulte:
Du setzt an der falschen Stelle an.
Da ist das Kind ja schon in den Brunnen gefallen. Ich würde bei der Spam Erkennungs SW nachschauen, warum die den Score für diese Person auf über 4.8 setzt.
Grundsätzlich kannst du natürlich noch eine Klammer außenrum machen und
if mail.From(0) <> "Benutzername"
mit einbauen aber das wird je mehr Ausnahmen du machen willst um so aufwändiger. Wenn schon dann solltest du dir da eine Liste mit einbauen und auf ist nicht in Liste enthalten abfragen. Dann kann man das wenigstens erweitern.
HartiMcFly:
Hallo Thomas,
kannst du mir dass bitte einmal mit beispiel@test.de in meinen Code ein bauen?
Ich sehe zur Zeit den Wald vor lauter Bäumen nicht mehr.
Danke Patrick
Thomas Schulte:
Sei mir nicht böse aber das müsstest du eigentlich alleine hinbringen.
Schließlich hast du den Befehl ja schon und musst ihn nur noch an der richtigen Stelle einbauen. Und die sollte mit etwas logischer Überlegung ganz einfach zu finden sein.
HartiMcFly:
Hallo Thomas,
ich habe es jetzt folgendermaßen eingebaut, leider zeigt es so keine Wirkung. Kannst du nocheinmal drüber schauen?
Danke Patrick
Sub Initialize
Dim Sitzung As New NotesSession
Dim Inhaltsliste As Variant
Dim Inhalte List As String
Dim mail As NotesDocument
Dim datenbank As NotesDatabase
Set Sitzung = New NotesSession
Set mail = Sitzung.DocumentContext
Set datenbank = Sitzung.CurrentDatabase
If mail.from(0) <> "Beispiel@test.com" Then
If mail.hasitem("X_Spam_Status") Then
Inhaltsliste = Evaluate({@explode(@ReplaceSubstring("}&mail.X_Spam_Status(0) & {"; " "; " ") ;" ")})
Forall param In Inhaltsliste
Inhalte (Strleft(param, "=")) = Strright(param, "=")
End Forall
If Val(Inhalte ("score")) >= 4.8 Then
Call datenbank.EnableFolder("Spam")
Call mail.PutInFolder( "Spam" )
Call mail.RemoveFromFolder("($Inbox)")
End If
End If
End If
End Sub
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln