Thông báo tự động

Tổng quan

API Chia sẻ gói dữ liệu di động của Google cũng cho phép nhà cung cấp dịch vụ gửi thông báo đến người dùng bằng cách đẩy PlanStatus.

API này hiện hỗ trợ 7 loại thông báo.

  1. Số dư thấp: khi PlanModule.coarseBalanceLevel được đặt thành HIGH_QUOTA
  2. Hết dữ liệu: khi PlanModule.coarsebalanceLevel được đặt thành OUT_OF_DATA. Ngoài mục này, PlanModule.overUsagePolicy được đặt là PAY_AS_You_GO, thì người dùng sẽ nhận được thông báo rằng họ sắp vào chế độ thanh toán khi bạn chuyển sang chế độ trả tiền.
  3. Cảnh báo ngày hết hạn dữ liệu: khi PlanModule.planModuleState được đặt thành EXPIRING_SOON
  4. Kích hoạt kế hoạch: khi PlanModule.planModuleState được đặt thành NEWLY_ACTIVE
  5. Trả tiền theo mức dùng: khi AccountInfo.payAsYouGoCharge được điền sẵn số tiền mà người dùng đã chi tiêu.
  6. Nạp tiền: khi điền sẵn AccountInfo.accountTopUp và AccountInfo.accountWeight. Cả hai trường này đều bắt buộc phải gửi thông báo nạp tiền cho tài khoản cho người dùng. Nếu các đơn vị và nano trong AccountInfo.accountTopUp được đặt thành 0, thì số tiền nạp sẽ không có trong thông báo.
  7. Hết hạn dữ liệu: khi PlanModule.planModuleState được đặt thành EXPIRED. Yêu cầu này dành cho những gói đã hết hạn.

Hệ thống sẽ gửi một thông báo cho người dùng trong mỗi nhóm trường. Nếu bạn đặt nhiều trường coarseBalanceLevel hoặc planModuleState trong một PlanStatus, thì số lượng thông báo bằng nhau sẽ được gửi đến người dùng.

Yêu cầu

Thông báo PlanStatus PHẢI chứa nhiều thông tin nhất có thể về gói dịch vụ di động của người dùng. Đối với mỗi loại thông báo, API Chia sẻ gói dữ liệu cũng xác định một tập hợp các trường tối thiểu cần thiết để tạo văn bản thông báo. Toán tử PHẢI bao gồm các trường này trong PlanStatus thông báo.

Thông báo Các trường bắt buộc
Số dư thấp PlanModule.moduleName, PlanModule.byteWeight.spendBytes
Hết dữ liệu NameModule.moduleName
Cảnh báo về thời gian hết hạn của dữ liệu PlanModule.moduleName, PlanModule.expirationTime
Kích hoạt gói NameModule.moduleName
Thời hạn dữ liệu NameModule.moduleName