• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Отправка документа на внешний адрес

  • Автор темы VooDoo
  • Дата начала
V

VooDoo

День добрый.
Помогите полному ламеру, пожалуйста.

Ситуация следующая:

Имеем документ, который необходимо отправить на внешний почтовый ящик. Приделывание в документ поля SendTo и кнопки отправки (@Command([MailSend]), как написано в хелпе) не даёт никакого результата. Как с этим борьтся? Возможно ли решить задачу @-командами или только скриптом?
Буду крайне признателен за приведенные примеры.
Спасибо.


З.Ы. если тема такая уже была - дайте линк, т.к. в поиске такой темы не нашел.
 
A

allex

HELP также говорит

@MailSend( sendTo ; copyTo ; blindCopyTo ; subject ; remark ; bodyFields ; [ flags ] )

@MailSend("David Lee/";"";"Joseph Smith/Support";"Status Report"; "Sorry it's late!"; "STATUS":"PLANS"; [SIGN] : [DELIVERYREPORTCONFIRMED] : [RETURNRECEIPT])
 
V

VooDoo

HELP также говорит

@MailSend( sendTo ; copyTo ; blindCopyTo ; subject ; remark ; bodyFields ; [ flags ] )

@MailSend("David Lee/";"";"Joseph Smith/Support";"Status Report"; "Sorry it's late!"; "STATUS":"PLANS"; [SIGN] : [DELIVERYREPORTCONFIRMED] : [RETURNRECEIPT])


