X-SMTPAPI Extended Field

X-SMTPAPI เป็นวิธีการที่ EngageLab จัดเตรียมไว้สำหรับนักพัฒนาเพื่อปรับแต่งการทำให้เป็นส่วนตัวของอีเมล

EngageLab จะดึงข้อมูลในส่วนหัวที่มี key X-SMTPAPI หากพบส่วนหัวนี้ ระบบจะทำการแปลง value เพื่อเปลี่ยนวิธีการประมวลผลอีเมล นักพัฒนาสามารถใช้ฟิลด์นี้เมื่อทำการรวมระบบผ่าน SMTP หรือ API

วิธีการ API:

x_smtpapi = { "to": ["d@hotmail.com",'i@hotmail.com'], "sub": { "%name%": ['jack', 'rose'], "%money%": ['199', '299'], }, } params['xsmtpapi'] = simplejson.dumps(x_smtpapi)
              
              x_smtpapi = {
    "to": ["d@hotmail.com",'i@hotmail.com'],
    "sub": {
        "%name%": ['jack', 'rose'],
        "%money%": ['199', '299'],
    },
}

params['xsmtpapi'] = simplejson.dumps(x_smtpapi)

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

วิธีการ SMTP:

x_smtpapi = { "to": ["d@hotmail.com",'i@hotmail.com'], "sub": { "%name%": ['jack', 'rose'], "%money%": ['199', '299'], }, } msg['X-SMTPAPI'] = Header(base64.b64encode(simplejson.dumps(x_smtpapi)))
              
              x_smtpapi = {
    "to": ["d@hotmail.com",'i@hotmail.com'],
    "sub": {
        "%name%": ['jack', 'rose'],
        "%money%": ['199', '299'],
    },
}

msg['X-SMTPAPI'] = Header(base64.b64encode(simplejson.dumps(x_smtpapi)))

            
โค้ดนี้โชว์เป็นหน้าต่างลอย
เซิร์ฟเวอร์ SMTP จะทำการตรวจสอบรูปแบบของข้อมูลในส่วนหัวที่มี key X-SMTPAPI หากไม่เป็นไปตามข้อกำหนดข้างต้น จะเกิดข้อผิดพลาด xsmtpapi error โปรดทราบ: เมื่อใช้ SMTP, X-SMTPAPI ต้องเป็นฟิลด์สุดท้ายในส่วนหัว มิฉะนั้นอาจเกิดข้อผิดพลาด xsmtpapi error เมื่อใช้ SMTP, X-SMTPAPI ต้องถูกเข้ารหัสด้วย base64 มิฉะนั้น หลังจากคำขอ SMTP สำเร็จ อีเมลจะถูก EngageLab สกัดกั้นระหว่างการส่งและถือว่าไม่ถูกต้อง - ข้อผิดพลาด worker:invalid XSMTP-API เมื่อใช้ API, ให้ส่ง JSON string โดยตรงโดยไม่ต้องเข้ารหัส base64 ความยาวทั้งหมดของ X-SMTPAPI ไม่สามารถเกิน 1M
              
              เซิร์ฟเวอร์ SMTP จะทำการตรวจสอบรูปแบบของข้อมูลในส่วนหัวที่มี key X-SMTPAPI หากไม่เป็นไปตามข้อกำหนดข้างต้น จะเกิดข้อผิดพลาด xsmtpapi error
โปรดทราบ:

เมื่อใช้ SMTP, X-SMTPAPI ต้องเป็นฟิลด์สุดท้ายในส่วนหัว มิฉะนั้นอาจเกิดข้อผิดพลาด xsmtpapi error
เมื่อใช้ SMTP, X-SMTPAPI ต้องถูกเข้ารหัสด้วย base64 มิฉะนั้น หลังจากคำขอ SMTP สำเร็จ อีเมลจะถูก EngageLab สกัดกั้นระหว่างการส่งและถือว่าไม่ถูกต้อง - ข้อผิดพลาด worker:invalid XSMTP-API
เมื่อใช้ API, ให้ส่ง JSON string โดยตรงโดยไม่ต้องเข้ารหัส base64
ความยาวทั้งหมดของ X-SMTPAPI ไม่สามารถเกิน 1M

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

โครงสร้างและการใช้งาน JSON string ที่ห่อหุ้มใน value มีดังนี้:

to ประกอบด้วยอาร์เรย์ของที่อยู่อีเมลผู้รับ ระบุผู้รับของอีเมล

{ "to": ["ben@engagelab.com", "joe@engagelab.com"] }
              
              
    {
        "to": ["ben@engagelab.com", "joe@engagelab.com"]
    }

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

หมายเหตุ:

  • to ที่นี่จะเขียนทับพารามิเตอร์ผู้รับ to
  • จำนวนผู้รับใน to ที่นี่ไม่สามารถเกิน 1000
  • หากส่วนหัวของอีเมลมีขนาดน้อยกว่า 1MB จะไม่มีการดำเนินการใดๆ
  • หากส่วนหัวของอีเมลมีขนาดใหญ่กว่า 1MB จะตรวจสอบตามจำนวนที่อยู่ที่ส่งมา หากแต่ละที่อยู่มีขนาดน้อยกว่า 10KB จะสามารถส่งได้; หากมากกว่า 10KB จะไม่สามารถส่งได้

sub เป็นอาร์เรย์เชื่อมโยง โดยที่ key เป็น "ตัวแปร" และ value เป็น "อาร์เรย์ของค่าที่ใช้แทน"

