REST Resource: operators.clients.users.planStatus

Kaynak: PlanStatus

PlanStatus, kullanıcının satın aldığı tüm üst düzey mobil hizmet paketlerinin ayrıntılarını içerir.

JSON gösterimi
{
  "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)
}
Alanlar
name

string

PlanStatus'un kaynak adı şu biçimde olmalıdır: operators/{asn_id}/planStatuses/{userKey}. PlanStatus girişi oluşturulurken ad yoksayılır.

plans[]

object (Plan)

Bu kullanıcının sahip olduğu planların listesi.

languageCode

string

Zorunlu. BCP-47 dil kodu (ör. "en-US" veya "sr-Latn"). Daha fazla bilgi için http://www.unicode.org/reports/tr35/#Unicode_locale_identifier adresini ziyaret edin.

expireTime

string (Timestamp format)

Zorunlu. Paylaşılan plan grubu bilgilerinin geçerliliğini yitirdiği zaman. Bu tarihten sonra uygulamalara PlanStatus sunulmayacaktır. Geçerlilik bitiş zamanı gelecekte olmalıdır.

RFC3339 UTC "Zulu" biçiminde bir zaman damgası (nanosaniye çözünürlüğe ve en fazla dokuz kesirli basamağa sahip). Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Zorunlu. Veri planı aracısının (DPA) plan durumu bilgilerini arka uç sistemlerinden getirdiği zaman. Plan durumu bilgilerinin ne kadar güncel olduğunu belirlemek için kullanılabilir. Güncelleme zamanı geçmişte olmalı ancak 30 günden eski olmamalıdır.

RFC3339 UTC "Zulu" biçiminde bir zaman damgası (nanosaniye çözünürlüğe ve en fazla dokuz kesirli basamağa sahip). Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

title

string

Kullanıcının operatörle yaptığı sözleşmenin başlığı. Bu bilgi, kullanıcı arayüzü başlığında gösterilir.

subscriberId

string

Kullanıcıyı tanımlamak için operatör sistemindeki benzersiz kararlı tanımlayıcı.

accountInfo

object (AccountInfo)

Ön ödemeli kullanıcılar için gereklidir. Kullanıcı hesabı bakiyesiyle ilgili bilgiler.

uiCompatibility

enum (UiCompatibility)

PlanStatus'un kullanıcı arayüzünde kullanıcıya gösterilip gösterilemeyeceğini belirler. PlanStatus, UI_INCOMPATIBLE olarak ayarlandığında kullanıcıya bildirim göndermek için kullanılabilir ancak plan bilgilerini göstermek için kullanılmaz.

notifications[]

enum (NotificationType)

GTAF tarafından kullanıcıya gönderilen bildirim türlerinin listesini içerir. GTAF, bu alan arayan tarafından doldurulursa yoksayar.

planInfoPerClient

object (PlanInfoPerClient)

Belirli bir Google istemcisiyle ilgili veri planı bilgileri.

cpidState

enum (CpidState)

Bu plan durumuyla ilişkili CPID'nin durumu.

Plan

Kullanıcının mobil planının ayrıntıları (abonenin satın aldığı üst düzey mobil hizmet paketi). Plan, "30 gün boyunca 10 GB mobil veri" kadar basit olabilir veya bir bileşenler koleksiyonu (plan modülleri olarak adlandırılır) olarak tanımlanabilir. Örneğin, "2 GB veri, sınırsız WhatsApp + sınırsız WeChat ve 1 GB Spotify" olarak açıklanan ACME 199 planı üç plan modülü içerir.

JSON gösterimi
{
  "planName": string,
  "planId": string,
  "planCategory": enum (PlanCategory),
  "expirationTime": string,
  "planModules": [
    {
      object (PlanModule)
    }
  ],
  "planState": enum (PlanState)
}
Alanlar
planName

string

Kullanıcının mobil planının adı.

planId

string

Zorunlu. Plan tanımlayıcısı, teklifler sırasında plana atıfta bulunmak için kullanılır.

planCategory

enum (PlanCategory)

Ön ödemeli veya faturalı plan.

expirationTime

string (Timestamp format)

Zorunlu. Bu planın süresi dolduğunda Çoğu plan için bu değer, plana özel tüm modül son kullanma tarihlerinin maksimumuna eşit olmalıdır. Modül kotası düzenli olarak yenilenen planlarda bu, planın genel geçerlilik süresini, yani plan modüllerinin yenilenmesinin durduğu zamanı ifade eder. Planın süresi dolmuyorsa bu alan atlanmalıdır.

