Wir setzen eine Software ein, die über das Internet nach bestimmten Regeln die Portale der Automobilhersteller abklappert, um nach z.B. neuen Reklamationen oder geänderten Normen zu suchen. Das funktioniert auch gu; selbst der DocumentCompare über Adobe.
Nun sollen ja der Eine oder Andere auch über das Vorhandensein von neuen Informationen informiert werden; per Mail ... Auch das kann man bei der Konfiguration der sog "missionen" einstellen;
Jetzt bestehen 2 Möglichkeiten:
1) die neuen Infos werden als Attachment verschickt
2) es wird ein Link auf die Dateien versendet ;
Punkt 2) hat aber einen entscheidenden Nachteil
; der Wegagent möchte bei der Konfiguration der Mission einen lokalen Pfad haben, wo er die Daten ablegt. Tja, und genau diesen Pfad gibt er dann auch an den Endanwender weiter. ( z.B. c:\files\DasNeue.pdf )
Schade nur, daß das Laufwerk C:\ das Users nicht identisch mit dem des Servers ist ...
Mehrmaliges Nachfragen beim Hersteller brachte nur zutage, daß es "einen riesigen Aufwand darstellt, an Stelle von c:\ einen String ala
http://10.14.1.40:8080 einzubauen", um den User das File auf dem Server zur Verfügung zu stellen. Immerhin verrichtet dort ein Tomcat seinen Dienst, um die Software zu administrieren und konfigurieren.
Nun hatte ich mir überlegt, hier ein FindAndReplace zu machen.
Das ist kein großer Akt ( sieht man einmal davon ab, den kompletten File-Path zu ermitteln )
Sub Initialize
Set session = New NotesSession
Set db = session.CurrentDatabase
Set doc = session.documentContext
Set body = doc.GetFirstItem("Body")
Set rtnav = body.CreateNavigator
searchString$ = "c:\"
replaceString$ = "
http://10.14.1.40:8080/"
Call rtnav.FindFirstElement(RTELEM_TYPE_TEXTPARAGRAPH)
Set rtrange = body.CreateRange
count& = rtrange.FindAndReplace _
(searchString$, replaceString$, _
RT_REPL_ALL + RT_FIND_CASEINSENSITIVE)
If count& > 0 Then
Call body.Compact
Call doc.Save(True, True)
End If
End Sub
( nicht so genau hinsehen, ist ein QuickShot )
Ich habe den Agenten als "before new mail arrives" laufen ... funktioniert auch. Was mache ich aber, wenn der potentielle Empfängerkreis mehrere hundert User umfassen kann ? Dann dürfte der Server schon aweng beschäftigt sein, oder ?
Was wäre eure Vorgehensweise ?? Wo baut man das am geschicktesten ein ?
Mir ist vollkommen bewusst, daß nicht ich eine Lösung zu liefern habe; ich brauche aber zumindest eine InterimLösung. Die Branche Automotive ist ist da ziemlich schmerzfrei; und ruckzuck ist man seinen Lieferanten Q-Status los, bloß weil man nicht alle drei Stunden auf einem bestimmten Portal war.
Alternativ zum "new Mail Agent" habe ich mir überlegt, die Mails mit dem Absender des Servers per ServerRule in eine DB umzuleiten, das FindAndReplace scheduled zu machen und die docs dann an den eigentlichen Empfänger zuzustellen. Aber auch da muss der Server ja JEDE Mail per rule behandeln ... Alles nicht so prickelnd.
Any idea ??