คำอธิบายการใช้งาน: แต่ละ "ตัวแปร" จะสอดคล้องกับ "อาร์เรย์ของค่าที่ใช้แทน" เมื่อแทนค่าคอนเทนต์อีเมล แต่ละ "ผู้รับ" จะใช้ค่าที่ตำแหน่งที่สอดคล้องกันใน "อาร์เรย์ของค่าที่ใช้แทน" เพื่อแทนค่าของ "ตัวแปร" ตามตำแหน่งของพวกเขาใน "อาร์เรย์ผู้รับ"

ดูตัวอย่างด้านล่าง:

# คอนเทนต์อีเมล เรียน %name%: สวัสดี! ยอดใช้จ่ายของคุณที่ XX ในเดือนนี้คือ: %money% บาท #--------------------------------------------------- # X-SMTPAPI { "to": ["ben@engagelab.com", "joe@engagelab.com"], "sub": { "%name%": ["Ben", "Joe"], "%money%":[288, 497] } } #--------------------------------------------------- # อีเมลที่ได้รับโดย ben@engagelab.com: เรียน Ben: สวัสดี! ยอดใช้จ่ายของคุณที่ XX ในเดือนนี้คือ: 288 บาท #--------------------------------------------------- # อีเมลที่ได้รับโดย joe@engagelab.com: เรียน Joe: สวัสดี! ยอดใช้จ่ายของคุณที่ XX ในเดือนนี้คือ: 497 บาท
              
              
# คอนเทนต์อีเมล

เรียน %name%:

    สวัสดี! ยอดใช้จ่ายของคุณที่ XX ในเดือนนี้คือ: %money% บาท

#---------------------------------------------------

# X-SMTPAPI

{
"to": ["ben@engagelab.com", "joe@engagelab.com"],
"sub":
{
"%name%": ["Ben", "Joe"],
"%money%":[288, 497]
}
}

#---------------------------------------------------

# อีเมลที่ได้รับโดย ben@engagelab.com:

เรียน Ben:

    สวัสดี! ยอดใช้จ่ายของคุณที่ XX ในเดือนนี้คือ: 288 บาท

#---------------------------------------------------

# อีเมลที่ได้รับโดย joe@engagelab.com:

เรียน Joe:

    สวัสดี! ยอดใช้จ่ายของคุณที่ XX ในเดือนนี้คือ: 497 บาท

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

apps เป็นอาร์เรย์เชื่อมโยงที่ประกอบด้วยชุดของชื่อแอปพลิเคชัน (unsubscribe, open, click) และการตั้งค่าของพวกมัน การตั้งค่าเหล่านี้จะเขียนทับการตั้งค่าในบัญชีของผู้ใช้

x_smtpapi = { "to": ["xxx@qq.com"], "sub": {"%name%": ["Joe"]}, "filters": { "subscription_tracking": { # Unsubscribe tracking "settings": { "enable": "1" } }, "open_tracking": { # Open tracking "settings": { "enable": "1" } }, "click_tracking": { # Click tracking "settings": { "enable": "1" } } } }
              
              
x_smtpapi =
{

    "to": ["xxx@qq.com"],
    "sub": {"%name%": ["Joe"]},
    "filters": {
    "subscription_tracking": { # Unsubscribe tracking
    "settings": { "enable": "1" }
    },
    "open_tracking": { # Open tracking
    "settings": { "enable": "1" }
    },
    "click_tracking": { # Click tracking
    "settings": { "enable": "1" }
    }
    }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย

page_id

คำอธิบายการใช้งาน:

  • page_id สอดคล้องกับฟิลด์ ID ของหน้าการยกเลิกการสมัครเฉพาะที่สร้างขึ้นภายใต้ "การตั้งค่าการส่ง" - "การตั้งค่าการยกเลิกการสมัคร" - "หน้าการยกเลิกการสมัคร" ในคอนโซล EngageLab

  • ลูกค้าจำเป็นต้องสร้างหน้าการยกเลิกการสมัครในคอนโซล EngageLab ล่วงหน้าก่อนที่จะตั้งค่า page_id ให้กับ ID ที่สอดคล้องกันในระหว่างการส่ง

  • เมื่อส่ง ให้ส่งพารามิเตอร์ผ่าน page_id โดยตั้งค่าให้กับ ID ของหน้าการยกเลิกการสมัครเฉพาะ ในขณะนี้ ลิงก์การยกเลิกการสมัครและหน้าการยกเลิกการสมัครจะใช้ภาษาหรือสไตล์ที่กำหนดค่าไว้

  • ลำดับความสำคัญของพารามิเตอร์ page_id สูงกว่าการตั้งค่าหน้าการยกเลิกการสมัครเริ่มต้นที่สอดคล้องกับ API_USER ระหว่างการส่ง

  • รองรับรูปแบบอาร์เรย์เพื่อระบุหน้าการยกเลิกการสมัคร ซึ่งต้องตรงกับจำนวนผู้รับใน to ของ xsmtpapi ตำแหน่งในอาร์เรย์จะสอดคล้องกับแต่ละ "ผู้รับ" ตามตำแหน่งของพวกเขาใน "อาร์เรย์ผู้รับ" หากจำนวนไม่ตรงกับ to จะใช้ page_id เริ่มต้นภายใต้ apiUser นี้แทน

ดูตัวอย่างด้านล่าง:

x_smtpapi = { "to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"], "sub":{"%name%": ["Joe", "Ben", "Michael"]}, "settings": { "unsubscribe": {"page_id": [1, 2, 3]} } }
              
              x_smtpapi =
{
    "to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"],
    "sub":{"%name%": ["Joe", "Ben", "Michael"]},
    "settings": 
    {
        "unsubscribe": 
            {"page_id": [1, 2, 3]}
    }
}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย
icon
ติดต่อฝ่ายขาย