我正在开发一个应用程序,使用Lotus Notes中的java脚本向一组用户发送邮件。我们正在为用户使用共享邮箱。
当我触发此邮件脚本时,它将从我的个人邮箱发送
是否可以从共享邮箱触发邮件?
find /path/from/where/you/want/to -name "*.txt" | xargs dos2unix

答案 0 :(得分:0)
更改数据库不会更改发件人。服务器始终将当前用户名放在发件人名称中。您需要将消息直接写入mail.box文件,而不是使用NotesDocument.Send()方法。
请参阅Knut的answer to an earlier question about this。它包含了Karl-Henry Martinsson对脚本的链接,该脚本演示了该技术。不过,它是LoutsScript,因此您必须将该脚本翻译为JavaScript。
对于您的具体问题,Karl-Henry的LotusScript代码中最重要的代码行是:
Set mailbox = New NotesDatabase(mailservername,"mail.box")
If mailbox.Isopen = False Then
Print "mail.box on " & mailservername & " could not be opened"
Exit Sub
End If
Set me.maildoc = New NotesDocument(mailbox)
和...
If me.p_principal<>"" Then
Call maildoc.ReplaceItemValue("Principal", me.p_principal)
' If principal is set, we want to fix so mail looks like
' it is coming from that address, need to set these fields
Call maildoc.ReplaceItemValue("From", me.p_principal)
Call maildoc.ReplaceItemValue("Sender", me.p_principal)
Call maildoc.ReplaceItemValue("ReplyTo", me.p_principal)
Call maildoc.ReplaceItemValue("SMTPOriginator", me.p_principal)
End If
其中me.p_principal包含他希望消息来自的地址,以及......
Call maildoc.Save(True,False) ' Save in mail.box
请注意,当他想要控制发件人地址时,他不会调用maildoc.Send()。他只是调用maildoc.Save(),这是有效的,因为他将它保存在mail.box文件中。