REST Resource: operators.clients.users.planStatus

Tài nguyên: PlanStatus

PlanStatus chứa thông tin chi tiết về tất cả gói dịch vụ di động cấp cao nhất mà người dùng đã mua.

Biểu diễn dưới dạng 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)
  }
}
Các trường
name

string

Tên tài nguyên của PlanStatus theo định dạng sau: operators/{asn_id}/planStatuses/{userKey}. Tên bị bỏ qua khi tạo mục nhập PlanStatus.

plans[]

object (Plan)

Danh sách các gói thuộc sở hữu của người dùng này.

languageCode

string

Bắt buộc. Mã ngôn ngữ BCP-47, chẳng hạn như "en-US" hoặc "sr-Latn" Để biết thêm thông tin, hãy xem http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.

expireTime

string (Timestamp format)

Bắt buộc. Thời điểm thông tin về nhóm gói dùng chung bị lỗi thời. PlanStatus sẽ không được phân phát đến các ứng dụng sau thời gian này.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, chính xác đến nano giây. Ví dụ: "2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

Bắt buộc. Thời điểm tác nhân gói dữ liệu (DPA) tìm nạp thông tin trạng thái gói từ hệ thống phụ trợ. Có thể dùng để xác định mức độ gần đây của thông tin trạng thái gói.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, chính xác đến nano giây. Ví dụ: "2014-10-02T15:01:23.045123456Z"

title

string

Tiêu đề của hợp đồng mà người dùng có với nhà cung cấp dịch vụ. Điều này sẽ được hiển thị trong tiêu đề giao diện người dùng.

subscriberId

string

Giá trị nhận dạng ổn định riêng biệt trong hệ thống của nhà mạng để xác định người dùng.

accountInfo

object (AccountInfo)

Bắt buộc đối với người dùng trả trước. Thông tin về số dư tài khoản người dùng.

uiCompatibility

enum (UiCompatibility)

Xác định xem PlanStatus có thể hiển thị cho người dùng trong một giao diện người dùng hay không. Khi đặt thành UI_INCOMPATIBLE, Trạng thái kế hoạch có thể dùng để gửi thông báo cho người dùng nhưng sẽ không dùng để hiển thị thông tin về gói cho người dùng.

notifications[]

enum (NotificationType)

Các loại thông báo đã được gửi đến người dùng.

planInfoPerClient

object (PlanInfoPerClient)

Kế hoạch

Thông tin chi tiết về gói di động của người dùng, đây là gói dịch vụ di động cấp cao nhất mà người đăng ký mua. Gói có thể đơn giản như "10 GB dữ liệu di động trong 30 ngày" hoặc có thể được xác định là tập hợp các thành phần (chúng tôi gọi là mô-đun gói). Ví dụ: gói ACME 199 được mô tả là "dữ liệu 2 GB, không giới hạn ứng dụng WhatsApp + tin nhắn không giới hạn, và 1 GB spotify", có 3 mô-đun gói.

Biểu diễn dưới dạng JSON
{
  "planName": string,
  "planId": string,
  "planCategory": enum (PlanCategory),
  "expirationTime": string,
  "planModules": [
    {
      object (PlanModule)
    }
  ],
  "planState": enum (PlanState)
}
Các trường
planName

string

Tên gói dịch vụ di động của người dùng.

planId

string

Bắt buộc. Giá trị nhận dạng của gói, dùng để tham chiếu đến gói khi đang ưu đãi, v.v.

planCategory

enum (PlanCategory)

Gói trả trước hoặc trả sau

expirationTime

string (Timestamp format)

Bắt buộc. Khi gói này hết hạn. Đối với hầu hết các gói, giá trị này phải bằng với thời gian hết hạn tối đa của tất cả các mô-đun gói cụ thể. Đối với các kế hoạch định kỳ làm mới hạn mức mô-đun, đây phải là thời gian hết hạn chung của kế hoạch, là thời điểm các mô-đun gói ngừng làm mới. Bạn nên bỏ qua trường này nếu gói không hết hạn.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, chính xác đến nano giây. Ví dụ: "2014-10-02T15:01:23.045123456Z"

planModules[]

object (PlanModule)

Thông tin chi tiết về mô-đun gói (gói phụ).

