سمت سرور Firebase Cloud Messaging از دو جزء تشکیل شده است:
- پشتیبان FCM ارائه شده توسط Google.
- سرور برنامه شما یا سایر محیط های سرور قابل اعتمادی که منطق سرور شما در آن اجرا می شود، مانند Cloud Functions برای Firebase یا سایر محیط های ابری تحت مدیریت Google.
سرور برنامه یا محیط سرور مورد اعتماد شما درخواستهای پیام را به پشتیبان FCM میفرستد، که سپس پیامها را به برنامههای مشتری در حال اجرا در دستگاههای کاربران هدایت میکند.
الزامات برای محیط سرور قابل اعتماد
محیط سرور برنامه شما باید معیارهای زیر را داشته باشد:
- قادر به ارسال درخواست های پیام با فرمت مناسب به باطن FCM .
- قادر به رسیدگی به درخواست ها و ارسال مجدد آنها با استفاده از پشتوانه نمایی.
- قادر به ذخیره ایمن اعتبار مجوز سرور و نشانه های ثبت مشتری.
مدارک لازم برای پروژه Firebase
بسته به ویژگیهای FCM که پیادهسازی میکنید، ممکن است به اعتبارنامههای زیر از پروژه Firebase خود نیاز داشته باشید:
اعتبارنامه | توضیحات |
---|---|
شناسه پروژه | یک شناسه منحصر به فرد برای پروژه Firebase شما، که در درخواست ها به نقطه پایانی FCM v1 HTTP استفاده می شود. این مقدار در قسمت تنظیمات کنسول Firebase موجود است. |
رمز ثبت نام | یک رشته رمز منحصر به فرد که هر نمونه برنامه مشتری را شناسایی می کند. رمز ثبت نام برای پیامرسانی یک دستگاه و گروه دستگاه لازم است. توجه داشته باشید که نشانه های ثبت نام باید مخفی نگه داشته شوند. |
شناسه فرستنده | یک مقدار عددی منحصربهفرد که هنگام ایجاد پروژه Firebase خود ایجاد میشود و در برگه Cloud Messaging در صفحه تنظیمات کنسول Firebase موجود است. شناسه فرستنده همان شماره پروژه است. شناسه فرستنده برای شناسایی هر فرستنده ای که می تواند به برنامه مشتری پیام ارسال کند، استفاده می شود. |
نشانه دسترسی | یک توکن کوتاه مدت OAuth 2.0 که درخواست ها را به API HTTP v1 مجاز می کند. این نشانه با یک حساب خدماتی مرتبط است که به پروژه Firebase شما تعلق دارد. برای ایجاد و چرخاندن نشانههای دسترسی، مراحل توضیح داده شده در مجوز ارسال درخواستها را دنبال کنید. |
یک گزینه سرور را انتخاب کنید
شما باید در مورد راهی برای تعامل با سرورهای FCM تصمیم بگیرید: یا با استفاده از Firebase Admin SDK یا FCM HTTP v1 API . Firebase Admin SDK به دلیل پشتیبانی از زبانهای برنامهنویسی محبوب و روشهای راحت آن برای مدیریت احراز هویت و مجوز، روش پیشنهادی است.
گزینه های تعامل با سرورهای FCM شامل موارد زیر است:
Firebase Admin SDK که از Node ، Java ، Python ، C# و Go پشتیبانی می کند.
FCM HTTP v1 API ، یک API REST با مجوز ایمن و قابلیتهای پیامرسانی بین پلتفرمی انعطافپذیر ( Firebase Admin SDK مبتنی بر این پروتکل است و تمام مزایای ذاتی آن را ارائه میکند).
Firebase Admin SDK
Firebase Admin SDK احراز هویت با باطن را انجام می دهد و ارسال پیام و مدیریت اشتراک موضوع را تسهیل می کند. با Firebase Admin SDK ، می توانید:
- ارسال پیام به هر دستگاه
- برای موضوعات و عبارات شرطی که با یک یا چند موضوع مطابقت دارند، پیام ارسال کنید
- ارسال پیام به گروه های دستگاه
- اشتراک و لغو اشتراک دستگاهها در موضوعات و موضوعات
- بارهای پیام را متناسب با پلتفرم های هدف مختلف بسازید
برای راه اندازی Firebase Admin SDK ، به افزودن Firebase Admin SDK به سرور خود مراجعه کنید. اگر قبلاً یک پروژه Firebase دارید، با افزودن SDK شروع کنید. همچنین، مطمئن شوید که Firebase Cloud Messaging API (V1) را در صفحه تنظیمات Cloud Messaging برای پروژه خود فعال کنید. سپس، هنگامی که Firebase Admin SDK نصب شد، می توانید شروع به نوشتن منطق برای ایجاد درخواست های ارسال کنید .
FCM HTTP v1 API
FCM API FCM HTTP v1 را برای توسعه دهندگانی که پروتکل سرور خام را ترجیح می دهند ارائه می دهد.
برای ارسال پیام، سرور برنامه یک درخواست POST با یک سربرگ HTTP و یک بدنه HTTP متشکل از جفتهای مقدار کلید JSON صادر میکند. برای جزئیات بیشتر در مورد گزینههای سرصفحه و متن، به ارسال پیام با استفاده از FCM HTTP v1 API مراجعه کنید.