Azure Notification Hubs میتواند اعلانها را به هر دستگاهی از هر پلتفرمی در هر مکانی ارسال کند، بدون اینکه شما مجبور باشید همه جنبههای پشته پیام را مدیریت کنید.
اعلانهای فشاری بخش مهمی از برنامههای مدرن هستند، خواه دسکتاپ یا تلفن همراه یا حتی وب را هدف قرار دهید. اما همانطور که برنامههای کاربردی شما رشد میکنند، به سرویسی نیاز دارید که بتواند با آنها مقیاسپذیر باشد و پیامها را با کمترین تأخیر بدون توجه به تعداد کاربران و بدون توجه به جایی که سرویسهای شما میزبانی میشوند، ارائه دهد.
در حالی که امکان ساخت سرویس اعلان خود، مسیریابی پیامها به اهداف و کاربران مناسب وجود دارد، مقیاسبندی همچنان یک مشکل است و همچنین از کاربران در سراسر جهان پشتیبانی میکند. اعلانها باید بهصورت ناهمزمان تحویل داده شوند و به شما این امکان را میدهند که با آنها بهعنوان یک گزینه آتشسوزی و فراموشکردن رفتار کنید، زمانی که اعلان را با این فرض که به موقع تحویل داده میشود، راهاندازی شود.
یک مشکل دیگر وجود دارد: انواع مختلفی از اعلان وجود دارد و ممکن است یک برنامه نیاز به پشتیبانی همزمان از چندین مورد از آنها داشته باشد. برخی ممکن است پیام هایی برای همه کاربران پخش شوند، در حالی که برخی دیگر افراد و گروه ها را هدف قرار می دهند. این تنها بخشی از مشکل است. شما همچنین باید با چندین API و طرح احراز هویت و مجوز سر و کار داشته باشید. نتیجه می تواند یک زیرساخت پیچیده با هزینه های مدیریتی قابل توجه و هزینه های مشابه باشد.
آنچه مورد نیاز است یک سرویس قابل تنظیم است که با پلتفرم های مختلف ارائه دهندگان اعلان کار می کند و می تواند موارد مختلف استفاده و انواع پیام را بدون افزودن پیچیدگی به کد شما پشتیبانی کند. کار با چنین سرویسی باید یک API برای همه پیامها و یک مکان برای مدیریت کاربران، گروهها، دستگاههای ثبتشده و کلیدهای دسترسی به شما بدهد.
اعلانهای بین پلتفرمی از ابر
مرکز اعلان Azure یکی از گزینهها است، یک راه آگنوستیک خدمات ارسال پیام به هر پلتفرمی بدون اینکه شما را به یک پلتفرم برنامه مرتبط کند. این کار قابلیت حمل کد را تضمین می کند، بنابراین برنامه شما می تواند با یک مرکز اعلان Azure از Google Cloud یا AWS یا در محل و همچنین از Azure تماس بگیرد. معماری پیامرسانی مایکروسافت، که هابهای اعلان Azure بخش بزرگی از آن هستند، بر اساس درسهایی است که هنگام اجرای سرویس محبوب MSN Messenger آموختهایم و برخی از خدمات مشابه را شامل میشود.
هابهای اعلان Azure بخش بزرگی از هزینههای مدیریتی مرتبط با خدمات پیامرسانی DIY را حذف میکنند. به جای مدیریت تمام جنبه های پشته پیام، می توانید عملکرد کلیدی را به Azure بسپارید. این نیازی به قطع رابطه خود با کاربرانتان ندارد. برنامههایی که روی دستگاههایشان اجرا میشوند هنوز باید برای دریافت اعلانها با سرویس مناسب ثبتنام کنند، و همچنان باید آن ثبتنام و هر کلیدی را به قسمت پشتی شما تحویل دهند. اما هنگامی که پیام و کلید را به Azure Notification Hub تحویل میدهید، ساختار پیام و تحویل آن به سرویس اعلان هدف را انجام میدهد، که سپس از ابزارهای تحویل بومی برای ارسال پیامها به دستگاههای کاربران شما استفاده میکند.
هابهای اعلان Azure از رایجترینها پشتیبانی میکنند سناریوهای تحویل، از کار با دستگاهها و کاربران جداگانه تا هدف قرار دادن کاربران در یک منطقه خاص، و حتی ارائه ابزارهایی برای شخصیسازی. از این گذشته، پلتفرم باید از روشهایی که میخواهید با کاربران ارتباط برقرار کنید، بدون اینکه شما را در یک الگوی طراحی قفل کند، پشتیبانی کند. این بدان معنی است که همان سرویس می تواند کدهای ۲FA را به یک کاربر خاص در یک دستگاه خاص ارسال کند یا کاربران را از زمان خاموشی آینده در همه دستگاه های خود مطلع کند. گزینه افزودن geofences به پیام ها نیز یک گزینه مفید است و به برنامه های هواشناسی اجازه می دهد تا به کاربران در مسیر طوفان از شرایط خطرناک احتمالی هشدار دهند.
راه اندازی مرکز اعلان Azure
شروع به کار با این سرویس نسبتاً ساده است. ابتدا باید یک Notification Hub در Azure ایجاد کنید. طبق معمول Azure، راه های متعددی برای انجام این کار وجود دارد. می توانید از پورتال Azure استفاده کنید، از Azure CLI استفاده کنید، یک الگوی مدیریت منابع Azure را بنویسید و مستقر کنید، یا از طریق Bicep از پیکربندی به عنوان کد استفاده کنید. همچنین گزینه کار با ابزارهای شخص ثالث مانند Pulumi یا Terraform وجود دارد که Azure API را برای ایجاد و استقرار یک سرویس هدایت می کند.
اگر در حال آزمایش با هاب اعلان Azure هستید و یک مورد یکباره تولید می کنید، احتمالاً پورتال Azure بهترین گزینه شما خواهد بود. روشهای دیگر به شما امکان میدهند اسکریپتهایی ایجاد کنید که میتوانند برای خودکارسازی استقرار در مناطق یا مناطق جغرافیایی یا به عنوان بخشی از یک زیرساخت تغییرناپذیر که به عنوان بخشی از ساخت برنامه ارائه میشود، استفاده شود.
تنظیم یک مرکز اعلان از طریق Azure Portal بسیار شبیه به کار با هر سرویس دیگر Azure است. با اختصاص هاب جدید خود به یک اشتراک و یک گروه منبع شروع کنید، سپس آن را به فضای نام اضافه کنید، مکان را انتخاب کنید و اگر میخواهید قابلیت اطمینان سرویس را افزایش دهید، از گروههای در دسترس استفاده کنید. علاوه بر این، یک گزینه مفید برای بازیابی فاجعه وجود دارد که در صورت خرابی، سرویس شما را به طور خودکار در منطقه دیگری پخش می کند. این به برنامه شما امکان می دهد در صورت قطع Azure به کار خود ادامه دهد.
اکنون می توانید هاب خود را ایجاد کنید. قبل از اینکه Azure را برای کار با سرویس های پلتفرم انتخابی شما پیکربندی کنید، منتظر بمانید تا Azure فرآیند را تکمیل کند. مجدداً، از طریق Azure Portal یا Azure CLI، رویکردهای پیکربندی خود را انتخاب میکنید. هنگامی که مرکز اعلان شما آماده استفاده است، روی آن در پورتال Azure خود کلیک کنید.
هر سرویس هدف نیاز به پیکربندی جداگانه دارد، با استفاده از روش های احراز هویت پیکربندی شده هنگام ثبت نام برای آن سرویس، بنابراین، برای مثال، اگر اعلانهای فشار اپل را تنظیم میکنید، باید گواهی اشتراکگذاری شده با اپل یا توکن را آپلود کنید. جزئیات ایجاد شده به عنوان بخشی از ثبت نام شما. به طور مشابه، به کلید API برای سرویس Firebase Google و کلید امنیتی برای سرویس اعلان ویندوز نیاز دارید.
استفاده از اعلانهای مبتنی بر Azure در برنامههای مشتری
اکنون آماده پشتیبانی اعلان فشار را در کد خود اضافه کنید. این به توکن ها و گواهی های احراز هویت مناسب برای پلت فرم دستگاه شما نیاز دارد. برنامه ها باید در سرویس ثبت شوند، بنابراین از ابزارهای آن برای انجام این کار استفاده کنید. اینجاست که توکنهای احراز هویت مورد نیاز برای Azure Notification Hub را دریافت میکنید. اکنون میتوانید یک هاب برای کار با این سرویس ایجاد کنید که رشتههای اتصالی را ایجاد میکند که توسط برنامه بکاند شما برای ارسال پیامها استفاده میشود.
برنامههای سرویسگیرنده باید دستگاهها را با استفاده از هابهای SDK اعلان Azure مخصوص دستگاهها با Azure ثبت کنند< /a>، که در GitHub در دسترس هستند. شما باید نام هاب و رشته اتصال را به کد خود اضافه کنید، همراه با کد boilerplate که شناسه دستگاه را به Azure ارسال می کند. مایکروسافت ابزارهایی را برای اعلان آزمایشی را در پورتال Azure ارسال کنید. این به شما امکان می دهد تا مطمئن شوید که کد دستگاه شما به درستی کار می کند. کد پشتیبان میتواند از سرویس REST API یا < یک href="https://github.com/Azure/azure-notificationhubs-dotnet" rel="nofollow">.NET SDK برای ارسال پیام به دستگاهها و همچنین مدیریت ثبت دستگاهها. پیامها با استفاده از ابزار بومی دستگاه دریافت و نمایش داده میشوند، بنابراین برای ثبت برنامهها و دستگاهها و ارسال پیام از طریق هاب فقط باید کد بنویسید.
یک نکته مهم که باید به آن توجه داشت این است که Android در حال انتقال به یک API پیامرسانی جدید است، و در نتیجه، برنامههای Azure Notification Hub باید تا ژوئن ۲۰۲۴ بهروزرسانی شوند. برخی از خانهداری مورد نیاز است، سرویسهای اعلان جدید و قدیمی به طور موازی در حین جابجایی دستگاه اجرا میشوند. شناسهها از APIهای سرویس قدیمی تا جدید. شما باید کد سمت سرویس گیرنده را به روز کنید تا در سرویس به روز شده ثبت شود.
یک سرویس اعلان بین پلتفرمی
استفاده از هاب اعلان Azure خیلی گران نیست ، با قیمت گذاری بر اساس حجم و سه سطح مختلف. یک لایه رایگان برای اهداف توسعه مناسب است، تا ۵۰۰ دستگاه و یک میلیون فشار اعلان را در ماه پشتیبانی می کند. در بالاترین سطح، یک سرویس استاندارد ۲۰۰ دلاری در ماه وجود دارد، با پشتیبانی از فشارهای بسیار بیشتر (و گزینه پرداخت ۲.۵۰ دلار به ازای هر میلیون وقتی از ۱۰۰ میلیون فشار در ماه فراتر رفتید). سرویس استاندارد شامل امکان زمانبندی اعلانها و همچنین ارائه تلهمتری دقیق است.
مایکروسافت با ارائه یک سرویس اعلان بین پلتفرمی، ساخت و اجرای برنامهها و سرویسهای چند دستگاهی را آسانتر میکند. تا زمانی که محدودیت های سرویس را حفظ کنید، یک سرویس فشار باید از همه کاربران شما پشتیبانی کند. زمانی که میخواهید از ویژگیهای خاص کلاینت استفاده کنید، باید کنترلکنندههای مخصوص دستگاه را بنویسید.
پست های مرتبط
با Azure Notification Hubs پیام ارسال کنید
با Azure Notification Hubs پیام ارسال کنید
با Azure Notification Hubs پیام ارسال کنید