planState

enum (PlanState)

Trạng thái của gói người dùng, ví dụ như đang hoạt động, không hoạt động, v.v.

Danh mục kế hoạch

Các loại danh mục gói dịch vụ có thể sử dụng.

Enum
PLAN_CATEGORY_UNSPECIFIED Không xác định.
PREPAID Gói trả trước.
POSTPAID Gói trả sau.

ModuleMô-đun

Thông tin về từng mô-đun gói dữ liệu (hoặc gói phụ) trong một gói.

Biểu diễn dưới dạng 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.
}
Các trường
coarseBalanceLevel

enum (BalanceLevel)

Thông tin số dư thô

trafficCategories[]

enum (PlanModuleTrafficCategory)

Danh sách các danh mục lưu lượng truy cập sẽ bị tính phí dựa trên mô-đun gói này.

expirationTime

string (Timestamp format)

Bắt buộc. Thời gian hết hạn cụ thể của mô-đun gói. Đối với các mô-đun kế hoạch có hạn mức làm mới định kỳ, đây là thời gian làm mới mô-đun tiếp theo. Bạn nên bỏ qua trường này nếu gói không hết hạn.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, chính xác đến nano giây. Ví dụ: "2014-10-02T15:01:23.045123456Z"

overUsagePolicy

enum (OverUsagePolicy)

Chính sách sử dụng quá mức, ví dụ: bị hạn chế.

maxRateKbps

string (int64 format)

Tốc độ dữ liệu tối đa được mô-đun gói này cho phép bằng Kb/giây. Tốc độ dữ liệu thực tế quan sát được là từ 0 đến maxRateKbps tuỳ thuộc vào điều kiện mạng. Bỏ qua maxRateKbps hoặc đặt thành 0 cho biết rằng sẽ không có điều tiết cho mô-đun gói này.

description

string

Bắt buộc. Nội dung mô tả về mô-đun kế hoạch, có thể hiển thị cho người dùng và phải gần với phần mô tả thị trường của mô-đun gói này.

moduleName

string

Bắt buộc. Tên của mô-đun kế hoạch.

usedBytes

string (int64 format)

Tổng số byte mà người dùng đã sử dụng từ mô-đun gói này.

planModuleState

enum (PlanState)

Trạng thái của mô-đun gói, ví dụ như đang hoạt động, không hoạt động, v.v.

refreshPeriod

enum (RefreshPeriod)

Khoảng thời gian làm mới của mô-đun gói này hoặc REFRESH_PERIOD_NONE nếu mô-đun gói không làm mới hạn mức. Những mô-đun kế hoạch làm mới hạn mức sẽ làm như vậy một lần mỗi khi làm mới.

Trường liên kết balance. Bắt buộc. Thông tin về số dư của mô-đun gói phải là một trong các thông tin sau: byte_balance, time_balance, thô_balance_level. balance chỉ có thể là một trong những giá trị sau:
byteBalance

object (ByteQuota)

Thông tin về số dư của mô-đun gói dựa trên byte. Đối với các mô-đun làm mới định kỳ, trường này thể hiện số dư byte trên mỗi khoảng thời gian làm mới.

timeBalance

object (TimeQuota)

Thông tin về số dư của mô-đun gói theo thời gian. Đối với các mô-đun làm mới định kỳ, trường này đại diện cho số dư thời gian cho mỗi khoảng thời gian làm mới.

Số byte

Thông tin về hạn mức/số dư của mô-đun gói theo byte.

Biểu diễn dưới dạng JSON
{
  "quotaBytes": string,
  "remainingBytes": string
}
Các trường
quotaBytes

string (int64 format)

Dung lượng mô-đun tính bằng byte. Đối với các gói không giới hạn, bạn phải đặt giá trị này là 2^63 – 1 (9223372036854775807).

remainingBytes

string (int64 format)

Bắt buộc đối với thông báo số dư thấp. Số dư hạn mức còn lại tính bằng byte.

Hạn mức

Thông tin về hạn mức/số dư của mô-đun gói theo thời gian.

Biểu diễn dưới dạng JSON
{
  "quotaMinutes": string,
  "remainingMinutes": string
}
Các trường
quotaMinutes

