Click or drag to resize

수신 확인 구현

수신 확인 구현을 위해서는 메시지 고유 ID를 생성한 후 ID를 이용해 수신 확인 용 이미지 링크를 생성해 SendMessage 테이블에 추가하면 됩니다.

수신 확인이 포함된 메일 발송 예제

campaignId에 수신 확인 통계가 집계될 캠페인 ID를 지정합니다. 캠페인 ID는 관리 도구에서 캠페인 기본 정보에 출력되어 있습니다.

GetGuid() 함수를 사용해 메시지 ID를 생성합니다.

메일 메시지 별로 고유한 ID(UUID)를 생성해 다음과 같은 이미지 태그를 생성합니다.

Note Note

<img src="http://your_mailer_domain/trace/mailread.ashx?campaign=캠페인ID&msgid=메시지ID">

생성된 이미지 링크를 HTML 본문에 삽입합니다. 이렇게 발송된 메일을 수신자가 개봉할 경우 img 태그에 명시된 URL로 요청이 전달되고 이 요청을 처리하는 페이지에서 수신 확인 여부를 처리하게 됩니다.

ASP에서 발송할 경우 CreateObject() 대신 Server.CreateObject()를 사용해야 합니다.

Dim conn, connStr, rs 
Dim campaignId, msgId, fromName, fromAddr, toName, toAddr, subject, htmlbody, charset, rrlink

'메시지 구성 데이터를 지정합니다.
campaignId = "{C9A93169-B1C9-4EB8-BE36-AA1412FC14A0}"
msgId = GetGuid()
fromName = "기술지원"
fromAddr = "help@tabslab.com"
toName = "홍길동"
toAddr = "khkim@tabslab.com"
subject = "테스트 메일입니다."
rrlink = "<img src='http://tabsmailer4.tabslab.com/trace/mailread.ashx?campaign=" & campaignId & "&msgid=" & msgId & "'>"
htmlbody = "<html><body><h1>테스트 메일입니다.</h1>" & rrlink & "</body></html>"
charset = "euc-kr"

'데이터베이스에 연결합니다.
connStr = "PROVIDER=SQLOLEDB;Data Source=(local)\TabsMailer4;Initial Catalog=TabsMailer4;User ID=sa;Password=!q7hfnl3sh62@;"
Set conn = CreateObject("ADODB.Connection")
conn.Open connStr

'테이블을 오픈해 새로운 레코드를 추가합니다.
Set rs = CreateObject("ADODB.Recordset")
rs.Open "SendMessage", conn, adOpenDynamic, adLockPessimistic, adCmdTable
rs.AddNew
'메일 발송 정보를 지정합니다.
rs.Fields("sm_cid").Value = campaignId
rs.Fields("sm_msgid").Value = msgId
rs.Fields("sm_fromname").Value = fromName
rs.Fields("sm_fromaddr").Value = fromAddr
rs.Fields("sm_toname").Value = toName
rs.Fields("sm_toaddr").Value = toAddr
rs.Fields("sm_subject").Value = subject
rs.Fields("sm_htmlbody").Value = htmlbody
rs.Fields("sm_charset").Value = charset
rs.Update

rs.Close
conn.Close

'GUID를 생성해서 반환합니다.
Function GetGuid() 
    Dim typeLib
    Set typeLib = CreateObject("Scriptlet.TypeLib") 
    GetGuid = Left(CStr(typeLib.Guid), 38) 
    Set typeLib = Nothing 
End Function