REST Resource: operators.clients.users.planStatus

Resource: PlanStatus

PlanStatus berisi detail semua paket layanan seluler tingkat teratas yang telah dibeli pengguna.

Representasi JSON
{
  "name": string,
  "plans": [
    {
      object (Plan)
    }
  ],
  "languageCode": string,
  "expireTime": string,
  "updateTime": string,
  "title": string,
  "subscriberId": string,
  "accountInfo": {
    object (AccountInfo)
  },
  "uiCompatibility": enum (UiCompatibility),
  "notifications": [
    enum (NotificationType)
  ],
  "planInfoPerClient": {
    object (PlanInfoPerClient)
  },
  "cpidState": enum (CpidState)
}
Kolom
name

string

Nama resource PlanStatus dalam format berikut: operators/{asn_id}/planStatuses/{userKey}. Nama diabaikan saat membuat entri PlanStatus.

plans[]

object (Plan)

Daftar paket yang dimiliki pengguna ini.

languageCode

string

Wajib diisi. Kode bahasa BCP-47, seperti "en-US" atau "sr-Latn". Untuk informasi selengkapnya, lihat http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.

expireTime

string (Timestamp format)

Wajib diisi. Waktu saat informasi grup rencana yang dibagikan sudah tidak berlaku. PlanStatus tidak akan ditayangkan ke aplikasi setelah batas waktu tersebut. Waktu habis masa berlaku harus di masa mendatang.

Stempel waktu dalam format RFC3339 UTC "Zulu" dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Wajib diisi. Waktu saat agen paket data (DPA) mengambil informasi status paket dari sistem backend. Dapat digunakan untuk menentukan seberapa baru informasi status paket. Waktu pembaruan harus sudah berlalu, tetapi tidak boleh lebih dari 30 hari.

Stempel waktu dalam format RFC3339 UTC "Zulu" dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

title

string

Judul kontrak yang dimiliki pengguna dengan operator. Ini akan ditampilkan di header UI.

subscriberId

string

ID stabil yang unik di sistem operator untuk mengidentifikasi pengguna.

accountInfo

object (AccountInfo)

Wajib untuk pengguna prabayar. Informasi tentang saldo akun pengguna.

uiCompatibility

enum (UiCompatibility)

Menentukan apakah PlanStatus dapat ditampilkan kepada pengguna di antarmuka pengguna. Jika ditetapkan ke UI_INCOMPATIBLE, PlanStatus dapat digunakan untuk mengirim notifikasi kepada pengguna, tetapi tidak akan digunakan untuk menampilkan informasi paket kepada pengguna.

notifications[]

enum (NotificationType)

Berisi daftar jenis notifikasi yang dikirimkan kepada pengguna oleh GTAF. GTAF mengabaikan kolom ini jika diisi oleh pemanggil.

planInfoPerClient

object (PlanInfoPerClient)

Informasi paket data yang relevan dengan klien Google tertentu.

cpidState

enum (CpidState)

Status CPID yang terkait dengan status paket ini.

Merencanakan

Detail paket seluler pengguna, yang merupakan paket layanan seluler tingkat teratas yang dibeli pelanggan. Paketnya dapat sesederhana "data seluler 10 GB selama 30 hari" atau dapat didefinisikan sebagai kumpulan komponen (yang kami sebut sebagai modul rencana). Misalnya, paket ACME 199, yang digambarkan sebagai "data 2GB, whatsapp tak terbatas + wechat tak terbatas, dan spotify 1GB", berisi tiga modul paket.

Representasi JSON
{
  "planName": string,
  "planId": string,
  "planCategory": enum (PlanCategory),
  "expirationTime": string,
  "planModules": [
    {
      object (PlanModule)
    }
  ],
  "planState": enum (PlanState)
}
Kolom
planName

string

Nama paket seluler pengguna.

planId

string

Wajib diisi. ID paket, digunakan untuk merujuk ke paket selama penawaran, dll.

planCategory

enum (PlanCategory)

Paket prabayar atau pascabayar.

expirationTime

string (Timestamp format)

Wajib diisi. Saat paket ini berakhir. Untuk sebagian besar paket, ini harus sama dengan maksimum semua masa berlaku khusus modul rencana. Untuk rencana yang memperbarui kuota modul secara berkala, ini harus menjadi waktu berakhirnya paket secara keseluruhan, waktu saat modul paket berhenti dimuat ulang. Kolom ini harus dihilangkan jika masa berlaku paket tidak berakhir.

