傳送郵件

選項說明

send.GIF (9513 bytes)



直接送信到收件者的郵件伺服器 ___封信就回寄至帳號 啟動Mail Merge功能 跳過已送出的郵件 同一伺服器一次可傳送的人數 郵件名單狀態的說明

 

  1. 直接送信到收件者的郵件伺服器

    在一般的郵件傳送系統中,所有外寄郵件都會先送到一個SMTP,然後它再幫忙轉信給各收信者的主機。這樣作雖然速度較快、通信問題較少,但有幾點壞處:

    1. 將送信的負擔轉嫁到轉信主機上,大多數的轉信主機已開始拒收非會員的信件。即使該主機幫忙轉信,也會有盜用他人資源的嫌疑,最好不要如此。
    2. 如果是該ISP的會員,轉信主機很容易偵測到您在大量轉信,進而將郵件刪掉或警告您不可再送。
    3. 透過轉信主機雖然方便,但常常該主機會先照單全收郵寄名單,使得一些有問題的E-Mail住址會一直偵測不出,佔用您寶貴的時間與空間。

    【直接送信到收件者的郵件伺服器】則是親自扮演轉信主機的角色,可免除以上問題,也不會因借用他人主機轉信而有盜用資源之嫌。不過,它的速度會較慢,您可以依需要而選擇最適合您的設定。

    AG00085_.gif (928 bytes)

  2. ---封信就回寄至帳

    你可以自己設定每傳出幾封信就會寄到你指定的帳號,如此可以檢查ISP有否阻斷你的傳送。

    AG00085_.gif (928 bytes)

  3. 啟動Mail Merge功能

    所謂「Mail Merge」就像是Word有「合併列印」的功能一樣。E-Mail 利吉送國內唯一能夠做到「Mail Merge」的電子郵件發送軟體。這項功能特別適用於會員信或是電子報類的應用。

    「Mail Merge」讓您可以送出給根據收信者量身訂作的信,每封信都是獨一無二,除了讓收信者備感貼心外,更能轉達許多重要的訊息。

    舉例說明,讓您能更加了解為什麼「Mail Merge」是那麼地重要:
      1. 如果沒有Mail Merge功能,您必須要這樣寫信:
      2. 親愛的用戶

        您的會員資格將於近日到期,請盡速繳納會費,謝謝您的支持與合作。

      3. 如果有「Mail Merge」功能,您可以這樣寫:

    親愛的王小明 先生

    您的會員資格將於七月五日到期,請於八月五日前繳納會費,謝謝您的支持與合作。

    兩者一經比較,有了「Mail Merge」當然會讓信件更加清楚!

    《使用「Mail Merge」基本方法》

    無論是用Outlook/Netscape或是內附的編信軟體,您只要打入: #$FieldName# ,就可以將資料庫中’FieldName’自動取代此一部份。請注意,資料庫中必須有此欄位,否則會出現錯誤訊息。

    如果您的原始資料剛好有”#$”,則請將它改為”#$$”以茲區別。

    在用Outlook或Netscape編信時,請不要用”Base64”或”Quoted Printable”來將郵件內文字編碼,這樣會使Mail Merge找不到要轉換的欄位。

    在Outlook Express下,請至”工具/選項/傳送/郵件傳送格式/設定/文字編碼方式”,設成”無”。如果用”Quoted Printable”也可以,但是這樣就不可以使用中文的資料庫欄位了!

    Mail Merge最新功能:

    增加特殊變數讓Mail Merge使用,例如Date、Time、Now、Random、Serial、Username、Domain、ServerDomain等,讓使用者可以在不增加資料庫欄位的情況下產生出每封都不同的電子郵件,並可自訂該變數的格式。另外針對資料庫欄位,也設計特定的格式型態供使用者自行設定使用。

    變數與格式

    詳細說明

    Date[,formatDt] 產生出目前(送信的那一刻)的日期,可在後面加上格式。例如:想要將目前的日期顯示成 1999/01/15,則其格式須設成 #%Date,'yyyy/mm/dd'#
    Time[,formatDt] 產生出目前(送信的那一刻)的時間,可在後面加上格式。例如:想要將目前時間顯示成 10:30AM,則其格式須設成 #%Time,'hh:mm AM/PM'#
    Now[,formatDt] 產生出目前(送信的那一刻)的日期時間,可在後面加上格式。例如:想要將目前的日期時間顯示成 1999/01/15 星期五 pm01:27:34,則其格式須設成 #%Now,'yyyy/mm/dd dddd am/pmhh:nn:ss'#
    Random[,max][,min][,formatNum] 產生一個亂數,從min到max之間。例如:格式設定為 #%random,,,'%d'#,則產生結果會是一亂數如 71441061 (每次產生出來的亂數都會不同),在此例子中,max及min不指定,則會被略過,而formatNum則要求用十進位產生出該數字。
    Serial[,formatNum] 產生一個流水號, 從1開始, 每封信自動加一。例如:格式設定為 #%Serial,'%.4x'#,如果流水號由1開始,則產生結果會是 0001
    UserName 產生出收信者名稱,例如:格式設定為 #%UserName#,則"abc@test.com"的產生結果為 abc
    Domain 產生出收信者的網域名稱,例如:格式設定為 #%domain#,則"abc@test.com"的產生結果為 test.com
    ServerDomain[,ExcludeLevel] 產生出目前郵件伺服器的網域名稱,此伺服器是您列出"可使用的郵件伺服器"之一或是與Domain相同(假如您直接送信)
    而ExcludeLevel則是要去掉網域名稱的頭, 以製造出稍微不同的機器名稱
    如#%ServerDomain,1#, 而server為"smtp.server.com", 則會得到"server.com"
    您可以用類似machine1.#%ServerDomain,1#製造出網域相同但機器名不同的位址

    以上這些變數必須介於特殊符號 #%........# 當中,如:#%Date,'yy/mm/dd'#。您可針對個人的喜好自訂格式,設定的格式必須在單引號 '....' 或雙引號 "...." 當中。如果您不訂格式,則程式將會為您訂一預設的格式。

    資料庫欄位與格式

    詳細說明

    FieldName[,type][,format] FieldName為資料庫任一欄位,可在後面加上格式,而 format 格式會依欄位型態的不同而須設定成 formatDt 或 formatNum。例如:有一資料庫欄位名是 "付款否",想要設定使用者是否已付款,則格式設定為 #$付款否,B,'已/未曾'#,B表示 boolean (邏輯型態),已/未曾則是它顯示的格式,以斜線符號作分隔。

    以上這些變數必須介於特殊符號 #$........# 當中,如:#%Paid,B,'have/have not'#。您可針對個人的喜好自訂格式,設定的格式必須在單引號 '....' 或雙引號 "...." 當中。如果您不訂格式,則程式將會為您訂一預設的格式。

    formatDt (日期時間類的格式) 說明如下:

    formatDt

    顯示說明

    c 顯示日期,接著時間,如果分數部份的值是0,則時間不顯示,使用系統預設格式。
    d 以數字顯示日,前面沒有0 (如:1-31)。
    dd 以數字顯示日,前面有0 (如:01-31)。
    ddd 顯示星期的縮寫 (如:Sun-Sat) ,使用系統預設格式。
    dddd 顯示星期的全名 (如:Sunday-Saturday),使用系統預設格式。
    ddddd 顯示簡短的日期,使用系統預設格式。
    dddddd 顯示詳述的日期,使用系統預設格式。
    m 以數字顯示月份,前面沒有0 (如:1-12) 。如果m是緊跟著h或 hh出現,則m是表示分鐘而不是月份。
    mm 以數字顯示月份,前面有0。如果mm是緊跟著h或 hh出現,則mm是表示分鐘而不是月份。
    mmm 顯示月份的縮寫 (如:Jan-Dec) ,使用系統預設格式。
    mmmm 顯示月份的全名 (如:January-December),使用系統預設格式。
    yy 以2碼數字顯示年 (如:00-99)。
    yyyy 以4碼數字顯示年 (如:0000-9999)。
    h 顯示小時,前面沒有0 (如:0-23)。
    hh 顯示小時,前面有0 (如:00-23)。
    n 顯示分鐘,前面沒有0 (如:0-59)。
    nn 顯示分鐘,前面有0 (如:00-59)。
    s 顯示秒,前面沒有0 (如:0-59)。
    ss 顯示秒,前面有0 (如:00-59)。
    t   顯示簡短的時間,使用系統預設格式。
    tt   顯示詳述的時間,使用系統預設格式。
    am/pm   使用12小時制,前面有 h或 hh格式,'am' 表示中午以前,'pm' 表示中午以後,am/pm可用小寫、大寫或大小寫混合,顯示結果會依設定的大寫或小寫而定。
    a/p   使用12小時制,前面有 h或 hh格式,'a' 表示中午以前,'p' 表示中午以後,a/p可用小寫、大寫或大小寫混合,顯示結果會依設定的大寫或小寫而定。
    ampm   使用12小時制,前面有 h或 hh格式,ampm的內容使用系統預設格式。
    /   顯示日期的分隔符號,使用系統預設格式。
    :   顯示時間的分隔符號,使用系統預設格式。
    'xx'/"xx"   包含在單引號或雙引號中的字串會直接顯示出來,它不會影響格式化 (如:引號內格式訂為 "I am smart",則顯示出來的字串即為 I am smart。

    formatNum (數字類的格式) 的形式如下:

    "%" [索引 ":"] ["-"] [寬度] ["." 精確度] Type

    它的形式由%開始,而接在%後面的中括弧內的指定格式是選擇性的,您可以指定,也可不指定它的格式,而最後面可能出現的數值型態(Type)說明如下:

    Type

    顯示說明

    d   小數 (Decimal)。傳入引數必須是整數,數值會被轉換成小數點字串,如果字串含精確度的指定格式,則產生的結果字串至少必須包含指定精確度的位數;如果數值含較少的位數,則產生的結果字串左邊會補 0。
    e   科學數字 (Scientific)。傳入引數必須為浮點值,數值會被轉換成"-d.ddd...E+ddd"字串形式,產生的結果字串如果是負數則會有負號在前面,小數點前面一定會有一數字。
    f   固定數 (Fixed)。傳入引數必須為浮點值,數值會被轉換成"-ddd.ddd..."字串形式,產生的結果字串如果是負數則會有負號在前面。
    g   一般數字 (General)。傳入引數必須為浮點值,數值會被轉換成最短的可能字串 (引用固定數或科學數字格式), 精確度的指定格式會反應在產生的結果字串,產生的結果字串預設精確度到 15位。
    n   數字 (Number)。傳入引數必須為浮點值,數值會被轉換成"-d,ddd,ddd.ddd..."字串形式,"n"的格式相當於"f"格式,除非產生的結果字串含有上千個分隔符號。
    m   貨幣數字 (Money)。傳入引數必須為浮點值,數值會被轉換成貨幣金額的字串,它的轉換是使用系統預設格式,會因不同的操作系統而有所不同,如果字串內含精確度的指定格式,則數值會將系統預設的格式蓋過去。
    s   字串 (String)。傳入引數必須為字元或字串,產生結果字串的精確度會到指定的最大長度,如果傳入引數的字串長度超過最大長度,則字串會被截掉。
    x   十六進位數字 (Hexadecimal)。傳入引數必須為整數,數值會被轉換成16進位數字,如果字串內含精確度的指定格式,則產生結果字串至少必須包含指定精確度的位數,如果數值含較少位數,則產生的結果字串左邊會補 0。

    注意:以上格式會隨系統的不同而稍有不同,例如:在中文操作系統上使用時,設定的格式會以中文顯示,而在英文操作系統上使用時,則設定的格式會以英文顯示。

    Type format (結合日期時間類與數字類的格式) 說明如下:

    Type format

    顯示說明

    S 字串 (String),此為預設格式。format省略。
    D formatDt 日期時間 (DateTime)。例如:'yy/mm/dd'。
    N formatNum 數字 (Number)。例如:'%.4x'、'%d'、'%5.3f'等。
    B format 邏輯 (Boolean)。例如:'Yes/No'、'是/否'、'作過/沒作過'等,如果是True則顯示Yes,、是、作過;如果是False則顯示No、否、沒作過。
    C 貨幣 (Currency)。format省略。

    測試 Mail Merge 的主要步驟:

    我們提供了 Mail Merge 的範例文件檔案 "MailSample1.txt" 供您編輯 Mail Merge 文件的參考。

    1. 點一下畫面上的從已儲存之郵件檔案輸入(*.eml或*.txt)按鍵,將您編輯好的文件載入。
    2. 點一下主選單上的名單管理】 進入名單管理總管畫面。
    3. 在名單管理總管畫面上,上排的功能鍵點一下 name-3.GIF (184 bytes) 檢視目前的記錄 按鍵,即可針對不同的欄位編輯需要的欄位值,編輯完畢,關閉該視窗。Mail Merge會利用目前的記錄產生出最後的結果
    4. 關閉名單管理總管畫面後,到檔案主選單上點選測試 Mail Merge將您要測試的結果存成一個檔案,在此範例我們將它存成 "Result.txt"。

    注意:一旦您編輯的格式有錯誤,測試結果的檔案中 (如 "Result.txt") 會出現訊息如:Format '%.2g' invalid or incompatible with argument

    以下為 "MailSample1.txt" 及 "Result.txt" 的範例內容:

    [MailSample1.txt]

    From: you@#%domain#
    To: #$EMail#
    Subject: #%random,,,'%.4x'#
    測試郵件住址
    MIME-Version: 1.0
    Content-type: text/plain; charset=BIG5
    Content-Transfer-Encoding: 8bit

    您好:

    您的會員資格將於#$到期日,d,'"西元"yyyy"年"mm"月"dd"日"'#到期
    應繳納NT$#$欠款,C#的會費,
    告訴您一個小秘密, 您的紅利積點是#$浮點數#, 最近#$邏輯,B,'已/未曾'#吃過麥當勞,
    郵件住址是#$EMail#, 對不對?

    如果錯誤的話, 請來信告知.

    現在時間:#%now,'dd/mm/yyyy dddd am/pmhh:nn:ss'#

    [Result.txt]

    From: you@sparc4.cc.ncku.edu.tw
    To: abc@sparc4.cc.ncku.edu.tw
    Subject: 4FF72C18
    測試郵件住址
    MIME-Version: 1.0
    Content-type: text/plain; charset=BIG5
    Content-Transfer-Encoding: 8bit

    您好:

    您的會員資格將於西元1999年01月13日到期
    應繳納NT$530的會費,
    告訴您一個小秘密, 您的紅利積點是68, 最近已吃過麥當勞,
    郵件住址是chungho@sparc4.cc.ncku.edu.tw, 對不對?

    如果錯誤的話, 請來信告知.

    現在時間:15/01/1999 星期五 pm05:03:06

    AG00085_.gif (928 bytes)

  4. 跳過已送出的郵件

    每個收件者都會有一個Mail Status (送信狀態), 跳過已送過的郵件 能讓系統會自動偵查該收件者是否已收到信件,而避免重覆送信的困擾,造成寄信及收信者的困擾。

    如果您有需要,也可以全部重新再送一次,這時您只要點選 清除送信狀態(標成未送出) 功能鍵就可以了。您也可以到"名單管理"的畫面下利用"條件過濾"的功能來限制傳送名單。

    AG00085_.gif (928 bytes)

  5. 同一伺服器一次可傳送的人數

    許多郵件伺服器都會限制一次傳送的人數,如果太多就會認為你在送廣告信而予以過濾。通常最高的人數是八至二十。因此,您可以藉著設定此一數值來控制傳送的速度與被接受的機率。
    請注意,如果您希望加快傳送速度,且沒有啟動"Mail Merge",則可將此一數值設得大一點,這樣可以將信件一次送給很多人。如果啟動了"Mail Merge",因為每封信都變得獨一無二,所以此一設定值變得沒有意義,程式會自動將它看成是"1"。
    如果您想要針對不同的郵件伺服器作出不同的限制,則用在郵件伺服器的名稱後加上該伺服器最多的人數,如"server1.test.com,8",表示"server1.test.com"的最大限制人數是8。

    AG00085_.gif (928 bytes)

  6. 郵件名單狀態的說明

    空白表示清除狀態

    OK -- 傳送成功,表示郵件伺服器沒有拒絕此收件者。

               請注意,郵件伺服器接受此一收件者並不代表它就是正確的住址。

    BH -- Bad Host,此時無法連接該郵件伺服器。

    SE -- Sender error,郵件伺服器回應"送信者錯誤"。

    DE -- Data error,郵件伺服器於傳送郵件資料時錯誤。

    ER -- Error,郵件主機拒收此一收信人。

    AG00085_.gif (928 bytes)