Messaging class

บริการรับส่งข้อความที่เชื่อมโยงกับแอปที่ให้ไว้

ลายเซ็น:

export declare class Messaging 

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ คีย์ตัวปรับแต่ง ประเภท คำอธิบาย
แอป แอป แอปที่เชื่อมโยงกับอินสแตนซ์บริการ Messaging ปัจจุบัน

เมธอด

วิธีการ คีย์ตัวปรับแต่ง คำอธิบาย
enableLegacyHttpTransport() เปิดใช้การส่ง HTTP/1.1 เดิมสำหรับ sendEach() และ sendEachForMulticast()
ส่ง(ข้อความ, DryRun) ส่งข้อความที่ระบุผ่าน FCM
sendAll(messages, DinRun) ส่งข้อความทั้งหมดในอาร์เรย์ที่ระบุผ่าน Firebase Cloud Messaging ใช้การแบบกลุ่มเพื่อส่งรายการทั้งหมดเป็นการเรียกใช้ RPC ครั้งเดียว เมื่อเทียบกับเมธอด send() วิธีนี้เป็นวิธีส่งข้อความจำนวนมากที่มีประสิทธิภาพมากกว่ารายการคำตอบที่ได้รับจากค่าที่แสดงผลจะสอดคล้องกับลำดับของโทเค็นใน MulticastMessage ข้อผิดพลาดจากวิธีการนี้จะระบุความล้มเหลวทั้งหมด ซึ่งหมายความว่าไม่สามารถส่งข้อความในรายการได้ ความล้มเหลวบางส่วนจะแสดงด้วยค่าผลลัพธ์ BatchResponse
sendIndividual(messages, Dr.Run) ส่งข้อความแต่ละข้อความในอาร์เรย์ที่ระบุผ่าน Firebase Cloud Messagingวิธีนี้จะเรียก RPC ครั้งเดียวสำหรับแต่ละข้อความในอาร์เรย์ที่ระบุวิธีนี้ต่างจาก Messaging.sendAll() รายการคำตอบที่ได้รับจากค่าที่ส่งกลับจะสอดคล้องกับลำดับของ messages ข้อผิดพลาดจากเมธอดนี้หรือ BatchResponse ที่มีข้อผิดพลาดทั้งหมดจะระบุความล้มเหลวทั้งหมด ซึ่งหมายความว่าจะไม่สามารถส่งข้อความในรายการได้ ความล้มเหลวบางส่วนหรือทั้งหมดจะระบุด้วยค่าผลลัพธ์ BatchResponse เท่านั้น
sendeachForMulticast(message, DrryRun) ส่งข้อความมัลติแคสต์ที่ระบุไปยังโทเค็นการลงทะเบียน FCM ทั้งหมดที่ระบุในโทเค็นวิธีนี้ใช้ API Messaging.sendIndividual() ขั้นสูงเพื่อส่งข้อความดังกล่าวไปยังผู้รับเป้าหมายทั้งหมด รายการคำตอบที่ได้รับจากค่าที่แสดงผลจะสอดคล้องกับลำดับของโทเค็นใน MulticastMessage ข้อผิดพลาดจากวิธีการนี้หรือ BatchResponse ที่มีข้อผิดพลาดทั้งหมดจะระบุความล้มเหลวทั้งหมด ซึ่งหมายความว่าระบบอาจส่งข้อความในรายการได้ ระบุความล้มเหลวหรือไม่สำเร็จบางส่วนด้วยค่าผลลัพธ์ BatchResponse เท่านั้น
sendMulticast(message, DinRun) ส่งข้อความมัลติแคสต์ที่ระบุไปยังโทเค็นการลงทะเบียน FCM ทั้งหมดที่ระบุในโทเค็นดังกล่าววิธีนี้ใช้ sendAll() API ขั้นสูงเพื่อส่งข้อความที่ระบุไปยังผู้รับเป้าหมายทั้งหมด รายการคำตอบที่ได้รับจากค่าที่แสดงผลจะสอดคล้องกับลำดับของโทเค็นใน MulticastMessage ข้อผิดพลาดจากวิธีการนี้ระบุถึงความล้มเหลวทั้งหมด ซึ่งหมายความว่าข้อความไม่ได้ส่งไปยังโทเค็นใดๆ ในรายการ ความล้มเหลวบางส่วนจะแสดงด้วยค่าผลลัพธ์ BatchResponse
sendToCondition(เงื่อนไข, เพย์โหลด, ตัวเลือก) ส่งข้อความ FCM ไปยังเงื่อนไขดูตัวอย่างโค้ดและเอกสารโดยละเอียดได้ที่ส่งไปยังเงื่อนไข
sendToDevice(registrationTokenOrTokens, เพย์โหลด, ตัวเลือก) ส่งข้อความ FCM ไปยังอุปกรณ์เครื่องเดียวที่สอดคล้องกับโทเค็นการลงทะเบียนที่ให้ไว้โปรดดูตัวอย่างโค้ดและเอกสารโดยละเอียดที่ส่งไปยังอุปกรณ์แต่ละเครื่อง รับ registrationToken เพื่อส่งไปยังอุปกรณ์เดียวหรือพารามิเตอร์ registrationTokens ที่มีอาร์เรย์ของโทเค็นเพื่อส่งไปยังอุปกรณ์หลายเครื่อง
sendToDeviceGroup(notificationKey, เพย์โหลด, ตัวเลือก) ส่งข้อความ FCM ไปยังกลุ่มอุปกรณ์ที่สอดคล้องกับคีย์การแจ้งเตือนที่ให้ไว้โปรดดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียดที่ส่งไปยังกลุ่มอุปกรณ์
sendToTopic(หัวข้อ, เพย์โหลด, ตัวเลือก) ส่งข้อความ FCM ไปยังหัวข้อโปรดดูตัวอย่างโค้ดและเอกสารโดยละเอียดที่ส่งไปยังหัวข้อ
subscriptionToTopic(registrationTokenOrTokens, หัวข้อ) สมัครรับข้อมูลหัวข้อ FCM ให้กับอุปกรณ์โปรดดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียดที่สมัครรับข้อมูลหัวข้อ นอกจากนี้ คุณยังระบุอาร์เรย์ของโทเค็นเพื่อสมัครใช้บริการอุปกรณ์หลายเครื่องได้
unsubscribeFromTopic(registrationTokenOrTokens, หัวข้อ) ยกเลิกการสมัครอุปกรณ์จากหัวข้อ FCMโปรดดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียดที่ยกเลิกการสมัครรับข้อมูลจากหัวข้อ นอกจากนี้ คุณยังระบุอาร์เรย์ของโทเค็นเพื่อยกเลิกการสมัครรับอีเมลในอุปกรณ์หลายเครื่องได้

Messaging.app

แอปที่เชื่อมโยงกับอินสแตนซ์บริการ Messaging ปัจจุบัน

ลายเซ็น:

get app(): App;

ตัวอย่าง

var app = messaging.app;

Messaging.enableLegacyHttpTransport()

โดยจะนำตัวเลือกนี้ออกเมื่อการใช้งานการส่ง HTTP/2 มีความเสถียรเท่ากับการใช้งาน HTTP/1.1 เดิม

เปิดใช้การส่ง HTTP/1.1 เดิมสำหรับ sendEach() และ sendEachForMulticast()

ลายเซ็น:

enableLegacyHttpTransport(): void;

การคืนสินค้า:

เป็นโมฆะ

ตัวอย่าง

const messaging = getMessaging(app);
messaging.enableLegacyTransport();
messaging.sendEach(messages);

Messaging.send()

ส่งข้อความที่ระบุผ่าน FCM

ลายเซ็น:

send(message: Message, dryRun?: boolean): Promise<string>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
ข้อความ ข้อความ เพย์โหลดของข้อความ
DryRun boolean ระบุว่าจะส่งข้อความในโหมดทดลองเรียกใช้ (การตรวจสอบเท่านั้น) หรือไม่

การคืนสินค้า:

คำมั่นสัญญา<สตริง>

