เทมเพลตข้อความ

คุณต้องใช้เทมเพลตข้อความในการเปิดการสนทนาเพื่อการตลาด อรรถประโยชน์ และการยืนยันตัวตน การสนทนาเหล่านี้อาจเป็นข้อความการให้บริการลูกค้าหรือการเตือนความจำการนัดหมาย การอัพเดตการชำระเงินหรือการจัดส่ง การแจ้งเตือน และอื่นๆ

ข้อกำหนด

  • เทมเพลตข้อความต้องได้รับอนุมัติเสียก่อนจึงจะนำไปใช้เปิดการสนทนาได้ เรียนรู้เพิ่มเติม
  • หากต้องการเปิดการสนทนาเพื่อการตลาด อรรถประโยชน์ และการยืนยันตัวตนกับลูกค้า ลูกค้าจะต้องเลือกรับข้อความจากธุรกิจของคุณเสียก่อน เรียนรู้เพิ่มเติม

หมวดหมู่เทมเพลตที่รองรับ

โปรดดูที่หมวดหมู่

การแปล

เมื่อส่งเทมเพลตข้อความ คุณต้องระบุภาษาโดยใช้ช่อง language ธุรกิจของคุณมีหน้าที่รับผิดชอบในการแปลทั้งหมดที่คุณต้องการใช้

ภาษาที่รองรับ

ภาษาที่รองรับ

ภาษาที่รองรับสำหรับเทมเพลตข้อความมีดังต่อไปนี้

ภาษาโค้ด

แอฟริกา

af

แอลเบเนีย

sq

อาหรับ

ar

อาเซอร์ไบจาน

az

เบงกาลี

bn

บัลแกเรีย

bg

คะตะลัน

ca

จีน (จีน)

zh_CN

จีน (ฮ่องกง)

zh_HK

จีน (ไต้หวัน)

zh_TW

โครเอเชีย

hr

เช็ก

cs

เดนมาร์ก

da

ดัตช์

NL

ภาษาอังกฤษ

en

อังกฤษ (สหราชอาณาจักร)

en_GB

อังกฤษ (สหรัฐฯ)

en_US

เอสโตเนีย

et

ฟิลิปปินส์

fil

ฟินแลนด์

fi

ฝรั่งเศส

fr

เยอรมัน

de

กรีก

el

คุชราตี

gu

ฮัวซา

ha

ฮิบรู

he

ฮินดี

hi

ฮังการี

hu

อินโดนีเซีย

id

ไอร์แลนด์

ga

อิตาลี

it

ญี่ปุ่น

ja

กันนาดา

kn

คาซัค

kk

เกาหลี

ko

ลาว

lo

ลัตเวีย

lv

ลิทัวเนีย

lt

มาซิโดเนีย

mk

มาเลย์

ms

มลยาฬัม

ml

มราฐี

mr

นอร์เวย์

nb

เปอร์เซีย

fa

โปแลนด์

pl

โปรตุเกส (บราซิล)

pt_BR

โปรตุเกส (โปรตุเกส)

pt_PT

ปัญจาบ

pa

โรมาเนีย

ro

รัสเซีย

ru

เซอร์เบีย

sr

สโลวะเกีย

sk

สโลวีเนีย

sl

สเปน

es

สเปน (อาร์เจนตินา)

es_AR

สเปน (สเปน)

es_ES

สเปน (เม็กซิโก)

es_MX

สวาฮีลี

sw

สวีเดน

sv

ทมิฬ

ta

เตลูกู

te

ไทย

th

ตุรกี

tr

ยูเครน

uk

อูรดู

ur

อุซเบก

uz

เวียดนาม

vi

ซูลู

zu

แพ็คเกจภาษา

ระบบจัดเก็บเทมเพลตข้อความไว้ในแพ็คเกจภาษา โดยแพ็คเกจภาษาคือชุดรวมองค์ประกอบเทมเพลตข้อความสำหรับภาษาหรือรูปแบบภาษาเฉพาะ หากธุรกิจรองรับการแปลอย่างน้อยหนึ่งรายการสำหรับภาษาหรือรูปแบบภาษาหนึ่ง ระบบจะสร้างแพ็คเกจสำหรับภาษาหรือรูปแบบภาษานั้นขึ้น

เนมสเปซเทมเพลตข้อความคือชุดแพ็คเกจภาษาสำหรับธุรกิจเฉพาะ

ตัวเลือกนโยบายภาษา

หากส่งเทมเพลตข้อความโดยตั้งค่าช่อง language: policy เป็น deterministic ซึ่งเป็นค่าเริ่มต้น WhatsApp จะส่งเทมเพลตข้อความในภาษาและรูปแบบภาษาตรงตามที่ร้องขอ จากนั้นอุปกรณ์จะสืบค้นเซิร์ฟเวอร์เพื่อหาแพ็คเกจภาษาของภาษานั้นโดยเฉพาะ

