domino java 发送html,从莲花发送日历邀请通过java domino api进行交流

当使用mail.jar使用smtp服务器时,invite.ics是正确的,在这种情况下,它使用内部路由域并应该设置文档上的所有数据,然后我们会认为domino要转换和将正常邮件发送到外部地址。

我只有LotusScript代码,但很容易将其转换为java。

Dim invitation As NotesDocument

Dim item As NotesItem

Dim startdttm As NotesDateTime

Dim enddttm As NotesDateTime

Dim rtitem As NotesRichTextItem

Dim prompt As String

Dim language As String

Dim tasktype As String

Dim tmpItem As NotesItem

'Compute SendTo and CopyTo items

Dim SendTo$, CopyTo$

SendTo$ = "test@domain.com"

CopyTo$ = ""

language = "en"

Set invitation = New NotesDocument( taskdoc.ParentDatabase )

With invitation

.ReplaceItemValue "$AltPrincipal", "Automatic Notification "

.ReplaceItemValue "$CSVersion", "2"

.ReplaceItemValue "$CSWISL", Evaluate({@Explode("$S:1;$L:1;$B:1;$R:1;$E:1;$W:1;$O:1;$M:1;RequiredAttendees:1;INetRequiredNames:1;AltRequiredNames:1;StorageRequiredNames:1;OptionalAttendees:1;INetOptionalNames:1;AltOptionalNames:1;StorageOptionalNames:1"; ";")})

.ReplaceItemValue "$HFFlags", "1"

.ReplaceItemValue "$IconSwitcher", "Meeting"

.ReplaceItemValue "$Mailer", "FL Mailer 1.0"

.ReplaceItemValue "$MiniView", "1"

.ReplaceItemValue "$NameLanguageTags", "en"

.ReplaceItemValue "$PublicAccess", "1"

.ReplaceItemValue "$SMTPKeepNotesItems", "1"

.ReplaceItemValue "$StorageCc", ""

.ReplaceItemValue "$StorageTo", "1"

.ReplaceItemValue "$TableSwitcher", "Description"

.ReplaceItemValue "$WatchedItems", Evaluate({@Explode("$S;$L;$B;$R;$E;$W;$O;$M;RequiredAttendees;INetRequiredNames;AltRequiredNames;StorageRequiredNames;OptionalAttendees;INetOptionalNames;AltOptionalNames;StorageOptionalNames"; ";")})

.ReplaceItemValue "AltChair", "Automatic Notification "

.ReplaceItemValue "AltCopyTo", ""

.ReplaceItemValue "AltRequiredNames", SendTo$

.ReplaceItemValue "AltSendTo", SendTo$

.ReplaceItemValue "AppointmentType", "3"

.ReplaceItemValue "ApptUNID", .UniversalID

.ReplaceItemValue "Broadcast", "1"

.ReplaceItemValue "Categories", ""

.ReplaceItemValue "Chair", "Notifiche Automatiche"

.ReplaceItemValue "CopyTo", CopyTo$

.ReplaceItemValue "CWeSigProcessed", "Y"

.ReplaceItemValue "Encrypt", "0"

.ReplaceItemValue "DisplayCopyTo_Icon", "1"

.ReplaceItemValue "Form", "Notice"

.ReplaceItemValue "Importance", "2"

.ReplaceItemValue "InetCopyTo", CopyTo$

'.ReplaceItemValue "INetFrom", "Automatic Notification"

.ReplaceItemValue "INetRequiredNames", SendTo$

.ReplaceItemValue "INetSendTo", SendTo$

.ReplaceItemValue "IsBroadcast", "0"

.ReplaceItemValue "NoticeType", "I"

.ReplaceItemValue "OnlinePlace", ""

.ReplaceItemValue "OrgTable", "C0"

.ReplaceItemValue "PreventCounter", "1"

.ReplaceItemValue "PreventDelegate", ""

.ReplaceItemValue "Principal", "Automatic Notification "

.ReplaceItemValue "RequiredAttendees", SendTo$

.ReplaceItemValue "ReturnReceipt", ""

.ReplaceItemValue "SchedulerSwitcher", "1"

.ReplaceItemValue "SendTo", SendTo$

.ReplaceItemValue "SequenceNum", 1

.ReplaceItemValue "Sign", ""

.ReplaceItemValue "StorageequiredNames", "1"

.ReplaceItemValue "STRecordMeeting", ""

.ReplaceItemValue "Subject", "Broadcast: " + taskdoc.nome(0)

.ReplaceItemValue "Topic", taskdoc.nome(0)

.ReplaceItemValue "UpdateSeq", 1

.ReplaceItemValue "WebDateTimeInit", "1"

.ReplaceItemValue "_ViewIcon", 133

End With

Dim tmpDate As NotesDateTime

Dim itemData As NotesItem

Dim itemOra As NotesItem

Dim itemTemp As NotesItem

Dim appDescription As NotesRichTextItem

Set tmpDate = New NotesDateTime(itemData.Datetimevalue.DateOnly + " " + itemOra.Datetimevalue.TimeOnly)

Call invitation.Replaceitemvalue("CalendarDateTime", tmpDate)

Call invitation.Replaceitemvalue("StartDateTime", tmpDate)

Call invitation.Replaceitemvalue("StartTimeZone", "Z=-1$DO=1$DL=3 -1 1 10 -1 1$ZX=97$ZN=W. Europe") ' FIX WITH CORRECT TIME ZONE

Set tmpDate = New NotesDateTime(itemData.Datetimevalue.DateOnly + " " + itemOra.Datetimevalue.TimeOnly)

Call tmpDate.AdjustHour( 1 , True )

Call invitation.Replaceitemvalue("EndDateTime", tmpDate)

Call invitation.Replaceitemvalue("EndTimeZone", "Z=-1$DO=1$DL=3 -1 1 10 -1 1$ZX=97$ZN=W. Europe") ' FIX WITH CORRECT TIME ZONE

Set tmpDate = New NotesDateTime(itemData.Datetimevalue.DateOnly + " " + itemOra.Datetimevalue.TimeOnly)

Call tmpDate.SetAnyTime

Set itemTemp = invitation.Replaceitemvalue("EndDate", "")

Set itemTemp.DateTimeValue = tmpDate

Set tmpDate = New NotesDateTime(itemData.Datetimevalue.DateOnly + " " + itemOra.Datetimevalue.TimeOnly)

Call tmpDate.AdjustHour( 1 , True )

Call tmpDate.SetAnyDate

Set itemTemp = invitation.Replaceitemvalue("EndTime", "")

Set itemTemp.DateTimeValue = tmpDate

' NoPurge

invitation.ReplaceItemValue "$NoPurge", invitation.StartDateTime

'Send the invitation and save ApptUNID on the task doc

Call Invitation.Send(False)

If taskdoc.ApptUNID(0) = "" Then

TaskDoc.ApptUNID = invitation.UniversalID

Call TaskDoc.Save(True, False)

End If

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值