คำมั่นสัญญาที่ทำสำเร็จด้วยสตริงรหัสข้อความที่ไม่ซ้ำกันหลังจากส่งข้อความให้กับบริการ FCM เพื่อนำส่งเรียบร้อยแล้ว

Messaging.sendAll()

โปรดใช้ Messaging.sendIndividual() แทน

ส่งข้อความทั้งหมดในอาร์เรย์ที่ระบุผ่าน Firebase Cloud Messaging ใช้การแบบกลุ่มเพื่อส่งรายการทั้งหมดเป็นการเรียกใช้ RPC ครั้งเดียว เมื่อเทียบกับเมธอด send() วิธีนี้เป็นวิธีส่งข้อความหลายข้อความที่มีประสิทธิภาพมากกว่ามาก

รายการคำตอบที่ได้รับจากค่าผลลัพธ์จะสอดคล้องกับลำดับของโทเค็นใน MulticastMessage ข้อผิดพลาดจากวิธีการนี้จะระบุความล้มเหลวทั้งหมด ซึ่งหมายความว่าไม่สามารถส่งข้อความในรายการได้ ความล้มเหลวบางส่วนจะแสดงด้วยค่าผลลัพธ์ BatchResponse

ลายเซ็น:

sendAll(messages: Message[], dryRun?: boolean): Promise<BatchResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
ข้อความ ข้อความ[] อาร์เรย์ที่ไม่ว่างเปล่าซึ่งมีข้อความได้สูงสุด 500 ข้อความ
DryRun boolean เลือกว่าจะส่งข้อความในโหมดทดลองเรียกใช้ (การตรวจสอบเท่านั้น) หรือไม่

การคืนสินค้า:

สัญญา<BatchResponse>

Promise ที่ตอบสนองด้วยออบเจ็กต์ที่แสดงผลลัพธ์ของการดำเนินการส่ง

Messaging.sendIndividual()

ส่งข้อความแต่ละข้อความในอาร์เรย์ที่ระบุผ่าน Firebase Cloud Messaging

วิธีนี้แตกต่างจาก Messaging.sendAll() ตรงที่วิธีนี้จะเรียกใช้ RPC ครั้งเดียวสำหรับแต่ละข้อความในอาร์เรย์ที่ระบุ

รายการคำตอบที่ได้จากค่าผลลัพธ์สอดคล้องกับลำดับของ messages ข้อผิดพลาดจากเมธอดนี้หรือ BatchResponse ที่มีข้อผิดพลาดทั้งหมดจะระบุความล้มเหลวทั้งหมด ซึ่งหมายความว่าจะไม่สามารถส่งข้อความในรายการได้ ความล้มเหลวบางส่วนหรือทั้งหมดจะระบุด้วยค่าผลลัพธ์ BatchResponse เท่านั้น

ลายเซ็น:

sendEach(messages: Message[], dryRun?: boolean): Promise<BatchResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
ข้อความ ข้อความ[] อาร์เรย์ที่ไม่ว่างเปล่าซึ่งมีข้อความได้สูงสุด 500 ข้อความ
DryRun boolean เลือกว่าจะส่งข้อความในโหมดทดลองเรียกใช้ (การตรวจสอบเท่านั้น) หรือไม่

การคืนสินค้า:

สัญญา<BatchResponse>

Promise ที่ตอบสนองด้วยออบเจ็กต์ที่แสดงผลลัพธ์ของการดำเนินการส่ง

Messaging.sendIndividualForMulticast()

