עבור מכשירים המריצים אנדרואיד 12 ומעלה, אנדרואיד מספקת תמיכה בחיתוך רשת 5G, שימוש בווירטואליזציה של רשת כדי לחלק חיבורי רשת בודדים למספר חיבורים וירטואליים נפרדים המספקים כמויות שונות של משאבים לסוגים שונים של תעבורה. חיתוך רשת 5G מאפשר למפעילי רשתות להקדיש חלק מהרשת לספק תכונות ספציפיות עבור פלח מסוים של לקוחות. אנדרואיד 12 מציגה את יכולות חיתוך הרשתות הארגוניות של 5G הבאות, שמפעילי רשת יכולים לספק ללקוחות הארגוניים שלהם:
חיתוך מכשירים ארגוניים עבור מכשירים מנוהלים במלואם
עבור ארגונים המספקים מכשירי חברה מנוהלים במלואם לעובדיהם, ספקי רשת יכולים לספק להם פרוסת רשת ארגונית פעילה אחת או יותר שאליה מנותבת התעבורה במכשירי החברה. מאנדרואיד 12, אנדרואיד מאפשרת לספקים לספק פרוסות ארגוניות באמצעות כללי URSP, במקום להגדיר פרוסות דרך APNs.
חיתוך אפליקציות עסקיות למכשירים עם פרופילי עבודה
עבור ארגונים המשתמשים בפתרון פרופיל העבודה , אנדרואיד 12 מאפשר למכשירים לנתב את התעבורה מכל האפליקציות בפרופיל העבודה לפרוסת רשת ארגונית. ארגונים יכולים להפעיל את היכולת הזו באמצעות Device Policy Controller (DPC) .
פתרון פרופיל העבודה מספק רמה אוטומטית של אימות ובקרת גישה שארגונים דורשים כדי להבטיח שרק תעבורה מאפליקציות ארגוניות בפרופיל העבודה מנותבת לפרוסת הרשת הארגונית. אין צורך לשנות אפליקציות בפרופיל העבודה כדי לבקש במפורש את פרוסת הרשת הארגונית.
כיצד פועל חיתוך רשת 5G ב-AOSP
אנדרואיד 12 מציגה תמיכה בחיתוך רשת 5G באמצעות תוספות לבסיס הקוד של הטלפוניה ב-AOSP ולמודול ה-Tethering כדי לשלב ממשקי API קיימים של קישוריות הנדרשים לחיתוך רשת.
פלטפורמת הטלפוניה של אנדרואיד מספקת ממשקי API של HAL וטלפוניה לתמיכה בחיתוך המבוסס על בקשות רשת שהוגשו על ידי קוד הליבה ברשת ויכולות חיתוך 5G במודם. איור 1 מתאר את המרכיבים של תכונת חיתוך רשת 5G.
איור 1. ארכיטקטורת חיתוך רשת 5G ב-AOSP.
פלטפורמת הטלפוניה והקישוריות תומכת ב:
- המרת בקשות רשת עבור קטגוריות פרוסות לתיאורי תעבורה אשר מועברות לאחר מכן למודם לצורך התאמת תעבורת URSP ובחירת מסלול
- חזרה לרשת ברירת המחדל אם פרוסת הרשת הארגונית אינה זמינה
- ניתוב תנועה מכל האפליקציות מתחת לפרופיל העבודה לחיבור המתאים
תמיכה בחיתוך ארגוני
- זיהוי נוכחות של פרופיל עבודה במכשיר
- בדיקת הרשאות או הנחיות ניתוב שסופקו מה-DPC המשמש את מנהל ה-IT של הארגון
שירות הליבה ברשת כולל את השינויים הבאים במודול Tethering באנדרואיד 12:
- מוסיף את רוב מחלקות ה-API הציבוריות או מערכתיות
android.net.*
למודול Tethering מרחיב את גבולות מודול ה-Tethering לכלול:
-
f/b/core/java/android/net/…
-
f/b/services/net/…
-
f/b/services/core/java/com/android/server/connectivity/…
-
f/b/services/core/java/com/android/server/ConnectivityService.java
-
f/b/services/core/java/com/android/server/TestNetworkService.java
-
מעביר את קוד ה-VPN מתוך מודול ה-Tethering
אנדרואיד 12 מעביר קוד עם היכולות הבאות למודול Tethering:
- קבלת בקשות מאפליקציות לחיבורי רשת
- קבלת בקשות מהמערכת (לדוגמה, "הצב את האפליקציות האלה בחלק ארגוני"; הוצג באנדרואיד 12)
- שליחת בקשות מהמערכת לקוד הטלפוניה שמנסה להגדיר רשתות או פרוסות על ידי מעבר דרך ה-HAL API והמודם
- מידע רשת כיצד לנתב תנועה על בסיס אפליקציה (הוצג באנדרואיד 12)
- ליידע אפליקציות מה קורה לתעבורת הרשת שלהם באמצעות ממשקי API
ConnectivityManager
כגוןNetworkCallback
,getActiveNetwork
,getNetworkCapabilities
.
יישום
כדי לתמוך בחיתוך 5G במכשיר, המכשיר חייב להיות בעל מודם התומך ב-IRadio 1.6 HAL שיש לו את setupDataCall_1_6
API. API זה מגדיר חיבור נתונים וכולל את הפרמטרים הבאים לתמיכה בחיתוך 5G:
-
trafficDescriptor
: מציין את מתאר התנועה שנשלח למודם -
sliceInfo
: מציין מידע עבור פרוסת הרשת לשימוש במקרה של מסירת EPDG ל-5G -
matchAllRuleAllowed
: מציין אם שימוש בכלל URSP ברירת מחדל מותר להתאים לכל. טלפוניה מגדירה את זה למצב נכון עבור רשתות ברירת מחדל אך לא עבור פרוסות. כלל ההתאמה לכל מוחל על רשתות ברירת מחדל. כאשר אפליקציה מבקשת פרוסה ספציפית שאינה זמינה, הפרוסה הספציפית מדווחת כלא זמינה. עבור אפליקציות ארגוניות, מסגרת הטלפוניה יכולה לחזור לרשת ברירת המחדל אם הרשת הארגונית אינה זמינה.
מודמים חייבים גם ליישם את ה-API של getSlicingConfig
, אלא אם כן הוא מדווח כלא נתמך על ידי ה-API של getHalDeviceCapabilities
.
דרישות ארגוניות
להלן מתארים דרישות לארגונים להשתמש בחיתוך רשת 5G במכשירים בפריסה ארגונית של Android.
- ודא שמכשירים מנוהלים במלואם או של עובדים שהוגדרו עם פרופיל עבודה הם בעלי יכולת 5G SA עם מודמים התומכים ב-
setupDataCall_1_6
API. - עבוד עם שותף הספק על הגדרת פרוסה וביצועים או מאפייני SLA.
הפעלת חיתוך 5G במכשירים המוגדרים עם פרופיל עבודה
עבור מכשירים המוגדרים עם פרופילי עבודה, חיתוך רשת 5G כבוי כברירת מחדל ב-AOSP. כדי לאפשר חיתוך רשת, מנהלי IT ארגוניים יכולים להפעיל או לכבות את ניתוב תעבורת אפליקציות של פרופיל עבודה לפרוסת הרשת הארגונית על בסיס לכל עובד באמצעות ה-EMM DPC, המשתמש בשיטת setPreferentialNetworkServiceEnabled
ב- DevicePolicyManager
(DPM) API (מוצג ב-Android 12).
ספקי EMM עם DPCs מותאמים אישית חייבים לשלב את DevicePolicyManager
API כדי לתמוך בלקוחות ארגוניים.
כללי URSP
סעיף זה כולל מידע לספקים על הגדרת כללי URSP עבור קטגוריות פרוסות שונות כולל ארגונים, CBS, זמן אחזור נמוך ותעבורת רוחב פס גבוה. בעת הגדרת כללי URSP עבור קטגוריות פרוסות שונות, הספקים חייבים להשתמש בערכים הספציפיים ל-Android הבאים.
תְעוּדַת זֶהוּת | ערך | תיאור |
---|---|---|
OSId | 97a498e3-fc92-5c94-8986-0333d06e4e47 | ה-OSId לאנדרואיד הוא גרסה 5 UUID שנוצרת עם מרחב השמות ISO OID והשם "Android". |
הספקים חייבים להגדיר כללי URSP עבור כל נתח תעבורה עם רכיב מתאר התעבורה כ"מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה". לדוגמה, לפרוסה "ENTERPRISE" חייב להיות ערך של 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
. ערך זה הוא שרשור של ה-OSId, אורך ה-OSAppId ( 0x0A
) וה-OSAppId. למידע נוסף על סוג רכיב מתאר התעבורה, ראה 3GPP TS 24.526 טבלה 5.2.1 .
הטבלה הבאה מתארת את ערכי OSAppId עבור קטגוריות פרוסות שונות.
קטגוריית פרוסות | OSAppId | תיאור |
---|---|---|
מִפְעָל | 0x454E5445525052495345 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "ENTERPRISE" |
ENTERPRISE2 | 0x454E544552505249534532 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "ENTERPRISE2" |
ENTERPRISE3 | 0x454E544552505249534533 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "ENTERPRISE3" |
ENTERPRISE4 | 0x454E544552505249534534 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "ENTERPRISE4" |
ENTERPRISE5 | 0x454E544552505249534535 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "ENTERPRISE5" |
CBS | 0x434253 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "CBS" |
PRIORITIZE_LATENCY | 0x5052494f524954495a455f4c4154454e4359 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "PRIORITIZE_LATENCY" |
PRIORITIZE_BANDWIDTH | 0x5052494f524954495a455f42414e445749445448 | ה-OSAppId הוא ייצוג מערך בתים של המחרוזת "PRIORITIZE_BANDWIDTH" |
כללי URSP לדוגמה
הטבלאות הבאות מציגות כללי URSP לדוגמה עבור ארגונים, CBS, זמן אחזור נמוך, רוחב פס גבוה ותעבורת ברירת מחדל.
ארגון 1
תמיכה עבור Enterprise 1 זמינה באנדרואיד 12 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת ENTERPRISE1:
כלל URSP מס' 1 (enterprise1) | |
---|---|
עֲדִיפוּת | 1 (0x01) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | מִפְעָל |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | מִפְעָל |
Enterprise 2
תמיכה עבור Enterprise 2 זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת ENTERPRISE2:
כלל URSP #2 (enterprise2) | |
---|---|
עֲדִיפוּת | 2 (0x02) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534532 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | ארגון 2 |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | ארגון 2 |
Enterprise 3
תמיכה עבור Enterprise 3 זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת ENTERPRISE3:
כלל URSP #3 (enterprise3) | |
---|---|
עֲדִיפוּת | 3 (0x03) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534533 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | ארגון 3 |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | ארגון 3 |
Enterprise 4
תמיכה עבור Enterprise 4 זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת ENTERPRISE4:
כלל URSP #4 (enterprise4) | |
---|---|
עֲדִיפוּת | 4 (0x04) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534534 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | ארגון 4 |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | ארגון 4 |
Enterprise 5
תמיכה עבור Enterprise 5 זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת ENTERPRISE5:
כלל URSP מס' 5 (enterprise5) | |
---|---|
עֲדִיפוּת | 5 (0x05) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534535 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | ארגון 5 |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | ארגון 5 |
CBS
תמיכה ב-CBS זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת CBS:
כלל URSP #6 (CBS) | |
---|---|
עֲדִיפוּת | 6 (0x06) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E4703434253 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | cbs |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | cbs |
זמן אחזור נמוך
תמיכה ב-Latency זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורת LOW_LATENCY:
כלל URSP מס' 7 (זמן אחזור נמוך) | |
---|---|
עֲדִיפוּת | 7 (0x07) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 0x97A498E3FC925C9489860333D06E4E47125052494f524954495a455f4c4154454e4359 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | חֶבִיוֹן |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | חֶבִיוֹן |
רוחב פס גבוה
תמיכה ברוחב פס גבוה זמינה באנדרואיד 13 ומעלה. להלן כלל URSP לדוגמה עבור תעבורה של HIGH_BANDWIDTH:
כלל URSP #8 (רוחב פס גבוה) | |
---|---|
עֲדִיפוּת | 8 (0x08) |
מתאר תנועה מס' 1 | |
מזהה מערכת הפעלה + סוג זיהוי אפליקציה של מערכת הפעלה | 97A498E3FC925C9489860333D06E4E47145052494f524954495a455f42414e445749445448 |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
רכיב מס' 2: DNN | רוחב פס |
מתאר בחירת מסלול מס' 2 | |
עֲדִיפוּת | 2 (0x02) |
רכיב מס' 1: DNN | רוחב פס |
בְּרִירַת מֶחדָל
כלל URSP מס' 9 (ברירת מחדל) | |
---|---|
עֲדִיפוּת | 9 (0x09) |
מתאר תנועה מס' 1 | |
להתאים הכל | לא |
מתאר בחירת מסלול מס' 1 | |
עֲדִיפוּת | 1 (0x01) |
רכיב מס' 1: S-NSSAI | SST:XX SD:YYYYYY |
בדיקה
כדי לבדוק חיתוך רשת 5G, השתמש בבדיקה הידנית הבאה.
כדי להגדיר מכשיר לבדיקה, בצע את הפעולות הבאות:
ודא שמדיניות ה-URSP מוגדרת עם כלל שאינו ברירת מחדל התואם לקטגוריית הארגון וכי מתאר בחירת המסלול המתאים ממפה את קטגוריית הארגון לפרוסת הארגון; וכלל ברירת מחדל המפנה את התנועה לפרוסת האינטרנט המוגדרת כברירת מחדל.
ודא שפרופיל עבודה מוגדר במכשיר.
הצטרף לשימוש בחיתוך רשת דרך ה-DPC
כדי לבדוק את התנהגות חיתוך רשת 5G, בצע את הפעולות הבאות:
- ודא שהפעלת PDU נוצרה עם החלק הארגוני (לדוגמה, על ידי שימוש בכתובת IP ספציפית) ושאפליקציות בפרופיל העבודה משתמשות בהפעלת PDU זו.
- ודא שהפעלת PDU נפרדת נוצרה עם פרוסת האינטרנט המוגדרת כברירת מחדל ושאפליקציות בפרופיל האישי משתמשות בהפעלת PDU.
מכירות 5G חיתוך
תכונת המכירות של 5G חיתוך, הזמינה מאנדרואיד 14-QPR1, מאפשרת לספקים להציע יכולות רשת משופרות (שהייה ורוחב פס) למשתמשים שלהם באמצעות חיתוך רשת 5G.
תכונת מכירת ה-5G משתמשת בתגובת TS.43 משרת הזכאות של הספק כדי להניע את זרימת הרכישה. ספקים יכולים להשתמש בתגובה כדי לציין את כתובת האתר עבור תצוגת האינטרנט של הספק לרכישה, לשלוח נתונים נוספים לתצוגת האינטרנט ולציין אם הפרוסה מסופקת וזמינה ברשת הספק.
הספקים יכולים להתאים אישית את ההתנהגות של תכונת ה-5G חיתוך העלאת מכירה באמצעות תצורות ספק, השולטות אם ניתן לבצע בקשות רכישה, מתי מותר לאפליקציות לבקש יכולות פרימיום וכמה זמן מסגרת הטלפוניה ממתינה לתגובות מהמשתמש או מהרשת.
תכונת ה-5G slicing upsell מספקת ממשק, הנקרא DataBoostWebServiceFlow
, כדי לאפשר תקשורת בין אנדרואיד לתצוגת האינטרנט של הספק.
איור 2 מציג את זרימת הרכישה של חיתוך 5G:
איור 2. זרימת רכישה של 5G חיתוך.
תהליך הזכאות TS.43
כאשר משתמש מגיש בקשה ליכולות רשת משופרות, מסגרת הטלפוניה מבקשת את תצורת הזכאות לשירות עבור יכולת הפרימיום המבוקשת. אם תגובת TS.43 חוקית, מסגרת הטלפוניה משתמשת בשדות מתגובת ה-HTTP כדי להניע את בקשת הרכישה.
פרוס שדות רכישה
תצורת הזכאות TS.43 כוללת את השדות הבאים לרכישת פרוסה:
- סטטוס זכאות
מפתח:
EntitlementStatus
סוג:
int
ערכים נתמכים:
0
(מושבת),1
(מופעל),2
(לא תואם),3
(הקצאה),4
(כלול)- סטטוס הקצאה
מפתח:
ProvStatus
סוג:
int
ערכים נתמכים:
0
(לא מוקצה),1
(מוקצה),2
(לא זמין),3
(בביצוע)
מסגרת הטלפוניה משתמשת בשילוב של סטטוס הזכאות וסטטוס ההקצאה כדי לקבוע את מצב רכישת הפרוסה הנוכחית. התוצאה יכולה להיות אחת מהאפשרויות הבאות:
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_PURCHASED
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_IN_PROGRESS
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_ENTITLEMENT_CHECK_FAILED
-
PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_ERROR
אם סטטוס הזכאות הוא 1
(מופעל) וסטטוס ההקצאה הוא 0
(לא מסופק), מסגרת הטלפוניה מציגה הודעת מכירה נוספת למשתמש כדי לרכוש את החיזוק דרך תצוגת האינטרנט של הספק. הטבלה הבאה מתארת את ההתנהגות של מסגרת הטלפוניה עבור שילובים שונים של ערכי סטטוס הקצאה וזכאות.
סטטוס הקצאה | |||||
---|---|---|---|---|---|
לא מסופק ( 0 ) | מסופק ( 1 ) 1 ) | לא זמין ( 2 ) | בתהליך ( 3 ) | ||
סטטוס זכאות | מושבת ( 0 ) | נִכשָׁל | נִכשָׁל | נִכשָׁל | נִכשָׁל |
מופעל ( 1 ) | הצג תצוגת אינטרנט | כבר נרכש | כבר נרכש | בתהליך | |
לא תואם ( 2 ) | נִכשָׁל | נִכשָׁל | נִכשָׁל | נִכשָׁל | |
הקצאה ( 3 ) | שגיאת ספק | שגיאת ספק | בתהליך | בתהליך | |
כלול ( 4 ) | שגיאת ספק | כבר נרכש | כבר נרכש | שגיאת ספק |
שדות זרימת שירות
תגובת TS.43 מציינת את כתובת האתר, נתוני המשתמש וסוג התוכן כדי להתאים אישית את התנהגות תצוגת האינטרנט של רכישת הספק. אם סוג התוכן אינו מוגדר, כתובת האתר נטען כבקשת GET. אם נתוני המשתמש קיימים, הם מצורפים לכתובת האתר כפרמטר שאילתה (לדוגמה, https://www.android.com?encodedValue=Base64EncodedUserData
); ואם היא לא קיימת, כתובת האתר משמשת כפי שהיא (לדוגמה, https://www.android.com
).
אם סוג התוכן מצוין בפורמט JSON או XML, כתובת ה-URL נטען כבקשת POST, ונתוני המשתמש (מפוענח אם הם מקודדים בבסיס 64) נשלחים כנתונים עבור בקשת ה-POST.
- כתובת אתר
מפתח:
ServiceFlow_URL
סוג:
String
דוגמה:
"https://www.android.com"
- מידע משתמש
מפתח:
ServiceFlow_UserData
סוג:
String
דוגמה:
"encodedValue=Base64EncodedUserData"
- סוג תוכן
מפתח:
ServiceFlow_ContentsType
סוג:
String
ערכים נתמכים:
0
(לא צוין),1
(JSON),2
(XML)
תצורות הספק
להלן תצורות הספק הזמינות כדי להתאים אישית את ההתנהגות של תכונת מכירת ה-5G החיתוך.
-
KEY_SUPPORTED_PREMIUM_CAPABILITIES_INT_ARRAY
רשימה של יכולות פרימיום הנתמכות. זהו מערך אינט של
TelephonyManager.PremiumCapability
. יכולות פרימיום אלו חולקות את אותו ערך כמו הכיתה המקבילהNetworkCapabilities.NetCapability
. אם מתבקשת יכולת פרימיום והיא אינה כלולה בתצורה זו, בקשת הרכישה נכשלת עם תוצאתCARRIER_DISABLED
.ב-Android 14, רק
PREMIUM_CAPABILITY_PRIORITIZE_LATENCY
נתמך.-
KEY_PREMIUM_CAPABILITY_MAXIMUM_DAILY_NOTIFICATION_COUNT_INT
המספר המרבי היומי של הפעמים שבהן הודעת מכירת רכישה מוצגת למשתמש. אם המקסימום היומי מתקיים, הודעת המכירה העליונה לא תוצג ובקשות רכישה (כולל בקשות שרת זכאות) מצטמצמות עד חצות למחרת. בקשות רכישה שבוצעו לאחר הגעת המקסימום היומי נכשלות עם התוצאה
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
.-
KEY_PREMIUM_CAPABILITY_MAXIMUM_MONTHLY_NOTIFICATION_COUNT_INT
המספר המרבי החודשי של הפעמים שבהן הודעת מכירת רכישה מוצגת למשתמש. אם הרמה החודשית המקסימלית מתקיימת, הודעת המכירה העליונה לא תוצג ובקשות רכישה (כולל בקשות שרת זכאות) מצטמצמות עד ליום הראשון של החודש העוקב. בקשות רכישה שבוצעו לאחר הגעת המקסימום החודשי נכשלות עם התוצאה
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
.-
KEY_PREMIUM_CAPABILITY_PURCHASE_URL_STRING
כתובת ה-URL לרכישת ספק הגיבוי שתוצג למשתמש כשהוא לוחץ על הודעת המכירה המוגברת. אם כתובת ה-URL לרכישה לא נמצאת בתגובת TS.43 משרת ההרשאות, ערך זה משמש במקום זאת. אם לא כתובת האתר מתגובת TS.43 או תצורת הספק חוקיים, בקשת הרכישה נכשלת עם התוצאה
PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_DISABLED
.-
KEY_PREMIUM_CAPABILITY_SUPPORTED_ON_LTE_BOOL
האם לאפשר רכישת יכולות פרימיום כאשר המכשיר מחובר ל- Long-Term Evolution (LTE). אם
true
, ניתן לבצע בקשות רכישה גם ב-LTE וגם ברדיו חדש (NR). אםfalse
, ניתן לבצע בקשות רכישה רק ב-NR ובקשות המבוצעות ב-LTE נכשלות עם התוצאהPURCHASE_PREMIUM_CAPABILITY_RESULT_NETWORK_NOT_AVAILABLE
.-
KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONG
משך הזמן להצגת הודעת מכירת רכישה למשתמש לפני שהיא תבוטל אוטומטית. כאשר ההודעה מבוטלת, בקשות עוקבות מצטמצמות ונכשלות עם התוצאה
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
.-
KEY_PREMIUM_CAPABILITY_NOTIFICATION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG
משך הזמן שבו יש לצמצם בקשות רכישה עוקבות לאחר כשל עקב פסק זמן או ביטול משתמש. אם המשתמש לא לוחץ על הודעת מכירת רכישה בתוך פרק הזמן הקצוב שצוין על ידי
KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONG
או אם הוא יבטל או יבטל את ההתראה, טיימר ההפסקה הזה יתחיל. בזמן שהטיימר הזה פעיל, בקשות רכישה נכשלות עם תוצאתPURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
.-
KEY_PREMIUM_CAPABILITY_PURCHASE_CONDITION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONG
משך הזמן שבו בקשות רכישה עוקבות צריכות להיות מצטמצמות לאחר תקלה עקב הספק או הרשת. אם בדיקת הזכאות נכשלת, כתובת ה-URL אינה זמינה, או שכתובת ה-URL לרכישת הספק מציינת כשל, טיימר החזרה זה מתחיל. בזמן שהטיימר הזה פעיל, בקשות רכישה נכשלות עם תוצאת
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
.-
KEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONG
משך הזמן שבו הרשת חייבת להגדיר תצורת חיתוך עבור יכולת הרכישה פרימיום. במהלך תקופה זו, בקשות רכישה עוקבות נחסמות ומחזירות את תוצאת
PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUP
. אם הרשת לא מצליחה להגדיר תצורת חיתוך בזמן, אפליקציות יכולות לבקש לרכוש שוב יכולות פרימיום. טלפוניה לא רואה ברכישה הושלמה עד שנשלחת תצורת החיתוך המתאימה, ללא קשר אם המשתמש שילם לספק או לא.
ממשק Javascript
כאשר המשתמש לוחץ על הודעת חיזוק הרשת, אובייקט WebView
עם כתובת האתר לרכישת הספק מוצג למשתמש. ספקים יכולים להשתמש בממשקי ה-API הניתנים בממשק DataBoostWebServiceFlow
Javascript באתר הרכישה שלהם כדי לתקשר עם אפליקציית רכישת ה-Slice.
אתר האינטרנט של הספק יכול לקבל את יכולת הפרימיום המבוקשת באמצעות השיטה getRequestedCapability()
.
אם הרכישה הצליחה, אתר הספק חייב להודיע לאפליקציית רכישת הפרוסה באמצעות notifyPurchaseSuccessful()
או notifyPurchaseSuccessful(duration)
כאשר duration
הוא פרמטר אופציונלי המציין את משך הזמן המיועד של הפרוסה.
אם הרכישה לא הצליחה, אתר הספק חייב להודיע לאפליקציית רכישת הפרוסות באמצעות השיטה notifyPurchaseFailed(code, reason)
, כאשר code
הוא קוד הכשל המציין את הסיבה לכישלון reason
היא הסיבה לקריאה אנושית לכישלון אם קוד כשל אינו ידוע.
אם לא תיקרא לאחת משיטות התגובה הללו, הרכישה לא תיחשב כמושלמה ובסופו של דבר הזמן הקצוב לבקשת הרכישה.
להלן קודי הכשל החוקיים שאתר הספק יכול להחזיר במקרה של כשל ברכישה:
-
FAILURE_CODE_UNKNOWN
-
FAILURE_CODE_CARRIER_URL_UNAVAILABLE
-
FAILURE_CODE_AUTHENTICATION_FAILED
-
FAILURE_CODE_PAYMENT_FAILED
-
FAILURE_CODE_NO_USER_DATA
לאחר השלמת הרכישה, על הספק לעדכן את כללי ה-URSP עם הפרוסה PRIORITIZE_LATENCY
למכשיר של המשתמש.