Stempel waktu dalam format RFC3339 UTC "Zulu" dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

planModules[]

object (PlanModule)

Informasi modul (sub-paket) yang mendetail.

planState

enum (PlanState)

Status rencana pengguna, misalnya aktif, tidak aktif, dll.

KategoriRencana

Kemungkinan jenis kategori rencana.

Enumerasi
PLAN_CATEGORY_UNSPECIFIED Tidak ditentukan.
PREPAID Paket prabayar.
POSTPAID Paket pascabayar.

RencanaModul

Info setiap modul (atau sub-paket) paket data di dalam rencana.

Representasi JSON
{
  "coarseBalanceLevel": enum (BalanceLevel),
  "trafficCategories": [
    enum (PlanModuleTrafficCategory)
  ],
  "expirationTime": string,
  "overUsagePolicy": enum (OverUsagePolicy),
  "maxRateKbps": string,
  "description": string,
  "moduleName": string,
  "usedBytes": string,
  "planModuleState": enum (PlanState),
  "refreshPeriod": enum (RefreshPeriod),

  // Union field balance can be only one of the following:
  "byteBalance": {
    object (ByteQuota)
  },
  "timeBalance": {
    object (TimeQuota)
  }
  // End of list of possible types for union field balance.
}
Kolom
coarseBalanceLevel

enum (BalanceLevel)

Informasi saldo sementara.

trafficCategories[]

enum (PlanModuleTrafficCategory)

Daftar kategori traffic yang akan ditagih terhadap modul rencana ini.

expirationTime

string (Timestamp format)

Wajib diisi. Waktu habis masa berlaku khusus modul rencana. Untuk modul rencana dengan kuota yang diperbarui secara berkala, ini adalah waktu pembaruan modul berikutnya. Kolom ini harus dihilangkan jika modul rencana tidak habis masa berlakunya.

Stempel waktu dalam format RFC3339 UTC "Zulu" dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

overUsagePolicy

enum (OverUsagePolicy)

Melebihi kebijakan penggunaan, misalnya, dibatasi.

maxRateKbps

string (int64 format)

Kecepatan data maksimum yang diizinkan oleh modul paket ini dalam Kbps. Kecepatan data aktual yang diamati adalah antara 0 dan maxRateKbps, bergantung pada kondisi jaringan. Menghapus maxRateKbps atau menyetelnya ke 0 menunjukkan bahwa tidak ada throttling yang harus dilakukan untuk modul rencana ini.

description

string

Wajib diisi. Deskripsi modul rencana, dapat ditampilkan kepada pengguna dan harus dekat dengan deskripsi pasar modul rencana ini.

moduleName

string

Wajib diisi. Nama modul rencana.

usedBytes

string (int64 format)

Jumlah total byte yang digunakan oleh pengguna dari modul paket ini.

planModuleState

enum (PlanState)

Status modul rencana, misalnya aktif, tidak aktif, dll.

refreshPeriod

enum (RefreshPeriod)

Periode pembaruan modul paket ini, atau REFRESH_PERIOD_NONE jika modul rencana tidak memuat ulang kuotanya. Modul paket yang memperbarui kuota akan melakukannya sekali setiap periode pembaruan.

Kolom union balance. Wajib diisi. Informasi saldo modul paket, harus berupa salah satu dari berikut ini: byte_balance, time_balance, coarse_balance_level. balance hanya dapat berupa salah satu dari berikut:
byteBalance

object (ByteQuota)

Info saldo modul paket berbasis byte. Untuk modul yang diperbarui secara berkala, kolom ini mewakili saldo byte per periode pembaruan.

timeBalance

object (TimeQuota)

Info keseimbangan modul paket berbasis waktu. Untuk modul yang diperbarui secara berkala, kolom ini mewakili keseimbangan waktu per periode pembaruan.

ByteQuota

Informasi kuota/saldo modul paket berbasis byte.

Representasi JSON
{
  "quotaBytes": string,
  "remainingBytes": string
}
Kolom
quotaBytes

string (int64 format)

Kuota modul dalam byte. Untuk paket tanpa batas, ini harus disetel ke 2^63 - 1 (9223372036854775807).

remainingBytes

string (int64 format)

Diperlukan untuk notifikasi saldo rendah. Sisa kuota kuota dalam byte.

Kuota

