Giao diện thể hiện các tùy chọn có thể được cung cấp khi gửi tin nhắn qua API kế thừa FCM.
Xem Xây dựng gửi yêu cầu mẫu mã và tài liệu chi tiết.
Chữ ký:
export interface MessagingOptions
Của cải
Tài sản | Kiểu | Sự miêu tả |
---|---|---|
thu gọnKey | sợi dây | Chuỗi xác định một nhóm tin nhắn (ví dụ: "Có bản cập nhật") có thể được thu gọn để chỉ tin nhắn cuối cùng được gửi khi có thể tiếp tục gửi. Điều này được sử dụng để tránh gửi quá nhiều tin nhắn giống nhau khi thiết bị trực tuyến trở lại hoặc hoạt động. Không có sự đảm bảo nào về thứ tự gửi tin nhắn. Cho phép tối đa bốn phím thu gọn khác nhau tại bất kỳ thời điểm nào. Điều này có nghĩa là máy chủ FCM có thể lưu trữ đồng thời bốn tin nhắn gửi để đồng bộ hóa khác nhau cho mỗi ứng dụng khách. Nếu bạn vượt quá con số này, không có gì đảm bảo máy chủ FCM sẽ giữ bốn khóa thu gọn nào. **Giá trị mặc định:** Không có |
nội dung có sẵn | boolean | Trên iOS, hãy sử dụng trường này để thể hiện content-available trong tải trọng APN. Khi một thông báo hoặc tin nhắn dữ liệu được gửi và điều này được đặt thành true , ứng dụng khách không hoạt động sẽ được đánh thức. Trên Android, tin nhắn dữ liệu sẽ đánh thức ứng dụng theo mặc định. Trên Chrome, cờ này hiện không được hỗ trợ. **Giá trị mặc định:** false |
chạy khô | boolean | Liệu tin nhắn có thực sự nên được gửi hay không. Khi được đặt thành true , cho phép nhà phát triển kiểm tra yêu cầu mà không thực sự gửi tin nhắn. Khi được đặt thành false , tin nhắn sẽ được gửi. **Giá trị mặc định:** false |
nội dung có thể thay đổi | boolean | Trên iOS, hãy sử dụng trường này để thể hiện mutable-content trong tải trọng APN. Khi thông báo được gửi và điều này được đặt thành true , nội dung của thông báo có thể được sửa đổi trước khi nó được hiển thị bằng cách sử dụng tiện ích mở rộng ứng dụng Dịch vụ thông báo . Trên Android và Web, thông số này sẽ bị bỏ qua. **Giá trị mặc định:** false |
sự ưu tiên | sợi dây | Mức độ ưu tiên của tin nhắn. Các giá trị hợp lệ là "normal" và "high". Trên iOS, những điều này tương ứng với mức độ ưu tiên của APN 5 và 10 . Theo mặc định, tin nhắn thông báo được gửi với mức độ ưu tiên cao và tin nhắn dữ liệu được gửi với mức độ ưu tiên bình thường. Mức độ ưu tiên thông thường sẽ tối ưu hóa mức tiêu thụ pin của ứng dụng khách và nên được sử dụng trừ khi yêu cầu phân phối ngay lập tức. Đối với các tin nhắn có mức độ ưu tiên bình thường, ứng dụng có thể nhận được tin nhắn với độ trễ không xác định. Khi một tin nhắn được gửi với mức độ ưu tiên cao, nó sẽ được gửi ngay lập tức và ứng dụng có thể đánh thức thiết bị đang ngủ và mở kết nối mạng tới máy chủ của bạn. Để biết thêm thông tin, hãy xem Đặt mức độ ưu tiên của tin nhắn . **Giá trị mặc định:** "high" đối với tin nhắn thông báo, "normal" đối với tin nhắn dữ liệu |
tên gói bị hạn chế | sợi dây | Tên gói của ứng dụng mà mã thông báo đăng ký phải khớp để nhận được tin nhắn. **Giá trị mặc định:** Không có |
thời gian để sống | con số | Tin nhắn sẽ được lưu giữ trong bao lâu (tính bằng giây) trong bộ lưu trữ FCM nếu thiết bị ngoại tuyến. Thời gian tối đa để được hỗ trợ trực tiếp là bốn tuần và giá trị mặc định cũng là bốn tuần. Để biết thêm thông tin, hãy xem Đặt thời lượng của tin nhắn . **Giá trị mặc định:** 2419200 (biểu thị bốn tuần, tính bằng giây) |
MessagingOptions.collapseKey
Chuỗi xác định một nhóm tin nhắn (ví dụ: "Có bản cập nhật") có thể được thu gọn để chỉ tin nhắn cuối cùng được gửi khi có thể tiếp tục gửi. Điều này được sử dụng để tránh gửi quá nhiều tin nhắn giống nhau khi thiết bị trực tuyến trở lại hoặc hoạt động.
Không có sự đảm bảo nào về thứ tự gửi tin nhắn.
Cho phép tối đa bốn phím thu gọn khác nhau tại bất kỳ thời điểm nào. Điều này có nghĩa là máy chủ FCM có thể lưu trữ đồng thời bốn tin nhắn gửi để đồng bộ hóa khác nhau cho mỗi ứng dụng khách. Nếu bạn vượt quá con số này, không có gì đảm bảo máy chủ FCM sẽ giữ bốn khóa thu gọn nào.
**Giá trị mặc định:** Không có
Chữ ký:
collapseKey?: string;
MessagingOptions.contentCó sẵn
Trên iOS, hãy sử dụng trường này để thể hiện content-available
trong tải trọng APN. Khi một thông báo hoặc tin nhắn dữ liệu được gửi và điều này được đặt thành true
, một ứng dụng khách không hoạt động sẽ được đánh thức. Trên Android, tin nhắn dữ liệu sẽ đánh thức ứng dụng theo mặc định. Trên Chrome, cờ này hiện không được hỗ trợ.
**Giá trị mặc định:** false
Chữ ký:
contentAvailable?: boolean;
MessagingOptions.dryRun
Liệu tin nhắn có thực sự nên được gửi hay không. Khi được đặt thành true
, cho phép nhà phát triển kiểm tra yêu cầu mà không thực sự gửi tin nhắn. Khi được đặt thành false
, tin nhắn sẽ được gửi.
**Giá trị mặc định:** false
Chữ ký:
dryRun?: boolean;
MessagingOptions.mutableContent
Trên iOS, hãy sử dụng trường này để thể hiện mutable-content
trong tải trọng APN. Khi thông báo được gửi và thông báo này được đặt thành true
, nội dung của thông báo có thể được sửa đổi trước khi nó được hiển thị bằng cách sử dụng tiện ích mở rộng ứng dụng Dịch vụ thông báo .
Trên Android và Web, thông số này sẽ bị bỏ qua.
**Giá trị mặc định:** false
Chữ ký:
mutableContent?: boolean;
MessagingOptions.priority
Mức độ ưu tiên của tin nhắn. Các giá trị hợp lệ là "normal"
và "high".
Trên iOS, những điều này tương ứng với mức độ ưu tiên 5
và 10
của APN .
Theo mặc định, tin nhắn thông báo được gửi với mức độ ưu tiên cao và tin nhắn dữ liệu được gửi với mức độ ưu tiên bình thường. Mức độ ưu tiên thông thường sẽ tối ưu hóa mức tiêu thụ pin của ứng dụng khách và nên được sử dụng trừ khi yêu cầu phân phối ngay lập tức. Đối với các tin nhắn có mức độ ưu tiên bình thường, ứng dụng có thể nhận được tin nhắn với độ trễ không xác định.
Khi một tin nhắn được gửi với mức độ ưu tiên cao, nó sẽ được gửi ngay lập tức và ứng dụng có thể đánh thức thiết bị đang ngủ và mở kết nối mạng tới máy chủ của bạn.
Để biết thêm thông tin, hãy xem Đặt mức độ ưu tiên của tin nhắn .
**Giá trị mặc định:** "high"
đối với tin nhắn thông báo, "normal"
đối với tin nhắn dữ liệu
Chữ ký:
priority?: string;
MessagingOptions.restrictedPackageName
Tên gói của ứng dụng mà mã thông báo đăng ký phải khớp để nhận được tin nhắn.
**Giá trị mặc định:** Không có
Chữ ký:
restrictedPackageName?: string;
MessagingOptions.timeToLive
Tin nhắn sẽ được lưu giữ trong bao lâu (tính bằng giây) trong bộ lưu trữ FCM nếu thiết bị ngoại tuyến. Thời gian tối đa để được hỗ trợ trực tiếp là bốn tuần và giá trị mặc định cũng là bốn tuần. Để biết thêm thông tin, hãy xem Đặt thời lượng của tin nhắn .
**Giá trị mặc định:** 2419200
(biểu thị bốn tuần, tính bằng giây)
Chữ ký:
timeToLive?: number;