- Recurso: PlanStatus
- Representación JSON
- Plan
- PlanCategory
- PlanModule
- ByteQuota
- TimeQuota
- BalanceLevel
- PlanModuleTrafficCategory
- OverUsagePolicy
- PlanState
- RefreshPeriod
- AccountInfo
- Dinero
- AccountBalanceStatus
- UiCompatibility
- NotificationType
- PlanInfoPerClient
- YouTube
- RateLimitedStreaming
- AndroidSystemInfo
- CellularInfo
- ConnectionType
- Medición de uso
- CpidState
- Métodos
Recurso: PlanStatus
PlanStatus contiene detalles de todos los paquetes de servicios móviles de nivel superior que compró un usuario.
Representación JSON | |
---|---|
{ "name": string, "plans": [ { object ( |
Campos | |
---|---|
name |
Es el nombre del recurso de PlanStatus con el siguiente formato: |
plans[] |
Es la lista de planes que posee este usuario. |
languageCode |
Es obligatorio. El código de idioma BCP-47, como "en-US" o "sr-Latn". Para obtener más información, consulta http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
expireTime |
Es obligatorio. Es la fecha y hora en que la información del grupo de planes compartidos deja de estar actualizada. Después de este período, PlanStatus no se publicará en las aplicaciones. La hora de vencimiento debe ser posterior a la actual. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
updateTime |
Es obligatorio. Fecha y hora en que el agente del plan de datos (DPA) recuperó la información del estado del plan de los sistemas de backend. Se puede usar para determinar qué tan reciente es la información del estado del plan. La hora de actualización debe ser anterior, pero no puede tener más de 30 días. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
title |
Es el título del contrato que el usuario tiene con el operador. Se mostrará en el encabezado de la IU. |
subscriberId |
Es el identificador estable y único en el sistema del operador para identificar al usuario. |
accountInfo |
Se requiere para los usuarios prepagos. Es la información sobre el saldo de la cuenta del usuario. |
uiCompatibility |
Determina si el PlanStatus se puede mostrar al usuario en una interfaz de usuario. Cuando se establece en UI_INCOMPATIBLE, el PlanStatus se puede usar para enviar notificaciones al usuario, pero no para mostrarle la información del plan. |
notifications[] |
Contiene la lista de tipos de notificaciones que GTAF envía al usuario. GTAF ignora este campo si el llamador lo propaga. |
planInfoPerClient |
Es la información del plan de datos pertinente para un cliente de Google en particular. |
cpidState |
Es el estado del CPID asociado con este estado del plan. |
Plan
Son los detalles del plan para dispositivos móviles del usuario, que es el paquete de servicios para dispositivos móviles de nivel superior que compra un suscriptor. El plan puede ser tan simple como "10 GB de datos móviles por 30 días" o definirse como una colección de componentes (a los que nos referimos como módulos del plan). Por ejemplo, el plan 199 de ACME, que se describe como "2 GB de datos, WhatsApp ilimitado + WeChat ilimitado y 1 GB de Spotify", contiene tres módulos de plan.
Representación JSON | |
---|---|
{ "planName": string, "planId": string, "planCategory": enum ( |
Campos | |
---|---|
planName |
Nombre del plan para dispositivos móviles del usuario. |
planId |
Es obligatorio. Es el identificador del plan que se usa para hacer referencia a él durante las ofertas, etcétera. |
planCategory |
Plan prepagado o pospagado |
expirationTime |
Es obligatorio. Fecha de vencimiento de este plan. En la mayoría de los planes, este valor debe ser igual al máximo de todos los tiempos de vencimiento específicos del módulo del plan. En el caso de los planes que actualizan periódicamente la cuota de módulos, debe ser la hora de vencimiento general del plan, es decir, la hora en la que los módulos del plan dejan de actualizarse. Este campo se debe omitir si el plan no vence. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
planModules[] |
Información detallada sobre los módulos del plan (subplanes) |
planState |
Estado del plan del usuario, p.ej., activo, inactivo, etcétera. |
PlanCategory
Son los tipos de categorías de planes posibles.
Enumeraciones | |
---|---|
PLAN_CATEGORY_UNSPECIFIED |
Sin especificar. |
PREPAID |
Plan prepagado. |
POSTPAID |
Plan pospago |
PlanModule
Es la información de cada módulo del plan de datos (o subplan) dentro de un plan.
Representación JSON | |
---|---|
{ "coarseBalanceLevel": enum ( |
Campos | ||
---|---|---|
coarseBalanceLevel |
Información general del saldo. |
|
trafficCategories[] |
Es la lista de categorías de tráfico que se cobrarán según este módulo del plan. |
|
expirationTime |
Es obligatorio. Es la hora de vencimiento específica del módulo del plan. Para los módulos del plan con cuota que se actualiza periódicamente, esta es la hora de la próxima actualización del módulo. Este campo se debe omitir si el módulo del plan no vence. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
|
overUsagePolicy |
Política de uso excesivo, p.ej., se limitó la velocidad. |
|
maxRateKbps |
Es la velocidad de datos máxima permitida por este módulo del plan en Kbps. La tasa de datos real observada se encuentra entre 0 y maxRateKbps, según las condiciones de la red. Si se omite maxRateKbps o se establece en 0, se indica que no se debe realizar ninguna limitación para este módulo del plan. |
|
description |
Es obligatorio. Es la descripción del módulo del plan, que puede mostrarse al usuario y debe ser similar a la descripción de mercado de este módulo del plan. |
|
moduleName |
Es obligatorio. Es el nombre del módulo del plan. |
|
usedBytes |
Cantidad total de bytes que usó el usuario de este módulo del plan. |
|
planModuleState |
Estado del módulo del plan, p.ej., activo, inactivo, etcétera. |
|
refreshPeriod |
Es el período de actualización de este módulo del plan o REFRESH_PERIOD_NONE si el módulo del plan no actualiza su cuota. Los módulos de planificación que actualizan la cuota lo harán una vez por período de actualización. |
|
Campo de unión balance . Es obligatorio. Es la información del balance del módulo de planificación y debe ser uno de los siguientes: byte_balance, time_balance o coarse_balance_level. Las direcciones (balance ) solo pueden ser una de las siguientes opciones: |
||
byteBalance |
Es la información del saldo del módulo del plan basado en bytes. En el caso de los módulos que se actualizan periódicamente, este campo representa el saldo de bytes por período de actualización. |
|
timeBalance |
Es información sobre el saldo del módulo del plan basado en el tiempo. En el caso de los módulos que se actualizan periódicamente, este campo representa el saldo de tiempo por período de actualización. |
ByteQuota
Es la información sobre la cuota o el saldo del módulo del plan basado en bytes.
Representación JSON | |
---|---|
{ "quotaBytes": string, "remainingBytes": string } |
Campos | |
---|---|
quotaBytes |
Es la cuota del módulo en bytes. En el caso de los planes ilimitados, este valor debe establecerse en 2^63 - 1 (9223372036854775807). |
remainingBytes |
Se requiere para las notificaciones de saldo bajo. Es el saldo de la cuota restante en bytes. |
TimeQuota
Es información sobre la cuota o el saldo del módulo del plan basado en el tiempo.
Representación JSON | |
---|---|
{ "quotaMinutes": string, "remainingMinutes": string } |
Campos | |
---|---|
quotaMinutes |
Cuota del módulo en minutos para el plan basado en el tiempo, p.ej., 180 minutos |
remainingMinutes |
Saldo de cuota restante en minutos para el plan basado en el tiempo, p.ej., 40 minutos |
BalanceLevel
Es información general sobre el balance de datos del módulo de planificación.
Enumeraciones | |
---|---|
BALANCE_LEVEL_UNSPECIFIED |
Sin especificar. |
NO_PLAN |
No se requiere un plan de datos. |
OUT_OF_DATA |
El balance de datos es cero. |
LOW_QUOTA |
El saldo de datos (o el tiempo restante) es igual o inferior al 10-25% del saldo (o tiempo) original del paquete. Los operadores PUEDEN determinar el umbral exacto para cada paquete según lo consideren apropiado. |
HIGH_QUOTA |
El saldo de datos (o el tiempo restante) es más del 10% al 25% del saldo (o tiempo) original del paquete. Los operadores PUEDEN determinar el umbral exacto para cada paquete según lo consideren apropiado. El saldo de datos es alto. |
PlanModuleTrafficCategory
Es la categoría de tráfico del módulo de planificación, que describe el conjunto de tráfico de la aplicación que pertenece a un módulo de planificación en particular.
Enumeraciones | |
---|---|
PLAN_MODULE_TRAFFIC_CATEGORY_UNSPECIFIED |
Sin especificar. |
GENERIC |
Es genérico y se aplica a todo el tráfico. |
VIDEO |
Todo el tráfico de video |
VIDEO_BROWSING |
Tráfico de descubrimiento de video (navegación), que se refiere a todo el tráfico de la app de video, excepto la parte de transmisión de audio o video |
VIDEO_OFFLINE |
Tráfico sin conexión de video, que es la suma del tráfico de VIDEO_BROWSING y el tráfico sin conexión de audio o video (no de transmisión). |
MUSIC |
Tráfico de la app de música |
GAMING |
Tráfico de la app de juegos. |
SOCIAL |
Tráfico de apps sociales |
MESSAGING |
Tráfico de la app de mensajería |
APP_STORE |
Tráfico de la tienda de aplicaciones, como la actualización o descarga de una app nueva |
OverUsagePolicy
Política de uso excesivo: Qué sucede cuando el usuario se queda sin cuota.
Enumeraciones | |
---|---|
OVER_USAGE_POLICY_UNSPECIFIED |
Sin especificar. |
THROTTLED |
La velocidad está limitada. |
BLOCKED |
La conexión está bloqueada. |
PAY_AS_YOU_GO |
Pago por uso |
PlanState
Es una enumeración que representa los diferentes estados del plan o módulo del plan del usuario.
Enumeraciones | |
---|---|
ACTIVE |
Plan/PlanModule está activo y el usuario puede usar los datos que se ofrecen como parte del módulo. |
INACTIVE |
El plan o el módulo del plan están inactivos y, si bien el usuario aún tiene el módulo, no puede usar los datos que forman parte de él. Esto podría suceder si el módulo solo ofrece datos en ciertos momentos del día o si el usuario compró un módulo, pero aún no está activado. |
EXPIRING_SOON |
El Plan o PlanModule vencerá pronto. La entidad llamadora debe elegir el nivel adecuado para determinar cuándo establecer este valor. Esto significa automáticamente que el plan está activo. |
NEWLY_ACTIVE |
Se acaba de activar el Plan o PlanModule que antes estaba inactivo o no existía. Este estado solo se debe usar durante un período muy corto después de la hora de activación. De lo contrario, se debe usar el estado ACTIVE. Las notificaciones de estado del plan de datos que se envían con módulos NEWLY_ACTIVE deben tener un TTL corto, ya que el estado NEWLY_ACTIVE dejará de ser preciso muy rápidamente. |
EXPIRED |
El Plan o PlanModule venció. Si se establece este valor de enumeración, se activa una notificación de vencimiento del plan. |
RefreshPeriod
Representa un período de actualización, el intervalo regular en el que se restablece un módulo del plan.
Enumeraciones | |
---|---|
REFRESH_PERIOD_NONE |
No hay período de actualización. Se usa cuando el módulo del plan no es recurrente. |
DAILY |
El módulo del plan se restablece todos los días. |
MONTHLY |
El módulo del plan se restablece todos los meses. |
BIWEEKLY |
El módulo de plan se restablece cada dos semanas. |
WEEKLY |
El módulo de plan se restablece todas las semanas. |
AccountInfo
Es la información sobre el saldo de la cuenta del usuario prepagado.
Representación JSON | |
---|---|
{ "accountBalance": { object ( |
Campos | |
---|---|
accountBalance |
Es obligatorio. Es el saldo de la cuenta que queda en la cuenta del usuario. |
loanBalance |
Obligatorio si corresponde. Es el saldo restante en la cuenta de usuario que se agregó con un préstamo monetario del operador. Si está presente, el campo accountBalance no incluye este saldo. |
unpaidLoan |
Es la cantidad de dinero que el usuario le debe al operador debido a préstamos monetarios. |
accountBalanceStatus |
Es obligatorio. Indica el estado del saldo de la cuenta. En caso de que no coincidan la fecha y hora de validUntil y el campo accountBalanceStatus, usaremos accountBalanceStatus. |
validUntil |
Es obligatorio. Es la fecha y hora hasta la que es válido el saldo de la cuenta. Este campo se usará para mostrar el mensaje "No válido en Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
payAsYouGoCharge |
Es la cantidad de dinero que el usuario gastó usando el plan en estado de prepago. Si la empresa de transporte completa este campo cuando comparte la información de la cuenta con GTAF, GTAF intentará enviar una notificación al usuario para indicarle que está gastando dinero en un estado de pago por uso. |
accountTopUp |
Es obligatorio para la notificación de recarga de la cuenta. Es la cantidad de dinero que el usuario agregó a su saldo de cuenta. Si la empresa de transporte completa este campo cuando comparte la información de la cuenta con la GTAF, la GTAF intentará enviar una notificación al usuario para indicarle que se agregó saldo a su cuenta. |
Dinero
Representa un importe de dinero con su tipo de moneda.
Representación JSON | |
---|---|
{ "currencyCode": string, "units": string, "nanos": integer } |
Campos | |
---|---|
currencyCode |
El código de moneda de 3 letras definido en el estándar ISO 4217. |
units |
La unidad entera del importe. Por ejemplo, si |
nanos |
Número de unidades nano (10^-9) del importe. Debe ser un valor entre -999,999,999 y +999,999,999. Si |
AccountBalanceStatus
Es el estado de la billetera del usuario.
Enumeraciones | |
---|---|
VALID |
El saldo de la cuenta del usuario es válido y se puede usar para realizar compras. |
INVALID |
El saldo de la cuenta de usuario no es válido y no se puede usar sin realizar cambios en la cuenta. |
UiCompatibility
Es un enum que representa si el PlanStatus que se comparte se puede mostrar al usuario.
Enumeraciones | |
---|---|
UI_COMPATIBILITY_UNSPECIFIED |
De forma predeterminada, supondremos que el PlanStatus es compatible con la IU. |
UI_COMPATIBLE |
Indica que todo el PlanStatus es compatible con la IU y que se puede mostrar la información del plan al usuario. |
UI_INCOMPATIBLE |
Indica que PlanStatus no es compatible con la IU. Los campos se pueden usar para enviar notificaciones al usuario, pero no para mostrarle información del plan. |
NotificationType
Es el tipo de notificación que se envía al usuario de la configuración del plan de datos móviles.
Enumeraciones | |
---|---|
NOTIFICATION_UNDEFINED |
Tipo de género de notificación desconocido |
NOTIFICATION_LOW_BALANCE_WARNING |
Notificación que advierte a los usuarios sobre el saldo bajo |
NOTIFICATION_DATA_EXPIRATION_WARNING |
Notificación que advierte a los usuarios que el plan de datos está por vencer |
NOTIFICATION_OUT_OF_DATA |
Notificación de que los usuarios se quedaron sin datos |
NOTIFICATION_PLAN_ACTIVATION |
Notificación de que el plan comprado por un usuario ya está activo |
NOTIFICATION_PAY_AS_YOU_GO |
Es una notificación que informa al usuario que está pagando por los datos en un estado de prepago. |
NOTIFICATION_ACCOUNT_TOP_UP |
Notificación que informa al usuario que recargó el saldo de su cuenta. |
NOTIFICATION_DATA_EXPIRED |
Notificación que informa al usuario que venció su plan de datos. |
PlanInfoPerClient
Es la información del plan de datos pertinente para un cliente de Google en particular.
Representación JSON | |
---|---|
{ "youtube": { object ( |
Campos | |
---|---|
youtube |
Es la información del plan relacionada con YouTube. |
androidSystemInfo |
Es la información del plan relevante para el sistema Android. |
YouTube
Es la información del plan de datos relevante para YouTube.
Representación JSON | |
---|---|
{
"rateLimitedStreaming": {
object ( |
Campos | |
---|---|
rateLimitedStreaming |
Función de transmisión adaptable al plan (PAS) de YouTube, que limita la tasa de bits del video que se entrega. |
RateLimitedStreaming
Información del plan de datos para permitir que YouTube mejore la experiencia del usuario de transmisión con límite de velocidad.
Representación JSON | |
---|---|
{ "maxMediaRateKbps": integer } |
Campos | |
---|---|
maxMediaRateKbps |
Es la tasa de bits de YouTube admitida para este usuario en Kbps (miles de bits por segundo). |
AndroidSystemInfo
Es la información del plan de datos pertinente para todo el sistema Android.
Representación JSON | |
---|---|
{
"cellularInfo": [
{
object ( |
Campos | |
---|---|
cellularInfo[] |
Información celular por tipo de conexión Por ejemplo, habrá un mensaje cellularInfo para cada tipo de conexión, como 4G, 5G, etcétera. |
CellularInfo
Es la información sobre la conexión celular que el plan ofrece al usuario.
Representación JSON | |
---|---|
{ "connectionType": enum ( |
Campos | |
---|---|
connectionType |
Es el tipo de conexión que el operador proporciona al usuario. |
meteredness |
Es el estado de medición del plan del usuario. |
Tipo de conexión
Tipo de conexión: 2G, 3G, 4G
Enumeraciones | |
---|---|
CONNECTION_TYPE_UNSPECIFIED |
Sin especificar. |
CONNECTION_2_G |
2G. |
CONNECTION_3_G |
3G. |
CONNECTION_4_G |
4G. |
CONNECTION_5_G |
5G. |
CONNECTION_ALL |
Todos los géneros |
Medición de uso
Tipo de plan que tiene el usuario
Enumeraciones | |
---|---|
METEREDNESS_UNSPECIFIED |
GTAF no conoce el estado de medición del plan del usuario. |
METEREDNESS_UNMETERED |
El usuario tiene un plan sin medición. |
METEREDNESS_METERED |
El usuario tiene un plan medido. |
CpidState
Es una enumeración para que el operador represente el estado del CPID.
Enumeraciones | |
---|---|
CPID_STATE_UNSPECIFIED |
El estado del CPID no está especificado. Esto se trata como si el CPID fuera válido. |
CPID_INVALIDATED |
El CPID deja de ser válido y el cliente debe recuperar un CPID nuevo del extremo de CPID. |
Métodos |
|
---|---|
|
Permite que un operador de telefonía celular (identificado por su número de sistema autónomo [ASN] único) agregue una nueva entrada de PlanStatus para que un usuario la use con un cliente en particular. |