ส่งข้อความมัลติแคสต์ที่ระบุไปยังโทเค็นการลงทะเบียน FCM ทั้งหมดที่ระบุในโทเค็นดังกล่าว

วิธีนี้ใช้ Messaging.sendแต่ละรายการ() API ขั้นสูงเพื่อส่งข้อความที่ระบุไปยังผู้รับเป้าหมายทั้งหมด รายการคำตอบที่ได้รับจากค่าผลลัพธ์จะสอดคล้องกับลำดับของโทเค็นใน MulticastMessage ข้อผิดพลาดจากวิธีการนี้หรือ BatchResponse ที่มีข้อผิดพลาดทั้งหมดจะระบุความล้มเหลวทั้งหมด ซึ่งหมายความว่าระบบอาจส่งข้อความในรายการได้ ระบุความล้มเหลวหรือไม่สำเร็จบางส่วนด้วยค่าผลลัพธ์ BatchResponse เท่านั้น

ลายเซ็น:

sendEachForMulticast(message: MulticastMessage, dryRun?: boolean): Promise<BatchResponse>;

พารามิเตอร์

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

การคืนสินค้า:

สัญญา<BatchResponse>

Promise ที่ตอบสนองด้วยออบเจ็กต์ที่แสดงผลลัพธ์ของการดำเนินการส่ง

Messaging.sendMulticast()

โปรดใช้ Messaging.sendแต่ละรายการForMulticast() แทน

ส่งข้อความมัลติแคสต์ที่ระบุไปยังโทเค็นการลงทะเบียน FCM ทั้งหมดที่ระบุในโทเค็นดังกล่าว

วิธีนี้ใช้ sendAll() API ขั้นสูงเพื่อส่งข้อความที่ระบุไปยังผู้รับเป้าหมายทั้งหมด รายการคำตอบที่ได้รับจากค่าผลลัพธ์จะสอดคล้องกับลำดับของโทเค็นใน MulticastMessage ข้อผิดพลาดจากวิธีการนี้ระบุถึงความล้มเหลวทั้งหมด ซึ่งหมายความว่าข้อความไม่ได้ส่งไปยังโทเค็นใดๆ ในรายการ ความล้มเหลวบางส่วนจะแสดงด้วยค่าผลลัพธ์ BatchResponse

ลายเซ็น:

sendMulticast(message: MulticastMessage, dryRun?: boolean): Promise<BatchResponse>;

พารามิเตอร์

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

การคืนสินค้า:

สัญญา<BatchResponse>

Promise ที่ตอบสนองด้วยออบเจ็กต์ที่แสดงผลลัพธ์ของการดำเนินการส่ง

Messaging.sendToCondition()

โปรดใช้ Messaging.send() แทน

ส่งข้อความ FCM ไปยังเงื่อนไข

ดูส่งไปยังเงื่อนไขสำหรับตัวอย่างโค้ดและเอกสารโดยละเอียด

ลายเซ็น:

sendToCondition(condition: string, payload: MessagingPayload, options?: MessagingOptions): Promise<MessagingConditionResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
เงื่อนไข สตริง เงื่อนไขที่กำหนดว่าหัวข้อใดจะส่งข้อความ
เปย์โหลด เพย์โหลดการรับส่งข้อความ เพย์โหลดของข้อความ
ตัวเลือก ตัวเลือกการรับส่งข้อความ ตัวเลือกในการแก้ไขข้อความ (ไม่บังคับ)

การคืนสินค้า:

สัญญา<MessagingConditionResponse>

คำมั่นสัญญาที่จะตอบสนองความต้องการของเซิร์ฟเวอร์หลังจากที่ส่งข้อความแล้ว

Messaging.sendToDevice()

โปรดใช้ Messaging.send() แทน

ส่งข้อความ FCM ไปยังอุปกรณ์เครื่องเดียวที่สอดคล้องกับโทเค็นการลงทะเบียนที่ให้มา

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

ลายเซ็น:

