Verbindungsdokumente vorgeben?

  • Hallo,


    ich benötige bei all meinen Clients (~550) ein zusätzliches Verbindungsdokument zu einem Server. Gibt es irgendwo (z.B. Policies, wobei ich da nichts gefunden habe) die Möglichkeit Vorgabeverbindungsdokumente für den Client nachträglich zu definieren?


    Gruß,
    Albert

  • Hier der Code zum erzeugen von Verbindungsdokumenten im Postopen der Mail-DB.
    Er notiert in die notes.ini dass die Aktion bereits durchgeführt wurde und schickt dir eine Mail dass (was) gemacht wurde. Nach ein paar Wochen kannst du den Code dann rausnehmen.
    Eventuell gibt es einen ECL-Alarm.


    Sub Postopen(Source As Notesuidatabase)
    'Objetdeklarationen
    Dim condoc As NotesDocument 'Objekt für ein vorhandenes Verbindungsdokument
    Dim condocs As NotesDocumentCollection 'Collection zur Prüfung ob mehrere Verbindungsdokumente zu einem Server existieren
    Dim connections As NotesView 'Objekt für die Ansicht "Connections" in der die Verbindungsdokumente gesucht werden
    Dim newconnection As NotesDocument 'Objekt für ein neues Verbindungsdokument
    Dim pab As NotesDatabase 'Objekt für das persönliche Adressbuch des Benutzers
    Dim session As New NotesSession 'Aktuelle Notes-Session als Basisobjekt für die Umgebungsinformationen
    'Variablendeklarationen
    Dim actions() As String 'Stringarray zum sammeln von Meldungen die an den Administrator geschickt werden
    Dim actioncounter As Integer 'Zähler zum dimensionieren des Arrays
    Dim i As Integer 'Schleifenzähler
    Dim sweekdays(6) As String 'Die gültigen Wochentage für das Verbindungsdokument als String-Array
    Dim iweekdays As NotesItem 'Die gültigen Wochentage für das Verbindungsdokument als Item
    'Startwerte setzen
    actioncounter = 0
    sweekdays(0) = "2" 'Füllen des Sting-Arrays
    sweekdays(1) = "3"
    sweekdays(2) = "4"
    sweekdays(3) = "5"
    sweekdays(4) = "6"
    sweekdays(5) = "7"
    sweekdays(6) = "1"
    'Prüfen ob Aktion noch laufen muss
    If session.GetEnvironmentString("ConnectionDoc") = "X" Then Exit Sub
    'Persönliches Adressbuch öffnen
    Set pab = session.AddressBooks(0)
    If Not pab.IsOpen Then
    Call pab.Open("","")
    End If
    'Ansicht mit Verbindungsdokumenten öffnen
    Set connections = pab.GetView("Connections")
    'Prüfen ob Verbindungsdokumente zu <Zielserver> vorhanden sind
    Set condocs = connections.GetAllDocumentsByKey("Zielserver")
    'Es sind mehrere Verbindungsdokumente zum Server vorhanden
    Select Case condocs.Count
    Case 0 'Verbindungsdokument zu Zielserver existiert nicht
    Set newconnection = New NotesDocument(pab) 'Neues Verbindungsdokument erstellen
    newconnection.Form = "local"
    newconnection.ConnectionType = "0"
    newconnection.OptionalNetworkAddress = "nnn.nnn.nnn.nnn"
    newconnection.ConnectionRecordFirst = "1"
    newconnection.Enabled = "0"
    Set iweekdays = New NotesItem(newconnection,"WeekDays",sweekdays)
    newconnection.RepPriority = "0"
    newconnection.Type = "Connection"
    newconnection.Owner = session.UserName
    newconnection.DocumentAccess = "[NetModifier]"
    newconnection.Destination = "Zielserver"
    newconnection.LanPortName = "TCPIP"
    newconnection.ConnectionLocation = "*"
    newconnection.Source = "*"
    newconnection.DestinationDomain = "*"
    newconnection.Schedule = "08:00:00-18:00:00"
    newconnection.Interval = 360
    newconnection.MailThreshold = 5
    newconnection.Cost = 5
    newconnection.PortName = "TCPIP"
    newconnection.PhoneNumber = "nnn.nnn.nnn.nnn"
    Call newconnection.Save(True,False,True) 'Neues Dokument speichern
    actioncounter = actioncounter + 1 'Zähler inkrementieren
    Redim Preserve actions(actioncounter-1) 'Array für Meldungen erweitern
    actions(actioncounter-1) = "Neues Verbindungsdokument zu Zielserver erstellt" 'Meldung speichern
    Case 1 'Verbindungsdokument zu Zielserver ist bereits vorhanden
    Set condoc = condocs.GetFirstDocument
    If Not condoc.OptionalNetworkAddress(0) = "Richtige IP-Adresse" Then 'Verbindungsdokument existiert, aber die eingetragene Adresse ist falsch
    condoc.OptionalNetworkAddress = "nnn.nnn.nnn.nnn" 'richtige Adresse eintragen
    condoc.PhoneNumber = "Richtige IP-Adresse"
    Call condoc.Save(True,False,True) 'Verbindung speichern
    actioncounter = actioncounter + 1 'Zähler inkrementieren
    Redim Preserve actions(actioncounter-1) 'Array für Meldungen erweitern
    actions(actioncounter-1) = "IP-Adresse für Verbindungsdokument zu Zielserver korrigiert" 'Meldung speichern
    Else 'Verbindungsdokument existiert mit richtiger Adresse
    actioncounter = actioncounter + 1 'Zähler inkrementieren
    Redim Preserve actions(actioncounter-1) 'Array für Meldungen erweitern
    actions(actioncounter-1) = "Korrektes Verbindungsdokument zu Zielserver war vorhanden" 'Meldung speichern
    End If
    Case Else 'Es existieren mehrere Verbindungsdokumente zu Zielserver
    For i = 1 To condocs.Count 'Erstmal alle löschen
    Set condoc = condocs.GetNthDocument(i)
    Call condoc.Remove(True)
    Next
    'Dann ein neues Dokument anlegen
    Set newconnection = New NotesDocument(pab) 'Neues Verbindungsdokument erstellen
    newconnection.Form = "local"
    newconnection.ConnectionType = "0"
    newconnection.OptionalNetworkAddress = "nnn.nnn.nnn.nnn"
    newconnection.ConnectionRecordFirst = "1"
    newconnection.Enabled = "0"
    Set iweekdays = New NotesItem(newconnection,"WeekDays",sweekdays)
    newconnection.RepPriority = "0"
    newconnection.Type = "Connection"
    newconnection.Owner = session.UserName
    newconnection.DocumentAccess = "[NetModifier]"
    newconnection.Destination = "Zielserver "
    newconnection.LanPortName = "TCPIP"
    newconnection.ConnectionLocation = "*"
    newconnection.Source = "*"
    newconnection.DestinationDomain = "*"
    newconnection.Schedule = "08:00:00-18:00:00"
    newconnection.Interval = 360
    newconnection.MailThreshold = 5
    newconnection.Cost = 5
    newconnection.PortName = "TCPIP"
    newconnection.PhoneNumber = "nnn.nnn.nnn.nnn"
    Call newconnection.Save(True,False,True) 'Neues Dokument speichern
    actioncounter = actioncounter + 1 'Zähler inkrementieren
    Redim Preserve actions(actioncounter-1) 'Array für Meldungen erweitern
    actions(actioncounter-1) = "Überschüssige Verbindungsdokumente gelöscht und neues Verbindungsdokument zu Zielserver erstellt" 'Meldung speichern
    End Select
    Call session.SetEnvironmentVar("ClusterConnection","X") 'Flag in notes.ini setzen
    'Benachrichtigung an Administrator senden
    Dim notification As NotesDocument 'Objekt für die Mail-Benachrichtigung
    Dim maildb As NotesDatabase 'Objekt für die Mail-Datenbank
    Dim rtitem As NotesRichTextItem 'Item für das Body-Feld
    Set maildb = session.CurrentDatabase 'Handle auf Maildatenbank
    Set notification = maildb.CreateDocument 'Memo erzeugen
    notification.Form = "Memo"
    notification.Subject = "Zustandsbericht Verbindungsdokumente AOPS" 'Betreff
    notification.SendTo = "Notes Administrator" 'Empfänger
    notification.Principal = session.UserName 'Absender
    Set rtitem = New NotesRichTextItem(notification, "Body") 'Bodyfeld füllen
    For i = 0 To (actioncounter -1)
    Call rtitem.AppendText(actions(i))
    Call rtitem.AddNewLine(1,False)
    Next
    Call notification.Send(False) 'Memo abschicken
    Call connections.Refresh 'Ansicht mit Verbindungen aktualisieren
    End Sub

  • Homer


    Ich kenne mich leider nicht so mit Script aus, aber kann ich per Script auch Arbeitsumgebungsdokumente vorgeben?


    Viele Grüße
    mangler

  • Zitat


    manlger schrieb:
    Homer


    Ich kenne mich leider nicht so mit Script aus, aber kann ich per Script auch Arbeitsumgebungsdokumente vorgeben?


    Viele Grüße
    mangler


    Na klar! Ist die gleiche Technik. Die benötigten Views Masken und Felder heißen dann halt anders.