Autor Thema: !!HELP!! Version 1.0.9 released  (Gelesen 13338 mal)

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #1 am: 06.06.05 - 09:48:31 »
Morgen,

sieht gut aus, nur die Benachrichtigung an die Supporter über den Eingang einer neuen Anfrage oder Antwort funktioniert bei uns nicht. Dieses soll doch in dem neuen Dispatcher Agent implementiert sein, oder? Da ich leider kein Script kann, ist es für mich schwierig, den entsprechenden Teil im Script zufinden und evtl. anzupassen. Gibt es Hilfe?

Nils

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #2 am: 06.06.05 - 10:59:44 »
Schau doch bitte mal nach den Werten für die Schlüssel:
MailIfNewMailResponse Muss auf "YES" stehen wenn überhaupt eine Benachrichtung erfolgen soll.
MailIfNewMailResponseCheckNames Kann auf "NO" stehen. Diese Einstellung validiert die gefundenen Namen gegen die Adressbücher.
MailIfNewMailResponseAsSummary Sollte fürs Testen auf "NO" stehen. Dann wird für jede Response ein eigenes Mail erzeugt wenn das auf "YES" steht, dann werden verschiedene Antworten an den gleichen Supporter zu einer Mail zusammengefasst.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #3 am: 06.06.05 - 13:03:17 »
Hi,

leider tut.S das auch nicht. Alle anderen Aufgaben des Agenten werden abgewickelt. Der Agent NewCall hat funktioniert. Auch ein Test des Dispatcher brachte keine Fehler.

Nils

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #4 am: 06.06.05 - 13:18:04 »
Zitat
Der Agent NewCall hat funktioniert

Bist du sicher ?? den habe ich nämlich aus der Gestaltung herausgenommen  ...

Mache mal ein Designupdate mit "Schablone wechseln"; und schalte den Dispatcher vorher aus ...
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #5 am: 06.06.05 - 13:26:15 »
leider tut.S das auch nicht. Alle anderen Aufgaben des Agenten werden abgewickelt. Der Agent NewCall hat funktioniert. Auch ein Test des Dispatcher brachte keine Fehler.
Also als erstes. NewCall ist Deprecated. Den gibt es nicht mehr in der Version 1.09. Hast du den noch drin dann ist irgendetwas mit der Gestaltungsaktualisierung deiner Datenbank schief gelaufen.

Der Dispatch muss laufen. Schau dir das Protokoll des Agents an ob er überhaupt läuft. (Konfiguration/Agenten(Start/Stop)). da gibt es einen Punkt Last Run: Welches Datum/Uhrzeit steht da?
Dann gibt es in der Neuen Version ein Error Logging, das aber erst einmal eingeschaltet werden muss.
OpenLogEnabled = NO, LOGScriptErrors = YES, ResumeMethod = EXITPOINT. Dann werden Script Fehler in das interne LOG geschrieben.
Sonst kannst du noch in deiner Mail.box nachschauen, da dieses Script die Mails da direkt reinstellt. Vielleicht sind die einfach hängengeblieben weil Adressen falsch sind, oder der User der den Agent gestartet hat hat nicht das Recht Dokumente in der Mail.box zu erstellen. ??Geht das überhaupt??

Wenn du mit dem Debugger drauf gehst und den Agent manuell startest, dann gibt es abhängig von deinen Einstellungen zwei Punkte an denen er halten müsste.
Entweder hier:
' Check if the document should be mailed immediate
If MailInformation = "YES" Then
If MailResponseAsSummary = "YES" Then
' save the content of this document to a list. The field Asubject is used
If Iselement(documentEntryList(newdoc.Universalid)) = False Then
documententrylist(newdoc.UniversalID).doclink = newdoc.UniversalID
Set item = newdoc.GetFirstItem(GetConfigDocByKey("MailIfNewMailResponseBodyFieldName"))
documententrylist(newdoc.UniversalID).docsummary = item.Values
documententrylist(newdoc.UniversalID).doctype = newdoc.formType(0)
End If
Else
' send this document as mail
HIER
OK = Spoofmessage(GetConfigDocByKey("sendMailonBehalfof"), Strusername, Nothing,interactivemessages("msgDispatchNotificationMailSubjectSingleMail"),_
interactivemessages("msgDispatchNotificationMailBodySingleMail"),newdoc,"",GetConfigDocByKey("MailIfNewMailResponseBodyFieldName"),True)
End If
End If

