Das Notes Forum

Domino 9 und frühere Versionen => ND8: Administration & Userprobleme => Thema gestartet von: Fragensteller am 23.08.11 - 10:17:50

Titel: Echte Catchall Funktion für die Emails
Beitrag von: Fragensteller am 23.08.11 - 10:17:50
Hi Leute,

wie richte ich Notes so ein, das Emails egal von wo im System geschickt, diese in der Catchall landen.

Wir haben zwei Systeme, Entwicklung und Produktiv.
Im Produktiven sollen die Emails natürlich an den entsprechenden Empfänger, aber in der dev Umgebeung sollen diese Email ALLE in die Catchall DB geschickt werden.
Egal ob über den EmailClient oder per Agent.
Egal ob der Empfänger exestiert oder nicht.....

Kann einer helfen?

Timo

Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: smokyly am 23.08.11 - 10:29:19
Serverregel
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Chris K am 23.08.11 - 10:51:43
Serverregel
Sehr hilfreiche Antwort... Damit umgeht man immer noch nicht  "name not found in directory" und ähnliche Fehler. Wie schickt man Mails an Personen, die es im directory nicht gibt? NotesDocument.Send() soll sich einfach nicht um die Adressen kümmern und das vom router task erledigen lassen.
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: WernerMo am 23.08.11 - 11:09:46
Hallo,

wäre es da nicht einfacher, eine "Kopie" des "LiveDD" zu machen und bei allen als "Mailserver" und "Mailfile" die "Cachall" DB einzutragen (per Agent)

OK ich sehe das Problem, dass das schnell "veraltet"
Aber wenn man sich einmal darfür einen Agenten gebaut hat, kann man das ja regelmäßig erstellen?

Gruß aus Nürnberg
Werner
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Bastel123 am 23.08.11 - 11:26:49
Hallo,

ein Kunde hat dafür eine eigene Klasse entwickelt, die ohne Ausnahme beim senden eingesetzt wird. Die schaut ob für die Datenbank ein Schlüsselwort mit einer Umleitungsadresse (z. B. "Catchall") existiert, dann wird diese Adresse genommen, ansonsten die "echte". Man kann dann auch die ursprünglichen Empfänger irgendwo ins Mail schreiben usw.

Ist zwar Arbeit für den Anfang, klappt dann aber gut.

