Как Подставить Поле Inetfrom В Отправляемое Письмо

Тема в разделе "Lotus - Программирование", создана пользователем Oksana, 9 окт 2013.

  1. Oksana

    Oksana Lotus team
    Lotus team

    Регистрация:
    10 янв 2006
    Сообщения:
    330
    Симпатии:
    0
    Есть задача, в которой пользователи создают письма в одной из БД на основании документа. Сами письма создаются в другой общей почтовой базе. Необходимо что бы при отправке письма на внешний адрес, автоматически обратным адресом подставлялся инте-адрес этой общей почтовой базы.
    Если прописываю этот адрес при формировании письма, то при отправке, он все равно заменяется интернет-адресом текущего пользователя. Не могу найти в дизайне почтовой базы как это происходит, что бы поменять на единый обратный адрес.
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.075
    Симпатии:
    300
    способ в лоб - класть в mail.box
    админский способ - менять на релее (не доминошном)
     
  3. Oksana

    Oksana Lotus team
    Lotus team

    Регистрация:
    10 янв 2006
    Сообщения:
    330
    Симпатии:
    0
    в письме автоматически заполняется часть полей, после чего оно открывается и пользователь добавляет еще информацию и нажимает отправить. Отправленное письмо должно сохранится в общей почтовой бд, и обратный адрес необходимо подставить, что бы ответ на него и пришел в общую почтовую базу. Так что видимо создание в mail.box не подойдет.
     
  4. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.075
    Симпатии:
    300
    еще вариант с журналом...
    добавляем поле в письмо, по нему журналируем, в журнале - агент, ну вот он и кладет в mail.box
     
  5. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    прошу прощения, а так разве не работает?
    Код (LotusScript):
    Principal = <нужный адрес>
    MailDoc.Principal = Principal
    MailDoc.InetFrom = Principal
    MailDoc.SMTPOriginator = Principal
    MailDoc.ReplyTo = Principal
     
  6. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    Oksana, Если у людей в Location зачистить поле Inernet Mail Address, а в самой базе, в почтовые формы (Memo и т.д.) добавить поле InetFrom с нужным адресом, то письмо отправляется правильно. Ессно, владельцем почтовой базы тоже быть "правильный" пользователь.
    Проблемы в том, что:
    - нельзя гарантировать "пустоту" поля в Location (переустановка клиента, динамическое обновление и т.д. могут его заполнить снова);
    - это поле (Inernet Mail Address в Location) может оказаться полезным в каких-то других случаях (ну не знаю, для SameTime какого-нить, для прямой отправки почты в Интернет....).
    UPD. В свое время, я это поле зачищал на событие PostOpen базы. Вроде, работало, но... Сомнительный метод, в общем...
     
  7. rinsk

    rinsk Lotus team
    Lotus team

    Регистрация:
    12 ноя 2009
    Сообщения:
    795
    Симпатии:
    78
    http://www-01.ibm.com/support/docview.wss?uid=swg21089673
    http://www.notesnet.ru/library/docid/079257
    Не оно?
     
  8. Oksana

    Oksana Lotus team
    Lotus team

    Регистрация:
    10 янв 2006
    Сообщения:
    330
    Симпатии:
    0
    Помогла строчка
    MailDoc.ReplyTo = Principal
    Все остальные поля, система переназначает при отправке (где-то в другом месте надо перехватывать).
    Письмо приходит как от конкретного пользователя, но по кнопке ответить подставляет требуемый общий адрес. И ответ благополучно приходит в общую базу. Если на том конце, не будет вопросов а почему так? (надеюсь даже не заметят), то такое решение устроит.
    Тестировала пока только сама, надо будет еще потестировать с пользователями в рабочем варианте.
    Спасибо
     
  9. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    rinsk, неплохие параметры, но есть свои недостатки - параметр выставляется на сервере, т.е., для всех пользователей сразу (что м.б. не всегда удобно).

    И, кстати, интересный вопрос - при RouterTranslateSpecial=1 сервер будет искать адрес в АК для кого? Для человека в поле From или в Principal? Ибо если во From, то, опять же, письмо на выходе будет малость "корявое"...
     
  10. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Не знаю... у нас все работает нормально не первый год.
    Единственное - письма подписываются сервером, но адрес - тот что мне нужен
     
  11. Oksana

    Oksana Lotus team
    Lotus team

    Регистрация:
    10 янв 2006
    Сообщения:
    330
    Симпатии:
    0
    а у вас письмо наверное в mail.box создается и отправляется сразу.
    у меня через интерфейс
     
  12. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    Если поле From не подменять, то в исходящем SMTP-письме будет поле Sender. ReplyTo - помогает, но адрес реального человека все равно "светится" в полученном письме...
    Т.е., конфуз все же может случиться... :)
     
  13. rinsk

    rinsk Lotus team
    Lotus team

    Регистрация:
    12 ноя 2009
    Сообщения:
    795
    Симпатии:
    78
    Мое ИМХО - RouterTranslateSpecial=1 должно быть обязательным и по умолчанию для корп сервера...
     
  14. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.052
    Симпатии:
    146
    Мои ИМХО: если решили отправлять с общего ящика, то надо уведомить получателей об этом и всё.
    Мол ящик обратной связи такой-то ... и никаких конфузов и казусов.

    Что касается технической точки, отправлять можно и скриптом от имени спецпользователя, на которого этот ящик заведен.
    Просто по кнопке "отправить" не отправлять письмо, а прятать для дальнейшей обработки.
    Это уже если "Sent By" напрягает.

    А начальник-админ сказал, что можно создать пользователя - владельца базы и роутер при отправке будет лукапить его адреса из АК.
    Даже кажись без допнастроек и от любого пользователя автора письма из этого ящика. (я не админ, но система такая в компании действует)
     
  15. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.075
    Симпатии:
    300
    ЕМНИП профайл д.б. этого пользователя (общего) , но будет присутствовать sentby (текущего юзера)
     
  16. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Никаких mail-боксов. Все из базы серверным агентом.
    Письма отсылаются даже во вне... адреса реального отправителя нет, только подпись отправителя Server<подставной адрес>
     
  17. Мыш

    Мыш Lotus team
    Lotus team

    Регистрация:
    12 фев 2008
    Сообщения:
    1.020
    Симпатии:
    8
    NickProstoNick, дык агентом можно и в mailbox создавать. С агентом проблем нет, есть проблемы с отправкой из юзер-интерфейса.
     
  18. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Не совсем понятно зачем лазить куда не надо... ну то такое...
    А из юзер интерфейса - пинай серверный агент с письмом
     
  19. Oksana

    Oksana Lotus team
    Lotus team

    Регистрация:
    10 янв 2006
    Сообщения:
    330
    Симпатии:
    0
    Всё так. Присутвует два адреса.
    Но если ответят на основной, проблемы особой не будет, хотя не желательно, но допустимо.
    Протестировали в работе пару дней. Всё ОК, отвечают куда нужно.
    По сути менеджеры обрабатывая документы отправляют запросы на несколько адресов техподдержки, все ответы благополучно сыпятся в общую базу по обратному адресу.
    Нас такое решение устроило.
     
Загрузка...

Поделиться этой страницей