ErrorCode

رموز الخطأ في حالات تعذُّر خدمة "المراسلة عبر السحابة الإلكترونية من Firebase".

رمز الخطأ خطوات الوصف والحلّ
UNSPECIFIED_ERROR لا تتوفّر مزيد من المعلومات عن هذا الخطأ. بلا.
INVALID_ARGUMENT (رمز خطأ HTTP = 400) مَعلمات الطلب غير صالحة. يتم عرض إضافة من النوع google.rpc.BadRequest لتحديد الحقل غير الصالح. تشمل الأسباب المحتملة تسجيلاً غير صالح أو اسم حزمة غير صالح أو الرسالة كبيرة جدًا أو مفتاح بيانات غير صالح أو مدة البقاء غير صالحة أو معلمات أخرى غير صالحة.
تسجيل غير صالح: تحقَّق من تنسيق الرمز المميّز للتسجيل الذي ترسله إلى الخادم. وتأكَّد من أنّه يتطابق مع الرمز المميّز للتسجيل الذي يتلقّاه تطبيق العميل من التسجيل في خدمة "المراسلة عبر السحابة الإلكترونية من Firebase". يجب عدم اقتطاع الرمز المميّز أو إضافة أحرف أخرى.
اسم الحزمة غير صالح: تأكَّد من أنّ الرسالة موجهة إلى رمز مميَّز للتسجيل يتطابق اسم الحزمة الخاص به مع القيمة التي تم تمريرها في الطلب.
الرسالة كبيرة جدًا: تأكَّد من أنّ الحجم الإجمالي لبيانات الحمولة المضمّنة في الرسالة لا يتجاوز حدود "المراسلة عبر السحابة الإلكترونية من Firebase": 4096 بايت لمعظم الرسائل أو 2048 بايت في حالة الرسائل إلى المواضيع. يتضمن هذا كلاً من المفاتيح والقيم.
مفتاح بيانات غير صالح: تأكَّد من أنّ بيانات الحمولة لا تحتوي على مفتاح (مثل from أو gcm، أو أي قيمة مسبوقة بـ google) تستخدمه ميزة "المراسلة عبر السحابة الإلكترونية من Firebase" داخليًا. تجدر الإشارة إلى أنّ خدمة FCM تستخدم أيضًا بعض الكلمات (مثل expand_key) ولكن يُسمح بها في الحمولة، وفي هذه الحالة ستلغي قيمة FCM قيمة الحمولة.
مدة البقاء غير صالحة: تأكَّد من أنّ القيمة المستخدَمة في ttl هي عدد صحيح يمثّل مدة بالثواني بين 0 و2,419,200 (4 أسابيع).
المَعلمات غير الصالحة: تأكَّد من أنّ المَعلمات المقدّمة تحمل الاسم والنوع الصحيحَين.
UNREGISTERED (رمز خطأ HTTP = 404) تم إلغاء تسجيل مثيل التطبيق من خدمة "المراسلة عبر السحابة الإلكترونية من Firebase". ويعني ذلك عادةً أنّ الرمز المميّز المستخدَم لم يعُد صالحًا ويجب استخدام رمز جديد. قد يرجع السبب في هذا الخطأ إلى فقدان رموز التسجيل المميَّزة أو الرموز غير المسجَّلة.
التسجيل غير متوفّر: إذا كان هدف الرسالة هو قيمة token، تأكَّد من أنّ الطلب يحتوي على رمز مميّز للتسجيل.
غير مسجَّل: قد لا يكون الرمز المميّز للتسجيل الحالي صالحًا في عدد من السيناريوهات، بما في ذلك:
- في حال إلغاء تسجيل تطبيق العميل لدى "المراسلة عبر السحابة الإلكترونية من Firebase".
- إذا تم إلغاء تسجيل تطبيق العميل تلقائيًا، قد يحدث ذلك إذا ألغى المستخدم تثبيت التطبيق. على سبيل المثال، في نظام iOS، إذا أبلغت "خدمة تعليقات APNs" عن أنّ الرمز المميّز لرموز APN غير صالح.
- في حال انتهاء صلاحية الرمز المميّز للتسجيل (على سبيل المثال، من الممكن أن تقرر Google إعادة تحميل الرموز المميّزة للتسجيل أو انتهت صلاحية الرمز المميّز لنقاط الوصول (APN) لأجهزة iOS).
- إذا تم تحديث تطبيق العميل بدون ضبط الإصدار الجديد لتلقّي الرسائل.
في جميع هذه الحالات، يمكنك إزالة الرمز المميّز للتسجيل هذا من خادم التطبيق والتوقّف عن استخدامه لإرسال الرسائل.
SENDER_ID_MISMATCH (رمز خطأ HTTP = 403) يختلف معرّف المُرسِل الذي تمت مصادقته عن معرِّف المُرسِل للرمز المميّز للتسجيل. يرتبط الرمز المميز للتسجيل بمجموعة معيّنة من المُرسِلين. عندما يُسجِّل تطبيق عميل في ميزة "المراسلة عبر السحابة الإلكترونية من Firebase"، يجب تحديد المُرسِلين المسموح لهم بإرسال الرسائل. عليك استخدام أحد معرّفات المُرسِلين هذه عند إرسال رسائل إلى تطبيق العميل. في حال التبديل إلى مُرسِل مختلف، لن تعمل رموز التسجيل المميّزة الحالية.
QUOTA_EXCEEDED (رمز خطأ HTTP = 429) تم تجاوز حد الإرسال لهدف الرسائل. يتم عرض إضافة من النوع google.rpc.QuotaFailure لتحديد الحصة التي تم تجاوزها. يمكن أن يرجع السبب في هذا الخطأ إلى تجاوز حصة معدّل الرسائل أو تجاوز حصة معدّل الرسائل على الجهاز أو تجاوز حصة معدّل الرسائل حسب الموضوع.
تم تجاوز معدل الرسائل: معدل إرسال الرسائل مرتفع جدًا. يجب خفض المعدل الإجمالي لإرسال الرسائل. استخدِم ميزة "الرقود الأسي" مع مهلة مبدئية تبلغ دقيقة واحدة على الأقل لإعادة محاولة إرسال الرسائل المرفوضة.
تم تجاوز معدّل الرسائل على الجهاز: معدّل الرسائل المرسَلة إلى جهاز معيّن مرتفع جدًا. راجِع الحد الأقصى لمعدّل الرسائل على جهاز واحد. يمكنك تقليل عدد الرسائل المُرسَلة إلى هذا الجهاز واستخدام ميزة "الرقود الأسي" لإعادة محاولة الإرسال.
تم تجاوز معدّل الرسائل حسب الموضوع: معدّل الرسائل المرسَلة إلى المشتركين في موضوع معيّن مرتفع جدًا. يمكنك تقليل عدد الرسائل المُرسَلة لهذا الموضوع واستخدام ميزة "الرقود الأسي الثنائي" مع مهلة أوّلية لا تقل عن دقيقة واحدة لإعادة محاولة الإرسال.
UNAVAILABLE (رمز خطأ HTTP = 503) هناك تحميل زائد على الخادم. لم يتمكّن الخادم من معالجة الطلب في الوقت المناسب. يُرجى إعادة محاولة الطلب نفسه، ولكن عليك إجراء ما يلي:
- تنفيذ العنوان Try- After (إعادة المحاولة بعد) إذا كان مُضمَّنًا في الاستجابة من خادم اتصال FCM.
- تنفيذ الرقود الأسي في آلية إعادة المحاولة (على سبيل المثال، إذا انتظرت ثانية واحدة قبل إعادة المحاولة الأولى، انتظر لمدة ثانيتين على الأقل قبل المحاولة التالية، ثم 4 ثوانٍ وهكذا). إذا كنت ترسل رسائل متعددة، ضع في اعتبارك تطبيق عدم الاستقرار. لمزيد من المعلومات، يُرجى الاطّلاع على التعامل مع عمليات إعادة المحاولة. ويتعرض المرسِلون الذين يسببون مشاكل إلى القائمة المرفوضة.
INTERNAL (رمز خطأ HTTP = 500) حدث خطأ داخلي غير معروف. واجه الخادم خطأً أثناء محاولة معالجة الطلب. يمكنك إعادة محاولة الطلب نفسه بعد اتّباع الاقتراحات في التعامل مع عمليات إعادة المحاولة. في حال استمرار ظهور الخطأ، يُرجى التواصل مع فريق دعم Firebase.
THIRD_PARTY_AUTH_ERROR (رمز خطأ HTTP = 401) كانت شهادة APNs أو مفتاح المصادقة الفورية على الويب غير صالح أو غير متوفّر. تعذَّر إرسال رسالة موجَّهة إلى جهاز iOS أو تسجيل فوري على الويب. تحقَّق من صلاحية بيانات اعتماد التطوير والإنتاج.