เมื่อส่งข้อความนี้ไปยังอุปกรณ์ อุปกรณ์นั้นจะดำเนินการดังต่อไปนี้

  • การตรวจสอบนโยบาย/กฎเกณฑ์ - "policy": "deterministic" และ "code": "en" ที่กำหนดให้จะมีแพ็คเกจ en ที่แคชบนอุปกรณ์หรือไม่
    • หากมี ให้ไปที่การตรวจสอบองค์ประกอบ
    • หากไม่มี ฉันสามารถค้นหาแพ็คเกจ en บนเซิร์ฟเวอร์ได้หรือไม่
      • หากได้ ให้อัพเดตแคชเฉพาะที่และไปที่การตรวจสอบองค์ประกอบ
      • หากไม่พบ ให้ลงบันทึกความล้มเหลว เซิร์ฟเวอร์จะส่งคืนข้อผิดพลาด structure_unavailable ผ่าน Webhook และจะไม่มีข้อความแสดงขึ้นบนอุปกรณ์

  • ตรวจสอบองค์ประกอบ - มีองค์ประกอบ "element": "hello_world" อยู่หรือไม่
    • หากมี ให้แยกไฟล์พารามิเตอร์และแสดงข้อความบนอุปกรณ์
    • หากไม่มี:
      • หากแพ็คเกจภาษามาจากแคชเฉพาะที่ ให้ดาวน์โหลดแพ็คเกจ en ล่าสุดจากเซิร์ฟเวอร์และดำเนินการตรวจองค์ประกอบซ้ำ
      • หากเพิ่งดาวน์โหลดแพ็คเกจภาษาจากเซิร์ฟเวอร์ ให้ลงบันทึกความล้มเหลว เซิร์ฟเวอร์จะส่งคืนข้อผิดพลาด structure_unavailable ผ่าน Webhook และจะไม่มีข้อความแสดงบนอุปกรณ์

ระบบจะเพิกเฉยต่อการตั้งค่าภาษา/รูปแบบภาษาของอุปกรณ์

ปัญหาที่อาจเกิดขึ้นเมื่อใช้นโยบาย deterministic คือสิ่งที่คุณส่งคำขอมาไม่มีอยู่ ตรวจสอบให้แน่ใจดังนี้

  • เนมสเปซถูกต้อง
  • ชื่อองค์ประกอบถูกต้อง
  • การแปลภาษา/รูปแบบภาษามีอยู่ในองค์ประกอบดังกล่าว
  • จำนวนพารามิเตอร์ที่ส่งไปตรงกับที่ได้ระบุไว้ในเทมเพลตข้อความ

การแปลเป็นภาษาท้องถิ่น

เทมเพลตข้อความมอบการรองรับการแปลภาษาให้เลยโดยไม่ต้องตั้งค่าใดเพิ่มเติม โดยแปลข้อความตามการตั้งค่ารูปแบบภาษาของอุปกรณ์

พารามิเตอร์ที่แปลได้

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

"You made a purchase for {{1}} using a credit card ending in {{2}}."

สำหรับ "namespace": "cdb2df51_9816_c754_c5a4_64cdabdcad3e" ที่มี "element_name": "purchase_with_credit_card" ค่าแรกที่คุณลงรายการจะแทนที่ตัวแปร {{1}} ในเทมเพลตข้อความ และค่าที่สองที่คุณลงรายการจะแทนที่ตัวแปร {{2}}

จำนวนพารามิเตอร์ที่ผ่านเข้าสู่เพย์โหลดต้องตรงกับจำนวนพารามิเตอร์ในอ็อบเจ็กต์ template หากไม่ตรงกัน คุณจะได้รับการเรียกกลับเพื่อแจ้งว่ามีประเด็นปัญหาในการแสดงเทมเพลตข้อความ

พารามิเตอร์เหล่านี้บางส่วน (เช่น date_time หรือ currency) สามารถแปลเป็นภาษาท้องถิ่นได้ เพื่อให้พารามิเตอร์แสดงอย่างเหมาะสมตามการตั้งค่าภาษาและรูปแบบภาษาของลูกค้า หากอุปกรณ์แปลพารามิเตอร์เป็นภาษาถิ่นไม่สำเร็จ อุปกรณ์จะคืนค่ากลับไปเป็นค่าเริ่มต้น fallback_value

หากคุณต้องระบุสกุลเงินและวันที่เพิ่มเติมจากค่า fallback_value ให้ใช้อ็อบเจ็กต์ currency และ date_time ซึ่งช่วยให้ไคลเอ็นต์สามารถแปลข้อมูลนี้เป็นภาษาท้องถิ่นในวิธีที่ดีที่สุดที่เป็นไปได้ และกลับไปใช้ค่าเริ่มต้น fallback_value หากไม่สามารถแปลข้อมูลเป็นภาษาท้องถิ่นได้

ตัวเลือก localizable_params จะแสดงในตารางด้านล่างดังนี้:

พารามิเตอร์

ชื่อคำอธิบาย

fallback_value

ประเภท: สตริง

ต้องระบุ

ข้อความเริ่มต้น หากไม่สามารถแปลภาษาได้ พารามิเตอร์การแปลทั้งหมดต้องมีค่าย้อนกลับ เมื่อระบุข้อความ จำเป็นต้องมีค่าย้อนกลับ

