- Ресурс: PlanStatus
- JSON-представление
- План
- PlanCategory
- PlanModule
- ByteQuota
- TimeQuota
- BalanceLevel
- ПланМодульТрафикКатегория
- Политика чрезмерного использования
- PlanState
- RefreshPeriod
- Информация об аккаунте
- Деньги
- AccountBalanceStatus
- Совместимость с Ui
- Тип уведомления
- PlanInfoPerClient
- Ютуб
- RateLimitedStreaming
- AndroidSystemInfo
- CellularInfo
- Тип соединения
- Дозированность
- CpidState
- Методы
Ресурс: PlanStatus
PlanStatus содержит подробную информацию обо всех пакетах мобильных услуг высшего уровня, приобретенных пользователем.
JSON-представление | |
---|---|
{ "name": string, "plans": [ { object ( |
Поля | |
---|---|
name | Имя ресурса PlanStatus в следующем формате: |
plans[] | Список планов, принадлежащих этому пользователю. |
languageCode | Обязательно. Код языка BCP-47, например, «en-US» или «sr-Latn». Подробнее см. http://www.unicode.org/reports/tr35/#Unicode_locale_identifier . |
expireTime | Обязательно. Время, когда информация о группе общих планов устаревает. PlanStatus не будет предоставляться приложениям после этого времени. Время истечения срока действия должно быть в будущем. Метка времени в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти знаков после запятой. Примеры: |
updateTime | Обязательно. Время, когда агент тарифного плана (DPA) извлек информацию о статусе тарифного плана из внутренних систем. Может использоваться для определения актуальности информации о статусе тарифного плана. Время обновления должно быть в прошлом, но не более 30 дней назад. Метка времени в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти знаков после запятой. Примеры: |
title | Название договора, заключённого пользователем с оператором. Оно будет отображаться в заголовке пользовательского интерфейса. |
subscriberId | Уникальный стабильный идентификатор в системе оператора для идентификации пользователя. |
accountInfo | Требуется для пользователей предоплатной версии. Информация о балансе счёта пользователя. |
uiCompatibility | Определяет, может ли PlanStatus отображаться пользователю в пользовательском интерфейсе. Если установлено значение UI_INCOMPATIBLE, PlanStatus может использоваться для отправки уведомлений пользователю, но не будет использоваться для отображения информации о плане. |
notifications[] | Содержит список типов уведомлений, отправляемых пользователю GTAF. GTAF игнорирует это поле, если оно заполнено вызывающим объектом. |
planInfoPerClient | Информация о тарифном плане, относящаяся к конкретному клиенту Google. |
cpidState | Статус CPID, связанный с этим статусом плана. |
План
Подробная информация о тарифном плане пользователя, представляющем собой пакет мобильных услуг высшего уровня, приобретаемый абонентом. Тариф может быть простым, например, «10 ГБ мобильных данных на 30 дней», или представлять собой набор компонентов (которые мы называем модулями тарифного плана). Например, тариф ACME 199, описанный как «2 ГБ данных, безлимитный WhatsApp + безлимитный WeChat и 1 ГБ Spotify», содержит три модуля.
JSON-представление | |
---|---|
{ "planName": string, "planId": string, "planCategory": enum ( |
Поля | |
---|---|
planName | Название тарифного плана мобильной связи пользователя. |
planId | Обязательно. Идентификатор плана, используемый для ссылки на план в предложениях и т. д. |
planCategory | Предоплаченный или постоплатный тарифный план. |
expirationTime | Обязательно. Когда истекает срок действия плана. Для большинства планов это должно быть равно максимальному сроку действия всех модулей плана. Для планов с периодическим обновлением квоты модулей это должно быть общее время истечения срока действия плана, то есть время, когда модули плана перестают обновляться. Это поле следует опустить, если срок действия плана не истекает. Метка времени в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти знаков после запятой. Примеры: |
planModules[] | Подробная информация о модулях плана (подпланах). |
planState | Состояние плана пользователя, например, активный, неактивный и т. д. |
PlanCategory
Возможные типы категорий планов.
Перечисления | |
---|---|
PLAN_CATEGORY_UNSPECIFIED | Не указано. |
PREPAID | Предоплаченный план. |
POSTPAID | Постоплатный план. |
PlanModule
Информация о каждом модуле тарифного плана (или подплане) внутри плана.
JSON-представление | |
---|---|
{ "coarseBalanceLevel": enum ( |
Поля | ||
---|---|---|
coarseBalanceLevel | Грубая информация о балансе. | |
trafficCategories[] | Список категорий трафика, за которые будет взиматься плата по данному модулю плана. | |
expirationTime | Обязательно. Срок действия модуля плана. Для модулей плана с периодически обновляемой квотой это время следующего обновления модуля. Это поле следует пропустить, если срок действия модуля плана не истекает. Метка времени в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти знаков после запятой. Примеры: | |
overUsagePolicy | Политика чрезмерного использования, например, ограничение. | |
maxRateKbps | Максимальная скорость передачи данных, разрешенная этим модулем тарифного плана (в кбит/с). Фактическая скорость передачи данных находится в диапазоне от 0 до maxRateKbps в зависимости от условий сети. Отсутствие значения maxRateKbps или значение 0 означает, что для этого модуля тарифного плана регулирование не применяется. | |
description | Обязательно. Описание модуля плана может быть показано пользователю и должно быть близко к описанию этого модуля плана на рынке. | |
moduleName | Обязательно. Название модуля плана. | |
usedBytes | Общее количество байтов, использованных пользователем из этого модуля плана. | |
planModuleState | Состояние модуля плана, например, активный, неактивный и т. д. | |
refreshPeriod | Период обновления данного модуля плана или REFRESH_PERIOD_NONE, если модуль плана не обновляет свою квоту. Модули плана, обновляющие квоту, делают это один раз за каждый период обновления. | |
balance поля Union. Обязательно. Информация о балансе модуля плана должна быть одной из следующих: byte_balance, time_balance, rough_balance_level. balance может быть только одним из следующих: | ||
byteBalance | Информация о балансе модуля плана в байтах. Для модулей, которые обновляются периодически, это поле отображает баланс байтов за период обновления. | |
timeBalance | Информация о балансе модуля по времени. Для модулей, которые обновляются периодически, это поле отображает баланс времени за период обновления. |
ByteQuota
Информация о квоте/балансе модуля плана на основе байтов.
JSON-представление | |
---|---|
{ "quotaBytes": string, "remainingBytes": string } |
Поля | |
---|---|
quotaBytes | Квота модуля в байтах. Для безлимитных тарифов её следует установить как 2^63 - 1 (9223372036854775807). |
remainingBytes | Требуется для уведомлений о низком балансе. Остаток квоты в байтах. |
TimeQuota
Информация о квоте/балансе модуля временного плана.
JSON-представление | |
---|---|
{ "quotaMinutes": string, "remainingMinutes": string } |
Поля | |
---|---|
quotaMinutes | Квота модуля в минутах для повременного плана, например, 180 минут. |
remainingMinutes | Оставшийся баланс квоты в минутах для повременного плана, например, 40 минут. |
BalanceLevel
Информация о балансе данных модуля грубого плана.
Перечисления | |
---|---|
BALANCE_LEVEL_UNSPECIFIED | Не указано. |
NO_PLAN | Нет тарифного плана. |
OUT_OF_DATA | Остаток данных равен нулю. |
LOW_QUOTA | Остаток данных (или оставшееся время) равен или меньше 10–25% от исходного остатка пакета (или времени). Операторы связи МОГУТ устанавливать точное пороговое значение для каждого пакета по своему усмотрению. |
HIGH_QUOTA | Остаток данных (или оставшееся время) превышает 10–25% от исходного остатка пакета (или времени). Операторы могут устанавливать точное пороговое значение для каждого пакета по своему усмотрению. Высокий остаток данных. |
ПланМодульТрафикКатегория
Категория трафика модуля плана, которая описывает набор трафика приложения, попадающего в определенный модуль плана.
Перечисления | |
---|---|
PLAN_MODULE_TRAFFIC_CATEGORY_UNSPECIFIED | Не указано. |
GENERIC | Универсальный, применяется ко всему трафику. |
VIDEO | Весь видеотрафик. |
VIDEO_BROWSING | Трафик обнаружения видео (просмотра), который относится ко всему трафику видеоприложений, за исключением потоковой передачи видео/аудио. |
VIDEO_OFFLINE | Офлайн-видеотрафик, который представляет собой сумму VIDEO_BROWSING и офлайн-видео/аудиотрафика (не потокового вещания). |
MUSIC | Трафик музыкального приложения. |
GAMING | Трафик игровых приложений. |
SOCIAL | Трафик социальных приложений. |
MESSAGING | Трафик приложения для обмена сообщениями. |
APP_STORE | Трафик магазина приложений, например обновление или загрузка нового приложения. |
Политика чрезмерного использования
Политика превышения квоты: что происходит, когда у пользователя заканчивается квота.
Перечисления | |
---|---|
OVER_USAGE_POLICY_UNSPECIFIED | Не указано. |
THROTTLED | Скорость ограничена. |
BLOCKED | Соединение заблокировано. |
PAY_AS_YOU_GO | Оплата по факту использования. |
PlanState
Перечисление, представляющее различное состояние плана/модуля плана пользователя.
Перечисления | |
---|---|
ACTIVE | Plan/PlanModule активен, и пользователь может использовать данные, предлагаемые как часть модуля. |
INACTIVE | Модуль «План/План» неактивен, и пока у пользователя есть модуль, он не может использовать данные, входящие в его состав. Это может произойти, если модуль предоставляет данные только в определённое время суток или если пользователь приобрёл модуль, но он ещё не активирован. |
EXPIRING_SOON | Срок действия плана/PlanModule скоро истечёт. Вызывающему пользователю следует выбрать соответствующий уровень, чтобы определить, когда устанавливать это значение. Это автоматически означает, что план активен. |
NEWLY_ACTIVE | Plan/PlanModule, который ранее был неактивен или отсутствовал, только что был активирован. Это состояние следует использовать только в течение очень короткого периода после активации, в противном случае следует использовать состояние ACTIVE. Уведомления о состоянии тарифного плана, отправляемые с модулями NEWLY_ACTIVE, следует отправлять с коротким временем жизни (TTL), поскольку состояние NEWLY_ACTIVE очень быстро становится неточным. |
EXPIRED | Срок действия плана/модуля плана истек. Установка этого значения перечисления активирует уведомление об истечении срока действия плана. |
RefreshPeriod
Представляет собой период обновления — регулярный интервал, через который происходит сброс модуля плана.
Перечисления | |
---|---|
REFRESH_PERIOD_NONE | Без периода обновления. Используется, когда модуль плана не повторяется. |
DAILY | Модуль плана обнуляется каждый день. |
MONTHLY | Модуль плана обнуляется каждый месяц. |
BIWEEKLY | Модуль плана обнуляется каждые две недели. |
WEEKLY | Модуль плана обнуляется каждую неделю. |
Информация об аккаунте
Информация о балансе счета предоплаченного пользователя.
JSON-представление | |
---|---|
{ "accountBalance": { object ( |
Поля | |
---|---|
accountBalance | Обязательно. Остаток средств на счете пользователя. |
loanBalance | Обязательно, если применимо. Остаток на счёте пользователя, пополненном денежным займом от оператора. Поле accountBalance (если присутствует) не включает этот баланс. |
unpaidLoan | Сумма денег, которую пользователь должен оператору связи в связи с денежными займами. |
accountBalanceStatus | Обязательно. Указывает состояние баланса счёта. В случае несоответствия времени validUntil и поля accountBalanceStatus используется accountBalanceStatus. |
validUntil | Обязательно. Срок действия баланса. В этом поле будет отображаться значение «Недействителен в течение Метка времени в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти знаков после запятой. Примеры: |
payAsYouGoCharge | Сумма, потраченная пользователем при использовании тарифного плана в режиме оплаты по мере использования. Если это поле заполнено оператором при предоставлении информации об аккаунте GTAF, GTAF попытается отправить пользователю уведомление о том, что он тратит деньги в режиме оплаты по мере использования. |
accountTopUp | Обязательно для уведомления о пополнении счёта. Сумма, которую пользователь пополнил баланс своего счёта. Если это поле заполнено оператором при предоставлении информации об учётной записи в GTAF, GTAF попытается отправить пользователю уведомление о пополнении счёта. |
Деньги
Представляет собой сумму денег с указанным типом валюты.
JSON-представление | |
---|---|
{ "currencyCode": string, "units": string, "nanos": integer } |
Поля | |
---|---|
currencyCode | Трехбуквенный код валюты, определенный в ISO 4217. |
units | Целые единицы суммы. Например, если |
nanos | Количество единиц нано (10^-9) от суммы. Значение должно быть в диапазоне от -999 999 999 до +999 999 999 включительно. Если |
AccountBalanceStatus
Статус кошелька пользователя.
Перечисления | |
---|---|
VALID | Баланс счета пользователя действителен и может быть использован для совершения покупок. |
INVALID | Баланс счета пользователя недействителен и не может быть использован без внесения изменений в счет. |
Совместимость с Ui
Перечисление, указывающее, может ли PlanStatus, которым вы делитесь, быть показан пользователю.
Перечисления | |
---|---|
UI_COMPATIBILITY_UNSPECIFIED | По умолчанию мы предполагаем, что PlanStatus совместим с пользовательским интерфейсом. |
UI_COMPATIBLE | Указывает, что весь PlanStatus совместим с пользовательским интерфейсом и информация о плане может быть показана пользователю. |
UI_INCOMPATIBLE | Указывает, что PlanStatus несовместим с пользовательским интерфейсом. Поля можно использовать для отправки уведомлений пользователю, но нельзя использовать для отображения информации о плане. |
Тип уведомления
Тип уведомления, отправляемого пользователю настроек тарифного плана мобильной связи.
Перечисления | |
---|---|
NOTIFICATION_UNDEFINED | Неизвестный тип жанра уведомления |
NOTIFICATION_LOW_BALANCE_WARNING | Уведомление, предупреждающее пользователей о низком балансе |
NOTIFICATION_DATA_EXPIRATION_WARNING | Уведомление, предупреждающее пользователей об истечении срока действия тарифного плана |
NOTIFICATION_OUT_OF_DATA | Уведомление о том, что у пользователей закончились данные |
NOTIFICATION_PLAN_ACTIVATION | Уведомление о том, что купленный пользователем план теперь активен |
NOTIFICATION_PAY_AS_YOU_GO | Уведомление, информирующее пользователя о том, что он платит за данные по факту использования. |
NOTIFICATION_ACCOUNT_TOP_UP | Уведомление, информирующее пользователя о пополнении баланса его счета. |
NOTIFICATION_DATA_EXPIRED | Уведомление, информирующее пользователя об истечении срока действия его тарифного плана. |
PlanInfoPerClient
Информация о тарифном плане, относящаяся к конкретному клиенту Google.
JSON-представление | |
---|---|
{ "youtube": { object ( |
Поля | |
---|---|
youtube | Информация о плане, связанном с YouTube. |
androidSystemInfo | Информация о плане, относящаяся к системе Android. |
Ютуб
Информация о тарифном плане для YouTube.
JSON-представление | |
---|---|
{
"rateLimitedStreaming": {
object ( |
Поля | |
---|---|
rateLimitedStreaming | Функция потоковой передачи с учетом плана (PAS) YouTube, ограничивающая битрейт передаваемого видео. |
RateLimitedStreaming
Информация о тарифном плане, позволяющая YouTube улучшить пользовательский опыт при потоковой передаче данных с ограниченной скоростью.
JSON-представление | |
---|---|
{ "maxMediaRateKbps": integer } |
Поля | |
---|---|
maxMediaRateKbps | Поддерживаемая скорость передачи данных YouTube для данного пользователя в кбит/с (тысячах бит в секунду). |
AndroidSystemInfo
Информация о тарифном плане, относящаяся ко всей системе Android.
JSON-представление | |
---|---|
{
"cellularInfo": [
{
object ( |
Поля | |
---|---|
cellularInfo[] | Информация о сотовой связи для каждого типа подключения. Например, для каждого типа подключения, например, 4G, 5G и т. д., будет отдельное сообщение cellularInfo. |
CellularInfo
Информация о сотовой связи, которую тарифный план предлагает пользователю.
JSON-представление | |
---|---|
{ "connectionType": enum ( |
Поля | |
---|---|
connectionType | Тип соединения, которое оператор предоставляет пользователю. |
meteredness | Состояние дозируемости плана пользователя. |
Тип соединения
Тип подключения: 2G, 3G, 4G
Перечисления | |
---|---|
CONNECTION_TYPE_UNSPECIFIED | Не указано. |
CONNECTION_2_G | 2G. |
CONNECTION_3_G | 3G. |
CONNECTION_4_G | 4G. |
CONNECTION_5_G | 5G. |
CONNECTION_ALL | Все типы. |
Дозированность
Тип плана, который есть у пользователя
Перечисления | |
---|---|
METEREDNESS_UNSPECIFIED | GTAF не знает о состоянии измеренности тарифного плана пользователя. |
METEREDNESS_UNMETERED | У пользователя безлимитный тарифный план. |
METEREDNESS_METERED | У пользователя тарифный план с оплатой по счетчику. |
CpidState
Перечисление для оператора, представляющее состояние CPID.
Перечисления | |
---|---|
CPID_STATE_UNSPECIFIED | Состояние CPID не указано. Это рассматривается как действительное состояние CPID. |
CPID_INVALIDATED | CPID становится недействительным, и клиент должен получить новый CPID из конечной точки CPID. |
Методы | |
---|---|
| Позволяет оператору мобильной связи (идентифицируемому по уникальному номеру автономной системы (ASN)) добавлять новую запись PlanStatus для пользователя, которая будет использоваться определенным клиентом. |