oder an dieser Stelle:
' mail the information about the new documents to the users in that list in one block
If Mailinformation = "YES" And MailResponseAsSummary = "YES" Then
Forall UserstoMailto In userdclist
' Create a new document for the purpose of creating the rtitem that is needed. This document will not be saved
Set notification = New NotesDocument(db)
Set richStyle = s.CreateRichTextStyle
Set rtitem = New NotesRichTextItem( notification, "Body")
' Get the list of the documents related to that specific user
Documentslist = Split(UserstoMailTo,"~")
' gather the informations for each document from this ID
For i = 0 To Ubound(Documentslist)
' find the document that has to be used
' put the Information into the body field   
Set currentnote = db.GetDocumentByUNID(Documentslist(i))
' define the weblink should be done depending on a configuration document later on
'wMailWeb = |<a href="  http://| + serverURL +|/|+ databasepath+|viwSearchDocumentsByUNID/|+ currentnote.universalid + |" target="fsaMainView">| + documententrylist(Documentslist(i)).doctype + |</a>|
'webMail =|http://| + serverURL +|/|+ databasepath+|/viwSearchDocumentsByUNID/|+ currentnote.universalid + |%20target=%22fsaMainView%22|
' append the found values for form type, status and summary
richStyle.Bold = True
Call rtitem.AppendStyle(richStyle)
Call rtitem.appendtext(documententrylist(Documentslist(i)).doctype )
richStyle.Bold = False
Call rtitem.AppendStyle(richStyle)
Call rtitem.AddNewline(1)
For j = 0 To Ubound(documententrylist(Documentslist(i)).docsummary)
Call rtitem.appendtext(documententrylist(Documentslist(i)).docsummary(j))
Call rtitem.AddNewline(1)
Next
Call rtitem.AppendDocLink (currentnote, db.Title)
'Call rtitem.appendtext(WebMail)
Call rtitem.AddNewline(2)
Next
' combine all informations and send one mail for each supporter
' send this document as mail
HIER
OK = Spoofmessagewithitem(_
GetConfigDocByKey("sendMailonBehalfof"),_
Strusername,_
Nothing,_
interactivemessages("msgDispatchNotificationMailSubjectSingleMail"),_
interactivemessages("msgDispatchNotificationMailBodySingleMail"),_
rtitem)
End Forall
Wenn du da wo jetzt HIER steht ein Stop reinsetzt dann kannst du gezielt nachschauen ob er in diesen Bereich reinspringt. Tut er das dann sollte der Rest eigentlich auch funktionieren.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #6 am: 06.06.05 - 15:50:58 »
Hi,

erstmal Danke für die Hilfe, aber leider scheint nichts wirklich zu Helfen. Ich habe die Breakpoints gesetzt, aber diese werden - ohne mit der Wiper zu zucken - einfach übergangen.

Im Bereich 'send this document as mail ist die Variable Strusername leer, Wenn ich jetzt mit dem Debugger einen Schritt weitergehe (ab    ' remove this specific dokument from the collection because there was an error) läuft das Script bis zum Schluß durch, ohne eine Mail zu versenden.

Der Agent NewCall ist nach dem Update nicht mehr vorhanden, unter 1.08 hat er noch funktioniert, unter 1.09 konnte ich den Agenten natürlich nicht ausprobieren. Rechtemäßig gibt es für mich auf dem auzuführenden Server keine Beschränkungen (gott sei dank).

Nils
« Letzte Änderung: 06.06.05 - 15:53:23 von Coach »

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #7 am: 06.06.05 - 16:11:57 »
Im Bereich 'send this document as mail ist die Variable Strusername leer, Wenn ich jetzt mit dem Debugger einen Schritt weitergehe (ab    ' remove this specific dokument from the collection because there was an error) läuft das Script bis zum Schluß durch, ohne eine Mail zu versenden.
OK das ist für Remote Debugging schon etwas mehr info.
Das Problem scheint hier
Forall v In founditem.Values
If Not(Trim(v)="") Then
strusername =  CanonicalNameString (Cstr(v))
zu liegen.

Da wird der Wert des Feldes Supporter ausgelesen und mit den Funktion CanonicalNameString umgewandelt. Das dürfte eigentlich auf GAR KEINEN FALL einen leeren Wert zurückbekommen.
Frage eins: Was steht in der Variablen V drin bevor die Funktion CanonicalNameString aufgerufen wird?
Und die zweite Frage: hast du die Log Parameter gesetzt und mal nachgeschaut ob es da einträge in der LOG Ansicht gibt.
Dritte Frage die mir gerade eingefallen ist. hast du beim Supporter für dieses Ticket überhaupt einen Wert drin? Und wenn ja welchen? Ist das eine Gruppe oder eine Person und wenn es eine Gruppe ist hat die eine Mail Adresse?
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #8 am: 06.06.05 - 16:13:34 »
Ach ja und setz mal MailIfNewMailResponseCheckNames auf "NO"l
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #9 am: 06.06.05 - 16:49:09 »
Also bei mir auf den Systemen läuft das von hinten nach vorne und zurück ohne Probleme. Selbst wenn ich absichtlich Fehler verursache also z.B. Supporter Namen falsch schreibe und so.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #10 am: 06.06.05 - 17:05:13 »
Hi,

ich werde morgen noch mal nachschauen. Im Moment melden sich unsere 30 neuen griechischen Mitarbeiter, das gibt ne Menge Arbeit.

Nils

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #11 am: 06.06.05 - 17:13:31 »
na dann kalinichta.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #12 am: 06.06.05 - 17:49:48 »
Habe den Dispatcher gerade noch einmal vorwärts und rückwärts getestet; ich kann keinen Fehler finden ...

EDIT:

@Coach:

Kann es sein, daß wir aneinander vorbeischreiben ?.

Ich vermute mal, daß du die Benachrichtigungsfunktion des NewCall Agenten meinst. Diese Funktionalität wird momentan noch nicht vom Dispatcher übernommen.

Der Dispatcher erfüllt z.Zt. 2 Funktionen.

Calls, die per normaler Mail in die DB gelangen werden in Tickets umgewandelt.
Antworten auf Mails, die aus einem ticket heraus an den Fragenden geschickt werden, werden nach Beantwortung wieder dem Ticket zugeordnet. Dabei wird auch eine InfoMail an den Supporter geschickt.


Im ersteren Fall sollte es aber nicht allzu schwierig sein, den Code so anzupassen, daß zumindest eine InfoMail an den DEFAUKT Supporter geschickt wird.

Ulrich
« Letzte Änderung: 06.06.05 - 17:58:02 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #13 am: 06.06.05 - 20:39:05 »
je tiefer ich drüber nachdenke, desto mehr glaube ich, daß du genau das meinst.

OK. dann baue ich den NewMailInformer auch noch in den Dispatcher ein.

Vom Ablauf sieht das dann so aus.

Der Dispatcher verrichtet seine geplante Arbeit und odnet Antworten auf Tickets entsprechend zu. Übrig bleiben die Tickets, die aus einer Mail in ein Ticket "transformed" wurden und die Tickets, die über die Maske "Helpdeskanfrage" eingereicht wurden.

In Phase 2 geht der Dispatcher dann hin und holt sich diese docs in eine docCollection. Für jeden Eintrag in der DocCollection sendet er eine Mail an die Personen / Gruppen, die im (neuen) Config Doc "NewCallMailSendTo" eingetragen sind. Die Texte für das Subject und den Body der Mail müssen dann aus entsprechend anzulegenden Sprachschlüsseln geholt werden.
Die Docs werden dann tagged, sodaß  bei einem neuerlichen Durchlauf des Dispatchers keine doppelten Benachrichtigungen verschickt werden.

Überlege schon die ganze Zeit, ob man nicht an verschiedenen Stellen sog. "UserExits" einbauen soll.
Da könnte dann der geneigte Entwickler eigenen Code zur Erweiterung der Funktionalität einbauen, ohne in den Core Code eingreifen zu müssen.

EDIT

