REST Resource: operators.clients.users.planStatus

리소스: PlanStatus

PlanStatus에는 사용자가 구매한 모든 최상위 모바일 서비스 패키지의 세부정보가 포함되어 있습니다.

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)
}
필드
name

string

PlanStatus의 리소스 이름으로, operators/{asn_id}/planStatuses/{userKey} 형식입니다. PlanStatus 항목을 만들 때 이름은 무시됩니다.

plans[]

object (Plan)

이 사용자가 소유한 요금제 목록입니다.

languageCode

string

필수 항목입니다. BCP-47 언어 코드(예: 'en-US' 또는 'sr-Latn')입니다. 자세한 내용은 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier를 참조하세요.

expireTime

string (Timestamp format)

필수 항목입니다. 공유 요금제 그룹 정보가 오래된 시간입니다. 이 시점이 지나면 PlanStatus가 애플리케이션에 제공되지 않습니다. 만료 시간은 미래여야 합니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

필수 항목입니다. 데이터 요금제 에이전트 (DPA)가 백엔드 시스템에서 요금제 상태 정보를 가져온 시간입니다. 요금제 상태 정보가 얼마나 최신인지 파악하는 데 사용될 수 있습니다. 업데이트 시간은 과거여야 하지만 30일 이내여야 합니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

title

string

사용자가 이동통신사와 체결한 계약의 제목입니다. UI 헤더에 표시됩니다.

subscriberId

string

사용자를 식별하는 이동통신사 시스템의 안정적인 정식 식별자입니다.

accountInfo

object (AccountInfo)

선불 사용자에게 필요합니다. 사용자 계정 잔액에 관한 정보입니다.

uiCompatibility

enum (UiCompatibility)

PlanStatus를 사용자 인터페이스에서 사용자에게 표시할 수 있는지 확인합니다. UI_INCOMPATIBLE로 설정하면 PlanStatus를 사용하여 사용자에게 알림을 보낼 수 있지만 사용자에게 요금제 정보를 표시하는 데는 사용되지 않습니다.

notifications[]

enum (NotificationType)

GTAF에서 사용자에게 전송한 알림 유형의 목록이 포함되어 있습니다. 호출자가 이 필드를 채우면 GTAF는 이 필드를 무시합니다.

planInfoPerClient

object (PlanInfoPerClient)

특정 Google 고객과 관련된 데이터 요금제 정보

cpidState

enum (CpidState)

이 요금제 상태와 연결된 CPID의 상태입니다.

요금제

정기 결제 사용자가 구매하는 최상위 모바일 서비스 패키지인 사용자의 모바일 요금제 세부정보입니다. 이 요금제는 30일 동안 10GB의 모바일 데이터만큼 간단하게 사용할 수 있으며, 구성요소 모음 (계획 모듈이라고 함)으로 정의할 수도 있습니다. 예를 들어 '2GB 데이터, 무제한 WhatsApp + 무제한 WeChat, 1GB Spotify'로 설명된 ACME 요금제 199는 3개의 요금제 모듈을 포함합니다.

JSON 표현
{
  "planName": string,
  "planId": string,
  "planCategory": enum (PlanCategory),
  "expirationTime": string,
  "planModules": [
    {
      object (PlanModule)
    }
  ],
  "planState": enum (PlanState)
}
필드
planName

string

사용자의 모바일 요금제 이름

planId

string

필수 항목입니다. 혜택 등에서 요금제를 참조하는 데 사용되는 요금제 식별자입니다.

planCategory

enum (PlanCategory)

선불 또는 후불 요금제.

expirationTime

string (Timestamp format)

필수 항목입니다. 이 요금제가 만료된 경우 대부분의 요금제에서는 요금제 요금제별 최대 만료 시간과 일치해야 합니다. 정기적으로 모듈 할당량을 새로고침하는 요금제의 경우 요금제 전체의 만료 시간, 즉, 요금제 모듈의 새로고침이 중지되는 시간이어야 합니다. 요금제가 만료되지 않은 경우 이 필드는 생략되어야 합니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

planModules[]

object (PlanModule)

자세한 계획 모듈 (하위 계획) 정보

planState

enum (PlanState)

사용자 요금제 상태(예: 활성, 비활성 등)

계획 카테고리

가능한 계획 카테고리 유형입니다.

열거형
PLAN_CATEGORY_UNSPECIFIED 지정되지 않았습니다.
PREPAID 선불 요금제.
POSTPAID 후불 요금제

요금제 모듈

요금제 내의 각 데이터 요금제 모듈 (또는 하위 요금제)에 관한 정보입니다.

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.
}
필드
coarseBalanceLevel

enum (BalanceLevel)

대략적 잔액 정보.

trafficCategories[]

enum (PlanModuleTrafficCategory)

이 계획 모듈에 청구되는 트래픽 카테고리 목록입니다.

expirationTime

string (Timestamp format)

필수 항목입니다. 모듈별 만료 시간 계획 주기적으로 업데이트되는 할당량이 있는 요금제 모듈의 경우 다음 모듈이 새로고침되는 시간입니다. 계획 모듈이 만료되지 않은 경우 이 필드는 생략되어야 합니다.

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

overUsagePolicy

enum (OverUsagePolicy)

과도한 사용 정책(예: 제한)

maxRateKbps

string (int64 format)

이 요금제 모듈에서 허용하는 최대 데이터 속도는 Kbps입니다. 관찰된 실제 데이터 속도는 네트워크 조건에 따라 0에서 maxRateKbps 사이입니다. maxRateKbps를 생략하거나 0으로 설정하면 이 계획 모듈에 대한 제한이 수행되지 않음을 나타냅니다.

description

string

필수 항목입니다. 요금제 모듈 설명은 사용자에게 표시될 수 있으며 요금제 모듈의 시장 설명과 가깝습니다.

moduleName

string

필수 항목입니다. 요금제 모듈의 이름입니다.

usedBytes

string (int64 format)

이 요금제 모듈에서 사용자가 사용한 총 바이트 수입니다.

planModuleState

enum (PlanState)

요금제 모듈의 상태(예: 활성, 비활성 등)

refreshPeriod

enum (RefreshPeriod)

이 요금제 모듈의 새로고침 기간 또는 요금제 모듈이 할당량을 새로고침하지 않는 경우 REFRESH_PERIOD_NONE 요금제 새로고침 할당량은 할당량을 새로고침할 때마다 한 번씩 새로고침합니다.

통합 필드 balance는 필수 항목입니다. 요금제 모듈 잔액 정보는 byte_balance, time_balance, coarse_balance_level 중 하나여야 합니다. balance은 다음 중 하나여야 합니다.
byteBalance

object (ByteQuota)

바이트 기반 요금제 모듈 잔액 정보. 주기적으로 새로고침되는 모듈의 경우 이 필드는 새로고침 기간별 바이트 잔액을 나타냅니다.

timeBalance

object (TimeQuota)

시간 기반 요금제 모듈 잔액 정보. 주기적으로 새로고침되는 모듈의 경우 이 필드는 새로고침 기간당 시간 잔액을 나타냅니다.

바이트 할당량

바이트 기반 요금제 모듈 할당량/잔액 정보

JSON 표현
{
  "quotaBytes": string,
  "remainingBytes": string
}
필드
quotaBytes

string (int64 format)

모듈 할당량(바이트)입니다. 무제한 요금제의 경우 2^63 - 1 (9223372036854775807)로 설정해야 합니다.

remainingBytes

string (int64 format)

잔액 부족 알림에 필요합니다. 남아 있는 할당량 잔액(바이트)입니다.

시간 할당량

시간 기반 요금제 모듈 할당량/잔액 정보

JSON 표현
{
  "quotaMinutes": string,
  "remainingMinutes": string
}
필드
quotaMinutes

string (int64 format)

시간 기반 계획에 대한 모듈 할당량(분)(예: 180분

remainingMinutes

string (int64 format)

시간 기반 요금제의 잔여 할당량 잔액(분) 40분

잔액 수준

대략적인 요금제 모듈 데이터 잔액 정보

열거형
BALANCE_LEVEL_UNSPECIFIED 지정되지 않았습니다.
NO_PLAN 데이터 요금제 없음
OUT_OF_DATA 데이터 잔액이 0입니다.
LOW_QUOTA 데이터 잔액 (또는 남은 시간)은 원래 팩 잔액 (또는 시간)의 10~25% 이하입니다. 배송업체는 각 팩의 임곗값이 적절하다고 판단하는 경우 이를 결정할 수 있습니다(MAY).
HIGH_QUOTA 데이터 잔액 (또는 남은 시간)이 원래 팩 잔액 (또는 시간)의 10~25% 를 초과합니다. 배송업체는 각 팩의 임곗값이 적절하다고 판단하는 경우 이를 결정할 수 있습니다(MAY). 데이터 잔액이 많음

계획 모듈 트래픽 카테고리

특정 계획 모듈에 속하는 애플리케이션 트래픽 집합을 설명하는 계획 모듈 트래픽 카테고리

열거형
PLAN_MODULE_TRAFFIC_CATEGORY_UNSPECIFIED 지정되지 않았습니다.
GENERIC 일반, 모든 트래픽에 적용됩니다.
VIDEO 모든 동영상 트래픽
VIDEO_BROWSING 동영상 디스커버리 (탐색) 트래픽: 동영상/오디오 스트리밍 부분을 제외한 모든 동영상 앱 트래픽을 의미합니다.
VIDEO_OFFLINE 동영상 오프라인 트래픽: VIDEO_BROWSING 및 동영상/오디오 오프라인 (비 스트리밍) 트래픽의 합계입니다.
MUSIC Music 앱 트래픽
GAMING 게임 앱 트래픽
SOCIAL 소셜 앱 트래픽
MESSAGING 메시지 앱 트래픽
APP_STORE 앱 스토어 트래픽(예: 새 앱 업데이트 또는 다운로드)

과도한 사용 정책

사용량 정책 초과: 사용자가 할당량을 소진하면 어떻게 되나요?

열거형
OVER_USAGE_POLICY_UNSPECIFIED 지정되지 않았습니다.
THROTTLED 속도가 제한되었습니다.
BLOCKED 연결이 차단되었습니다.
PAY_AS_YOU_GO 종량제 요금.

요금제 상태

사용자의 계획/계획 모듈의 다양한 상태를 나타내는 열거형입니다.

열거형
ACTIVE Plan/PlanModule이 활성 상태이고, 사용자가 모듈의 일부로 제공되는 데이터를 사용할 수 있습니다.
INACTIVE 계획/계획 모듈은 비활성 상태이며, 사용자가 계속 모듈을 가지고 있는 동안에는 사용자가 모듈의 일부인 데이터를 사용할 수 없습니다. 이는 모듈이 하루 중 특정 시간 동안에만 데이터를 제공하거나 사용자가 모듈을 구매했지만 아직 활성화되지 않은 경우에 발생할 수 있습니다.
EXPIRING_SOON Plan/PlanModule이 곧 만료됩니다. 호출자는 이 값을 설정할 시기를 결정하기 위해 적절한 수준을 선택해야 합니다. 이는 요금제가 활성 상태임을 의미합니다.
NEWLY_ACTIVE 이전에 비활성 상태이거나 존재하지 않는 Plan/PlanModule이 방금 활성화되었습니다. 이 상태는 활성화 시간 후 매우 짧은 기간 동안만 사용해야 합니다. 그렇지 않으면 ACTIVE 상태를 대신 사용해야 합니다. NEWLY_ACTIVE 상태가 매우 빠르게 부정확할 수 있으므로 NEWLY_ACTIVE 모듈과 함께 전송되는 데이터 요금제 상태 알림을 짧게 TTL로 전송해야 합니다.
EXPIRED Plan/PlanModule이 만료되었습니다. 이 열거형 값을 설정하면 요금제 만료 알림이 트리거됩니다.

새로고침 기간

요금제 모듈이 재설정되는 정기적인 간격인 새로고침 기간을 나타냅니다.

열거형
REFRESH_PERIOD_NONE 새로고침 기간이 없습니다. 요금제 모듈이 반복되지 않을 때 사용됩니다.
DAILY 계획 모듈은 매일 재설정됩니다.
MONTHLY 요금제 모듈은 매달 재설정됩니다.
BIWEEKLY 요금제 모듈은 2주마다 재설정됩니다.
WEEKLY 계획 모듈은 매주 재설정됩니다.

AccountInfo

선불 사용자의 계정 잔액에 관한 정보입니다.

JSON 표현
{
  "accountBalance": {
    object (Money)
  },
  "loanBalance": {
    object (Money)
  },
  "unpaidLoan": {
    object (Money)
  },
  "accountBalanceStatus": enum (AccountBalanceStatus),
  "validUntil": string,
  "payAsYouGoCharge": {
    object (Money)
  },
  "accountTopUp": {
    object (Money)
  }
}
필드
accountBalance

object (Money)

필수 항목입니다. 사용자 계정에 계정 잔액이 남아 있습니다.

loanBalance

object (Money)

해당하는 경우 필수입니다. 이동통신사의 현금 대출을 통해 추가된 사용자 계정에 계정 잔액이 남아 있습니다. 해당되는 경우 accountBalance 필드에 이 잔액이 포함되지 않습니다.

unpaidLoan

object (Money)

현금 대출로 인해 사용자에게 지불해야 하는 금액입니다.

accountBalanceStatus

enum (AccountBalanceStatus)

필수 항목입니다. 계정 잔액의 상태를 나타냅니다. validUntil 시간과 accountBalanceStatus 필드가 일치하지 않는 경우 accountBalanceStatus를 사용합니다.

validUntil

string (Timestamp format)

필수 항목입니다. 계정 잔액이 유효할 때까지의 시간입니다. 이 필드는 사용자에게 계정 잔액과 비교하여

RFC3339 UTC "Zulu' 형식의 타임스탬프로, 나노초 해상도와 최대 9자리 소수를 나타냅니다. 예: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

payAsYouGoCharge

object (Money)

사용자가 사용한 만큼만 지불하는 방식의 요금제를 통해 사용자가 사용한 금액입니다. GTAF와 계정 정보를 공유할 때 이동통신사에서 이 필드를 채우면 GTAF는 사용자가 종량제 방식으로 광고비를 지출하고 있음을 알리는 알림을 사용자에게 전송하려고 시도합니다.

accountTopUp

object (Money)

계정 충전 알림에 필요합니다. 사용자가 계정 잔액에 추가한 금액입니다. GTAF와 계정 정보를 공유할 때 이동통신사에서 이 필드를 채우면 GTAF는 사용자에게 계정이 충전되었음을 알리는 알림을 보내려고 합니다.

금액

통화 유형의 금액을 나타냅니다.

JSON 표현
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
필드
currencyCode

string

ISO 4217에 정의된 3자리 통화 코드입니다.

units

string (int64 format)

금액의 전체 단위입니다. 예를 들어 currencyCode"USD"인 경우 1단위는 1달러(USD)입니다.

nanos

integer

금액의 나노 (10^-9) 단위 수입니다. 값은 -999,999,999 ~ +999,999,999(포함) 사이여야 합니다. units이 양수이면 nanos는 양수 또는 0이어야 합니다. units가 0이면 nanos는 양수, 0 또는 음수일 수 있습니다. units가 음수이면 nanos는 음수 또는 0이어야 합니다. 예를 들어 $-1.75는 units=-1 및 nanos=-750,000,000으로 나타냅니다.

계정 잔액 상태

사용자 월렛 상태

열거형
VALID 사용자 계정 잔액이 유효하며 구매에 사용할 수 있습니다.
INVALID 사용자 계정 잔액이 잘못되어 계정을 변경하지 않으면 사용할 수 없습니다.

UI 호환성

공유하려는 PlanStatus를 사용자에게 표시할 수 있는지를 나타내는 열거형입니다.

열거형
UI_COMPATIBILITY_UNSPECIFIED 기본적으로 PlanStatus가 UI와 호환된다고 가정합니다.
UI_COMPATIBLE 전체 PlanStatus가 UI와 호환되며 요금제 정보가 사용자에게 표시될 수 있음을 나타냅니다.
UI_INCOMPATIBLE PlanStatus가 UI 호환성이 아님을 나타냅니다. 사용자에게 알림을 보내는 데 필드를 사용할 수 있지만 요금제 정보를 사용자에게 표시하는 데는 사용할 수 없습니다.

알림 유형

모바일 데이터 요금제 사용자에게 전송되는 알림의 유형입니다.

열거형
NOTIFICATION_UNDEFINED 알 수 없는 알림 장르 유형
NOTIFICATION_LOW_BALANCE_WARNING 사용자에게 잔액이 부족함을 경고하는 알림
NOTIFICATION_DATA_EXPIRATION_WARNING 데이터 요금제가 만료될 예정임을 사용자에게 경고하는 알림
NOTIFICATION_OUT_OF_DATA 사용자의 데이터 부족 알림
NOTIFICATION_PLAN_ACTIVATION 사용자가 구매한 요금제가 활성화되었다는 알림
NOTIFICATION_PAY_AS_YOU_GO 사용한 만큼만 지불하는 방식으로 사용자에게 데이터 요금을 지불하고 있음을 알리는 알림
NOTIFICATION_ACCOUNT_TOP_UP 사용자에게 계정 잔액이 충전되었음을 알리는 알림
NOTIFICATION_DATA_EXPIRED 사용자에게 데이터 요금제가 만료되었음을 알리는 알림

요금제 정보 클라이언트

특정 Google 고객과 관련된 데이터 요금제 정보

JSON 표현
{
  "youtube": {
    object (YouTube)
  },
  "androidSystemInfo": {
    object (AndroidSystemInfo)
  }
}
필드
youtube

object (YouTube)

YouTube 관련 요금제 정보

androidSystemInfo

object (AndroidSystemInfo)

Android 시스템과 관련된 요금제 정보

YouTube

YouTube와 관련된 데이터 요금제 정보

JSON 표현
{
  "rateLimitedStreaming": {
    object (RateLimitedStreaming)
  }
}
필드
rateLimitedStreaming

object (RateLimitedStreaming)

제공되는 동영상 비트 전송률을 제한하는 YouTube 계획 인식 스트리밍 (PAS) 기능

비율 제한 스트리밍

YouTube에서 속도가 제한된 스트리밍 사용자 환경을 향상시킬 수 있는 데이터 요금제 정보

JSON 표현
{
  "maxMediaRateKbps": integer
}
필드
maxMediaRateKbps

integer

이 사용자에 지원되는 YouTube 비트 전송률(kbps)(1,000초/초)입니다.

Android 시스템 정보

전체 Android 시스템과 관련된 데이터 요금제 정보

JSON 표현
{
  "cellularInfo": [
    {
      object (CellularInfo)
    }
  ]
}
필드
cellularInfo[]

object (CellularInfo)

연결 유형별 모바일 정보. 예를 들어 연결 유형마다 4G, 5G 등의 cellInfo 메시지가 하나 있습니다.

셀룰러 정보

요금제가 사용자에게 제공하는 모바일 데이터 연결에 관한 정보입니다.

JSON 표현
{
  "connectionType": enum (ConnectionType),
  "meteredness": enum (Meteredness)
}
필드
connectionType

enum (ConnectionType)

연산자가 사용자에게 제공하는 연결 유형입니다.

meteredness

enum (Meteredness)

사용자 요금제의 계량 상태입니다.

연결 유형

연결 유형: 2G, 3G, 4G

열거형
CONNECTION_TYPE_UNSPECIFIED 지정되지 않았습니다.
CONNECTION_2_G 2G
CONNECTION_3_G 3G
CONNECTION_4_G 4G
CONNECTION_5_G 5G
CONNECTION_ALL 모든 음악을 좋아하며

한도 측정

사용자의 요금제 유형

열거형
METEREDNESS_UNSPECIFIED GTAF는 사용자 요금제의 계량 상태에 관해 알지 못합니다.
METEREDNESS_UNMETERED 사용자가 무제한 요금제입니다.
METEREDNESS_METERED 사용자가 데이터 요금제를 사용 중입니다.

CpidState

이동통신사가 CPID 상태를 나타내는 열거형입니다.

열거형
CPID_STATE_UNSPECIFIED CPID의 상태가 지정되지 않았습니다. CPID가 유효한 것처럼 처리됩니다.
CPID_INVALIDATED CPID가 무효화되며 클라이언트는 CPID 엔드포인트에서 새 CPID를 가져와야 합니다.

메소드

create

고유한 자율 시스템 번호(ASN)로 식별되는 이동통신사에서 사용자가 특정 클라이언트에 사용할 수 있도록 새로운 PlanStatus 항목을 추가할 수 있습니다.