Informasi kuota/saldo modul paket berbasis waktu.

Representasi JSON
{
  "quotaMinutes": string,
  "remainingMinutes": string
}
Kolom
quotaMinutes

string (int64 format)

Kuota modul dalam menit untuk rencana berbasis waktu, mis., 180 menit.

remainingMinutes

string (int64 format)

Sisa kuota kuota dalam hitungan menit untuk paket berbasis waktu, mis., 40 menit.

Tingkat Keseimbangan

Info saldo data modul paket kasar.

Enumerasi
BALANCE_LEVEL_UNSPECIFIED Tidak ditentukan.
NO_PLAN Tidak ada paket data.
OUT_OF_DATA Saldo data nol.
LOW_QUOTA Saldo data (atau waktu yang tersisa) sama dengan atau kurang dari 10-25% dari saldo paket asli (atau waktu). Operator MUNGKIN menentukan nilai minimum yang tepat untuk setiap paket sesuai kebutuhan.
HIGH_QUOTA Saldo data (atau waktu yang tersisa) lebih dari 10-25% dari saldo paket asli (atau waktu). Operator MUNGKIN menentukan nilai minimum yang tepat untuk setiap paket sesuai kebutuhan. Saldo data hampir habis.

PlanModuleTrafficCategory

Kategori traffic modul rencana, yang mendeskripsikan kumpulan traffic aplikasi yang termasuk dalam modul rencana tertentu.

Enumerasi
PLAN_MODULE_TRAFFIC_CATEGORY_UNSPECIFIED Tidak ditentukan.
GENERIC Umum, berlaku untuk semua traffic.
VIDEO Semua traffic video.
VIDEO_BROWSING Traffic penemuan video (penjelajahan), yang mengacu pada semua traffic aplikasi video, tidak termasuk bagian streaming video/audio.
VIDEO_OFFLINE Traffic offline video, yang merupakan jumlah traffic VIDEO_BROWSING dan video/audio offline (non-streaming).
MUSIC Traffic aplikasi musik.
GAMING Traffic aplikasi game.
SOCIAL Traffic aplikasi sosial.
MESSAGING Traffic aplikasi messaging.
APP_STORE Traffic app store, seperti mengupdate atau mendownload aplikasi baru.

Kebijakan Penggunaan berlebihan

Kebijakan penggunaan berlebih: apa yang terjadi jika pengguna kehabisan kuota.

Enumerasi
OVER_USAGE_POLICY_UNSPECIFIED Tidak ditentukan.
THROTTLED Kecepatan dibatasi.
BLOCKED Koneksi diblokir.
PAY_AS_YOU_GO Bayar per penggunaan.

StatusRencana

Enum yang mewakili status berbeda dari modul rencana/paket pengguna.

Enumerasi
ACTIVE Plan/PlanModule aktif dan pengguna dapat menggunakan data yang ditawarkan sebagai bagian dari modul.
INACTIVE Modul Plan/Rencana tidak aktif dan saat pengguna masih memiliki modul, pengguna tidak dapat menggunakan data yang merupakan bagian dari modul. Hal ini dapat terjadi jika modul hanya menawarkan data selama waktu tertentu dalam sehari atau jika pengguna telah membeli modul tetapi belum diaktifkan.
EXPIRING_SOON Plan/PlanModule akan segera berakhir. Penelepon harus memilih tingkat yang sesuai untuk menentukan kapan nilai ini ditetapkan. Ini secara otomatis berarti paket tersebut aktif.
NEWLY_ACTIVE Plan/PlanModule yang sebelumnya tidak aktif atau tidak ada baru saja diaktifkan. Status ini hanya boleh digunakan untuk periode yang sangat singkat setelah waktu aktivasi. Jika tidak, status AKTIF harus digunakan sebagai gantinya. Notifikasi status paket data yang dikirim dengan modul NEWLY_ACTIVE harus dikirim dengan TTL singkat, karena status NEWLY_ACTIVE akan menjadi tidak akurat dengan sangat cepat.
EXPIRED Plan/PlanModule sudah habis masa berlakunya. Menyetel nilai enum ini akan memicu notifikasi yang habis masa berlakunya untuk paket.

Periode Refresh

Mewakili periode pembaruan, interval reguler di mana modul rencana direset.