string (int64 format)

Dung lượng mô-đun tính bằng phút cho gói theo thời gian, ví dụ: 180 phút.

remainingMinutes

string (int64 format)

Số dư hạn mức còn lại tính bằng phút cho gói theo thời gian, ví dụ: 40 phút.

Cân bằng

Thông tin về số dư mô-đun gói dữ liệu một cách thô.

Enum
BALANCE_LEVEL_UNSPECIFIED Không xác định.
NO_PLAN Không có gói dữ liệu.
OUT_OF_DATA Số dư dữ liệu là 0.
LOW_QUOTA Số dư dữ liệu (hoặc thời gian còn lại) bằng hoặc nhỏ hơn 10-25% số dư gói ban đầu (hoặc thời gian). Nhà mạng có thể xác định ngưỡng chính xác cho từng gói khi họ cho là phù hợp.
HIGH_QUOTA Số dư dữ liệu (hoặc thời gian còn lại) lớn hơn 10-25% số dư gói ban đầu (hoặc thời gian). Nhà mạng có thể xác định ngưỡng chính xác cho từng gói khi họ cho là phù hợp. Số dư dữ liệu rất cao.

PlanModuleCategoryCategory

Danh mục lưu lượng truy cập mô-đun kế hoạch, mô tả tập hợp lưu lượng truy cập ứng dụng thuộc một mô-đun kế hoạch cụ thể.

Enum
PLAN_MODULE_TRAFFIC_CATEGORY_UNSPECIFIED Không xác định.
GENERIC Chung, áp dụng cho tất cả lưu lượng truy cập.
VIDEO Tất cả lưu lượng truy cập video.
VIDEO_BROWSING Lưu lượng truy cập (khám phá) hoạt động khám phá video, tức là tất cả lưu lượng truy cập ứng dụng video ngoại trừ phần phát trực tuyến video/âm thanh.
VIDEO_OFFLINE Lưu lượng truy cập ngoại tuyến video, là tổng lưu lượng truy cập VIDEO_BROWSING và lưu lượng truy cập video/âm thanh ngoại tuyến (không phát trực tuyến).
MUSIC Lưu lượng truy cập ứng dụng âm nhạc.
GAMING Lưu lượng truy cập ứng dụng trò chơi.
SOCIAL Lưu lượng truy cập ứng dụng xã hội.
MESSAGING Lưu lượng truy cập ứng dụng nhắn tin.
APP_STORE Lưu lượng truy cập cửa hàng ứng dụng, chẳng hạn như cập nhật hoặc tải ứng dụng mới xuống.

Chính sách sử dụng quá mức

Chính sách sử dụng vượt mức: điều gì sẽ xảy ra khi người dùng hết hạn mức.

Enum
OVER_USAGE_POLICY_UNSPECIFIED Không xác định.
THROTTLED Tốc độ đã được điều tiết.
BLOCKED Kết nối bị chặn.
PAY_AS_YOU_GO Trả tiền cho mỗi lần sử dụng.

Trạng thái kế hoạch

Enum thể hiện trạng thái khác nhau của mô-đun kế hoạch/kế hoạch của người dùng.

Enum
ACTIVE Gói/Mô-đun kế hoạch đang hoạt động và người dùng có thể sử dụng dữ liệu được cung cấp trong mô-đun này.
INACTIVE Kế hoạch/Mô-đun kế hoạch không hoạt động và trong khi người dùng vẫn có mô-đun, người dùng không thể sử dụng dữ liệu là một phần của mô-đun. Điều này có thể xảy ra nếu mô-đun chỉ cung cấp dữ liệu trong những thời điểm nhất định trong ngày hoặc nếu người dùng đã mua mô-đun nhưng chưa kích hoạt mô-đun đó.
EXPIRING_SOON Gói/Mô-đun Gói sắp hết hạn. Người gọi phải chọn mức độ thích hợp để xác định thời điểm đặt giá trị này. Điều này tự động có nghĩa là gói đang hoạt động.
NEWLY_ACTIVE Gói/Mô-đun Kế hoạch trước đây không hoạt động hoặc không tồn tại vừa được kích hoạt. Bạn chỉ nên sử dụng trạng thái này trong một khoảng thời gian rất ngắn sau thời gian kích hoạt, nếu không, bạn nên sử dụng trạng thái HOẠT ĐỘNG. Thông báo trạng thái gói dữ liệu được gửi bằng các mô-đun NEWLY_ACTIVE sẽ được gửi cùng với một TTL ngắn, vì trạng thái NEWLY_ACTIVE sẽ trở nên không chính xác rất nhanh.
EXPIRED Gói/Mô-đun Gói đã hết hạn. Việc đặt giá trị enum này sẽ kích hoạt một thông báo về gói hết hạn.