ich habe jetzt rrst einmal den completten Code in eine neue ScriptLib ausgelabert ( lib.agent.dispatch ) Das erspart das ewige neu starten des Agenten nach einer Änderung.

Der "Dispatch" sieht dann so aus

Sub Initialize
On Error goto EXITPOINT

   Dim s As New NotesSession
   
   Call UnprocessedTickets
   
EXITPOINT:
   Exit Sub
ERRHANDLE:
   Dim TheError As String
   Dim TheProc As String
   'TheProc = Getthreadinfo(LSI_THREAD_PROC)
   TheError = Getthreadinfo(LSI_THREAD_PROC) & ": " &Trim$(Str$(Err)) & " on line " & Cstr(Erl) & ": " & Error$
   
   If UseOpenLog Then
      Call LogError
   Elseif LogScriptErrors Then
      Dim agent As NotesAgent
      Set agent = s.CurrentAgent
      TheProc = agent.Name
      Dim L As New LogProfile ( s.CurrentDatabase, TheProc,LOG_NORMAL, s.CurrentDatabase.Server)
      Call L.LogAction( TheError  ,LOG_NORMAL)
   End If
   'In all cases
   Print TheError
   If ResumeMethodNext Then
      Resume Next   
   Else
      Resume EXITPOINT
   End If
   
End Sub

Die Pflege des Codes wird dadurch auch einfacher. Der bisherige Code ist jetzt in eine Sub innerhalb der lib gewandert.

Die "main()" der lib.agent.dispatch sieht dann so aus

Sub UnprocessedTickets
   Call  ProcessMailTicketsAndResponses
   ' more subs to come
End Sub

Hier kann dann die von Coach geforderte Funktionalität als neue Sub eingebunden werden.
Grundsätzlich lässt sich dann der Dispatcher um beleibige Funktionen erweitern. ( neue Sub schreiben und in die "Sub unprocessedTickets" einbinden.

« Letzte Änderung: 06.06.05 - 21:29:05 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #14 am: 07.06.05 - 10:47:29 »
Hi,

ja Ulli, du hast meine Frage richtig interpretiert. Tut mir leid, aber ich hatte in einer anderen Diskussion es so verstanden, dass die NewCall Agentfunktionalität schon in nden Dispatcher integriert wurde.
Dann Freue ich mich jetzt schon auf Version1.10.

Nils

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #15 am: 07.06.05 - 16:02:57 »
Hi,

so, ich habe mal das Protokoll eingeschaltet und bekomme dort folgende Fehlermeldung:

 07.06.2005 14:17:30  : SPOOFMESSAGEWITHITEM: 4063 on line 14: Database mail.box has not been opened yet

Ich hoffe, ihr versteht das  :D

Nils

Offline Alessandro

  • Aktives Mitglied
  • ***
  • Beiträge: 188
  • Geschlecht: Männlich
  • Notesfreak
Re: !!HELP!! Version 1.0.9 released
« Antwort #16 am: 07.06.05 - 16:11:38 »
Hat die ID, mit der die Gestaltung signiert wurde, auch Zugriffsrechte auf die mail.box ??

Offline Coach

  • Junior Mitglied
  • **
  • Beiträge: 98
  • Geschlecht: Männlich
Re: !!HELP!! Version 1.0.9 released
« Antwort #17 am: 07.06.05 - 16:33:35 »
Hi,

über die Gruppe der Admins ist ders Managerzugriff gesetzt.

Nils

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: !!HELP!! Version 1.0.9 released
« Antwort #18 am: 07.06.05 - 16:43:39 »
Heist die DB vielleicht nicht Mail.box sondern anders?
Ich weis, das sollte alles konfigurierbar sein aber ein paar Verbesserungen brauchen wir für Release 20.11.112 doch auch noch.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Alessandro

  • Aktives Mitglied
  • ***
  • Beiträge: 188
  • Geschlecht: Männlich
  • Notesfreak
Re: !!HELP!! Version 1.0.9 released
« Antwort #19 am: 07.06.05 - 16:48:22 »
Die Frage wollt ich gerade auch stellen. Im Scipt wird mail.box fest vorgegeben, kann es sein, dass ihr mehrere Mailboxen habt und diese dann z.B. mail1.box, mail2.box usw. heissen ???

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz