Autor Thema: LotusScript-Agent in Mail-In-DB läuft nicht  (Gelesen 6203 mal)

Offline SVU

  • Frischling
  • *
  • Beiträge: 18
  • Geschlecht: Männlich
LotusScript-Agent in Mail-In-DB läuft nicht
« am: 07.05.07 - 08:00:26 »
Hallo liebes Forum!

Ich hab schon alles zum Thema Agenten hier im Forum durchsucht, aber leider nichts passendes gefunden!

Mein Problem:
Ich habe in einer Mail-In-Datenbank einen LotusScript-Agenten geschrieben, der bei Eingang neuer Mails eine Info-Mail an einen bestimmten User-Kreis schicken soll.
Wenn ich den Agenten im Designer starte, läuft er und tut genau, was er soll. Das gleiche gilt auch, wenn ich den Agenten über die Serverkonsole mit tell amgr run... starte.
Von alleine startet er aber nicht, wenn neue Mails ankommen!

Der Agent ist mit einer Admin-ID signiert, die alle Rechte auf dem Server hat und hat bei "Ausführen im Namen von" den Server eingetragen (damit dieser als Absender drin steht).

Es taucht auch kein Eintrag im Log auf, der auf irgendeinen Fehler hinweisen würde. Er tut einfach gar nichts!

Hab ich da noch was übersehen? Bitte helft mir, ich bin ratlos! :-:

Hier mal noch der Code vom Agenten:

Sub Initialize
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim coll As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim maildoc As NotesDocument
   Dim rtitem As NotesRichTextItem
   Dim Recipients(7) As String
   
   Recipients(0) = ...
   Recipients(1) = ...
   Recipients(2) = ...
   Recipients(3) = ...
   Recipients(4) = ...
   Recipients(5) = ...
   Recipients(6) = ...
   Recipients(7) = ...
   
   Set db = session.CurrentDatabase
   Set coll = db.UnprocessedDocuments
   Set doc = coll.GetFirstDocument
   
   While Not (doc Is Nothing)
      '** Mail erstellen
      Set maildoc = New NotesDocument(db)
      maildoc.Form = "Memo"
      maildoc.SendTo = Recipients
      maildoc.Subject = "Neue Email im Postfach 'Standardization'"
      maildoc.SaveMessageOnSend = False
      Set rtitem = New NotesRichTextItem( maildoc, "Body" )
      Call rtitem.AppendText("Im Postfach 'Standardization' ist eine neue Email eingetroffen.")
      Call rtitem.AddNewLine(2)
      Call rtitem.AppendText("Klicken Sie hier, um das Dokument zu öffnen ---> ")
      Call rtitem.AppendDocLink( doc, db.Title )
      maildoc.Send(False)
      
      Call session.UpdateProcessedDoc(doc)
      Set doc = coll.GetNextDocument(doc)
   Wend
End Sub

P.S.: Beschränkte Aktionen hab ich auch schon auf zulassen gestellt!

Gruß Sascha
« Letzte Änderung: 07.05.07 - 15:47:19 von SVU »
Gruss
Sascha

klaussal

  • Gast
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #1 am: 07.05.07 - 08:34:54 »
muss es nicht
Call notesDocument.Send( attachForm [, recipients ] ) heissen ?

Offline Axel

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #2 am: 07.05.07 - 08:41:19 »
Setz in den Code an den markanten Stellen mal Print "..." - Anweisungen rein. Die Ausgaben erscheinen dan in der log.nsf in den Dokumenten unter "Verschiedene Ereignisse". DA kannst du dann prüfen ob der Agent überhaupt angestoßen wird und wo es hakt.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Driri

  • Gast
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #3 am: 07.05.07 - 09:13:46 »
Hast Du schon mal im Designer ins Protokoll des Agent geschaut, ob der überhaupt losläuft ?

Welchen Trigger hast Du eingestellt für den Agent ? Ich gehe mal von "Nach Eingang neuer Mail" aus, korrekt ?

Offline SVU

  • Frischling
  • *
  • Beiträge: 18
  • Geschlecht: Männlich
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #4 am: 07.05.07 - 09:38:18 »
Hallo.

Erstmal danke für die schnellen Antworten!

@klauss: Ich hab's auch mit Call... probiert. Kein Unterschied!

@Driri: Laut Protokoll ist der Agent nur gelaufen, als ich ihn von Hand gestartet hab. Von selber läuft er gar nicht los. Der Trigger ist natürlich "Nach Eingang neuer Mails".

Ich hab trotzdem mal einen Print-Befehl vor der While-Schleife eingefügt. Zur Sicherheit.

Gruß Sascha
Gruss
Sascha

Glombi

  • Gast
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #5 am: 07.05.07 - 09:46:56 »
Ich würde erstmal folgendes checken:

1. Ist in der Notes.INI des servers folgendes eingetragen:
AMGR_DISABLEMAILLOOKUP=1

2. Gibt es eine Vorgabeansicht in der Datenbank.

Andreas

Offline SVU

  • Frischling
  • *
  • Beiträge: 18
  • Geschlecht: Männlich
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #6 am: 07.05.07 - 10:24:52 »
Hallo Andreas!

In der notes.ini ist keine Zeile drin, die mit AMGR beginnt.

