Backend သည် ကော်ပိုရေးရှင်း proxy မှတစ်ဆင့် Firebase Cloud Messaging တောင်းဆိုချက်ကို အောင်မြင်စွာ ပို့နိုင်သော်လည်း Android စက်ပစ္စည်းသည် အသိပေးချက်ကို လုံးဝ မရရှိနိုင်ပါ။ Backend ၏ Admin API တောင်းဆိုချက်နှင့် စက်ပစ္စည်း၏ FCM ချိတ်ဆက်မှုသည် သီးခြား လမ်းကြောင်းများ ဖြစ်သည်။

FCM ၏ စက်ပစ္စည်း ပရိုတိုကောကို ကွန်ရက် proxy မှတစ်ဆင့် proxy မလုပ်နိုင်ကြောင်း Firebase ၏ ကွန်ရက် လမ်းညွှန်ချက်တွင် ဖော်ပြထားသည်။ ပို့သူတွင် HTTP client ကို ပြင်ဆင်ခြင်းသည် ထို အမြဲတမ်း စက်ပစ္စည်း ချိတ်ဆက်မှုကို HTTP proxy တောင်းဆိုချက်အဖြစ် မပြောင်းလဲပါ။

Android စက်ပစ္စည်းများအတွက် မှတ်တမ်းတင်ထားသော TCP ဦးတည် port များမှာ 5228၊ 5229၊ 5230 နှင့် 443 ဖြစ်သည်။ FCM သည် များသောအားဖြင့် 5228 ကို အသုံးပြုပြီး အခြား port များကိုလည်း အသုံးပြုနိုင်သည်။ လက်ခံသည့် စက်ပစ္စည်းများ ချိတ်ဆက်သည့် ကွန်ရက်တွင် သက်ဆိုင်ရာ မူဝါဒကို ကျင့်သုံးပါ။

Firewall က ဦးတည်ရာများကို ကန့်သတ်သည့်အခါ Firebase ၏ ထုတ်ပြန်ထားသော hostname လမ်းညွှန်ချက်ကို အသုံးပြုပါ။ လိပ်စာများ ပြောင်းလဲနိုင်သောကြောင့် ပုံသေ IP ခွင့်ပြုစာရင်းများကို အကြံမပြုပါ။ စက်ပစ္စည်းများသည် အလုပ်လုပ်သော DNS နှင့် ၎င်းတို့၏ ရေရှည် ချိတ်ဆက်မှုအတွက် တည်ငြိမ်သော လမ်းကြောင်းကိုလည်း လိုအပ်သည်။

Token ရယူခြင်း သို့မဟုတ် Admin API တောင်းဆိုချက်အတွင်း ပို့သူ မအောင်မြင်ပါက ထို ဆာဗာဘက်မှ HTTP သယ်ပို့မှုကို စစ်ဆေးပါ။ Firebase Admin Java ၏ HTTP အင်တာဖေ့စ်များအတွက် API နှင့် အထောက်အထား သယ်ပို့မှုကို အတူတကွ ပြင်ဆင်ပါ။ ပို့ခြင်း အောင်မြင်သော်လည်း ပို့ဆောင်မှု မအောင်မြင်ပါက ထို ရလဒ်ကို သိမ်းဆည်းထားပြီး backend ၏ proxy အထောက်အထားများကို ထပ်ခါတလဲလဲ မလဲလှယ်ဘဲ စက်ပစ္စည်း လမ်းကြောင်းကို စုံစမ်းပါ။

ဆက်စပ်ဆောင်းပါးများ