RFC3339 UTC "Zulu" biçiminde bir zaman damgası (nanosaniye çözünürlüğe ve en fazla dokuz kesirli basamağa sahip). Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

planModules[]

object (PlanModule)

Ayrıntılı plan modülleri (alt planlar) bilgileri.

planState

enum (PlanState)

Kullanıcı planının durumu (ör. etkin, etkin değil vb.)

PlanCategory

Olası plan kategorisi türleri.

Sıralamalar
PLAN_CATEGORY_UNSPECIFIED Belirtilmedi.
PREPAID Ön ödemeli plan
POSTPAID Faturalı plan

PlanModule

Bir plan içindeki her veri planı modülünün (veya alt planın) bilgileri.

JSON gösterimi
{
  "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.
}
Alanlar
coarseBalanceLevel

enum (BalanceLevel)

Tanımlayıcı olmayan bakiye bilgileri.

trafficCategories[]

enum (PlanModuleTrafficCategory)

Bu plan modülüne göre ücretlendirilecek trafik kategorilerinin listesi.

expirationTime

string (Timestamp format)

Zorunlu. Plan modülüne özel son kullanma tarihi. Kota yenileme sıklığı olan plan modüllerinde bu, bir sonraki modül yenileme zamanıdır. Plan modülünün süresi dolmuyorsa bu alan atlanmalıdır.

RFC3339 UTC "Zulu" biçiminde bir zaman damgası (nanosaniye çözünürlüğe ve en fazla dokuz kesirli basamağa sahip). Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

overUsagePolicy

enum (OverUsagePolicy)

Aşırı kullanım politikası (ör. sıklık sınırlaması)

maxRateKbps

string (int64 format)

Bu plan modülü tarafından izin verilen maksimum veri hızı (Kbps). Gözlemlenen gerçek veri hızı, ağ koşullarına bağlı olarak 0 ile maxRateKbps arasında değişir. maxRateKbps parametresinin atlanması veya 0 olarak ayarlanması, bu plan modülü için sınırlama yapılmayacağını gösterir.

description

string

Zorunlu. Plan modülü açıklaması, kullanıcıya gösterilebilir ve bu plan modülünün pazar açıklamasına yakın olmalıdır.

moduleName

string

Zorunlu. Plan modülünün adı.

usedBytes

string (int64 format)

Kullanıcının bu plan modülünde kullandığı toplam bayt sayısı.

planModuleState

enum (PlanState)

Plan modülünün durumu (ör. etkin, etkin değil vb.)

refreshPeriod

enum (RefreshPeriod)

Bu plan modülünün yenileme süresi veya plan modülü kotasını yenilemiyorsa REFRESH_PERIOD_NONE. Kotayı yenileyen plan modülleri, bunu her yenileme döneminde bir kez yapar.

Birleştirme alanı balance. Zorunlu. Plan modülü bakiye bilgileri. Aşağıdakilerden biri olmalıdır: byte_balance, time_balance, coarse_balance_level. balance yalnızca aşağıdakilerden biri olabilir:
byteBalance

object (ByteQuota)

Bayt tabanlı plan modülü bakiye bilgileri. Düzenli olarak yenilenen modüller için bu alan, yenileme dönemi başına bayt bakiyesini gösterir.

timeBalance

object (TimeQuota)

Zamana dayalı plan modülü bakiye bilgileri. Düzenli olarak yenilenen modüller için bu alan, yenileme dönemi başına düşen zaman bakiyesini gösterir.

ByteQuota

Bayt tabanlı plan modülü kotası/bakiye bilgileri.

JSON gösterimi
{
  "quotaBytes": string,
  "remainingBytes": string
}
Alanlar
quotaBytes

string (int64 format)

Bayt cinsinden modül kotası. Sınırsız planlar için bu değer 2^63 - 1 (9223372036854775807) olarak ayarlanmalıdır.

remainingBytes

string (int64 format)

Düşük bakiye bildirimleri için gereklidir. Kalan kota bakiyesi (bayt cinsinden).

TimeQuota

Zamana dayalı plan modülü kotası/bakiye bilgileri.

JSON gösterimi
{
  "quotaMinutes": string,
  "remainingMinutes": string
}
Alanlar
quotaMinutes

string (int64 format)

