資格條件
GTAF 可能會發出下列資格要求,確認使用者是否符合購買方案的資格。
GET DPA/{userKey}/Eligibility/{planId}?key_type={CPID,MSISDN}
請注意,planId
是方案的專屬 ID,可用於代表使用者購買方案 (請參閱「資料購買」)。如未指定 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 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 許可清單。如需更多詳細資料,請參閱這篇整合指南。