สภาพแวดล้อมของเซิร์ฟเวอร์และ FCM
ฝั่งเซิร์ฟเวอร์ของ Firebase Cloud Messaging ประกอบด้วย 2 คอมโพเนนต์ ดังนี้
- แบ็กเอนด์ FCM ที่ Google มีให้
- เซิร์ฟเวอร์แอปหรือสภาพแวดล้อมเซิร์ฟเวอร์ที่เชื่อถือได้อื่นๆ ที่รันตรรกะเซิร์ฟเวอร์ เช่น Cloud Functions สำหรับ Firebase หรือสภาพแวดล้อมระบบคลาวด์อื่นๆ ที่ Google จัดการ
เซิร์ฟเวอร์แอปหรือสภาพแวดล้อมเซิร์ฟเวอร์ที่เชื่อถือได้จะส่งคําขอข้อความไปยังแบ็กเอนด์ FCM จากนั้นแบ็กเอนด์จะกําหนดเส้นทางข้อความไปยังแอปไคลเอ็นต์ที่ทํางานบนอุปกรณ์ของผู้ใช้
ข้อกำหนดสำหรับสภาพแวดล้อมเซิร์ฟเวอร์ที่เชื่อถือได้
สภาพแวดล้อมเซิร์ฟเวอร์แอปของคุณต้องเป็นไปตามเกณฑ์ต่อไปนี้
- ส่งคำขอข้อความที่จัดรูปแบบอย่างถูกต้องไปยังแบ็กเอนด์ FCM ได้
- จัดการคำขอและส่งคำขออีกครั้งได้โดยใช้ วิธีลดจำนวนคำขอ
- จัดเก็บข้อมูลเข้าสู่ระบบการให้สิทธิ์เซิร์ฟเวอร์และโทเค็นการลงทะเบียนไคลเอ็นต์ได้อย่างปลอดภัย
การเลือกตัวเลือกเซิร์ฟเวอร์
คุณต้องตัดสินใจเลือกวิธีโต้ตอบกับเซิร์ฟเวอร์ FCM โดยใช้ Firebase Admin SDK หรือโปรโตคอลไฟล์ดิบ เราขอแนะนำให้ใช้ Firebase Admin SDK เนื่องจากรองรับภาษาโปรแกรมยอดนิยมและวิธีการที่สะดวกในการจัดการการตรวจสอบสิทธิ์และการให้สิทธิ์
ตัวเลือกสำหรับการโต้ตอบกับเซิร์ฟเวอร์ FCM มีดังนี้
- Firebase Admin SDK ซึ่งรองรับ Node, Java, Python, C# และ Go
- FCM HTTP v1 API ซึ่งเป็น REST API ที่มีการให้สิทธิ์ที่ปลอดภัยและ ความสามารถในการรับส่งข้อความข้ามแพลตฟอร์มที่ยืดหยุ่น (Firebase Admin SDK จะอิงตามโปรโตคอลนี้และมีข้อดีในตัวทั้งหมด)
Firebase Admin SDK ในราคา FCM
Admin FCM API จะจัดการการตรวจสอบสิทธิ์กับแบ็กเอนด์ รวมถึงอำนวยความสะดวกในการส่งข้อความและจัดการการติดตามหัวข้อ Firebase Admin SDK ช่วยให้คุณทำสิ่งต่อไปนี้ได้
- ส่งข้อความไปยังอุปกรณ์แต่ละเครื่อง
- ส่งข้อความไปยังหัวข้อและคำสั่งเงื่อนไขที่ตรงกับหัวข้ออย่างน้อย 1 หัวข้อ
- ติดตามและเลิกติดตามหัวข้อในอุปกรณ์
- สร้างเพย์โหลดข้อความที่ปรับให้เหมาะกับแพลตฟอร์มเป้าหมายต่างๆ
Admin Node.js SDK มีวิธีส่งข้อความถึงกลุ่มอุปกรณ์
หากต้องการตั้งค่า Firebase Admin SDK โปรดดูหัวข้อเพิ่ม Firebase Admin SDK ลงในเซิร์ฟเวอร์ หากมีโปรเจ็กต์ Firebase อยู่แล้ว ให้เริ่มด้วยเพิ่ม SDK นอกจากนี้ อย่าลืมเปิดใช้ Cloud Messaging API ในหน้าการตั้งค่า Cloud Messaging สำหรับโปรเจ็กต์ของคุณ จากนั้นเมื่อติดตั้ง Firebase Admin SDK แล้ว คุณสามารถเริ่มเขียนตรรกะเพื่อสร้างคําขอส่ง
FCM โปรโตคอลเซิร์ฟเวอร์
FCM มี FCM HTTP v1 API สําหรับนักพัฒนาซอฟต์แวร์ที่ต้องการโปรโตคอลเซิร์ฟเวอร์แบบดิบ
หากต้องการส่งข้อความ เซิร์ฟเวอร์แอปจะส่งคําขอ POST พร้อมส่วนหัว HTTP และเนื้อหา HTTP ที่ประกอบด้วยคู่คีย์-ค่า JSON โปรดดูรายละเอียดเกี่ยวกับตัวเลือกส่วนหัวและเนื้อหาที่หัวข้อสร้างคําขอส่งของเซิร์ฟเวอร์แอป