Khoảng thời gian làm mới

Đại diện cho khoảng thời gian làm mới, khoảng thời gian thông thường mà tại đó mô-đun kế hoạch đặt lại.

Enum
REFRESH_PERIOD_NONE Không có thời gian làm mới. Dùng khi mô-đun kế hoạch không định kỳ.
DAILY Mô-đun kế hoạch được đặt lại mỗi ngày.
MONTHLY Mô-đun gói sẽ đặt lại hằng tháng.
BIWEEKLY Mô-đun kế hoạch được đặt lại hai tuần một lần.
WEEKLY Mô-đun kế hoạch được đặt lại mỗi tuần.

Thông tin tài khoản

Thông tin về số dư tài khoản của người dùng trả trước.

Biểu diễn dưới dạng JSON
{
  "accountBalance": {
    object (Money)
  },
  "loanBalance": {
    object (Money)
  },
  "unpaidLoan": {
    object (Money)
  },
  "accountBalanceStatus": enum (AccountBalanceStatus),
  "validUntil": string,
  "payAsYouGoCharge": {
    object (Money)
  },
  "accountTopUp": {
    object (Money)
  }
}
Các trường
accountBalance

object (Money)

Bắt buộc. Số dư tài khoản còn lại trong tài khoản người dùng.

loanBalance

object (Money)

Bắt buộc nếu áp dụng. Số dư tài khoản còn lại trong tài khoản người dùng đã được thêm bằng một khoản vay bằng tiền từ nhà mạng. Nếu có, số dư tài khoản của trường không bao gồm số dư này.

unpaidLoan

object (Money)

Số tiền mà người dùng nợ nhà mạng do các khoản vay bằng tiền.

accountBalanceStatus

enum (AccountBalanceStatus)

Bắt buộc. Cho biết trạng thái của số dư tài khoản. Trong trường hợp không hợp lệ giữa trường thời thời có hợp với trường tài khoản.

validUntil

string (Timestamp format)

Bắt buộc. Khoảng thời gian trước khi số dư tài khoản là hợp lệ. Trường này sẽ được dùng để hiển thị "Không hợp lệ trong

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, chính xác đến nano giây. Ví dụ: "2014-10-02T15:01:23.045123456Z"

payAsYouGoCharge

object (Money)

Số tiền mà người dùng đã chi tiêu bằng cách sử dụng gói thanh toán khi bạn chuyển sang trạng thái. Nếu trường này được điền bởi nhà mạng khi chia sẻ thông tin tài khoản với GTAF, thì GTAF sẽ cố gắng gửi thông báo cho người dùng để cho biết rằng họ đang chi tiêu tiền theo phương thức trả tiền theo trạng thái của bạn.

accountTopUp

object (Money)

Bắt buộc đối với thông báo nạp tiền tài khoản. Số tiền mà người dùng đã nạp vào số dư tài khoản của họ. Nếu nhà mạng điền sẵn trường này khi chia sẻ thông tin tài khoản với GTAF, thì GTAF sẽ cố gắng gửi thông báo cho người dùng để cho biết rằng tài khoản của họ đã được nạp tiền.

Tiền

Đại diện cho một số tiền bằng loại tiền tệ của nó.

Biểu diễn dưới dạng JSON
{
  "currencyCode": string,
  "units": string,
  "nanos": number
}
Các trường
currencyCode

string

Mã tiền tệ gồm 3 chữ cái được xác định trong ISO 4217.

units

string (int64 format)

Toàn bộ đơn vị của số tiền. Ví dụ: nếu currencyCode"USD", thì 1 đơn vị là một đô la Mỹ.

nanos

number

Số đơn vị nano (10^-9) của số tiền. Giá trị phải nằm trong khoảng từ -999.999.999 đến +999.999.999. Nếu units là số dương, nanos phải là số dương hoặc không. Nếu units bằng 0, thì nanos có thể là số dương, không hoặc âm. Nếu units là số âm, nanos phải là số âm hoặc không. Ví dụ: $-1,75 được biểu thị dưới dạng units=-1 và nanos=-750,000,000.

Trạng thái số dư tài khoản

Trạng thái của ví người dùng.

Enum
VALID Số dư tài khoản người dùng là hợp lệ và có thể được dùng để mua hàng.
INVALID Số dư tài khoản người dùng không hợp lệ và không thể sử dụng nếu không thực hiện thay đổi đối với tài khoản.

Khả năng tương thích

Enum đại diện cho việc liệu giáo án có đang hiển thị cho người dùng hay không.

Enum
UI_COMPATIBILITY_UNSPECIFIED Theo mặc định, chúng tôi sẽ giả định rằng PlanStatus tương thích với giao diện người dùng.
UI_COMPATIBLE Cho biết rằng toàn bộ PlanStatus tương thích với giao diện người dùng và thông tin về gói có thể hiển thị cho người dùng.
UI_INCOMPATIBLE Cho biết rằng PlanStatus không tương thích với giao diện người dùng. Có thể dùng các trường để gửi thông báo cho người dùng nhưng không thể dùng để hiển thị thông tin về gói cho người dùng.

Loại thông báo

Loại thông báo được gửi cho người dùng trong chế độ cài đặt Gói dữ liệu di động.

Enum
NOTIFICATION_UNDEFINED Loại thể loại thông báo không xác định
NOTIFICATION_LOW_BALANCE_WARNING Thông báo cảnh báo người dùng về số dư thấp
NOTIFICATION_DATA_EXPIRATION_WARNING Thông báo cảnh báo người dùng rằng gói dữ liệu sắp hết hạn
NOTIFICATION_OUT_OF_DATA Thông báo cho biết người dùng đã hết dữ liệu
NOTIFICATION_PLAN_ACTIVATION Thông báo cho biết rằng gói người dùng đã mua hiện đang hoạt động
NOTIFICATION_PAY_AS_YOU_GO Thông báo cho người dùng biết rằng họ đang trả tiền cho dữ liệu trong một khoản thanh toán theo trạng thái của bạn.
NOTIFICATION_ACCOUNT_TOP_UP Thông báo cho người dùng biết rằng họ đã nạp tiền vào số dư tài khoản của mình.
NOTIFICATION_DATA_EXPIRED Thông báo cho người dùng biết rằng gói dữ liệu của họ đã hết hạn.

Thông tin gói cho mỗi khách hàng

Thông tin về gói dữ liệu liên quan đến một khách hàng cụ thể của Google.

Biểu diễn dưới dạng JSON
{
  "youtube": {
    object (YouTube)
  }
}
Các trường
youtube

object (YouTube)

Thông tin về gói YouTube liên quan.

YouTube

Thông tin về gói dữ liệu liên quan đến YouTube.

Biểu diễn dưới dạng JSON
{
  "rateLimitedStreaming": {
    object (RateLimitedStreaming)
  }
}
Các trường
rateLimitedStreaming

object (RateLimitedStreaming)

Tính năng Phát trực tiếp dựa trên kế hoạch của YouTube (PAS) giúp giới hạn tốc độ phân phối video.

Tốc độ truyền trực tuyến bị giới hạn

Thông tin về gói dữ liệu giúp YouTube tăng cường trải nghiệm người dùng xem trực tuyến có giới hạn.

Biểu diễn dưới dạng JSON
{
  "maxMediaRateKbps": number
}
Các trường
maxMediaRateKbps

number

Tốc độ bit trên YouTube được hỗ trợ cho người dùng này tính bằng kb/giây (1000\39 giây mỗi giây).

Phương pháp

create

Cho phép nhà cung cấp dịch vụ di động (được xác định bằng Mã số hệ thống tự quản (ASN) duy nhất của họ) thêm mục PlanStatus mới để người dùng được một ứng dụng cụ thể sử dụng.