其他用例

资格条件

GTAF 可以发出以下资格请求,检查用户是否有资格购买方案。

GET DPA/{userKey}/Eligibility/{planId}?key_type={CPID,MSISDN}

请注意,planId 是方案的唯一标识符,可用于代表用户购买方案(请参阅数据购买)。如果未指定 planId,DPA 必须返回相应用户能够购买的所有计划。

错误案例列出了出现错误时 DPA 的预期响应。此外,DPA 应在以下情况下返回错误:

  • DPA 会返回 400 BAD REQUEST 错误代码,以指示 GTAF planId 无效。
  • DPA 返回 409 CONFLICT 错误代码,表示 planId 与用户的数据计划不兼容。

否则,DPA 应返回 200-OK 响应。成功的 EligabilityResponse 的格式为:

{
  "eligiblePlans":
  [
   {
    "planId": string,   // Plan identifier. Can be used to
                        // refer to the plan during
                        // offers, etc. (req.)
   }
  ]
}

如果请求包含 planId,则响应中仅包含该方案。否则,该列表将包含用户有资格购买的所有方案。如果 planId 为空,并且 DPA 不支持返回符合条件的方案列表,则必须返回 400 BAD REQUEST 错误。

Android 5G 体验

借助 GTAF,运营商可以为订阅者共享每种连接类型的按流量计费状态。GTAF 可以定期提取信息,运营商也可以根据内部触发器推送这些信息。

拉取 API

设备可以使用以下代码通过 GTAF 提取计量供给信息:

GET DPA/{userKey}/planStatus?key_type={userKey}&client_id=AndroidSystemInfo

请注意,DPA(流量套餐代理)代表运营商网络中的 API GW 或授权服务器。

userKey 是在初始身份验证阶段(如此处定义)建立的身份验证令牌。

client_id 是 AndroidSystemInfo

计量供给状态以 ENUM 形式提供

DPA 应返回 200 OK 响应,并包含 planInfoPerClient此处定义了 DPA 的错误处理方式

在拉取模型中,GTAF 充当客户端并验证 DPA 的 SSL 证书。GTAF 使用此处定义的 OAuth 流程向 DPA 进行身份验证。

Push API

运营商还可以根据触发事件(例如价格方案变动等)推送计量供给信息,

POST https://mobiledataplansharing.googleapis.com/v1/operators/12345/clients/AndroidSystemInfo/users/abcdef/planStatus

DPA 应在消息正文中包含 planInfoPerClient。GTAF 的错误响应在此处进行了定义

在推送模式下,GTAF 使用 Google Cloud OAuth2 服务器对来自 DPA 的传入请求进行身份验证。传入请求必须作为已在 ISP 门户中列入白名单来针对 DPA 所代表 ASN 的服务帐号进行身份验证。另请参阅此处的集成指南,了解更多详情。