Я использую клиента заметок (v 7.0). Я создал почтовую учетную запись с почтовым идентификатором xyz@abc.com в этом клиенте (очевидно, также на сервере domino). Я хочу автоматически отвечать на почту, которая отправляется на xyz@abc.com с той же строкой темы, к которой необходимо добавить «; УСПЕХ» в конце строки темы.

2 ответа2

1

Хорошо, вам нужен пользовательский агент и привилегии для его локального создания, поскольку вам почти наверняка не разрешат создавать его на серверной копии почтовой БД (если ваши администраторы Domino не являются кучкой клоунов). Это потребует установки Domino Designer на ваш клиент, а не только на Notes.

Затем вы настраиваете агент для запуска по расписанию (скажем, 5 минут). а затем кодируйте некоторый LotusScript для обработки соответствующих документов, которые были добавлены. Мне никогда не удавалось правильно запустить мои сценарии на мероприятии "после получения новой почты", но вам, возможно, повезет больше :-).

Все скрипты, которые я сделал, были достаточно просты, чтобы вписаться в функцию Initialize. Например, следующий код поместит все сообщения из папки "Входящие" с заголовком "qwertyuiop" в заголовок темы в папку "Спам".

Sub Initialize
    Dim s As New notessession
    Dim db As notesdatabase
    Dim view As NotesView
    Dim doc As NotesDocument

    Set db = s.CurrentDatabase
    Set view = db.GetView("($InBox)")
    If Not view Is Nothing Then
        Set doc = view.GetFirstDocument
        While Not doc Is Nothing
            If Instr(doc.GetFirstItem("subject").Text, "qwertyuiop")  Then
                Call doc.RemoveFromFolder( "($InBox)")
                Call doc.PutInFolder( "junk")
            End If
            Set doc = view.GetNextDocument(doc)
        Wend
    End If
End Sub

Поля, которые вас интересуют для ваших целей, являются subject , inetfrom и inetsendto (по крайней мере, в моей почтовой БД). Вы можете проверить это, щелкнув правой кнопкой мыши одно из писем, выбрав "Свойства документа" и выбрав вторую вкладку (треугольник), в которой перечислены все поля документа.

Создание ответного электронного письма должно быть простым делом создания нового документа в почтовой базе данных и вызова « newdoc.send(true,true) ». Мне никогда не приходилось делать это раньше, но я разбил следующий пример кода, и он, кажется, работает (но исправление ошибок - ваша ответственность, а не моя :-).

Sub Initialize
    Dim s As New notessession
    Dim db As notesdatabase
    Dim view As NotesView
    Dim doc As NotesDocument
    Dim olddoc As NotesDocument
    Dim subj As String
    Dim newdoc As NotesDocument

    Set db = s.CurrentDatabase
    Set view = db.GetView("($InBox)")
    If Not view Is Nothing Then
        Set doc = view.GetFirstDocument
        While Not doc Is Nothing
            Set olddoc = doc
            Set doc = view.GetNextDocument(doc)
            subj = olddoc.GetFirstItem("subject").Text
            If Instr(subj, "qwertyuiop") > 0  And Right(subj,8) <> " SUCCESS" Then
                Set newdoc = New NotesDocument(db)
                newdoc.SendTo = olddoc.GetFirstItem("inetfrom").Text
                newdoc.subject = subj & " SUCCESS"
                newdoc.form = "Memo"
                Call newdoc.send(True,True)
                Call olddoc.RemoveFromFolder( "($InBox)")
                Call olddoc.PutInFolder( "junk")
            End If
        Wend
    End If
End Sub
0

Я не знаю достаточно о Notes, чтобы понять, является ли он специфическим для установки в IBM или это общая проблема, но агент «Вне офиса», который мы получаем, отправляет сообщения о ООО в списки рассылки, что является антисоциальным. Следовательно, он настроен так, чтобы он не отвечал на людей, отправляющих сообщения с внешних (Интернет) адресов электронной почты - только на внутренние (в стиле Notes) адреса электронной почты.

Вы можете заметить сотрудников IBM в списках рассылки - именно они отвечают на сообщения ООО. (Есть и другие, но ...)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .