پشتیبانی از API پورتال اسیر

با شروع از اندروید ۱۱ بتا ۲، سیستم از زیرمجموعه‌ای از قابلیت‌های شرح داده شده توسط RFC7710bis و API پورتال کپتیو مرتبط پشتیبانی می‌کند.

این API روشی قابل اعتماد برای نقاط دسترسی فراهم می‌کند تا خود را به عنوان پورتال‌های تحت کنترل (Captive Portals) معرفی کنند. همچنین موارد استفاده جدیدی را برای نقاط دسترسی فراهم می‌کند تا اطلاعاتی مانند اطلاعات جلسه و محل برگزاری را برای کاربران خود منتشر کنند.

بهبود تشخیص پورتال تحت کنترل

از اندروید ۵.۰ (API سطح ۲۱)، دستگاه‌های اندروید پورتال‌های Captive را شناسایی کرده و به کاربر اطلاع داده‌اند که برای دسترسی به اینترنت باید وارد شبکه شوند. پورتال‌های Captive با استفاده از کاوشگرهای HTTP متن ساده به مقاصد شناخته شده (مانند connectivitycheck.gstatic.com ) شناسایی می‌شدند و اگر کاوشگر یک تغییر مسیر HTTP دریافت می‌کرد، دستگاه فرض می‌کرد که شبکه یک پورتال Captive است. این تکنیک می‌تواند غیرقابل اعتماد باشد زیرا هیچ URL استانداردی برای بررسی وجود ندارد و چنین کاوشگرهایی می‌توانند به اشتباه توسط شبکه‌های پورتال Captive مجاز یا مسدود شوند (به جای تغییر مسیر). API به پورتال‌ها اجازه می‌دهد تا یک سیگنال مثبت مبنی بر نیاز به ورود به سیستم، همراه با یک URL برای ورود به سیستم، ارائه دهند.

اندروید ۱۱ از گزینه ۱۱۴ DHCP همانطور که در RFC7710bis توضیح داده شده است، پشتیبانی می‌کند. ممکن است در به‌روزرسانی‌های آینده، پشتیبانی از گزینه تبلیغات روتر را اضافه کنیم. اگر دستگاه از طریق آن گزینه در طول فرآیند DHCP handshake، یک URL API پورتال تحت کنترل دریافت کند، دستگاه‌ها بلافاصله پس از اتصال، محتوای API را دریافت می‌کنند و در صورت تحت کنترل بودن شبکه، طبق API پورتال تحت کنترل، از کاربران می‌خواهند که وارد سیستم شوند.

اگر API در دسترس نباشد، یا اگر هیچ پورتالی تبلیغ نشده باشد، سیستم مانند قبل به شناسایی پورتال‌ها و تأیید اتصال اینترنت با استفاده از پروب‌های HTTP/HTTPS ادامه خواهد داد.

اطلاعات منتشر شده از محل برگزاری

اندروید ۱۱ از آدرس اینترنتی venue-info-url که در API پورتال Captive تعریف شده است، پشتیبانی می‌کند. این آدرس اینترنتی به کاربران اجازه می‌دهد تا اطلاعات مربوط به محل قرارگیری نقطه دسترسی را در مرورگر خود دریافت کنند. به طور پیش‌فرض، کاربران می‌توانند در صورت تمایل، این آدرس اینترنتی را از طریق اعلان پس از ورود به سیستم یا از طریق تنظیمات شبکه خود باز کنند.

تصویر صفحه‌ای که پنجره‌ی بازشو را نشان می‌دهد و به کاربر اجازه می‌دهد از محل برگزاری بازدید کند آدرس اینترنتی
شکل ۱. اگر شبکه، آدرس اینترنتی محل برگزاری را ارائه دهد، سیستم اعلانی را نمایش می‌دهد که به کاربر اجازه می‌دهد از آن صفحه بازدید کند.

تصویر صفحه نمایش نحوه باز کردن سایت از صفحه جزئیات شبکه
شکل ۲. دکمه‌ای برای باز کردن سایت از صفحه جزئیات شبکه

موارد استفاده آینده

اگرچه اندروید ۱۱ در زمان عرضه فقط از مجموعه‌ای اولیه از قابلیت‌های API پورتال کپتیو پشتیبانی می‌کند، اما ممکن است پس از عرضه، قابلیت‌های جدیدی از طریق به‌روزرسانی‌های سیستم گوگل پلی به دستگاه‌ها ارائه شود. ما اپراتورهای شبکه را تشویق می‌کنیم که API پورتال کپتیو را پیاده‌سازی کنند و در عین حال پیشرفت‌های احتمالی آینده را نیز در نظر داشته باشند:

  • زمان جلسه ( seconds-remaining ) در حال حاضر در برنامه تنظیمات پیش‌فرض برای اطلاع‌رسانی به کاربران در مورد مدت زمان باقی‌مانده در پورتال استفاده می‌شود. قابلیت تمدید جلسه از طریق URL ورود ( can-extend-session ) نیز می‌تواند از طریق API بیان شود تا سیستم بتواند کاربر را در مورد جلسات منقضی شده یا در شرف انقضا مطلع کند.
  • می‌توان از طریق API، سقف داده ( bytes-remaining ) را اعلام کرد تا کاربران بتوانند داده‌های باقی‌مانده را پیگیری کنند.