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 oleh pengguna ini.

languageCode

string

Wajib. 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. Waktu saat informasi grup paket bersama menjadi tidak berlaku. PlanStatus tidak akan ditayangkan ke aplikasi setelah waktu ini. Waktu habis masa berlaku harus pada 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. 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 di masa lalu, 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. Nama ini akan ditampilkan di header UI.

subscriberId

string

ID stabil unik dalam sistem operator untuk mengidentifikasi pengguna.

accountInfo

object (AccountInfo)

Diperlukan untuk pengguna prabayar. Informasi tentang saldo akun pengguna.

uiCompatibility

enum (UiCompatibility)

Menentukan apakah PlanStatus dapat ditampilkan kepada pengguna di antarmuka pengguna. Jika disetel 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 dikirim ke 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.

Rencana

Detail paket seluler pengguna, yang merupakan paket layanan seluler tingkat teratas yang dibeli pelanggan. Paket dapat sesederhana "data seluler 10 GB selama 30 hari" atau dapat ditentukan sebagai kumpulan komponen (yang kami sebut sebagai modul paket). Misalnya, paket ACME 199, yang dijelaskan sebagai "data 2 GB, WhatsApp tanpa batas + WeChat tanpa batas, dan Spotify 1 GB", 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. ID paket, digunakan untuk merujuk ke paket selama penawaran, dll.

planCategory

enum (PlanCategory)

Paket prabayar atau pascabayar.

expirationTime

string (Timestamp format)

Wajib. Kapan paket ini berakhir. Untuk sebagian besar paket, waktu ini harus sama dengan maksimum semua waktu habis masa berlaku khusus modul paket. Untuk paket yang secara berkala memperbarui kuota modul, ini harus berupa waktu habis masa berlaku paket secara keseluruhan, yaitu waktu saat modul paket berhenti diperbarui. Kolom ini harus dihilangkan jika 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 paket mendetail (sub-paket).

planState

enum (PlanState)

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

PlanCategory

Kemungkinan jenis kategori paket.

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

PlanModule

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

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 umum.

trafficCategories[]

enum (PlanModuleTrafficCategory)

Daftar kategori traffic yang akan ditagih berdasarkan modul paket ini.

expirationTime

string (Timestamp format)

Wajib. Waktu habis masa berlaku khusus modul rencana. Untuk modul paket dengan kuota yang diperbarui secara berkala, ini adalah waktu pembaruan modul berikutnya. Kolom ini harus dihilangkan jika modul 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".

overUsagePolicy

enum (OverUsagePolicy)

Kebijakan penggunaan berlebih, misalnya, dibatasi.

maxRateKbps

string (int64 format)

Kecepatan data maksimum yang diizinkan oleh modul paket ini dalam Kbps. Kecepatan data sebenarnya yang diamati adalah antara 0 dan maxRateKbps, bergantung pada kondisi jaringan. Menghilangkan maxRateKbps atau menyetelnya ke 0 menunjukkan bahwa tidak ada pembatasan yang akan dilakukan untuk modul paket ini.

description

string

Wajib. Deskripsi modul paket, dapat ditampilkan kepada pengguna dan harus mirip dengan deskripsi pasar dari modul paket ini.

moduleName

string

Wajib. Nama modul paket.

usedBytes

string (int64 format)

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

planModuleState

enum (PlanState)

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

refreshPeriod

enum (RefreshPeriod)

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

Kolom union balance. Wajib. 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 menampilkan saldo byte per periode pembaruan.

timeBalance

object (TimeQuota)

Info saldo modul paket berbasis waktu. Untuk modul yang diperbarui secara berkala, kolom ini menampilkan saldo 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, nilai ini harus disetel ke 2^63 - 1 (9223372036854775807).

remainingBytes

string (int64 format)

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

TimeQuota

Informasi kuota/saldo modul paket berbasis waktu.

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

string (int64 format)

Kuota modul dalam menit untuk paket berbasis waktu, misalnya, 180 menit.

remainingMinutes

string (int64 format)

Sisa saldo kuota dalam menit untuk paket berbasis waktu, misalnya, 40 menit.

BalanceLevel

Info keseimbangan data modul paket umum.

Enum
BALANCE_LEVEL_UNSPECIFIED Tidak ditentukan.
NO_PLAN Tidak ada paket data.
OUT_OF_DATA Saldo data adalah nol.
LOW_QUOTA Saldo kuota (atau waktu tersisa) sama dengan atau kurang dari 10-25% dari saldo (atau waktu) paket asli. Ekspedisi DAPAT menentukan batas yang tepat untuk setiap paket sebagaimana dianggap sesuai.
HIGH_QUOTA Saldo data (atau waktu tersisa) lebih dari 10-25% dari saldo paket (atau waktu) awal. Ekspedisi DAPAT menentukan batas yang tepat untuk setiap paket sebagaimana dianggap sesuai. Sisa kuota internet tinggi.

PlanModuleTrafficCategory

Kategori traffic modul paket, yang menjelaskan kumpulan traffic aplikasi yang termasuk dalam modul paket tertentu.

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

