gRPC Transport
PushwooshGRPC মডিউল একটি ঐচ্ছিক gRPC ট্রান্সপোর্ট লেয়ার প্রদান করে যা Pushwoosh সার্ভারের সাথে যোগাযোগের জন্য নেটওয়ার্ক পারফরম্যান্স উন্নত করতে পারে। যখন উপলব্ধ থাকে, SDK স্বয়ংক্রিয়ভাবে সমর্থিত API মেথডগুলির জন্য gRPC ব্যবহার করে এবং gRPC অনুপলব্ধ হলে REST-এ ফলব্যাক করে।
এটি কিভাবে কাজ করে
Anchor link toডিফল্টভাবে, Pushwoosh SDK সার্ভারের সাথে HTTPS এর মাধ্যমে REST API ব্যবহার করে যোগাযোগ করে। PushwooshGRPC মডিউল একটি বিকল্প gRPC ট্রান্সপোর্ট যোগ করে যা বিভিন্ন সুবিধা প্রদান করে:
- কম লেটেন্সি — gRPC পারসিস্টেন্ট সংযোগের সাথে HTTP/2 ব্যবহার করে
- ছোট পেলোড সাইজ — প্রোটোকল বাফার JSON এর চেয়ে বেশি কম্প্যাক্ট
- মাল্টিপ্লেক্সিং — একটি সংযোগের মাধ্যমে একাধিক অনুরোধ পাঠানো যায়
স্বয়ংক্রিয় ফলব্যাক
Anchor link toমডিউলটিতে বিল্ট-ইন রেজিলিয়েন্স অন্তর্ভুক্ত রয়েছে:
| দৃশ্যকল্প | আচরণ |
|---|---|
| gRPC উপলব্ধ | gRPC ট্রান্সপোর্ট ব্যবহার করে |
| gRPC অনুপলব্ধ | REST-এ ফলব্যাক করে |
| নেটওয়ার্ক ত্রুটি | REST দিয়ে পুনরায় চেষ্টা করে |
প্রয়োজনীয়তা
Anchor link to| প্রয়োজনীয়তা | সংস্করণ |
|---|---|
| iOS | 13.0+ |
| Xcode | 14.0+ |
| Swift | 5.0+ |
ইনস্টলেশন
Anchor link toSwift Package Manager
Anchor link toPushwoosh SDK ইন্টিগ্রেট করার সময় আপনার টার্গেটে PushwooshGRPC যোগ করুন:
- Xcode-এ, File → Add Package Dependencies-এ যান
- প্যাকেজ URL লিখুন:
https://github.com/Pushwoosh/Pushwoosh-XCFramework - প্রয়োজনীয় ফ্রেমওয়ার্কগুলির পাশাপাশি
PushwooshGRPCনির্বাচন করুন
PushwooshFrameworkPushwooshCorePushwooshBridge
PushwooshGRPC— gRPC ট্রান্সপোর্টPushwooshKeychain— পারসিস্টেন্ট ডিভাইস আইডিPushwooshLiveActivities— লাইভ অ্যাক্টিভিটিস সাপোর্টPushwooshVoIP— VoIP পুশ নোটিফিকেশনPushwooshForegroundPush— কাস্টম ফোরগ্রাউন্ড নোটিফিকেশন
CocoaPods
Anchor link toআপনার Podfile-এ gRPC সাবস্পেক যোগ করুন:
target 'MyApp' do use_frameworks!
pod 'PushwooshXCFramework' pod 'PushwooshXCFramework/PushwooshGRPC'endতারপর চালান:
pod installব্যবহার
Anchor link toকোনো কোড পরিবর্তনের প্রয়োজন নেই। একবার আপনি আপনার প্রজেক্টে PushwooshGRPC মডিউল যোগ করলে, এটি স্বয়ংক্রিয়ভাবে কাজ করে:
- অ্যাপ লঞ্চের সময়, SDK সনাক্ত করে যে gRPC ট্রান্সপোর্ট উপলব্ধ আছে
- সম্ভব হলে API কলগুলি gRPC এর মাধ্যমে রাউট করা হয়
- যদি gRPC ব্যর্থ হয়, SDK স্বয়ংক্রিয়ভাবে REST-এ ফলব্যাক করে
সমর্থিত মেথড
Anchor link toনিম্নলিখিত API মেথডগুলি gRPC ট্রান্সপোর্ট সমর্থন করে:
| মেথড | gRPC সাপোর্ট |
|---|---|
| ডিভাইস রেজিস্ট্রেশন | হ্যাঁ |
| ট্যাগ (সেট/গেট) | হ্যাঁ |
| অ্যাপ ওপেন ট্র্যাকিং | হ্যাঁ |
| পুশ পরিসংখ্যান | হ্যাঁ |
ব্যবহারের ক্ষেত্র
Anchor link toPushwooshGRPC মডিউলটি বিশেষভাবে উপযোগী:
- উচ্চ-ফ্রিকোয়েন্সি ইভেন্ট ট্র্যাকিং — যে অ্যাপগুলি অনেক ইভেন্ট পাঠায় তাদের জন্য ওভারহেড হ্রাস করে
- রিয়েল-টাইম অ্যাপ্লিকেশন — সময়-সংবেদনশীল অপারেশনের জন্য কম লেটেন্সি
- ব্যান্ডউইথ-সীমাবদ্ধ পরিবেশ — ছোট পেলোড সাইজ ডেটা সাশ্রয় করে
সমস্যা সমাধান
Anchor link toমডিউলটি সক্রিয় কিনা তা যাচাই করা
Anchor link toআপনার অ্যাপ লঞ্চ করার সময় Xcode কনসোল লগগুলি পরীক্ষা করুন। আপনার এই ধরনের একটি লগ বার্তা দেখা উচিত:
[Pushwoosh] gRPC transport: ENABLEDREST ট্রান্সপোর্ট জোর করে ব্যবহার করা
Anchor link toডিবাগিংয়ের জন্য যদি আপনাকে সাময়িকভাবে gRPC নিষ্ক্রিয় করতে হয়, তাহলে আপনি আপনার টার্গেট থেকে PushwooshGRPC মডিউলটি সরিয়ে ফেলতে পারেন। gRPC উপলব্ধ না থাকলে SDK স্বয়ংক্রিয়ভাবে REST ট্রান্সপোর্ট ব্যবহার করবে।