Enumerasi
REFRESH_PERIOD_NONE Tidak ada periode pembaruan. Digunakan saat modul rencana tidak berulang.
DAILY Modul rencana direset setiap hari.
MONTHLY Modul rencana direset setiap bulan.
BIWEEKLY Modul rencana direset setiap dua minggu.
WEEKLY Modul rencana direset setiap minggu.

InfoAkun

Informasi tentang saldo akun pengguna prabayar.

Representasi JSON
{
  "accountBalance": {
    object (Money)
  },
  "loanBalance": {
    object (Money)
  },
  "unpaidLoan": {
    object (Money)
  },
  "accountBalanceStatus": enum (AccountBalanceStatus),
  "validUntil": string,
  "payAsYouGoCharge": {
    object (Money)
  },
  "accountTopUp": {
    object (Money)
  }
}
Kolom
accountBalance

object (Money)

Wajib diisi. Saldo akun yang tersisa di akun pengguna.

loanBalance

object (Money)

Wajib jika berlaku. Saldo akun yang tersisa pada akun pengguna yang ditambahkan oleh pinjaman moneter dari operator. Jika ada, kolom saldo akun tidak termasuk saldo ini.

unpaidLoan

object (Money)

Jumlah uang yang berutang kepada operator karena pinjaman uang.

accountBalanceStatus

enum (AccountBalanceStatus)

Wajib diisi. Menunjukkan status saldo akun. Jika terdapat ketidakcocokan antara kolom validUntil time dan accountBalanceStatus, kami menggunakan accountBalanceStatus.

validUntil

string (Timestamp format)

Wajib diisi. Waktu saat saldo akun valid. Kolom ini akan digunakan untuk menampilkan "Tidak valid dalam

Stempel waktu dalam format RFC3339 UTC "Zulu" dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

payAsYouGoCharge

object (Money)

Jumlah uang yang telah dibelanjakan pengguna dengan menggunakan paket bayar sesuai penggunaan. Jika kolom ini diisi oleh operator saat membagikan informasi akun dengan GTAF, GTAF akan mencoba mengirimkan notifikasi kepada pengguna yang menunjukkan bahwa mereka menghabiskan uang dalam status bayar sesuai penggunaan.

accountTopUp

object (Money)

Diperlukan untuk notifikasi penambahan saldo akun. Jumlah uang yang telah ditambahkan pengguna ke saldo akunnya. Jika kolom ini diisi oleh operator saat berbagi informasi akun dengan GTAF, GTAF akan mencoba mengirim notifikasi kepada pengguna yang menunjukkan bahwa akun mereka telah diisi ulang.

Uang

Merupakan jumlah uang dengan jenis mata uangnya.

Representasi JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
Kolom
currencyCode

string

Kode mata uang 3 huruf yang ditentukan dalam ISO 4217.

units

string (int64 format)

Seluruh unit jumlahnya. Misalnya jika currencyCode adalah "USD", maka 1 unit adalah satu dolar AS.

nanos

integer

Jumlah unit nano (10^-9) dari jumlah tersebut. Nilai harus antara -999,999,999 dan +999,999,999 inklusif. Jika units positif, nanos harus positif atau nol. Jika units nol, nanos dapat positif, nol, atau negatif. Jika units negatif, nanos harus negatif atau nol. Misalnya $-1,75 direpresentasikan sebagai units=-1 dan nanos=-750,000,000.

StatusKeseimbanganAkun

Status dompet pengguna.

Enumerasi
VALID Saldo akun pengguna valid dan dapat digunakan untuk melakukan pembelian.
INVALID Saldo akun pengguna tidak valid dan tidak dapat digunakan tanpa membuat perubahan pada akun.

UiCompatibility

Enum yang menunjukkan apakah PlanStatus yang dibagikan dapat ditampilkan kepada pengguna.

Enumerasi
UI_COMPATIBILITY_UNSPECIFIED Secara default, kita akan menganggap bahwa PlanStatus kompatibel dengan UI.
UI_COMPATIBLE Menunjukkan bahwa seluruh PlanStatus kompatibel dengan UI dan informasi paket dapat ditampilkan kepada pengguna.
UI_INCOMPATIBLE Menunjukkan bahwa PlanStatus bukan kompatibilitas UI. Kolom dapat digunakan untuk mengirim notifikasi kepada pengguna, tetapi tidak dapat digunakan untuk menampilkan informasi paket kepada pengguna.

JenisNotifikasi

Jenis notifikasi yang dikirim ke pengguna setelan Paket Data Seluler.

Enumerasi
NOTIFICATION_UNDEFINED Jenis genre notifikasi tidak dikenal
NOTIFICATION_LOW_BALANCE_WARNING Notifikasi yang memperingatkan pengguna akan saldo rendah
NOTIFICATION_DATA_EXPIRATION_WARNING Notifikasi yang memperingatkan pengguna bahwa paket data akan berakhir
NOTIFICATION_OUT_OF_DATA Notifikasi bahwa pengguna kehabisan data
NOTIFICATION_PLAN_ACTIVATION Notifikasi bahwa paket yang dibeli pengguna sekarang aktif
NOTIFICATION_PAY_AS_YOU_GO Notifikasi yang memberi tahu pengguna bahwa mereka membayar data dalam status bayar sesuai penggunaan.
NOTIFICATION_ACCOUNT_TOP_UP Notifikasi yang memberi tahu pengguna bahwa mereka telah mengisi saldo akun.
NOTIFICATION_DATA_EXPIRED Notifikasi yang memberi tahu pengguna bahwa paket data mereka telah berakhir.

InfoInfoPerClient

Informasi paket data yang relevan dengan klien Google tertentu.

Representasi JSON
{
  "youtube": {
    object (YouTube)
  },
  "androidSystemInfo": {
    object (AndroidSystemInfo)
  }
}
Kolom
youtube

object (YouTube)

Informasi paket terkait YouTube.

androidSystemInfo

object (AndroidSystemInfo)

Informasi paket yang relevan untuk Sistem Android.

YouTube

Informasi paket data yang relevan dengan YouTube.

Representasi JSON
{
  "rateLimitedStreaming": {
    object (RateLimitedStreaming)
  }
}
Kolom
rateLimitedStreaming

object (RateLimitedStreaming)

Fitur Streaming Awareness YouTube (PAS) yang membatasi kecepatan bit video yang ditayangkan.

StreamingStreaming Terbatas

Informasi paket data agar YouTube dapat menyempurnakan pengalaman pengguna yang membatasi streaming.

Representasi JSON
{
  "maxMediaRateKbps": integer
}
Kolom
maxMediaRateKbps

integer

Kecepatan bit YouTube yang didukung untuk pengguna ini dalam satuan kbps (1000's bit per detik).

InfoSistemAndroid

Informasi paket data yang relevan untuk seluruh sistem Android.

Representasi JSON
{
  "cellularInfo": [
    {
      object (CellularInfo)
    }
  ]
}
Kolom
cellularInfo[]

object (CellularInfo)

Informasi seluler per jenis koneksi. Misalnya, akan ada satu pesan mobileInfo untuk setiap jenis koneksi seperti 4G, 5G, dll.

Info Seluler

Informasi tentang koneksi seluler yang ditawarkan paket kepada pengguna.

Representasi JSON
{
  "connectionType": enum (ConnectionType),
  "meteredness": enum (Meteredness)
}
Kolom
connectionType

enum (ConnectionType)

Jenis koneksi yang diberikan operator kepada pengguna.

meteredness

enum (Meteredness)

Status berbayar dari rencana pengguna.

JenisKoneksi

Jenis koneksi: 2G, 3G, 4G

Enumerasi
CONNECTION_TYPE_UNSPECIFIED Tidak ditentukan.
CONNECTION_2_G 2G.
CONNECTION_3_G 3G.
CONNECTION_4_G 4G
CONNECTION_5_G 5G.
CONNECTION_ALL Semua jenis.

Tampilan berbayar

Jenis paket yang dimiliki pengguna

Enumerasi
METEREDNESS_UNSPECIFIED GTAF tidak mengetahui status status berbayar paket pengguna.
METEREDNESS_UNMETERED Pengguna menggunakan paket tidak berbayar.
METEREDNESS_METERED Pengguna menggunakan paket berbayar.

CpidState

Enum untuk operator untuk mewakili status CPID.

Enumerasi
CPID_STATE_UNSPECIFIED Status CPID tidak ditentukan. Hal ini dianggap seolah-olah CPID valid.
CPID_INVALIDATED CPID tidak valid dan klien harus mengambil CPID baru dari endpoint CPID.

Metode

create

Memungkinkan operator seluler (diidentifikasi oleh Nomor Sistem Otonom Unik (ASN) uniknya) menambahkan entri PlanStatus baru bagi pengguna untuk digunakan oleh klien tertentu.