OverUsagePolicy

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

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

PlanState

Enum yang merepresentasikan berbagai status paket/modul paket pengguna.

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

RefreshPeriod

Mewakili periode muat ulang, interval reguler saat modul rencana direset.

Enum
REFRESH_PERIOD_NONE Tidak ada periode pembaruan. Digunakan saat modul paket 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.

AccountInfo

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. Sisa saldo akun di akun pengguna.

loanBalance

object (Money)

Wajib jika berlaku. Saldo akun yang tersisa di akun pengguna yang ditambahkan oleh pinjaman uang dari operator. Jika ada, kolom accountBalance tidak menyertakan saldo ini.

unpaidLoan

object (Money)

Jumlah uang yang terutang oleh pengguna kepada operator karena pinjaman uang.

accountBalanceStatus

enum (AccountBalanceStatus)

Wajib. Menunjukkan status saldo akun. Jika terjadi ketidakcocokan antara waktu validUntil dan kolom accountBalanceStatus, kami akan menggunakan accountBalanceStatus.

validUntil

string (Timestamp format)

Wajib. Waktu hingga saldo akun valid. Kolom ini akan digunakan untuk menampilkan "Tidak valid di

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 dalam status bayar sesuai penggunaan. Jika kolom ini diisi oleh operator saat membagikan informasi akun ke GTAF, GTAF akan mencoba mengirimkan notifikasi kepada pengguna yang menunjukkan bahwa mereka membelanjakan uang dalam status bayar sesuai penggunaan.

accountTopUp

object (Money)

Wajib diisi untuk notifikasi pengisian ulang saldo akun. Jumlah uang yang telah ditambahkan pengguna ke saldo akunnya. Jika kolom ini diisi oleh operator saat membagikan informasi akun dengan GTAF, GTAF akan mencoba mengirimkan notifikasi kepada pengguna yang menunjukkan bahwa akunnya telah diisi ulang.

Uang

Mewakili 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. Nilainya 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.

AccountBalanceStatus

Status dompet pengguna.

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

UiCompatibility

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

Enum
UI_COMPATIBILITY_UNSPECIFIED Secara default, kami akan mengasumsikan 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 tidak kompatibel dengan UI. Kolom dapat digunakan untuk mengirim notifikasi kepada pengguna, tetapi tidak dapat digunakan untuk menampilkan informasi paket kepada pengguna.

NotificationType

Jenis notifikasi yang dikirim kepada pengguna setelan Paket Data Seluler.

Enum
NOTIFICATION_UNDEFINED Jenis genre notifikasi tidak diketahui
NOTIFICATION_LOW_BALANCE_WARNING Notifikasi yang memperingatkan pengguna jika saldo rendah
NOTIFICATION_DATA_EXPIRATION_WARNING Notifikasi yang memperingatkan pengguna bahwa masa berlaku paket data akan habis
NOTIFICATION_OUT_OF_DATA Notifikasi bahwa pengguna kehabisan data
NOTIFICATION_PLAN_ACTIVATION Notifikasi bahwa paket yang dibeli pengguna kini aktif
NOTIFICATION_PAY_AS_YOU_GO Notifikasi yang memberi tahu pengguna bahwa mereka membayar data dalam status bayar sesuai tagihan.
NOTIFICATION_ACCOUNT_TOP_UP Notifikasi yang memberi tahu pengguna bahwa dia telah mengisi ulang saldo akunnya.
NOTIFICATION_DATA_EXPIRED Notifikasi yang memberi tahu pengguna bahwa paket datanya telah habis masa berlakunya.

PlanInfoPerClient

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 YouTube Plan Aware Streaming (PAS) yang membatasi kecepatan bit video yang dikirimkan.

RateLimitedStreaming

Informasi paket data untuk memungkinkan YouTube meningkatkan pengalaman pengguna streaming yang dibatasi kecepatan bitnya.

Representasi JSON
{
  "maxMediaRateKbps": integer
}
Kolom
maxMediaRateKbps

integer

Kecepatan bit YouTube yang didukung untuk pengguna ini dalam kbps (ribuan bit per detik).

AndroidSystemInfo

Informasi paket data yang relevan dengan seluruh sistem Android.

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

object (CellularInfo)

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

CellularInfo

Informasi tentang koneksi seluler yang ditawarkan paket kepada pengguna.

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

enum (ConnectionType)

Jenis koneksi yang disediakan operator untuk pengguna.

meteredness

enum (Meteredness)

Status penggunaan terukur paket pengguna.

ConnectionType

Jenis koneksi: 2G, 3G, 4G

Enum
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.

Koneksi Berbayar

Jenis paket yang dimiliki pengguna

Enum
METEREDNESS_UNSPECIFIED GTAF tidak mengetahui status penggunaan terukur paket pengguna.
METEREDNESS_UNMETERED Pengguna menggunakan paket tanpa kuota.
METEREDNESS_METERED Pengguna menggunakan paket yang diukur.

CpidState

Enum untuk operator guna merepresentasikan status CPID.

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

Metode

create

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