เอกสารนี้จะให้ข้อมูลสำหรับการตั้งค่าเครือข่ายและแก้ไขจุดบกพร่องสำหรับปัญหาต่างๆ ที่อาจเกิดขึ้นได้
ไคลเอ็นต์ WhatsApp Business API มีข้อกำหนดของเครือข่ายบางอย่างในการเชื่อมต่อกับเซิร์ฟเวอร์ WhatsApp หากธุรกิจของคุณไม่สามารถทำสิ่งต่างๆ ด้านล่างนี้ได้ เราต้องขออภัยที่ไม่สามารถสนับสนุนการผสานการทำงาน WhatsApp ให้คุณได้
เราเข้าใจดีว่าธุรกิจที่แตกต่างกันย่อมมีการกำหนดค่าเครือข่ายและข้อกังวลเรื่องการรักษาความปลอดภัยที่แตกต่างกันตามไปด้วย โปรดติดต่อขอรับความช่วยเหลือโดยตรงหากเอกสารนี้ไม่เพียงพอสำหรับการตั้งค่าของคุณ เนื่องจากคุณอาจมีข้อกำหนดด้านการเชื่อมต่อหรือการรักษาความปลอดภัยใดๆ เป็นพิเศษ
ไคลเอ็นต์ WhatsApp Business API จำเป็นต้องมีการเชื่อมต่อ TCP แบบระยะยาว ระบบจะส่งคำขอเป็นระยะๆ เพื่อไม่ให้การเชื่อมต่อหยุดนิ่ง อย่างไรก็ตาม คุณจะต้องตรวจสอบให้แน่ใจว่าไฟร์วอลล์ เราเตอร์ การรักษาความปลอดภัย ฯลฯ ของคุณไม่ได้ยุติการเชื่อมต่อ TCP แบบระยะยาว
พอร์ตที่ใช้สำหรับการรับส่งข้อมูลขาออกมีอยู่ 2 พอร์ตดังนี้
5222
443
พอร์ตเหล่านี้จะไม่รับหรือไม่ใช้สำหรับการรับส่งข้อมูลขาเข้า ไฟร์วอลล์ของธุรกิจคุณยังคงป้องกันการรับส่งข้อมูลขาเข้าได้ตามปกติ
พอร์ตเริ่มต้นสำหรับไคลเอ็นต์ WhatsApp Business API คือ 5222
หากพอร์ตนี้ไม่พร้อมใช้งาน แอพพลิเคชั่นจะเปลี่ยนไปใช้พอร์ต 443
ทั้งนี้ คุณจำเป็นต้องเปิดพอร์ต 443
สำหรับ HTTPS
เป็นขั้นต่ำสำหรับการลงทะเบียนและการรีสตาร์ทแอพพลิเคชั่น คุณสามารถปิดพอร์ต 5222
ไว้และเปิดพอร์ต 443
ได้ แต่คุณไม่สามารถเปิดพอร์ต 5222
โดยไม่เปิดพอร์ต 443
ได้
เราขอแนะนำให้คุณเปิดทั้ง 2 พอร์ตนี้ และอนุญาตการรับส่งข้อมูลขาออกทั้งหมด
ไคลเอ็นต์ WhatsApp Business API จะใช้โปรโตคอล 2 ประเภทดังนี้
chatd
HTTPS
โปรโตคอลแชทที่เป็นกรรมสิทธิ์ของ WhatsApp ซึ่งเรียกว่า chatd
จะใช้เพื่อส่งข้อความและข้อมูลแบบเข้ารหัสไปยังและจากเซิร์ฟเวอร์ WhatsApp ทั้งนี้ เนื่องจากเป็นโปรโตคอลที่เป็นกรรมสิทธิ์ เราจึงจำเป็นต้องให้พอร์ตที่คุณเปิดนั้นอยู่ในรายการที่อนุญาตสำหรับการรับส่งข้อมูลขาออกทั้งหมด ไฟร์วอลล์และพร็อกซีบางอย่างจะยุติการเชื่อมต่อที่ไม่ใช่แบบ SSL ซึ่งจะขัดขวางไม่ให้แอพพลิเคชั่นสามารถเชื่อมต่อกับเซิร์ฟเวอร์ WhatsApp ได้
WhatsApp จะใช้ HTTPS
ในระหว่างการลงทะเบียน ทั้งยังจำเป็นในการรีสตาร์ทอีกด้วย เราไม่แนะนำให้บล็อก HTTPS
หลังการลงทะเบียน เนื่องจากคุณจะไม่มีทางรู้ได้เลยว่าคุณจะต้องลงทะเบียนอีกครั้งหรือรีสตาร์ทแอพพลิเคชั่นเมื่อใด
WhatsApp ใช้ที่อยู่ IP ต่างๆ มากมายสำหรับเซิร์ฟเวอร์ คุณสามารถพยายามอนุญาตที่อยู่ IP ทั้งหมดได้ แต่คุณควรอนุญาตการรับส่งข้อมูลขาออกและการเชื่อมต่อทั้งหมดจากพอร์ตข้างต้นจึงจะเป็นการดีที่สุด
ที่อยู่ IP และช่วงของเซิร์ฟเวอร์ WhatsApp (ไฟล์ .zip)รายการนี้อาจมีการเปลี่ยนแปลงบ่อยครั้ง ด้วยเหตุนี้ เราจึงขอแนะนำให้คุณอนุญาตการรับส่งข้อมูลขาออกทั้งหมดจากพอร์ต 5222
หรือ 443
เพื่อช่วยให้คุณไม่จำเป็นต้องอัพเดตรายการที่อนุญาตนี้ในเครือข่ายของคุณทุกครั้งที่มีการเปลี่ยนแปลง
คุณสามารถเพิ่มเซิร์ฟเวอร์ WhatsApp ลงในรายการที่อนุญาตได้โดยใช้ชื่อโฮสต์ แทนที่จะใช้ที่อยู่ IP
ทั้งนี้ ชื่อโฮสต์ของเซิร์ฟเวอร์ WhatsApp ที่ไคลเอ็นต์ WhatsApp Business API กำหนดให้มีการเชื่อมต่อมีดังต่อไปนี้
.*.cdn.whatsapp.net
g.whatsapp.net
graph.facebook.com
graph.whatsapp.com
media-.*.cdn.whatsapp.net
media..*.fna.whatsapp.net
mmg.whatsapp.net
pps.whatsapp.net
static.whatsapp.net
v.whatsapp.net
คุณยังจำเป็นต้องอนุญาตให้เข้าถึงที่จัดเก็บของเราใน JFrog ซึ่งเป็นจุดที่เราโฮสต์รูปภาพคอนเทนเนอร์ Docker เอาไว้เพื่อใช้ดาวน์โหลด
คุณจะต้องใช้ชื่อโฮสต์ในรายการที่อนุญาตของเราสำหรับ JFrog เนื่องจากไม่สามารถระบุที่อยู่ IP ได้
ชื่อโฮสต์ JFrog ที่จำเป็นมีดังนี้
docker.whatsapp.biz
dl.bintray.com
akamai.bintray.com
การเพิ่มชื่อโฮสต์ลงในรายการที่อนุญาตอาจใช้ไม่ได้ผลและคุณจะต้องเพิ่มที่อยู่ IP ทั้งหมดลงในรายการที่อนุญาตแทน ทั้งนี้ขึ้นอยู่กับไฟร์วอลล์ของคุณและการทำงานของไฟร์วอลล์นั้น
ตัวอย่างลักษณะการทำงานของไฟร์วอลล์ที่จะใช้ไม่ได้ผลหากใช้เพียงชื่อโฮสต์ในรายการที่อนุญาตมีดังต่อไปนี้
HTTP
/HTTPS
ในกรณีที่ไฟร์วอลล์ของคุณแสดงให้เห็นลักษณะการทำงานอย่างใดอย่างหนึ่งเหล่านี้ โปรดใช้ที่อยู่ IP ในรายการที่อนุญาตต่อไป
กำหนดค่าพร็อกซีของเครือข่าย โดยตั้งค่าตัวแปรแวดล้อมต่อไปนี้ให้กับพร็อกซีที่คุณกำลังใช้งาน แล้วส่งไปยัง Coreapp
http_proxy
https_proxy
เครื่องมือ WADebug สามารถช่วยตรวจสอบได้อย่างรวดเร็วว่าคอนเทนเนอร์ของ Coreapp มีสิทธิ์การเข้าถึงเซิร์ฟเวอร์ WhatsApp ที่จำเป็นทั้งหมดหรือไม่ เมื่อติดตั้ง WADebug แล้ว ให้เรียกใช้
wadebug partial check_network