sendToDevice(registrationTokenOrTokens: string | string[], payload: MessagingPayload, options?: MessagingOptions): Promise<MessagingDevicesResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
RegisterTokenOrTokens สตริง | สตริง[]
เปย์โหลด เพย์โหลดการรับส่งข้อความ เพย์โหลดของข้อความ
ตัวเลือก ตัวเลือกการรับส่งข้อความ ตัวเลือกในการแก้ไขข้อความ (ไม่บังคับ)

การคืนสินค้า:

สัญญา<MessagingDeviceResponse>

คำมั่นสัญญาที่จะตอบสนองความต้องการของเซิร์ฟเวอร์หลังจากที่ส่งข้อความแล้ว

Messaging.sendToDeviceGroup()

โปรดใช้ Messaging.send() แทน

ส่งข้อความ FCM ไปยังกลุ่มอุปกรณ์ที่สอดคล้องกับคีย์การแจ้งเตือนที่ให้ไว้

โปรดดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียดที่ส่งไปยังกลุ่มอุปกรณ์

ลายเซ็น:

sendToDeviceGroup(notificationKey: string, payload: MessagingPayload, options?: MessagingOptions): Promise<MessagingDeviceGroupResponse>;

พารามิเตอร์

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

การคืนสินค้า:

สัญญา<MessagingDeviceGroupResponse>

คำมั่นสัญญาที่จะตอบสนองความต้องการของเซิร์ฟเวอร์หลังจากที่ส่งข้อความแล้ว

Messaging.sendToTopic()

โปรดใช้ Messaging.send() แทน

ส่งข้อความ FCM ไปยังหัวข้อ

โปรดดูตัวอย่างโค้ดและเอกสารโดยละเอียดที่ส่งไปยังหัวข้อ

ลายเซ็น:

sendToTopic(topic: string, payload: MessagingPayload, options?: MessagingOptions): Promise<MessagingTopicResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
หัวข้อ สตริง หัวข้อที่จะส่งข้อความ
เปย์โหลด เพย์โหลดการรับส่งข้อความ เพย์โหลดของข้อความ
ตัวเลือก ตัวเลือกการรับส่งข้อความ ตัวเลือกในการแก้ไขข้อความ (ไม่บังคับ)

การคืนสินค้า:

สัญญา<MessagingTopicResponse>

คำมั่นสัญญาที่จะตอบสนองความต้องการของเซิร์ฟเวอร์หลังจากที่ส่งข้อความแล้ว

Messaging.subscriptionToTopic()

สมัครรับข้อมูลหัวข้อ FCM ในอุปกรณ์

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

ลายเซ็น:

subscribeToTopic(registrationTokenOrTokens: string | string[], topic: string): Promise<MessagingTopicManagementResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
RegisterTokenOrTokens สตริง | สตริง[]
หัวข้อ สตริง หัวข้อที่จะติดตาม

การคืนสินค้า:

Promise<MessagingTopicManagementResponse>

คำมั่นสัญญาที่ตรงกับการตอบกลับของเซิร์ฟเวอร์หลังจากที่อุปกรณ์สมัครรับข้อมูลหัวข้อดังกล่าว

Messaging.unsubscribeFromTopic()

ยกเลิกการสมัครอุปกรณ์จากหัวข้อ FCM

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

ลายเซ็น:

unsubscribeFromTopic(registrationTokenOrTokens: string | string[], topic: string): Promise<MessagingTopicManagementResponse>;

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
RegisterTokenOrTokens สตริง | สตริง[]
หัวข้อ สตริง หัวข้อที่จะยกเลิกการสมัคร

การคืนสินค้า:

Promise<MessagingTopicManagementResponse>

คำมั่นสัญญาที่จะตอบสนองความต้องการของเซิร์ฟเวอร์หลังจากที่อุปกรณ์ยกเลิกการสมัครรับหัวข้อดังกล่าว