Eine Vorgabeansicht ist nicht definiert, nur eine Vorgabemaske! Die Datenbank basiert auf dem Standard Template dwa7. Da ist meines Wissens keine Vorgabeansicht definiert. Welche müßte das denn sein?

Sascha
Gruss
Sascha

Driri

  • Gast
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #7 am: 07.05.07 - 10:28:14 »
Ich verweise auch auf diesen Artikel hier, da steht doch einiges für die Fehlersuche drin :

Troubleshooting agents in Notes/Domino 5 and 6


Weiter unten unter "Common agent problems" steht auch was zum Theme Mail, da wird auch der INI-Parameter kurz beschrieben.
« Letzte Änderung: 07.05.07 - 10:29:45 von Driri »

Offline Christopher

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.060
  • Geschlecht: Männlich
  • Dumm ist der, der dummes tut.
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #8 am: 07.05.07 - 10:54:59 »
Den Agenten hättest Du auch einfach zusammen klicken können.
Nach Eingang neuer Mail
Aktion Mail senden

 ;D

Schau evlt. mal in die log.nsf ob Dir vielleicht die Berechtigung fehlt.
Client & Server R 5.011
Principal Certified Lotus Professional R5 System Administration
Microsoft Certified Systems Engineer 2000
Microsoft Certified Systems Administrator 2000
Microsoft Certified Systems Administrator 2003
Microsoft Certified Systems Engineer 2003

Offline SVU

  • Frischling
  • *
  • Beiträge: 18
  • Geschlecht: Männlich
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #9 am: 07.05.07 - 11:53:26 »
@Driri: Hab mir den Artikel angeschaut. Bringt mich aber leider nicht weiter. Die in Frage kommenden Troublesooting-Tipps hab ich alle schon ausprobiert - ohne Erfolg.

@Christopher: Ich hatte den Agent zuerst als Simple-Action-Agent erstellt. Nachdem er aber nicht lief, dachte ich, daß es vielleicht an den Simple Actions liegt (sollen ja nicht immer so zuverläßig sein). Deshalb hab ich den Agent dann in LotusScript umgesetzt.

Das mit dem INI-Parameter kann eigentlich auch nicht die Ursache sein. Damit wird ja nur der Mailserver des Unterzeichners abgeprüft. Das ist aber der gleiche, wie der Server, auf dem der Agent läuft!

Ich hab mal mit tell amgr debug * geschaut, was er ausgibt. Das Ergebnis war folgendes:

07.05.2007 11:15:31   AMgr: Received new mail event from Router for 'mail/Standardization.nsf'
07.05.2007 11:16:32   AMgr: Start executing agent 'Mailforwarding' in 'mail/Standardization.nsf' by Executive '1'
07.05.2007 11:16:32   AMgr: '<admin-id>' is the agent signer of agent 'Mailforwarding' in 'mail/Standardization.nsf'
07.05.2007 11:16:32   AMgr: 'Agent 'Mailforwarding' in 'mail/Standardization.nsf' will run on behalf of '<servername>'
07.05.2007 11:17:32   AMgr: Agent 'Mailforwarding' in 'mail/Standardization.nsf' ran successfully; elapsed time was '0' ticks

Er erkennt also, das er was tun soll, tut dann aber doch nichts. Ein Berechtigungsproblem kanns doch eigentlich nicht sein. Der Unterzeichner und auch der Server haben beide Admin-Rechte und im Serverdokument sind keine Einschränkungen zur Ausführung von Agenten eingetragen.

Ich verzweifle wirklich noch!!
Gruss
Sascha

Glombi

  • Gast
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #10 am: 07.05.07 - 12:01:39 »
Wenn die DB keine Vorgabeansicht hat, dann funktioniert

Call rtitem.AppendDocLink( doc, db.Title )

nicht.

Entweder Du definierst eine Vorgabeansicht oder Du verzichtest auf den Doklink.
Du kannst bspw. die Ansicht $All als Vorgabeansicht verwenden.

Andreas

Offline SVU

  • Frischling
  • *
  • Beiträge: 18
  • Geschlecht: Männlich
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #11 am: 07.05.07 - 12:26:16 »
Hab den Fehler gefunden!

Wie oben erwähnt, hatte ich bei "Ausführen im Namen von" den Server eingetragen. Das hat bei der manuellen Ausführung auch geklappt. Nachdem alles andere nicht geholfen hat, hab ich hier jetzt mal einen anderen User eingetragen, und siehe da - es funktioniert!

Offensichtlich mag es der Agentmanager nicht, wenn in das "Ausführen..."-Feld ein Server eingetragen ist. Das wird aber weder in der Hilfe noch in dem Troubleshooting-Dokument von IBM erwähnt!

@Andreas: Der AppendDocLink hat aber bei der Ausführung per "tell amgr run..." immer funktioniert! Hab jetzt trotzdem mal noch die $All-View als Vorgabe definiert.

Vielen Dank euch allen für eure Hilfe!

Gruß Sascha
Gruss
Sascha

Driri

  • Gast
Re: LotusScript-Agent in Mail-In-DB läuft nicht
« Antwort #12 am: 07.05.07 - 12:39:28 »
Zitat
Offensichtlich mag es der Agentmanager nicht, wenn in das "Ausführen..."-Feld ein Server eingetragen ist. Das wird aber weder in der Hilfe noch in dem Troubleshooting-Dokument von IBM erwähnt!

Genau dafür ist aber der INI-Parameter gut.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz