برای دستگاههایی که Android 12 یا بالاتر دارند، Android از برش شبکه 5G پشتیبانی میکند، استفاده از مجازیسازی شبکه برای تقسیم اتصالات شبکه به چندین اتصال مجازی مجزا که مقادیر متفاوتی از منابع را برای انواع مختلف ترافیک فراهم میکند. برش شبکه 5G به اپراتورهای شبکه اجازه می دهد تا بخشی از شبکه را به ارائه ویژگی های خاص برای بخش خاصی از مشتریان اختصاص دهند. اندروید 12 قابلیتهای برش شبکه سازمانی 5G زیر را معرفی میکند که اپراتورهای شبکه میتوانند به مشتریان سازمانی خود ارائه دهند:
برش دستگاه سازمانی برای دستگاه های کاملاً مدیریت شده
برای شرکتهایی که دستگاههای کاملاً مدیریت شده شرکت را در اختیار کارمندان خود قرار میدهند، ارائهدهندگان شبکه میتوانند یک یا چند بخش شبکه سازمانی فعال را در اختیار آنها قرار دهند که ترافیک دستگاههای شرکت به آنها هدایت میشود. از اندروید 12، اندروید به شرکتهای مخابراتی اجازه میدهد به جای تنظیم برشها از طریق APN، برشهای سازمانی را از طریق قوانین URSP ارائه کنند.
برش برنامه کسب و کار سازمانی برای دستگاههای دارای نمایه کاری
برای شرکتهایی که از راهحل نمایه کاری استفاده میکنند، Android 12 به دستگاهها اجازه میدهد تا ترافیک را از همه برنامهها در نمایه کاری به یک بخش شبکه سازمانی هدایت کنند. شرکت ها می توانند این قابلیت را از طریق یک کنترلر سیاست دستگاه (DPC) فعال کنند.
راه حل نمایه کاری سطح خودکاری از احراز هویت و کنترل دسترسی را فراهم می کند که شرکت ها برای اطمینان از اینکه فقط ترافیک برنامه های سازمانی در نمایه کاری به بخش شبکه سازمانی هدایت می شود، به آن نیاز دارند. برنامههای موجود در نمایه کاری برای درخواست صریح بخش شبکه سازمانی نیازی به اصلاح ندارند.
نحوه برش شبکه 5G در AOSP
اندروید 12 پشتیبانی از برش شبکه 5G را از طریق افزودن به پایگاه کد تلفن در AOSP و ماژول Tethering برای ترکیب APIهای اتصال موجود که برای برش شبکه مورد نیاز هستند، معرفی میکند.
پلتفرم تلفنی اندروید، APIهای HAL و تلفنی را برای پشتیبانی از برش بر اساس درخواستهای شبکه ارائه شده توسط کد شبکه اصلی و قابلیتهای برش 5G در مودم ارائه میکند. شکل 1 اجزای ویژگی برش شبکه 5G را توضیح می دهد.
شکل 1. معماری برش شبکه 5G در AOSP.
پلت فرم تلفن و اتصال پشتیبانی می کند:
- تبدیل درخواستهای شبکه برای دستههای برش به توصیفگرهای ترافیک که سپس برای تطبیق ترافیک URSP و انتخاب مسیر به مودم ارسال میشوند.
- اگر بخش شبکه سازمانی در دسترس نباشد، به شبکه پیشفرض برمیگردید
- مسیریابی ترافیک از همه برنامههای زیر نمایه کاری به اتصال مربوطه
حمایت از برش سازمانی
- تشخیص وجود نمایه کاری در دستگاه
- بررسی مجوزها یا دستورالعمل های مسیریابی ارائه شده از DPC مورد استفاده توسط سرپرست فناوری اطلاعات شرکت
سرویس شبکه اصلی شامل تغییرات زیر در ماژول Tethering در اندروید 12 است:
- بیشتر کلاسهای
android.net.*
عمومی یا سیستم API را به ماژول 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 منتقل می کند:
- دریافت درخواست از برنامه ها برای اتصال به شبکه
- دریافت درخواستها از سیستم (به عنوان مثال، «این برنامهها را در یک بخش سازمانی قرار دهید»؛ معرفی شده در Android 12)
- ارسال درخواستها از سیستم به کد تلفنی که سعی در راهاندازی شبکهها یا برشها از طریق HAL API و مودم دارد.
- اطلاع رسانی شبکه نحوه مسیریابی ترافیک بر اساس هر برنامه (معرفی شده در اندروید 12)
- اطلاع رسانی به برنامه ها از طریق رابط های برنامه
ConnectivityManager
مانندNetworkCallback
،getActiveNetwork
،getNetworkCapabilities
.
پیاده سازی
برای پشتیبانی از برش 5G روی دستگاه، دستگاه باید مودمی داشته باشد که از IRadio 1.6 HAL پشتیبانی کند که دارای API setupDataCall_1_6
است. این API یک اتصال داده را تنظیم می کند و شامل پارامترهای زیر برای پشتیبانی از برش 5G است:
-
trafficDescriptor
: توصیفگر ترافیک ارسال شده به مودم را مشخص می کند -
sliceInfo
: اطلاعاتی را برای برش شبکه مشخص می کند که در صورت انتقال EPDG به 5G استفاده می شود. -
matchAllRuleAllowed
: مشخص می کند که آیا استفاده از قانون پیش فرض مطابقت همه URSP مجاز است یا خیر. Telephony این را برای شبکههای پیشفرض درست تنظیم میکند، اما برای برشها نه. قانون مطابقت همه برای شبکه های پیش فرض اعمال می شود. هنگامی که یک برنامه یک بخش خاص را درخواست می کند که در دسترس نیست، برش خاص به عنوان در دسترس گزارش می شود. برای برنامههای سازمانی، اگر شبکه سازمانی در دسترس نباشد، چارچوب Telephony میتواند به شبکه پیشفرض بازگردد.
مودمها همچنین باید getSlicingConfig
API را پیادهسازی کنند، مگر اینکه توسط getHalDeviceCapabilities
API پشتیبانی نشده گزارش شود.
الزامات سازمانی
موارد زیر الزامات شرکتها را برای استفاده از برش شبکه 5G در دستگاهها در استقرار سازمانی Android شرح میدهد.
- مطمئن شوید که دستگاههای کاملاً مدیریتشده یا کارمندی که با نمایه کاری راهاندازی شدهاند، با مودمهایی که از
setupDataCall_1_6
API پشتیبانی میکنند، دارای 5G SA هستند. - با شریک حامل در تنظیم برش و عملکرد یا ویژگی های SLA کار کنید.
برش 5G را در دستگاههای تنظیمشده با نمایه کاری فعال کنید
برای دستگاههایی که با نمایههای کاری راهاندازی شدهاند، برش شبکه 5G بهطور پیشفرض در AOSP خاموش است. برای فعال کردن برش شبکه، سرپرستان فناوری اطلاعات سازمانی میتوانند مسیریابی ترافیک برنامه نمایه کاری را به بخش شبکه سازمانی به ازای هر کارمند از طریق EMM DPC روشن یا خاموش کنند، که از روش setPreferentialNetworkServiceEnabled
در API DevicePolicyManager
(DPM) استفاده میکند (معرفی شده در Android). 12).
فروشندگان EMM با DPCهای سفارشی باید DevicePolicyManager
API را برای پشتیبانی از مشتریان سازمانی یکپارچه کنند.
قوانین URSP
این بخش شامل اطلاعاتی برای اپراتورها در مورد پیکربندی قوانین URSP برای دسته بندی های مختلف از جمله سازمانی، CBS، تاخیر کم و ترافیک با پهنای باند بالا است. هنگام پیکربندی قوانین URSP برای دستههای برش مختلف، اپراتورها باید از مقادیر خاص Android زیر استفاده کنند.
شناسه | ارزش | توضیحات |
---|---|---|
OSId | 97a498e3-fc92-5c94-8986-0333d06e4e47 | OSId برای Android یک UUID نسخه 5 است که با فضای نام ISO OID و نام "Android" تولید شده است. |
شرکتهای مخابراتی باید قوانین URSP را برای هر ترافیک برش با مؤلفه توصیفگر ترافیک بهعنوان «شناسه OS + نوع شناسه برنامه سیستم عامل» پیکربندی کنند. برای مثال، قطعه «ENTERPRISE» باید دارای مقدار 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
باشد. این مقدار ترکیبی از OSId، طول OSAppId ( 0x0A
) و OSAppId است. برای اطلاعات بیشتر در مورد نوع مؤلفه توصیفگر ترافیک، به جدول 5.2.1 3GPP TS 24.526 مراجعه کنید.
جدول زیر مقادیر OSAppId را برای دسته بندی های مختلف توضیح می دهد.
دسته برش | OSappId | توضیحات |
---|---|---|
شرکت | 0x454E5445525052495345 | OSAppId یک آرایه بایتی از رشته "ENTERPRISE" است. |
ENTERPRISE2 | 0x454E544552505249534532 | OSAppId یک آرایه بایتی از رشته "ENTERPRISE2" است. |
ENTERPRISE3 | 0x454E544552505249534533 | OSAppId یک آرایه بایتی از رشته "ENTERPRISE3" است. |
ENTERPRISE4 | 0x454E544552505249534534 | OSAppId یک آرایه بایتی از رشته "ENTERPRISE4" است. |
شرکت 5 | 0x454E544552505249534535 | OSAppId یک آرایه بایتی از رشته "ENTERPRISE5" است. |
سی بی اس | 0x434253 | OSAppId یک آرایه بایتی از رشته "CBS" است. |
PRORITIZE_LATENCY | 0x5052494f524954495a455f4c4154454e4359 | OSAppId یک آرایه بایتی از رشته "PRIORITIZE_LATENCY" است. |
PRIORITIZE_BANDWIDTH | 0x5052494f524954495a455f42414e445749445448 | OSAppId یک آرایه بایتی از رشته "PRIORITIZE_BANDWIDTH" است. |
نمونه قوانین URSP
جداول زیر نمونه قوانین URSP برای سازمانی، CBS، تاخیر کم، پهنای باند بالا و ترافیک پیش فرض را نشان می دهد.
شرکت 1
پشتیبانی از Enterprise 1 در اندروید 12 و بالاتر در دسترس است. مثال زیر یک قانون URSP برای ترافیک ENTERPRISE1 است:
قانون URSP شماره 1 (تجاری1) | |
---|---|
تقدم | 1 (0x01) |
توصیفگر ترافیک شماره 1 | |
شناسه سیستم عامل + نوع شناسه برنامه سیستم عامل | 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 |
توصیفگر انتخاب مسیر شماره 1 | |
تقدم | 1 (0x01) |
مؤلفه شماره 1: S-NSSAI | SST:XX SD:YYYYYY |
جزء شماره 2: DNN | شرکت |
توصیفگر انتخاب مسیر شماره 2 | |
تقدم | 2 (0x02) |
جزء شماره 1: DNN | شرکت |
شرکت 2
پشتیبانی از Enterprise 2 در اندروید 13 و بالاتر در دسترس است. مثال زیر یک قانون URSP برای ترافیک ENTERPRISE2 است:
قانون URSP شماره 2 (تجاری2) | |
---|---|
تقدم | 2 (0x02) |
توصیفگر ترافیک شماره 1 | |
شناسه سیستم عامل + نوع شناسه برنامه سیستم عامل | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534532 |
توصیفگر انتخاب مسیر شماره 1 | |
تقدم | 1 (0x01) |
مؤلفه شماره 1: S-NSSAI | SST:XX SD:YYYYYY |
جزء شماره 2: DNN | شرکت 2 |
توصیفگر انتخاب مسیر شماره 2 | |
تقدم | 2 (0x02) |
جزء شماره 1: DNN | شرکت 2 |
شرکت 3
پشتیبانی از Enterprise 3 در اندروید 13 و بالاتر در دسترس است. مثال زیر یک قانون URSP برای ترافیک ENTERPRISE3 است:
قانون URSP شماره 3 (تجاری3) | |
---|---|
تقدم | 3 (0x03) |
توصیفگر ترافیک شماره 1 | |
شناسه سیستم عامل + نوع شناسه برنامه سیستم عامل | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534533 |
توصیفگر انتخاب مسیر شماره 1 | |
تقدم | 1 (0x01) |
مؤلفه شماره 1: S-NSSAI | SST:XX SD:YYYYYY |
جزء شماره 2: DNN | شرکت 3 |
توصیفگر انتخاب مسیر شماره 2 | |
تقدم | 2 (0x02) |
جزء شماره 1: DNN | شرکت 3 |
شرکت 4
پشتیبانی از Enterprise 4 در اندروید 13 و بالاتر در دسترس است. مثال زیر یک قانون URSP برای ترافیک ENTERPRISE4 است:
قانون URSP شماره 4 (تجاری4) | |
---|---|
تقدم | 4 (0x04) |
توصیفگر ترافیک شماره 1 | |
شناسه سیستم عامل + نوع شناسه برنامه سیستم عامل | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534534 |
توصیفگر انتخاب مسیر شماره 1 | |
تقدم | 1 (0x01) |
مؤلفه شماره 1: S-NSSAI | SST:XX SD:YYYYYY |
جزء شماره 2: DNN | شرکت 4 |
توصیفگر انتخاب مسیر شماره 2 | |
تقدم | 2 (0x02) |
جزء شماره 1: DNN | شرکت 4 |
شرکت 5
پشتیبانی از Enterprise 5 در اندروید 13 و بالاتر در دسترس است. مثال زیر یک قانون URSP برای ترافیک ENTERPRISE5 است:
قانون URSP شماره 5 (تجاری5) | |
---|---|
تقدم | 5 (0x05) |
توصیفگر ترافیک شماره 1 | |
شناسه سیستم عامل + نوع شناسه برنامه سیستم عامل | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534535 |
توصیفگر انتخاب مسیر شماره 1 | |
تقدم | 1 (0x01) |
مؤلفه شماره 1: S-NSSAI | SST:XX SD:YYYYYY |
جزء شماره 2: DNN | شرکت 5 |
توصیفگر انتخاب مسیر شماره 2 | |
تقدم | 2 (0x02) |
جزء شماره 1: DNN | شرکت 5 |
سی بی اس
پشتیبانی از 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 |
تاخیر کم
پشتیبانی از Low 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 | |
همه | N/A |
توصیفگر انتخاب مسیر شماره 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 slicing upsell از پاسخ TS.43 از سرور مجاز شرکت مخابراتی برای هدایت جریان خرید استفاده می کند. شرکتهای مخابراتی میتوانند از پاسخ برای مشخص کردن URL برای نمای وب خرید شرکت مخابراتی، ارسال دادههای اضافی به نمای وب، و نشان دادن اینکه آیا برش تهیه شده و در شبکه شرکت مخابراتی موجود است یا خیر، استفاده کنند.
اپراتورها میتوانند با استفاده از پیکربندیهای اپراتور، رفتار قابلیت فروش برش 5G را سفارشی کنند، که کنترل میکند آیا درخواست خرید میتواند انجام شود، چه زمانی برنامهها مجاز به درخواست قابلیتهای برتر هستند و چه مدت چارچوب تلفنی منتظر پاسخهای کاربر یا شبکه است.
ویژگی 5G slicing upsell رابطی به نام DataBoostWebServiceFlow
را فراهم می کند تا امکان ارتباط بین اندروید و وب ویو اپراتور را فراهم کند.
شکل 2 جریان خرید فروش برش 5G را نشان می دهد:
شکل 2. برش 5G جریان خرید upsell.
فرآیند استحقاق TS.43
هنگامی که یک کاربر درخواستی برای قابلیتهای شبکه پیشرفته ارائه میکند، چارچوب Telephony پیکربندی حق سرویس را برای قابلیت حق بیمه درخواستی درخواست میکند. اگر پاسخ TS.43 معتبر باشد، چارچوب Telephony از فیلدهای پاسخ 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
باشد (تهیه نشده است)، چارچوب Telephony یک اعلان افزایش فروش را به کاربر نمایش می دهد تا از طریق نمای وب شرکت مخابراتی، افزایش را خریداری کند. جدول زیر رفتار چارچوب تلفنی را برای ترکیب های مختلف مقادیر وضعیت تدارکات و استحقاق توضیح می دهد.
وضعیت تامین | |||||
---|---|---|---|---|---|
ارائه نشده ( 0 ) | ارائه شده ( 1 ) 1 ) | در دسترس نیست ( 2 ) | در حال انجام ( 3 ) | ||
وضعیت استحقاق | غیر فعال ( 0 ) | شکست خورد | شکست خورد | شکست خورد | شکست خورد |
فعال ( 1 ) | نمایش وب | قبلا خریداری شده است | قبلا خریداری شده است | در حال انجام است | |
ناسازگار ( 2 ) | شکست خورد | شکست خورد | شکست خورد | شکست خورد | |
تامین ( 3 ) | خطای حامل | خطای حامل | در حال انجام است | در حال انجام است | |
شامل ( 4 ) | خطای حامل | قبلا خریداری شده است | قبلا خریداری شده است | خطای حامل |
فیلدهای جریان خدمات
پاسخ TS.43 نشانی وب، دادههای کاربر و نوع محتوا را برای سفارشیسازی رفتار مشاهده وب خرید شرکت مخابراتی مشخص میکند. اگر نوع محتوا مشخص نشده باشد، URL به عنوان یک درخواست GET بارگیری می شود. اگر دادههای کاربر وجود داشته باشد، به عنوان پارامتر پرس و جو به URL اضافه میشود (به عنوان مثال، https://www.android.com?encodedValue=Base64EncodedUserData
); و اگر وجود نداشته باشد، از نشانی اینترنتی همانطور که هست استفاده می شود (مثلاً https://www.android.com
).
اگر نوع محتوا در قالب JSON یا XML مشخص شده باشد، URL به عنوان یک درخواست POST بارگیری می شود و داده های کاربر (در صورتی که در پایه 64 کدگذاری شده باشد رمزگشایی می شود) به عنوان داده برای درخواست POST ارسال می شود.
- URL
کلید:
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
حداکثر تعداد دفعاتی که اعلان افزایش فروش خرید به کاربر نشان داده می شود. اگر حداکثر ماهانه برآورده شود، اعلان upsell نشان داده نمیشود و درخواستهای خرید (از جمله درخواستهای سرور حق) تا اولین روز ماه بعد کاهش مییابد. درخواستهای خریدی که پس از رسیدن به حداکثر ماهانه انجام میشوند با نتیجه
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ناموفق هستند.-
KEY_PREMIUM_CAPABILITY_PURCHASE_URL_STRING
نشانی وب خرید شرکت مخابراتی پشتیبان برای نمایش به کاربر هنگام کلیک بر روی اعلان افزایش فروش. اگر 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 در دسترس نباشد، یا نشانی اینترنتی خرید شرکت مخابراتی نشان دهنده خرابی باشد، این تایمر عقب نشینی شروع می شود. وقتی این تایمر فعال است، درخواستهای خرید با نتیجه
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLED
ناموفق میشوند.-
KEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONG
مدت زمانی که شبکه باید پیکربندی برش را برای قابلیت خرید حق بیمه تنظیم کند. در این دوره، درخواستهای خرید بعدی مسدود میشوند و نتیجه
PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUP
را برمیگردانند. اگر شبکه نتواند پیکربندی برش را به موقع تنظیم کند، برنامهها میتوانند دوباره درخواست کنند که قابلیتهای ممتاز را خریداری کنند. تلفن تا زمانی که پیکربندی برش مربوطه ارسال نشود، خرید را کامل نمیداند، صرف نظر از اینکه کاربر به شرکت مخابراتی پرداخت کرده است یا خیر.
رابط جاوا اسکریپت
وقتی کاربر روی اعلان تقویت شبکه کلیک می کند، یک شی WebView
با URL خرید شرکت مخابراتی به کاربر نشان داده می شود. شرکتهای مخابراتی میتوانند از APIهای ارائه شده در رابط جاوا اسکریپت DataBoostWebServiceFlow
در وبسایت خرید خود برای برقراری ارتباط با برنامه خرید قطعه استفاده کنند.
وب سایت حامل می تواند قابلیت حق بیمه درخواستی را از طریق متد getRequestedCapability()
دریافت کند.
اگر خرید موفقیتآمیز باشد، وبسایت شرکت مخابراتی باید از طریق notifyPurchaseSuccessful()
یا notifyPurchaseSuccessful(duration)
که در آن duration
یک پارامتر اختیاری است که مدت زمان مورد نظر برش را نشان میدهد، به برنامه خرید slice اطلاع دهد.
اگر خرید موفق نبود، وبسایت شرکت مخابراتی باید برنامه خرید برش را از طریق روش 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
در دستگاه کاربر به روز کند.