Zamana dayalı plan için dakika cinsinden modül kotası (ör. 180 dakika

remainingMinutes

string (int64 format)

Zamana dayalı plan için kalan kota bakiyesi (dakika cinsinden), örneğin: 40 dakika

BalanceLevel

Kaba plan modülü veri dengeleme bilgileri.

Sıralamalar
BALANCE_LEVEL_UNSPECIFIED Belirtilmedi.
NO_PLAN Veri planı yok.
OUT_OF_DATA Veri bakiyesi sıfır.
LOW_QUOTA Veri bakiyesi (veya kalan süre), orijinal paketin bakiyesinin (veya süresinin) %10-25'ine eşit ya da daha az olmalıdır. Kargo şirketleri, her paket için uygun gördükleri eşiği belirleyebilir.
HIGH_QUOTA Veri bakiyesi (veya kalan süre), orijinal paket bakiyesinin (veya sürenin) %10-25'inden fazla olmalıdır. Kargo şirketleri, her paket için uygun gördükleri eşiği belirleyebilir. Veri bakiyesi yüksek.

PlanModuleTrafficCategory

Belirli bir plan modülüne giren uygulama trafiği grubunu açıklayan plan modülü trafik kategorisi.

Sıralamalar
PLAN_MODULE_TRAFFIC_CATEGORY_UNSPECIFIED Belirtilmedi.
GENERIC Geneldir ve tüm trafik için geçerlidir.
VIDEO Tüm video trafiği.
VIDEO_BROWSING Video/ses akışı kısmı hariç tüm video uygulaması trafiğini ifade eden video discovery (göz atma) trafiği.
VIDEO_OFFLINE Video çevrimdışı trafiği, VIDEO_BROWSING ve video/ses çevrimdışı (akış olmayan) trafiğinin toplamıdır.
MUSIC Müzik uygulaması trafiği.
GAMING Oyun uygulaması trafiği.
SOCIAL Sosyal uygulama trafiği.
MESSAGING Mesajlaşma uygulaması trafiği.
APP_STORE Yeni bir uygulamayı güncelleme veya indirme gibi uygulama mağazası trafiği

OverUsagePolicy

Aşırı kullanım politikası: Kullanıcının kotası dolduğunda ne olur?

Sıralamalar
OVER_USAGE_POLICY_UNSPECIFIED Belirtilmedi.
THROTTLED Hız sınırlanır.
BLOCKED Bağlantı engellendi.
PAY_AS_YOU_GO Kullandığınız kadar ödeyin.

PlanState

Kullanıcının planının/plan modülünün farklı durumlarını temsil eden enum.

Sıralamalar
ACTIVE Plan/PlanModule etkin ve kullanıcı, modül kapsamında sunulan verileri kullanabilir.
INACTIVE Plan/Plan Modülü etkin değildir ve kullanıcıda modül olmasına rağmen modülün parçası olan verileri kullanamaz. Bu durum, modül yalnızca günün belirli saatlerinde veri sunuyorsa veya kullanıcı bir modül satın almış ancak henüz etkinleştirmemişse yaşanabilir.
EXPIRING_SOON Plan/PlanModule yakında sona erecek. Arayan, bu değeri ne zaman ayarlayacağını belirlemek için uygun düzeyi seçmelidir. Bu, planın otomatik olarak etkin olduğu anlamına gelir.
NEWLY_ACTIVE Daha önce etkin olmayan veya mevcut olmayan Plan/PlanModule yeni etkinleştirildi. Bu durum yalnızca etkinleştirme zamanından sonra çok kısa bir süre için kullanılmalıdır. Aksi takdirde bunun yerine ETKİN durumu kullanılmalıdır. NEWLY_ACTIVE modülleriyle gönderilen veri planı durumu bildirimleri kısa bir TTL ile gönderilmelidir. Bunun nedeni, NEWLY_ACTIVE durumunun çok hızlı bir şekilde yanlış hale gelmesidir.
EXPIRED Plan/PlanModule is expired. Bu enum değerinin ayarlanması, planın süresinin dolduğuyla ilgili bir bildirimi tetikler.

RefreshPeriod

Yenileme dönemini, plan modülünün sıfırlandığı düzenli aralığı temsil eder.

Sıralamalar
REFRESH_PERIOD_NONE Yenileme süresi yoktur. Plan modülü yinelenmediğinde kullanılır.
DAILY Plan modülü her gün sıfırlanır.
MONTHLY Plan modülü her ay sıfırlanır.
BIWEEKLY Plan modülü iki haftada bir sıfırlanır.
WEEKLY Plan modülü her hafta sıfırlanır.

AccountInfo

Ön ödemeli kullanıcıların hesap bakiyesiyle ilgili bilgiler.

JSON gösterimi
{
  "accountBalance": {
    object (Money)
  },
  "loanBalance": {
    object (Money)
  },
  "unpaidLoan": {
    object (Money)
  },
  "accountBalanceStatus": enum (AccountBalanceStatus),
  "validUntil": string,
  "payAsYouGoCharge": {
    object (Money)
  },
  "accountTopUp": {
    object (Money)
  }
}
Alanlar
accountBalance

object (Money)

Zorunlu. Kullanıcı hesabında kalan hesap bakiyesi.

loanBalance

object (Money)

Geçerliyse zorunludur. Operatörden alınan nakit krediyle eklenen kullanıcı hesabında kalan hesap bakiyesi. Varsa field accountBalance bu bakiyeyi içermez.

unpaidLoan

object (Money)

Kullanıcının parasal krediler nedeniyle operatöre borçlu olduğu para miktarı.

accountBalanceStatus

enum (AccountBalanceStatus)

Zorunlu. Hesap bakiyesinin durumunu gösterir. validUntil zamanı ile accountBalanceStatus alanı arasında uyuşmazlık olması durumunda accountBalanceStatus kullanılır.

validUntil

string (Timestamp format)

Zorunlu. Hesap bakiyesinin geçerli olduğu süre. Bu alan, kullanıcıya hesap bakiyesi karşısında "

RFC3339 UTC "Zulu" biçiminde bir zaman damgası (nanosaniye çözünürlüğe ve en fazla dokuz kesirli basamağa sahip). Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

payAsYouGoCharge

object (Money)

Kullanıcının, planı kullandıkça öde durumunda kullanarak harcadığı para tutarı. Bu alan, hesap bilgileri GTAF ile paylaşılırken operatör tarafından doldurulursa GTAF, kullanıcıya kullandıkça öde durumunda para harcadığını belirten bir bildirim göndermeye çalışır.

accountTopUp

object (Money)

Hesaba para ekleme bildirimi için gereklidir. Kullanıcının hesap bakiyesine eklediği para miktarı. Bu alan, hesap bilgileri GTAF ile paylaşılırken operatör tarafından doldurulursa GTAF, kullanıcıya hesabına yükleme yapıldığını belirten bir bildirim göndermeye çalışır.

Para

Para birimi türüyle birlikte bir para tutarını gösterir.

JSON gösterimi
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
Alanlar
currencyCode

string

ISO 4217'de tanımlanan 3 harfli para birimi kodu.

units

string (int64 format)

Tutarın tam birimleri. Örneğin, currencyCode "USD" ise 1 birim bir ABD dolarıdır.

nanos

integer

Tutarın nano (10^-9) birim sayısı. Değer, -999.999.999 ile +999.999.999 arasında (değerler dahil) olmalıdır. units pozitifse nanos pozitif veya sıfır olmalıdır. units sıfırsa nanos pozitif, sıfır veya negatif olabilir. units negatifse nanos negatif veya sıfır olmalıdır. Örneğin, -1,75 ABD doları units=-1 ve nanos=-750.000.000 olarak gösterilir.

AccountBalanceStatus

Kullanıcı cüzdanının durumu.

Sıralamalar
VALID Kullanıcı hesabı bakiyesi geçerlidir ve satın alma işlemleri için kullanılabilir.
INVALID Kullanıcı hesabı bakiyesi geçersizdir ve hesapta değişiklik yapılmadan kullanılamaz.

UiCompatibility

Paylaşılan PlanStatus'un kullanıcıya gösterilip gösterilemeyeceğini gösteren enum.

Sıralamalar
UI_COMPATIBILITY_UNSPECIFIED Varsayılan olarak PlanStatus'un kullanıcı arayüzüyle uyumlu olduğunu varsayacağız.
UI_COMPATIBLE PlanStatus'un tamamının kullanıcı arayüzüyle uyumlu olduğunu ve plan bilgilerinin kullanıcıya gösterilebileceğini belirtir.
UI_INCOMPATIBLE PlanStatus'un kullanıcı arayüzüyle uyumlu olmadığını gösterir. Alanlar, kullanıcıya bildirim göndermek için kullanılabilir ancak plan bilgilerini göstermek için kullanılamaz.

NotificationType

Mobil Veri Planı ayarlarının kullanıcısına gönderilen bildirim türü.

Sıralamalar
NOTIFICATION_UNDEFINED Bilinmeyen bildirim türü
NOTIFICATION_LOW_BALANCE_WARNING Kullanıcıları düşük bakiye konusunda uyaran bildirim
NOTIFICATION_DATA_EXPIRATION_WARNING Kullanıcıları veri planının süresinin dolacağı konusunda uyaran bildirim
NOTIFICATION_OUT_OF_DATA Kullanıcıların verilerinin bitmesiyle ilgili bildirim
NOTIFICATION_PLAN_ACTIVATION Kullanıcının satın aldığı planın etkinleştirildiğine dair bildirim
NOTIFICATION_PAY_AS_YOU_GO Kullanıcıya, kullanıldıkça ödemeye dayalı bir durumda veri için ödeme yaptığını bildiren bir bildirim.
NOTIFICATION_ACCOUNT_TOP_UP Kullanıcıya, hesap bakiyesine para yüklediğini bildiren bir bildirim.
NOTIFICATION_DATA_EXPIRED Kullanıcıya, veri planının süresinin dolduğunu bildiren bir bildirim.

PlanInfoPerClient

Belirli bir Google istemcisiyle ilgili veri planı bilgileri.

JSON gösterimi
{
  "youtube": {
    object (YouTube)
  },
  "androidSystemInfo": {
    object (AndroidSystemInfo)
  }
}
Alanlar
youtube

object (YouTube)

YouTube ile ilgili plan bilgileri.

androidSystemInfo

object (AndroidSystemInfo)

Android sistemiyle ilgili plan bilgileri.

YouTube

YouTube ile ilgili veri planı bilgileri.

JSON gösterimi
{
  "rateLimitedStreaming": {
    object (RateLimitedStreaming)
  }
}
Alanlar
rateLimitedStreaming

object (RateLimitedStreaming)

YouTube Plan Aware Streaming (PAS) özelliği, sunulan videonun bit hızını sınırlar.

RateLimitedStreaming

YouTube'un, sınırlı hızda yayın kullanıcı deneyimini iyileştirmesini sağlamak için veri planı bilgileri.

JSON gösterimi
{
  "maxMediaRateKbps": integer
}
Alanlar
maxMediaRateKbps

integer

Bu kullanıcı için desteklenen YouTube bit hızı (kb/sn)

AndroidSystemInfo

Tüm Android sistemiyle ilgili veri planı bilgileri.

JSON gösterimi
{
  "cellularInfo": [
    {
      object (CellularInfo)
    }
  ]
}
Alanlar
cellularInfo[]

object (CellularInfo)

Bağlantı türüne göre hücresel bilgiler. Örneğin, 4G, 5G gibi her bağlantı türü için bir cellularInfo mesajı olacaktır.

CellularInfo

Planın kullanıcıya sunduğu hücresel bağlantı hakkında bilgiler.

JSON gösterimi
{
  "connectionType": enum (ConnectionType),
  "meteredness": enum (Meteredness)
}
Alanlar
connectionType

enum (ConnectionType)

Operatörün kullanıcıya sağladığı bağlantı türü.

meteredness

enum (Meteredness)

Kullanıcı planının ölçülü kullanım durumu.

ConnectionType

Bağlantı türü: 2G, 3G, 4G

Sıralamalar
CONNECTION_TYPE_UNSPECIFIED Belirtilmedi.
CONNECTION_2_G 2G.
CONNECTION_3_G 3G.
CONNECTION_4_G 4G.
CONNECTION_5_G 5G.
CONNECTION_ALL Tüm türler.

Ölçülülük

Kullanıcının sahip olduğu plan türü

Sıralamalar
METEREDNESS_UNSPECIFIED GTAF, kullanıcı planının ölçülü olup olmadığını bilmiyor.
METEREDNESS_UNMETERED Kullanıcı, sınırsız plan kullanıyordur.
METEREDNESS_METERED Kullanıcı, ölçülü plan kullanıyorsa

CpidState

CPID durumunu temsil etmek için operatörün kullandığı bir enum.

Sıralamalar
CPID_STATE_UNSPECIFIED CPID'nin durumu belirtilmemiş. Bu durumda, CPID'nin geçerli olduğu varsayılır.
CPID_INVALIDATED CPID geçersiz kılınır ve istemci, CPID uç noktasından yeni bir CPID getirmelidir.

Yöntemler

create

Benzersiz Otonom Sistem Numarası (ASN) ile tanımlanan bir mobil operatörün, belirli bir istemci tarafından kullanılmak üzere kullanıcı için yeni bir PlanStatus girişi eklemesine olanak tanır.