Обзор
API Google Mobile Data Plan Sharing также позволяет оператору отправлять уведомления пользователю, отправляя PlanStatus .
В настоящее время API поддерживает 7 типов уведомлений.
- Низкий баланс : когда PlanModule .coarseBalanceLevel установлен в значение LOW_QUOTA
- Недостаточно данных : когда PlanModule .coarseBalanceLevel установлен в значение OUT_OF_DATA . Если в дополнение к этому, PlanModule .overUsagePolicy установлен в значение PAY_AS_YOU_GO, пользователь будет уведомлен о переходе в режим оплаты по мере использования.
- Предупреждение об истечении срока действия данных : когда PlanModule.planModuleState имеет значение EXPIRING_SOON
- Активация плана : когда PlanModule.planModuleState имеет значение NEWLY_ACTIVE
- Оплата по мере использования : когда AccountInfo.payAsYouGoCharge заполняется суммой, которую потратил пользователь.
- Пополнение счёта : при заполнении полей AccountInfo.accountTopUp и AccountInfo.accountBalance . Оба эти поля обязательны для отправки пользователю уведомления о пополнении счёта. Если единицы и нано в AccountInfo.accountTopUp равны нулю, сумма пополнения не будет указана в уведомлении.
- Срок действия данных : когда PlanModule.planModuleState имеет значение EXPIRED . Это относится к планам, срок действия которых уже истёк.
Для каждого набора полей пользователю отправляется одно уведомление. Если в одном PlanStatus
задано несколько полей coarseBalanceLevel
или planModuleState
, пользователю будет отправлено одинаковое количество уведомлений.
Требования
Уведомление PlanStatus ДОЛЖНО содержать как можно больше информации о тарифном плане пользователя. Для каждого типа уведомления API Data Plan Sharing также определяет минимальный набор полей, необходимых для формирования текста уведомления. Оператор ОБЯЗАН включить эти поля в уведомление PlanStatus.
Уведомление | Обязательные поля |
---|---|
Низкий баланс | PlanModule.moduleName, PlanModule.byteBalance.remainingBytes |
Нет данных | PlanModule.moduleName |
Предупреждение об истечении срока действия данных | PlanModule.moduleName, PlanModule.expirationTime |
Активация плана | PlanModule.moduleName |
Срок действия данных | PlanModule.moduleName |