পুশ নোটিফিকেশন হল মোবাইল অ্যাপ সহ যেকোনো ব্যক্তির জন্য একটি গুরুত্বপূর্ণ মার্কেটিং টুল।
এটি আপনার ব্যবহারকারীদের সাথে যোগাযোগ করার সর্বোত্তম উপায়, তাদের মোবাইল ফোনে জরুরি বার্তা পাঠানো।
একটি মোবাইল অ্যাপ ব্যবহারকারীকে একটি পুশ বিজ্ঞপ্তি পাঠাতে পারে, যা একটি সংক্ষিপ্ত পপ-আপ বার্তা যা অ্যাপটি খোলা না থাকলেও তাদের স্মার্টফোনে প্রদর্শিত হয়।
এই সতর্কতাগুলি অনুস্মারক, আপডেট, ডিসকাউন্ট এবং আরও অনেক কিছু অন্তর্ভুক্ত করতে পারে৷
তারা ব্যবহারকারীদের চোখ ধরার জন্য তৈরি করা হয়. শিরোনাম, বার্তা, ছবি এবং URL হল একটি পুশ বিজ্ঞপ্তির সমস্ত সম্ভাব্য উপাদান৷ ইমোজি, লোগো এবং অন্যান্য জিনিসও তাদের একটি অংশ হতে পারে।
অ্যাপল ওএস এবং গুগল অ্যান্ড্রয়েডের মতো অপারেটিং সিস্টেমে পুশ নোটিফিকেশনের জন্য বিভিন্ন ইন্টারফেস রয়েছে।
পুশ বিজ্ঞপ্তিগুলি ব্যস্ততাকে প্রচার করতে, অ্যাপের ব্যবহার বাড়াতে, রূপান্তরগুলিকে প্রভাবিত করতে এবং আরও অনেক কিছু করতে ব্যবহার করা যেতে পারে।
বিকল্পগুলি প্রকৃতপক্ষে সীমাহীন।
মোবাইল ডিভাইসের জন্য পুশ নোটিফিকেশন, মোবাইল ডিভাইসের জন্য পুশ নোটিফিকেশন নামেও পরিচিত, ইমেল, এসএমএস, এবং অনলাইন পুশ নোটিফিকেশনের মতো চ্যানেলের ব্যবহারকে অনেক বিশেষ সুবিধার সাথে সম্পূরক করতে পারে।
আপনি এই পোস্টে বিজ্ঞপ্তি পরিষেবার একটি দ্রুত বিবরণ এবং এর উদ্দেশ্য, উচ্চ-স্তরের নকশা, বিশেষ বৈশিষ্ট্য এবং আরও অনেক কিছুর তথ্য পাবেন।
উদ্দেশ্য
একটি বিজ্ঞপ্তি পরিষেবা বিকাশ করতে যা দক্ষতার সাথে বিভিন্ন চ্যানেলে পণ্য থেকে ব্যবহারকারীর বার্তা বিতরণ করতে পারে
আবশ্যকতা:
- সেন্ডিং এপিআই: একটি অনুমোদিত এন্ডপয়েন্ট প্রকাশ করুন যাতে যেকোনো ব্যাকএন্ড এবং মাইক্রোসার্ভিস বিজ্ঞপ্তি প্রদান করা শুরু করতে পারে।
- সামঞ্জস্যপূর্ণ চ্যানেল: ইমেল, টেক্সট মেসেজ এবং পুশের মতো এপিআই প্রকাশ করে এমন যেকোনো চ্যানেলে সতর্কতা সরবরাহ করতে সহায়তা করে।
- ব্যবহারকারীর পছন্দ: ব্যবহারকারীদের প্রতিটি চ্যানেল এবং বিজ্ঞপ্তির জন্য তাদের ব্যবহারকারীর পছন্দ নির্বাচন করার অনুমতি দিন।
- ডাউনস্ট্রিম পরিষেবা সম্মতির সীমা: আপনার থাকা এড়িয়ে চলুন ইমেইল অথবা এসএমএস পরিষেবা থ্রোটল বা বন্ধ।
- মাপযোগ্য: অনুমতি (তাত্ত্বিকভাবে) অসীম অনুভূমিক স্কেলিং।
উচ্চ-স্তরের আর্কিটেকচার
ধরা যাক আপনার কোড কাউকে অবহিত করার কথা:
- POST/send endpoint আপনার কোড দ্বারা আহ্বান করা হয়েছে। প্রতিটি উপলব্ধ চ্যানেলের জন্য, অনুরোধে প্রাপকের userId, বিজ্ঞপ্তির ধরন এবং এর বিষয়বস্তু অন্তর্ভুক্ত থাকে।
- OAuth2 ক্লায়েন্ট ক্রেডেনশিয়াল ফ্লো অনুরোধটি প্রমাণীকরণের জন্য /send এন্ড-পয়েন্ট দ্বারা ব্যবহৃত হয়।
- ব্যবহারকারীর বিজ্ঞপ্তি পছন্দ তারপর ডাটাবেস থেকে অনুরোধ করা হয়. পছন্দগুলি দেখায় যে ব্যবহারকারী একটি নির্দিষ্ট চ্যানেল এবং বিজ্ঞপ্তিতে সদস্যতা নিয়েছেন কিনা।
- ডাটাবেস থেকে, এটি ইমেল ঠিকানা এবং ফোন নম্বরের মতো ব্যবহারকারীর বৈশিষ্ট্যগুলি পড়বে।
- এই শেষ পয়েন্টটি একটি বার্তা অবজেক্ট তৈরি করবে যাতে ব্যবহারকারীর বৈশিষ্ট্য, চ্যানেল এবং চ্যানেল-নির্দিষ্ট বিষয়বস্তু অন্তর্ভুক্ত থাকে। যদিও এটি নিষ্ক্রিয় চ্যানেলগুলিকে অন্তর্ভুক্ত করবে না। বার্তাটি তারপর একটি ফ্যান আউট পরিষেবাতে বিতরণ করা হয়।
- আগত বার্তাগুলি ফ্যানআউট পরিষেবার মাধ্যমে কাজের সারিতে ছড়িয়ে দেওয়া হয়। যদিও বার্তায় নির্দিষ্ট করা নেই এমন চ্যানেলগুলির জন্য কাজের সারিগুলিকে উপেক্ষা করার জন্য ফিল্টারিং করা হয়েছে৷
- প্রতিটি চ্যানেলে একটি প্রসেসর এবং একটি কাজের সারি রয়েছে। প্রসেসর কাজটি নেয় এবং তারপর উপযুক্ত পরিষেবার জন্য জিজ্ঞাসা করে, যেমন একটি লেনদেনমূলক ইমেল বা এসএমএস পরিষেবা৷
প্রধান স্থাপত্য উপাদান
পোস্ট/প্রেরিত
আপনি হয়ত ভালোভাবে লক্ষ্য করেছেন যে শুধুমাত্র userId এবং ইমেল ঠিকানা বা ফোন নম্বর এই শেষ-বিন্দুর অনুরোধে অন্তর্ভুক্ত করা হয়নি। এটি বিজ্ঞপ্তি পরিষেবাগুলিকে আপনার ব্যবহারকারীদের কাছে বেনামী থাকতে সক্ষম করে৷
পরিমাপযোগ্যতা নিশ্চিত করতে, শেষ-বিন্দুটি a এর পিছনে স্থাপন করা হয় ভার ভারসাম্য.
আপনার সাধারণ ব্যবহারকারী-মুখী প্রমাণীকরণ শেষবিন্দুর জন্য সুরক্ষা প্রদান করে না।
আপনাকে অবশ্যই একটি স্বতন্ত্র প্রমাণীকরণ পদ্ধতি ব্যবহার করতে হবে যা OAuth2 ক্লায়েন্ট ক্রেডেনশিয়াল ফ্লো নামে পরিচিত যা সার্ভার-টু-সার্ভার যোগাযোগের জন্য ব্যবহৃত হয় কারণ অনুরোধ জমা দেওয়া পরিষেবাটি নিজেই সফ্টওয়্যার।
আপনার অ্যাপ্লিকেশন বিভিন্ন জায়গায় বিজ্ঞপ্তি প্রদান করবে। আপনি পাঠাও ফাংশনটি প্রায় যেকোনো জায়গায় ব্যবহার করতে পারেন, যেমন একটি নতুন কোডবেস বা আপনার বিল্ড ওয়ার্কফ্লো থেকে, এটিকে একটি লোড-ব্যালেন্সারের পিছনে একটি শেষ-বিন্দু হিসাবে প্রয়োগ করে, যা গ্যারান্টি দেয় যে এটি স্বাধীনভাবে স্কেলযোগ্য।
PUT/ব্যবহারকারীর পছন্দ
একটি কী/মান পেয়ার বা NoSQL ডাটাবেস ব্যবহার করুন যা অত্যন্ত স্কেলযোগ্য। রেকর্ডগুলিকে নিম্নরূপ ফর্ম্যাট করুন: KEY: নমুনা ব্যবহারকারী আইডি: নমুনা বিজ্ঞপ্তি আইডি, মূল্য: [“ইমেল”, “রাষ্ট্র: সত্য,” “এসএমএস”, “রাষ্ট্র: মিথ্যা,” চ্যানেল: “ইমেল”, “ইমেল”, রাজ্য : সত্য"]
যদি রেকর্ডগুলিতে "মিথ্যা" মানগুলি উপস্থিত থাকে, তবে ট্রান্সমিট এন্ড-পয়েন্ট ফ্যানআউটে বিতরণ করা বার্তা থেকে সংশ্লিষ্ট চ্যানেলটিকে বাদ দেবে। যদি একটি চ্যানেলের জন্য একটি রেকর্ড না থাকে তবে ব্যবহারকারী স্পষ্টভাবে তাদের পছন্দগুলি নির্দেশ করেনি৷ এই পরিস্থিতিতে আপনাকে ডিফল্ট করতে সম্মতি দিতে হবে।
ব্যবহারকারী আপনার UI এবং একটি নিয়মিত শেষ-পয়েন্ট ব্যবহার করে ব্যবহারকারীর পছন্দ ডাটাবেসে ডেটা পরিবর্তন করতে পারে যা আপনার স্ট্যান্ডার্ড প্রমাণীকরণ পদ্ধতি দ্বারা সুরক্ষিত।
ব্যবহারকারীরা বিরক্ত হয়ে উঠবে এবং আপনার সতর্কতাগুলিকে স্প্যাম হিসাবে মনোনীত করতে বা তাদের নীরব করতে বাধ্য হবে যদি আপনি তাদের বিজ্ঞপ্তি পছন্দগুলি পরিবর্তন করার বিকল্প প্রদান না করেন৷ ফলস্বরূপ আপনার ব্যবহারকারীর অভিজ্ঞতা আরও ক্ষতিগ্রস্ত হবে, এবং ইমেল বা এসএমএস বিতরণ পরিষেবাগুলি আপনার অ্যাকাউন্ট স্থগিত করতে পারে।
ফ্যান আউট
ফ্যানআউট একটি বার্তা কপি করে এবং বিভিন্ন স্থানে বিতরণ করে। তারা সাশ্রয়ী মূল্যের এবং খুব মাপযোগ্য. AWS এ SNS ব্যবহার করুন। Azure-এ Pub/Sub এবং Google ক্লাউড প্ল্যাটফর্মে বিষয় এবং সদস্যতা ব্যবহার করুন।
বাদ দেওয়া চ্যানেল কাজের সারিগুলিতে অর্থহীন বার্তা পাঠানো প্রতিরোধ করতে, আপনি ফ্যানআউট এবং কাজের সারিগুলির মধ্যে ফিল্টারিং কনফিগার করতে পারেন৷ উদাহরণস্বরূপ, AWS SNS-এ, আপনি নির্দিষ্ট করতে পারেন যে ইমেল কাজের সারিতে শুধুমাত্র ফ্যানআউট বার্তা পাওয়া উচিত যদি এটির "চ্যানেল" ক্ষেত্রের "ইমেল" মান থাকে।
এমনকি যদি আপনি প্রয়োজনীয় কাজের সারিতে অভিন্ন বার্তা পাঠাতে কোড তৈরি করতে পারেন, ফ্যানআউট আরও দক্ষ এবং কম কোডিং প্রয়োজন। ফ্যানআউট আপনাকে আপনার চ্যানেলগুলিকে প্রসারিত এবং পুনর্গঠন করার অনুমতি দিয়ে সারিগুলি যোগ এবং অপসারণের সুবিধা প্রদান করে৷
জব প্রসেসিং
বার্তাগুলি আপনার কাজের প্রসেসর দ্বারা মুলতুবি থাকা সারিগুলিতে সংরক্ষণ করা হয়৷ এগুলি সাশ্রয়ী মূল্যের এবং খুব মাপযোগ্য। কাজের প্রসেসর হল কোডের টুকরো যা কাজের সারি থেকে বার্তাগুলি প্রক্রিয়া করে। সারিতে থাকা বার্তাগুলির ভলিউমের উপর নির্ভর করে, তারা স্কেল করতে পারে।
একটি লেনদেনমূলক ইমেল পরিষেবার মাধ্যমে আমাদের পরিস্থিতিতে নোটিশ প্রদান করার জন্য কাজের প্রসেসরের যথাযথ প্রদানকারীর কাছে একটি API কল করা উচিত।
বেশিরভাগ ইমেল, এসএমএস এবং অনুরূপ বার্তা সরবরাহকারীর আপনার পাঠানো বার্তাগুলির পরিমাণ এবং ক্ষমতার জন্য কঠোর প্রয়োজনীয়তা রয়েছে। উপরন্তু, আপনি এগুলি পরীক্ষা করতে চান এবং উপযুক্ত পদ্ধতিগুলি পুঙ্খানুপুঙ্খভাবে সেট আপ করতে চান। এডব্লিউএস এসইএস থেকে কীভাবে অবসান হওয়া এড়ানো যায় সে সম্পর্কে আমাদের পরামর্শ এখানে।
ডেলিভারি সার্ভিসের রেট ক্যাপ অতিক্রম না করার জন্য আপনি সর্বাধিক সংখ্যক কাজের প্রসেসর নির্ধারণ করতে পারেন।
আরও উন্নতি
আপনি এই আইটেম একটি গুচ্ছ এক নজরে থাকতে পারে.
- একটি স্কেলযোগ্য ইন-অ্যাপ বিজ্ঞপ্তি পরিষেবা পাওয়ার জন্য তাদের নিজস্ব API, টেবিল ইত্যাদির প্রয়োজন।
- ওপেন/ক্লিক রিপোর্ট সংগ্রহ করা এবং দেখানো
- কোড থেকে বিজ্ঞপ্তির বিষয়বস্তু সরানো এবং কোড পরিবর্তন ছাড়াই আপনার পণ্য ও ডিজাইন টিমকে সতর্কতাগুলি দৃশ্যত পরিবর্তন করতে দেওয়া
- কোনো কোড পরিবর্তন না করেই, আপনার দল নির্দিষ্ট চ্যানেলের জন্য বিজ্ঞপ্তি সক্রিয় বা নিষ্ক্রিয় করতে ড্যাশবোর্ড ব্যবহার করতে পারে।
পুশ বিজ্ঞপ্তির সুবিধা
- বুস্ট ইউজার ইন্টারঅ্যাকশন: আপডেট এবং নতুন উপাদান আপনার ব্যবহারকারীদের আগ্রহী রাখবে।
- যোগাযোগের দৃশ্যমানতা বৃদ্ধি করুন: লোকেরা সক্রিয় না থাকলেও আপনার বার্তাগুলি অবিলম্বে গ্রহণ করা হয়েছে তা নিশ্চিত করুন৷ জরুরী বিজ্ঞপ্তি পাঠান এবং ব্যবহারকারীদের একটি মসৃণ অভিজ্ঞতা প্রদান করুন।
- ধারণ বজায় রাখুন: আপনার ব্যবহারকারীদের ফিরে যেতে অনুরোধ করার জন্য স্পষ্টভাবে দৃশ্যমান পুশ বিজ্ঞপ্তিগুলি ব্যবহার করুন৷ আপনি আপনার ওয়েবসাইট এবং অ্যাপে গ্রাহকদের ঠেলে ব্যবহারকারীর ধারণ বাড়াতে এবং মন্থন কমাতে পারেন।
- রূপান্তরগুলি উন্নত করুন: অ্যাপ-মধ্যস্থ পুরষ্কার, প্রচার, ডিসকাউন্ট বা অন্যান্য অফারগুলির চারপাশে পুশ প্রচারাভিযান তৈরি করে আপনি বিক্রয় বাড়াতে পারেন৷
- আপনার এন্টারপ্রাইজকে স্কেল করুন: আপনার শ্রোতা প্রসারিত হওয়ার সাথে সাথে আপনার যোগাযোগের পদ্ধতিকে অবশ্যই স্কেল করতে হবে। আপনার ক্লায়েন্ট বেস প্রসারিত হওয়ার সাথে সাথে, পুশ বিজ্ঞপ্তিগুলি তাদের সাথে যোগাযোগ রাখার জন্য একটি কার্যকর পদ্ধতি।
- ব্যবহারকারীর অভিজ্ঞতা সংযুক্ত করুন (UX): ভোক্তাদের অবগত রাখতে এবং একটি মসৃণ ক্রস-চ্যানেল অভিজ্ঞতা প্রদানের জন্য লেনদেন সংক্রান্ত সতর্কতা প্রদান করে, আপনি গ্রাহকের যাত্রা জুড়ে ঘর্ষণ কমাতে পারেন।
উপসংহার
উপসংহারে, আমরা একটি পরিমাপযোগ্য পুশ বিজ্ঞপ্তি পরিষেবার আর্কিটেকচার সম্পর্কে জ্ঞান অর্জন করেছি। আমরা সমস্ত প্রধান ক্লাউড পরিষেবা প্রদানকারী দ্বারা সরবরাহ করা সরঞ্জামগুলিও দেখেছি যাতে আপনি এইগুলির উপর আপনার বিজ্ঞপ্তিগুলিকে ভিত্তি করতে পারেন৷
আমি আপনাকে পুশ নোটিফিকেশন সিস্টেম আর্কিটেকচারের একটি ওভারভিউ দেওয়ার জন্য আমার যথাসাধ্য চেষ্টা করেছি তা সত্ত্বেও, পর্দার পিছনে আরও অনেক কিছু চলছে।
আমি আন্তরিকভাবে আশা করি আপনি এই তথ্যটি দরকারী বলে মনে করবেন এবং এটিকে ভাল কাজে লাগাবেন।
নির্দেশিকা সমন্ধে মতামত দিন