currency

ประเภท: อ็อบเจ็กต์ currency

ระบุหรือไม่ก็ได้

หากใช้อ็อบเจ็กต์ currency อ็อบเจ็กต์จะมีพารามิเตอร์ currency_code และ amount_1000 ที่จำเป็น

date_time

ประเภท: อ็อบเจ็กต์ date_time

ระบุหรือไม่ก็ได้

หากใช้อ็อบเจ็กต์ date_time คุณจำเป็นต้องมีคำจำกัดความเพิ่มเติมสำหรับวันที่และเวลา ซึ่งสามารถดูตัวอย่างสำหรับตัวเลือกทั้งสองนี้ได้ด้านล่าง

อ็อบเจ็กต์ currency

ไคลเอ็นต์ Whatsapp Business API พยายามจัดรูปแบบสกุลเงินตามการแปลเป็นภาษาท้องถิ่นที่ระบุ

ชื่อคำอธิบาย

currency_code

ประเภท: สตริง

ต้องระบุ

โค้ดสกุลเงินตามที่กำหนดไว้ใน ISO 4217

amount_1000

ประเภท: จำนวนเต็ม

ต้องระบุ

จำนวนคูณด้วย 1000

ตัวอย่าง

{
    "type": "currency",
    "currency" : {
        "fallback_value": "$230.99",
        "code": "USD",
        "amount_1000": 230990
    }
}  

อ็อบเจ็กต์ date_time

ไคลเอ็นต์ Whatsapp Business API พยายามจัดรูปแบบวันที่/เวลาตามการแปลเป็นภาษาท้องถิ่นที่ระบุ รูปแบบวันที่และเวลาที่รองรับ ได้แก่

  • องค์ประกอบเวลา — เวลาที่รวบรวมขึ้นจากองค์ประกอบ (กล่าวคือวันของสัปดาห์ เดือน ชั่วโมง เป็นต้น) เวลาที่ระบุจะเท่ากัน ไม่ว่าไคลเอ็นต์จะอยู่ในโซนเวลาใดก็ตาม
  • เวลา Unix — เวลาที่จะแสดงขึ้นอยู่กับโซนเวลาที่ไคลเอ็นต์อยู่

DateTime

ชื่อคำอธิบาย

component

ประเภท: DateTimeComponent

จำเป็นต้องระบุหากไม่มี unix_epoch

วันที่/เวลาตามองค์ประกอบ

unix_epoch

ประเภท: DateTimeUnixEpoch

จำเป็นต้องระบุหากไม่มี component

วันที่/เวลาตาม Unix epoch

ต้องมีช่องต่อไปนี้อย่างน้อยหนึ่งช่องได้แก่ component หรือ unix_epoch หากใช้ จะมีเพียงช่องเดียวที่สามารถแสดงได้

DateTimeComponent

ชื่อคำอธิบาย

day_of_week

ประเภท: สตริง

ระบุหรือไม่ก็ได้

หากแตกต่างจากค่าที่ได้รับจากวันที่ (หากระบุ) ให้ใช้ค่าที่ได้รับ ซึ่งยอมรับได้ทั้งสตริงและตัวเลข
ตัวเลือก:"MONDAY", 1, "TUESDAY", 2, "WEDNESDAY", 3, "THURSDAY", 4, "FRIDAY", 5, "SATURDAY", 6, "SUNDAY", 7

year

ประเภท: จำนวนเต็ม

ระบุหรือไม่ก็ได้

ปี

month

ประเภท: จำนวนเต็ม

ระบุหรือไม่ก็ได้

เดือน

day_of_month

ประเภท: จำนวนเต็ม

ระบุหรือไม่ก็ได้

วันของเดือน

hour

ประเภท: จำนวนเต็ม

ระบุหรือไม่ก็ได้

ชั่วโมง

minute

ประเภท: จำนวนเต็ม

ระบุหรือไม่ก็ได้

นาที

calendar

ประเภท: สตริง

ระบุหรือไม่ก็ได้

ประเภทของปฏิทิน
ตัวเลือก:GREGORIAN, SOLAR_HIJRI

ตัวอย่าง

{
    "type": "date_time",
    "date_time" : {
        "fallback_value": "October 25, 2020",
        "day_of_week": "Saturday",
        "day_of_month": 25,
        "year": 2020,
        "month": 10,
        "hour": 12,
        "minute": 0
    }
}

DateTimeUnixEpoch

DateTimeUnixEpoch จะเลิกใช้งานและ DateTimeComponent จะเป็นค่าเริ่มต้นต่อไป โปรดเปลี่ยนแปลงโค้ดของคุณเพื่อหลีกเลี่ยงประเด็นปัญหา

ชื่อคำอธิบาย

timestamp

ประเภท: จำนวนเต็ม

ต้องระบุ

การประทับเวลาของ Epoch ในหน่วยวินาที ช่องนี้มีแผนที่จะเลิกใช้งาน

ขั้นตอนถัดไป

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

https://developers.facebook.com/docs/whatsapp/message-templates/creation#step-1--create-template-using-the-whatsapp-manager