资格要求
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 响应。成功的 EligibilityResponse 的格式如下:
{
"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 可以定期提取信息,也可以由运营商根据内部触发器推送信息。
Pull API
设备可以通过 GTAF 使用以下方法拉取流量使用情况信息:
GET DPA/{userKey}/planStatus?key_type={userKey}&client_id=AndroidSystemInfo
请注意,DPA(数据流量方案代理)表示运营商网络中的 API 网关或授权服务器。
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 列入许可名单的服务账号。如需了解详情,另请参阅此处的集成指南。