Calendar Server 可傳送E.4.1 Calendar Server 電子郵件通知配置參數和格式檔案中說明的電子郵件訊息類型。這些訊息的格式由表中列出的關聯格式 (.fmt) 檔案控制。格式檔案位於以下目錄中每個語言環境 (例如 /en 為英文,/fr 為法語) 的特定目錄中︰
/etc/opt/SUNWics5/config
例如,英文版本的工作 (待辦事項) 警示訊息格式在以下檔案中指定︰
/etc/opt/SUNWics5/config/en/mail_todoalarm.fmt
本小節說明以下內容:
下表顯示每個 Calendar Server Mail 參數的郵件類型、ics.conf 參數名稱、預設格式檔案說明以及收件者。
表 E–33 ics.conf 檔案中的 Calendar Server 電子郵件格式
訊息類型 |
參數 |
格式檔案 (預設) |
說明 |
收件者 |
---|---|---|---|---|
事件發佈 |
fname |
宣佈事件或現有事件的變更 |
通知中列出的人員 |
|
事件取消 |
fname |
宣佈事件取消 |
通知中列出的人員 |
|
回覆事件 |
fname |
回覆事件通知。 |
通知中列出的人員 |
|
請求事件 |
fname |
訂閱事件通知。 |
通知中列出的人員 |
|
事件警示 |
fname |
提醒即將發生的事件 |
提醒通知中列出的人員 |
|
週期性事件通知 |
notificationrecur.fname |
"mail_event notificationrecur.fmt" |
週期性事件的通知 |
通知中列出的人員 |
事件取消通知 |
notification.fname |
notification.fmt" |
已取消事件的通知 |
通知中列出的人員 |
週期性事件取消通知 |
notificationrecur.fname |
notificationrecur.fmt" |
已取消的週期性事件的通知 |
通知中列出的人員 |
與會者回覆:接受通知 |
notification.fname |
notification.fmt" |
將與會者已接受邀請這一事項通知事件組織者。 |
事件組織者 |
與會者回覆:拒絕通知 |
notification.fname |
notification.fmt" |
將與會者已拒絕邀請這一事項通知事件組織者。 |
事件組織者 |
與會者回覆:暫訂接受通知 |
acceptnotification.fname |
acceptnotification.fmt" |
將與會者已暫訂接受邀請這一事項通知事件組織者。 |
事件組織者 |
與會者回覆:週期性事件的接受通知 |
notificationrecur.fname |
notificationrecur.fmt" |
將與會者已接受週期性事件邀請這一事項通知事件組織者。 |
事件組織者 |
與會者回覆:週期性事件的拒絕通知 |
notificationrecur.fname |
notificationrecur.fmt" |
將與會者已拒絕週期性事件邀請這一事項通知事件組織者。 |
事件組織者 |
與會者回覆:週期性事件的暫訂接受通知 |
tentativeaccept notificationrecur.fname |
acceptnotificationrecur.fmt" |
將與會者已暫訂接受週期性事件邀請這一事項通知事件組織者。 |
事件組織者 |
工作發佈 |
fname |
宣佈工作或現有工作的變更 |
通知中列出的人員 |
|
工作取消 |
宣佈工作取消 |
通知中列出的人員 |
||
回覆工作 |
fname |
回覆工作通知 |
通知中列出的人員 |
|
待辦事項請求 |
fname |
訂閱待辦事項通知。 |
通知中列出的人員 |
|
工作警示 |
fname |
提醒即將執行的工作 |
提醒通知中列出的人員 |
Calendar Server 透過將特定事件或工作與格式檔案內容相結合,來產生通知訊息。事件或工作中資料欄位的值可輸出至訊息。通知訊息還可以包含 MIME 標頭行及關聯的特殊值。使用特殊字元序列 (格式記號),您可以在訊息中包含事件、工作和 MIME 標頭的值。格式檔案中的行是特殊字元序列組成的格式字串,在產生郵件訊息時,這些字串將由行事曆資料欄位的實際值所取代。特殊字元序列由兩個字元組成,第一個為百分比符號 (%),第二個表示特定格式記號。
以下小節說明特殊字元序列︰
下表顯示事件通知所使用的特殊字元序列的格式代碼和含義。
表 E–34 事件通知的特殊字元序列
格式代碼 |
涵義 |
---|---|
%0 |
本土化格式的起始時間 |
%1 |
本土化格式的結束時間 |
%A |
iCalendar 格式的 exdates (以分號分隔的 ISO 8601 日期字串清單,可列出要排除的日期) |
%a |
iCalendar 格式的 rdates (以分號分隔的 ISO 8601 日期字串清單,可列出週期性日期) |
%B |
起始時間 (另請參閱 %Z) |
%b |
輸出 iCalendar 格式的起始時間和結束時間。如果起始時間參數具有等於日期的值,則僅輸出日期的月/日/年部分。如果結束時間包含與起始時間相同的月/日/年的值,則僅產生起始時間。 |
%C |
建立時間 |
%c |
事件類別 |
%d |
事件說明。(另請參閱 %F) |
%E |
結束時間 (另請參閱 %Z) |
%e |
iCalendar 格式的異常規則 |
%F |
事件說明 - 可換行,iCalendar 格式 (另請參閱 %d) |
%G |
事件的地理位置 (緯度和經度) |
%g |
組織者的電子郵件位址。(不保證此值的可靠性。) |
%K |
mailto:url 格式的組織者電子郵件 |
%k |
警示計數 |
%L |
位置 |
%l |
iCalendar 格式的週期性規則 |
%M |
修改時間 |
%N |
新一行 |
%n |
與 DTSTAMP 配合使用的目前時間戳記 |
%P |
優先順序 |
%r |
週期性 ID (如果此事件不重複發生,則為空白) |
%S |
事件序列號碼 |
%s |
摘要 |
%t |
事件狀態 |
%U |
唯一的事件識別碼 |
%Z |
與時間欄位代碼合用,以強制時間在 UTC 中被描繪。(%B 以本地時間顯示起始時間,而 %ZB 以 UTC 時間顯示起始時間。) |
%% |
顯示百分比 (%) 字元 |
% |
指定由代碼識別的資料的子格式。(如需詳細資訊,請參閱E.4.3 Calendar Server 通知日期子格式字串。) |
日期時間值可採用多種不同的格式。使用子格式,您可以提供附加資訊以說明日期時間值應採用何種格式。如果未指定子格式,伺服器將使用預設格式來輸出日期。使用子格式欄位可讓您指定要使用的確切格式。
例如,%B 指定輸出字串包含事件的起始時間。此預設格式可輸出日期、時間、時區以及有關日期的所有可能內容。日期值的子格式字串為 strftime 格式字串 (請參閱E.4.6 日期的特殊字元序列)。如果您僅需要起始時間的月份和年份,則不應使用 %B,而應使用:%(%m %Y)B。
以下範例︰
The event begins: %B%N The event ends: %(%b %d, %Y %I:%M %p)E%N |
可產生類似以下通知的輸出︰
The event begins Feb 02, 1999 23:30:00 GMT Standard Time The event ends Feb 03, 1999 02:30 AM |
title: %S%N start: %B%N end: %E%N |
可產生類似以下通知的輸出︰
title: Staff Meeting start: Feb 04, 1999 09:00:00 end: Feb 04, 1999 10:00:00 |
但是,以下兩個條件可讓上述範例產生易誤解或錯誤的結果︰
如果事件沒有結束時間
如果事件是在同一天開始並結束的「整日」事件
在這些情況下,最好不要列印結束時間。依預設,當時間戳記具有 all-day 屬性時,僅列印年、月和日。此外,如果事件起始時間具有 all-day 屬性,且事件在開始當天結束,則會設定特殊的條件式旗標。僅當未設定特殊的條件式旗標時才使用 ? 修飾鍵來列印條件式值。
例如,如果您將上述範例中的行變更為︰
title: %S%N start: %B%N end: %?E%N |
同一天開始和結束的整日事件的最後一行將不會列印。它將為典型整日事件 (如生日或紀念日) 產生以下輸出︰
title: Staff Meeting start: Feb 04, 1999 |
? 旗標可與其他修飾鍵結合使用。例如:
The event ends: %?(%b %d, %Y %I:%M %p)E%N
下表顯示工作通知的特殊字元序列的格式代碼和含義。
表 E–35 工作通知的特殊字元序列
格式代碼 |
涵義 |
---|---|
%A |
iCalendar 格式的 exdates (以分號分隔的 ISO 8601 日期字串清單,可列出要排除的日期) |
%a |
iCalendar 格式的 rdates (以分號分隔的 ISO 8601 日期字串清單,可列出週期性日期) |
%B |
起始時間 (另請參閱 %Z) |
%C |
建立時間 |
%c |
工作類別 |
%D |
截止日期和時間。 |
%d |
工作說明。(另請參閱 %F) |
%E |
IMIP 格式的截止日期和時間 |
%e |
iCalendar 格式的異常規則 |
%F |
工作說明 - 可換行,iCalendar 格式 (另請參閱 %d) |
%G |
此工作的地理位置、緯度和經度。 |
%g |
組織者的電子郵件位址 (無法保證此值的可靠性) |
%K |
mailto:URL 格式的組織者電子郵件 |
%k |
警示計數 |
%L |
位置 |
%l |
iCalendar 格式的週期性規則 |
%M |
修改時間 |
%N |
新一行 |
%n |
"now" (目前的時間戳記,與 DTSTAMP 配合使用) |
%P |
優先順序 |
%r |
週期性 ID (如果此工作不週期性出現,則為空白) |
%S |
工作的序列號碼 |
%s |
摘要 |
%t |
狀態 |
%U |
UID |
%Z |
與時間欄位代碼結合使用,以強制時間以 UTC 格式描繪 (%B 以本地時間顯示起始時間,而 %ZB 以 UTC 時間顯示起始時間) |
%% |
顯示 % 字元 |
% (子格式代碼) |
為代碼所識別的資料指定子格式 (如需詳細資訊,請參閱E.4.3 Calendar Server 通知日期子格式字串) |
下表顯示日期特殊字元序列的格式代碼和含義。
本小節中出現的特殊日期格式代碼僅為方便使用。Calendar Server 不會重寫任何代碼,而僅使用作業系統所採用的日期格式。
格式代碼 |
涵義 |
---|---|
%a |
縮寫的工作日名稱 |
%A |
完整的工作日名稱 |
%b |
縮寫的月份名稱 |
%B |
完整的月份名稱 |
%c |
適用於語言環境的日期和時間表示方法 |
%d |
一月中的某天,十進位數字 (01 - 31) |
%H |
24 小時制的小時 (00 - 23) |
%I |
12 小時制的小時 (01 - 12) |
%j |
一年中的某天,十進位數字 (001 - 366) |
%m |
月份,十進位數字 (01 - 12) |
%M |
分鐘,十進位數字 (00 - 59) |
%p |
目前語言環境的上午/下午指示器 (12 小時制時鐘) |
%S |
秒,十進位數字 (00 - 59) |
%U |
一年中的某一週 (十進位數字),以星期日做為一週的第一天 ( 00 - 53) |
%w |
工作日,十進位數字 (0 - 6;星期日為 0) |
%W |
一年中的某一週 (十進位數字),以星期一做為一週的第一天 ( 00 - 53) |
%x |
目前語言環境的日期表示方法 |
%X |
目前語言環境的時間表示方法 |
%y |
不包含世紀的年份,十進位數字 (00 - 99 ) |
%Y |
包含世紀的年份,十進位數字 |
%Z |
時區名稱或縮寫;如果時區未知,則無字元 |
%% |
百分比符號 |
以下範例顯示預設事件提醒通知訊息格式︰
1 EVENT REMINDER 2 ~~MIME-Version: 1.0%N 3 ~~Content-Type: text/plain; charset=%s%N 4 ~~Content-Transfer-Encoding: %x%N%N 5 Summary: %s%N 6 Start: %(%a, %d %b %Y %I:%M %p)B%N 7 End: (%a, %d %b %Y %I:%M %p)E%N 8 Location: %L%N%N 9 Description: %N%d%N |
此範例中每行的說明如下︰
第 1 行為訊息主題。
第 2 行以 ~~ 開頭,指示此行為 MIME 包裝程式行。即特殊字元序列的取代與內部 MIME 物件 (而不是事件或工作) 關聯。特殊序列 %N 可以換行。主題行不需要特殊的新行序,但其他所有行均需要。
第 3 行也是 MIME 標頭行。它包含特殊字元序列 %s,此特殊字元序列將由與傳送的事件或工作關聯的字元集替代。
第 4 行為最後一個 MIME 行,%x 為此訊息所需的內容傳輸編碼字串。
第 5 行列出事件摘要並以 %s 呼叫事件摘要。
第 6 行列出事件起始時間。它利用了特殊字元序列 %B 上的子格式字串。如需詳細資訊,請參閱E.4.3 Calendar Server 通知日期子格式字串。
第 7 行列出事件結束時間。
第 8 行列出事件的位置。
第 9 行列出事件的說明。
以下範例類似上述範例產生的通知訊息︰
From: jsmith@sesta.com (James Smith) Date: Wed, 15 Nov 1999 19:13:49 To: jsmith@sesta.com Subject: EVENT REMINDER MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Summary: smtp_rig event 1 Start: Tues, 16 Nov 1999 02:00 PM End: Tues, 16 Nov 1999 03:00 PM Location: Green Conference Room Description: This is the description for a randomly generated event. |
以下範例顯示較為複雜的多重訊息。此範例包含文字部分和 IMIP PUBLISH 部分。
EVENT PUBLICATION ~~MIME-Version: 1.0%N ~~Content-Type: multipart/mixed; boundary="%b"%N%N This is a multi-part message in MIME format.%N ~~--%b%N ~~Content-Type: text/plain; charset=%s%N ~~Content-Transfer-Encoding: %x%N%N Summary: %s%N Start: %(%a, %d %b %Y %I:%M %p)B%N End: %(%a, %d %b %Y %I:%M %p)E%N Location: %L%N%N Description: %N%d%N%N ~~--%b%N ~~Content-Type: text/calendar; method=%m; component=%c; charset=%s%N ~~Content-Transfer-Encoding: %x%N%N BEGIN:VCALENDAR%N PRODID:-//iPlanet/Calendar Hosting Server//EN%N METHOD:PUBLISH%N VERSION:2.0%N BEGIN:VEVENT%N ORGANIZER:%K%N DTSTAMP:%Zn%N DTSTART:%ZB%N DTEND:%ZE%N SUMMARY:%s%N UID:%U%N %R %A %a %e %l SEQUENCE:%S%N LOCATION:%L%N GEO:%G%N %F STATUS:%t%N END:VEVENT%N END:VCALENDAR%N ~~--%b-- |