Я так понимая, что эту красоту надо написать вместо @Command([MailSend] и убрать поле SendTo?
И еще один момент - нормально ли воспримет лотус, если написать не David Lee, а david_lee@mail.mm? Столь глупый вопрос связан с тем, что в существующей конструкции (поле с кнопкой) на David Lee письма ходят (внутри лотуса), а вот внешние адреса он как то не воспринимает.
Спасибо

попробовал.
на внутреннюю пришло STATUSPLANS (как собсна и написано)
про внешнюю написало

Your message was routed to a server which does not accept responsibility for generating Delivery Status Notifications upon successful delivery. You may assume that the message was successfully delivered if no failure message is received. Do not expect a delivery confirmation notice.

И еще один момент. Как в поле Body запихнуть созданый документ, при условии что он должен отобразаться как хтмл страничка, с тегами, картинками и форматированием?
 
A

allex

@MailSend("David Lee/" - кому отпралять;"";"Joseph Smith/Support" - копия;"Status Report" - тема; "Sorry it's late!"; "STATUS":"PLANS" - RT-поля; [SIGN] : [DELIVERYREPORTCONFIRMED] : [RETURNRECEIPT] - флаги)

В зависимоти от получателя, темы, вставляемых RT-полей в отправляемое письмо и выставленных флагов будет формироваться письмо.

А у тебя во внешний мир как настроено чтобы почта уходила ?
 
V

VooDoo

@MailSend("David Lee/" - кому отпралять;"";"Joseph Smith/Support" - копия;"Status Report" - тема; "Sorry it's late!"; "STATUS":"PLANS" - RT-поля; [SIGN] : [DELIVERYREPORTCONFIRMED] : [RETURNRECEIPT] - флаги)

В зависимоти от получателя, темы, вставляемых RT-полей в отправляемое письмо и выставленных флагов будет формироваться письмо.

А у тебя во внешний мир как настроено чтобы почта уходила ?

Не смотря не предупреждение, письмо пришло и во внешний мир. Сейчас поэксперементирую со вставкой полей и флагов. Если возникнут вопросы, еще отпишусь.
Огромное спасибо.
 
V

VooDoo

Добавил флаг [INCLUDEDOCLINK] и очистил body в итоге на внутреннюю почту пришла ссылка на документ, как и полагается, а на внешнюю <адрес документа в базе данных>.
Как то немного не то. :(

Есчо раз, что у нас в документе:

сформированная хтмл страничка с картинками и отобраным из нужных представлений текстом, внизу кнопочка "отправить", на которой висит код @MailSend("мыло@домен";"Вася Пупкин";"";""; "Название письма"; ""; [Sign] : [DeliveryReportConfirmed] : [INCLUDEDOCLINK])

Что дописать-убрать-перенести, что бы в теле письма приходила эта самая хтмл страничка?

Спасибо.
 
V

VooDoo

Перерыл хелп, не могу ничего толкового (понятного для меня) найти.
Ребята, помогите кто-нить. :(
 
R

root

Код:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set doc = New NotesDocument( db )
doc.Form = "Memo"
doc.body = uidoc.FieldGetText("Field1")
doc.SendTo = "Elissa Minty"
doc.Subject = "Here's the document you wanted"
Call doc.Send( False )
можно и lotusScript
 
V

VooDoo

Увы, немного не то. Точнее почти то.
Попутный вопрос, подскажите как в поле РТФ закинуть хтмл код?
 
A

allex

Что бы этот HTML уже был в RT поле
или просто засунуть html в Rt поле в открытой форме
 
V

VooDoo

проколупался весь день - и ничего :ph34r:
вместо Превед присылает <b>Превед</b>

Пробовал вот так:

Код:
	Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Dim doc As New NotesDocument(db)
doc.Form = "Memo"
doc.SendTo = "мыло@мыло"
doc.From = "мыло@мыло"
doc.Subject = "песьмо"
Dim richStyle As NotesRichTextStyle
Set richStyle = session.CreateRichTextStyle
Dim richText As New NotesRichTextItem(doc, "Body")
richStyle.PassThruHTML = True
Call richText.AppendStyle(richStyle)
Call richText.AppendText("<b>Превед</b>")
Call doc.Save(True, False)
Call doc.Send(False)

и разные варианты с
richStyle.PassThruHTML = True


Насколько я понял - эта штука работает только для представления в вебе. А как в письмо хтмл запихнуть?

Спасибо
 
V

VooDoo

заработало.
отдельно пришлось копаццо в настройках сервера.
 
V

VooDoo

Для: Hedg, привожу кусок кода. Здесь мы выдираем из нужнуго представления документы по нужной дате, запихиваем в табличку и отправляем на почту. Если написано много лишнего кода (который можно упростить) - подскажите :)
Смысл в том что, задавая richStyle.PassThruHTML = True можно в переменную rich_1, которой присвоен стиль richStyle писать хтмл код без проблем. Единственное что - надо указывать абсолютный путь ко всем картинкам и я еще не разобрался как подключить фаил цсс (что бы вообще красота была), т.к. писать на каждую строчку стиль отображения - утомляет. :)

Большое спасибо всем откликнувшимся.


Код:
Dim db As NotesDatabase
Dim rtitem As NotesRichTextItem
Dim rtitem_1 As NotesRichTextItem
Dim rtitem_2 As NotesRichTextItem
Dim notes_view As NotesView
Dim dc As NotesDocumentCollection
Dim temp As NotesDocument
Dim NRTS As NotesRichTextStyle
Dim NRTI As NotesRichTextItem
Dim NS As New NotesSession
Dim notes_time As New NotesDateTime( "Today" )
Dim yy As Integer
Dim mm As Integer
Dim dd As Integer
Dim ad_data As String

Set doc = NS.CurrentDatabase.CreateDocument

doc.Form = "Memo"
doc.SendTo = "внешняя_почта@мыло.ком"
doc.From = "от_кого@мыло.нет"
doc.Subject = "Супер письмо"

Set NRTS = NS.CreateRichTextStyle()
Set NRTI = New NotesRichTextItem(doc, "body")

'подключили отображение как хтмл
NRTS.PassThruHTML = True
Call NRTI.AppendStyle(NRTS)
Call NRTI.AppendText({
<!--пишем хтмл код-->
<body>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="19%" rowspan="4" align="left" valign="top"><img src='Полный_путь_к_картинке/картинка.gif' width='119' height='52' /><br />
<span class="style1">Супер письмо</span></td>
<td colspan="2" background="Полный_путь_к_картинке/картинка2.gif"><img src="Полный_путь_к_картинке/картинка3.gif" width="1" height="8" /></td>
</tr>
<tr>
<td width="66%" rowspan="2" valign="top" class="style12">	
<!--Подставляем документы из представления-->})

Set db = NS.CurrentDatabase
Set notes_view = db.GetView("Требуемый_вид")
yy = Year (notes_time.DateOnly)
mm = Month (notes_time.DateOnly)
dd = Day (notes_time.DateOnly)
dd1$ = Trim (Str (dd))
mm1$ = Trim (Str (mm))
yy1$ = Trim (Str (yy))
If Len (dd1$) = 1 Then dd1$="0"+dd1$
If Len (mm1$) = 1 Then mm1$="0"+mm1$
ad_data = dd1$+"."+mm1$+"."+yy1$
Set dc = notes_view.GetAllDocumentsByKey(ad_data)

'отключили отображение как хтмл
NRTS.PassThruHTML = False
Call NRTI.AppendStyle(NRTS)

For i=1 To dc.Count
Set temp = dc.GetNthDocument(i)
Set rtitem = temp.GetFirstItem ("body")
Call NRTI.AppendRTItem (rtitem)
Call NRTI.AppendText(Chr(13)+Chr(10))
Next	

'снова подключили отображение как хтмл
NRTS.PassThruHTML = True
Call NRTI.AppendStyle(NRTS)
Call NRTI.AppendText({<td> </td>
</tr>
</table></body>})
Call NRTI.GetFormattedText(True, False)
Call doc.Send(False)


Насчет сервака - копались админы (у меня доступа нет), так что увы точно сказать не могу. Но что-то запрещало отправку писем в хтмл-виде. В итоге вместо <b>Превед</b> начал приходить нормальный вид.
 
H

Hedg

Для: VooDoo
не мог бы ты поспращать админов что именно они там настраивали, а то не получается никак.
 
V

VooDoo

Для: Hedg

на сервере поставили тип отправлчемого содержимого писем в html, а там стоял plain text

раздел MIME и в нем раздел Conversion options, вот там как раз и выставляется
 
V

VooDoo

Итак всё бегает и исправно приходит на внешний ящик в хтмл виде.

Но возникла другая проблема - отображение письма в хтмл виде в ящике лотус.
Сейчас приходит красота в виде
<body font-family: Verdana, Arial, Helvetica, sans-serif;>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>......

Подскажите гуру как можно это исправить и сделать отображение в лотусном ящике в корректном виде?

Спасибо
 
H

Hedg

Я вот тоже столкнулся, что в Лотусовом ящике вижу HTML код а не красоту, пока нет времени с этим разбираться, но если найдёте способ отпишитесь плз.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!