Entwickler, die sich nicht daran halten werden übrigends mit heissem Öl übergossen  :( 

Gruss
Sebastian
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: smokyly am 23.08.11 - 11:27:54
Hallo,

wäre es da nicht einfacher, eine "Kopie" des "LiveDD" zu machen und bei allen als "Mailserver" und "Mailfile" die "Cachall" DB einzutragen (per Agent)



War auch mein Gedanke, aber dann hat man das Problem der eigentlichen benutzerbezogenen Umgebung wie Kalender oder Agenten in der Mail-DB.

Es kommt aber auf das eigentliche Ziel der Aktion an. Und ist da SMTP mit im Spiel?

Gruß von ehemals aus NEA nach N
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: smokyly am 23.08.11 - 11:29:10
Serverregel
Damit umgeht man immer noch nicht  "name not found in directory" und ähnliche Fehler. Wie schickt man Mails an Personen, die es im directory nicht gibt? NotesDocument.Send() soll sich einfach nicht um die Adressen kümmern und das vom router task erledigen lassen.
Sorry, hatte ich überlesen. Bin mir aber nicht sicher, was der Router bei Einsatz der Regel "Alle - in Datenbank verschieben" und nicht zustellbaren Nachrichten genau anstellt.
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Fragensteller am 23.08.11 - 11:38:20
Ich versuche das Problem noch einmal klarer zu machen:

Wir haben ein System mit diversen Datenbank wovon die ältesten ca. 10 jahre alt sind. Wir haben bereits einen Agenten, der sich die Namen aller Mitarbeiter holt und in die names.nsf schreibt. Das funktioniert auch ganz hervorragend. Das Problem ist jetzt, dass wir in fast jeder Datenbank an mehreren Stellen E-Mail verschicken, wir uns auf Grund der Größe und des Alters der Datenbanken allerdings nicht darauf verlasssen können, dass die Mailadressen/Benutzer, die wir anschreiben wollen korrekt sind, die sind teilweise hardcoded, teilweise richtige E-Mail Adressen und teilweise berechnet.

Der Punkt der uns Probleme bereitet ist der von Chris geschilderte:

Zitat
Damit umgeht man immer noch nicht  "name not found in directory" und ähnliche Fehler. Wie schickt man Mails an Personen, die es im directory nicht gibt? NotesDocument.Send() soll sich einfach nicht um die Adressen kümmern und das vom router task erledigen lassen.

Es ist für uns auch wenig praktikabel ca. 250k Zeilen Code (Schätzung aus der Hüfte) durchzugehen und Send() Methoden zu ersetzen, das hatten wir auch schon diskutiert, bevor wir die Frage gestellt haben.

Wir möchten halt auch alle Adressen in die Catchall haben, die NICHT in der names.nsf stehen.




Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Mandalor am 23.08.11 - 18:17:46
will hier keine Werbung machen aber wenn Ihr iQ.Suite einsetzt, ist das ein einfacher Actionjob und alles landet in einer Datenbank.
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Thomas Schulte am 23.08.11 - 21:32:41
Das Problem hier wird sein, das du eine Systemfunktion die im .send eingebaut ist, abschalten willst. Und da wird dir auch die IQSuite denke ich nicht helfen.
Sinnvoller (und sauberer) wäre da ein Redesign der betroffenen Anwendungen. Ein hart Kodierter Empfänger ist ja sowas von Pfui.

Um rauszufinden wo das überall steckt, kann man ein Tool von Holistic (http://www.holistic-net.de/products/holistic-net-products/design-scan) nehmen. Das ist genau für solche Analysezwecke gebaut worden.
Auch wenn das 250k Zeilen Code sind. Irgendwann kommt man um ein Redesign einfach nicht mehr rum.
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Pyewacket am 23.08.11 - 23:16:34
Ich habe das mit einer Gateway-Mailbox gelöst.
Alle Mail an Domäne XYZ wird vom Router in die Gateway-Mailbox geschoben.
Einziger 'Nachteil', die Mailadressen müssen  alle ein @XYZ angehängt bekommen.
doc.send ist damit auch zufrieden denn bei Mail an fremde Domänen kann nicht
geprüft werden ob es den Empfänger gibt.

Gruss
 Peter
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Tode am 24.08.11 - 08:50:47
Die Lösung von Peter kann man jetzt weiterspinnen: Test- Umgebung und Echt- Umgebung sind ja wahrscheinlich in unterschiedlichen Domains.
Dann bindet man die Echt- Umgebung per DA in der Test- Umgebung ein und erstellt für die Echt- Domain diese Gateway- Mailbox...

Dann hat man immer alle Echt- Adressen zur Verfügung (da repliziert), aber Mails an die Echt- Benutzer gehen nicht raus, weil die alle in der Gateway- Mailbox landen.
Wenn man jetzt noch Internet- Mails so routet, dass Sie über die Echt- Domain geroutet werden sollen (Verbindungsdokumente etc.), dann geht von der Test- Umgebung keine einzige Mail mehr nach draussen...
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: eknori am 24.08.11 - 09:12:50
Fragt doch mal den Rudi Knegt. Meine mich zu erinnern, daß er sowas realisiert hat.

update: http://www.dominoforum.de/modules/newbb/viewtopic.php?topic_id=19167 (http://www.dominoforum.de/modules/newbb/viewtopic.php?topic_id=19167)
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Mandalor am 24.08.11 - 14:35:40
@Thomas:

Wo liegt hierbei mit iQ.Suite das Problem? in einem Action Job wird einfach der Empfänger immer auf eine definierte Mail.Box umgebogen (Das Feld Recipient). Der Vorteil: Keine umkonfigurierung oder umprogrammierung um die Datenbanken dann ins Livesystem zu übernehmen.

Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: gpeters am 25.08.11 - 09:07:24
<<< Damit umgeht man immer noch nicht  "name not found in directory" und ähnliche Fehler. Wie schickt man Mails an Personen, die es im directory nicht gibt? NotesDocument.Send() soll sich einfach nicht um die Adressen kümmern und das vom router task erledigen lassen. >>>

Das kann man mit der Konfiguration | Router SMTP | Erweitert | Steuerung
Unzustellbare Mail zurückstellen : Aktiviert

erreichen. Dann gehen die unzustellbaren Mails in der mail.box auf HOLD und bleiben da liegen.
Dort kann sie dann ein Agent abholen...

Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Mandalor am 25.08.11 - 13:04:15
@gpeters : Mist, daran hab ich nicht gedacht. Asche auf mein Haupt :-\
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: smokyly am 25.08.11 - 13:12:13
Das Problem ist doch, daß sich eine Mail erst gar nicht senden läßt, sofern sie an die interne Domain gehen soll und der Empfänger nicht im DD steht.
Titel: Re: Echte Catchall Funktion für die Emails
Beitrag von: Peter S. am 26.08.11 - 10:36:32
Enthalten die Mails die generiert werden als Adresse nur den local part "Hans Müller" oder wird auch eine Domäne "@meineFirma" angehängt?
Am einfachsten wäre es vmtl an alle Adressen eine Fremde Domäne anzuhängen und diese in eine Datenbank umzuleiten.

Wenn man alle Domänen umleiten will, nimmt man eine Nicht benachbarte Domäne vom Typ "*" und leitet die nach "Catchall" um. Und das Catch-All-Domänendokument zeigt dann auf eine Datenbank.