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)
  }
}
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.

Stempel waktu dalam format RFC3339 UTC "Zulu", akurat hingga nanodetik. Contoh: "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.

Stempel waktu dalam format RFC3339 UTC "Zulu", akurat hingga nanodetik. Contoh: "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)

Jenis notifikasi yang telah dikirim kepada pengguna.

planInfoPerClient

object (PlanInfoPerClient)

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", akurat hingga nanodetik. Contoh: "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 masa berlaku paket tidak berakhir.

Stempel waktu dalam format RFC3339 UTC "Zulu", akurat hingga nanodetik. Contoh: "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", akurat hingga nanodetik. Contoh: "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": number
}
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

number

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)
  }
}
Kolom
youtube

object (YouTube)

Informasi paket terkait YouTube.

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": number
}
Kolom
maxMediaRateKbps

number

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

Metode

create

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