สภาพแวดล้อมของเซิร์ฟเวอร์และ FCM

ฝั่งเซิร์ฟเวอร์ของ Firebase Cloud Messaging ประกอบด้วยองค์ประกอบ 2 ส่วนดังนี้

  • แบ็กเอนด์ FCM ที่ Google มีให้
  • เซิร์ฟเวอร์แอปหรือสภาพแวดล้อมของเซิร์ฟเวอร์ที่เชื่อถือได้อื่นๆ ที่ ตรรกะของเซิร์ฟเวอร์ทำงาน เช่น Cloud Functions for Firebase หรือสภาพแวดล้อมระบบคลาวด์อื่นๆ ที่จัดการโดย Google

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

ข้อกำหนดสำหรับสภาพแวดล้อมเซิร์ฟเวอร์ที่เชื่อถือได้

สภาพแวดล้อมเซิร์ฟเวอร์แอปของคุณต้องเป็นไปตามเกณฑ์ต่อไปนี้

  • ส่งคำขอข้อความที่จัดรูปแบบอย่างถูกต้องไปยังแบ็กเอนด์ FCM ได้
  • สามารถจัดการคำขอและส่งคำขออีกครั้งโดยใช้ Exponential Backoff
  • สามารถจัดเก็บข้อมูลเข้าสู่ระบบการให้สิทธิ์เซิร์ฟเวอร์และโทเค็นการลงทะเบียนไคลเอ็นต์ได้อย่างปลอดภัย

การเลือกตัวเลือกเซิร์ฟเวอร์

คุณจะต้องตัดสินใจว่าจะโต้ตอบกับเซิร์ฟเวอร์ FCM อย่างไร ไม่ว่าจะเป็นการใช้ Firebase Admin SDK หรือโปรโตคอลดิบ Firebase Admin SDK เป็นวิธีที่แนะนำเนื่องจากรองรับภาษาโปรแกรมยอดนิยมต่างๆ และมีวิธีที่สะดวกในการจัดการการตรวจสอบสิทธิ์และการให้สิทธิ์

ตัวเลือกสำหรับการโต้ตอบกับเซิร์ฟเวอร์ FCM มีดังนี้

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 โปรดดูรายละเอียดเกี่ยวกับตัวเลือกส่วนหัวและเนื้อหาที่หัวข้อสร้างคำขอส่งคำขอจากเซิร์ฟเวอร์แอป