Liquid টেমপ্লেট ব্যবহার করা
Liquid টেমপ্লেটগুলি নিয়মিত ডাইনামিক কন্টেন্ট ব্যবহারের পাশাপাশি অত্যাধুনিক যুক্তি প্রয়োগ করে Pushwoosh-এর ব্যক্তিগতকরণ ক্ষমতাকে উল্লেখযোগ্যভাবে প্রসারিত করে।
Pushwoosh-এ মেসেজ ব্যক্তিগতকরণ ট্যাগ (ব্যবহারকারীর ডেটা) এর উপর ভিত্তি করে করা হয়। Pushwoosh বিভিন্ন ধরনের ডিফল্ট ট্যাগ এবং কাস্টম ট্যাগ অফার করে। এগুলি ব্যবহার করে, আপনি ব্যবহারকারীর প্রথম নাম, শহর, ক্রয়ের ইতিহাস ইত্যাদি নির্দিষ্ট করতে পারেন যাতে আরও ব্যক্তিগতকৃত বার্তা পাঠানো যায়, উদাহরণস্বরূপ: হাই {First_name}, {item} অর্ডার করার জন্য ধন্যবাদ।
Liquid টেমপ্লেটগুলি ডাইনামিক কন্টেন্টে আরও যুক্তি যোগ করে। উদাহরণস্বরূপ, যদি কোনও ব্যবহারকারীর সাবস্ক্রিপশন ট্যাগে “free” থাকে, আপনি তাদের একটি বার্তা পাঠাতে পারেন: “আপনার ১০% ছাড় নিন।”
ব্যবহারকারীদের আইডি, আচরণ এবং পছন্দ অনুযায়ী মেসেজের কন্টেন্ট পরিবর্তন করা প্রাসঙ্গিকতা বাড়ানোর এবং আপনার মার্কেটিং ক্যাম্পেইন থেকে আরও চিত্তাকর্ষক ফলাফল পাওয়ার সবচেয়ে কার্যকর উপায়।
সিনট্যাক্স
Anchor link toShopify-এর Liquid এর উপর ভিত্তি করে কন্টেন্ট টেমপ্লেটগুলি ডাইনামিক কন্টেন্ট লোড করার জন্য ট্যাগ, অবজেক্ট, এবং ফিল্টার এর সংমিশ্রণ ব্যবহার করে। কন্টেন্ট টেমপ্লেটগুলি আপনাকে একটি টেমপ্লেটের মধ্যে থেকে নির্দিষ্ট ভেরিয়েবল অ্যাক্সেস করতে এবং ডেটা সম্পর্কে কিছু না জেনেই তাদের ডেটা আউটপুট করতে দেয়।
অবজেক্ট
Anchor link toঅবজেক্ট গুলি সেই কন্টেন্টকে সংজ্ঞায়িত করে যা একজন ব্যবহারকারীকে দেখানো হবে। অবজেক্ট গুলি ডবল কোঁকড়া বন্ধনীতে আবদ্ধ করা উচিত: {{ }}
উদাহরণস্বরূপ, একটি বার্তা ব্যক্তিগতকরণ করার সময়, ব্যবহারকারীদের নাম বার্তার কন্টেন্টে যোগ করার জন্য এর বডিতে {{Name}} পাঠান। ব্যবহারকারীর নাম (Name ট্যাগের মান) ব্যবহারকারী যে বার্তাটি দেখবেন তাতে Liquid অবজেক্টটিকে প্রতিস্থাপন করবে।
হাই {{Name}}! আপনি ফিরে আসায় আমরা আনন্দিত!হাই আনা! আপনি ফিরে আসায় আমরা আনন্দিত!
ট্যাগ
Anchor link toট্যাগ গুলি টেমপ্লেটের জন্য যুক্তি এবং নিয়ন্ত্রণ প্রবাহ তৈরি করে। কোঁকড়া বন্ধনী শতাংশ ডিলিমিটার {% এবং %} এবং তাদের ঘিরে থাকা টেক্সট টেমপ্লেট রেন্ডার করার সময় কোনও দৃশ্যমান আউটপুট তৈরি করে না। এটি আপনাকে ব্যবহারকারীকে কোনও Liquid যুক্তি না দেখিয়েই ভেরিয়েবল বরাদ্দ করতে এবং শর্ত বা লুপ তৈরি করতে দেয়।
উদাহরণস্বরূপ, if ট্যাগ ব্যবহার করে, আপনি ব্যবহারকারীর ডিভাইসে কোন ভাষা সেট করা আছে তার উপর ভিত্তি করে বার্তার ভাষা পরিবর্তন করতে পারেন:
{% if Language == 'fr' %}Salut!{% else %}Hello!{% endif %}Salut!
Hello!
ট্যাগ অপারেটর
Anchor link to| অপারেটর | বর্ণনা |
|---|---|
== | সমান |
!= | সমান নয় |
> | এর চেয়ে বড় |
< | এর চেয়ে ছোট |
>= | এর চেয়ে বড় বা সমান |
<= | এর চেয়ে ছোট বা সমান |
or | লজিক্যাল or |
and | লজিক্যাল and |
contains | একটি স্ট্রিং বা স্ট্রিং এর অ্যারের মধ্যে একটি সাবস্ট্রিং এর উপস্থিতি পরীক্ষা করে |
ফিল্টার
Anchor link toফিল্টার গুলি একটি Liquid অবজেক্ট বা ভেরিয়েবলের আউটপুট পরিবর্তন করে। এগুলি ডবল কোঁকড়া বন্ধনী {{ }} এবং ভেরিয়েবল অ্যাসাইনমেন্টের মধ্যে ব্যবহৃত হয় এবং একটি পাইপ অক্ষর | দ্বারা পৃথক করা হয়। একটি আউটপুটে একাধিক ফিল্টার ব্যবহার করা যেতে পারে এবং বাম থেকে ডানে প্রয়োগ করা হয়।
{{ Name | capitalize | prepend:"Hello " }}Hello Anna
API এর মাধ্যমে পাঠানো মেসেজে Liquid টেমপ্লেট ব্যবহার করা
Anchor link toLiquid টেমপ্লেটগুলি বাস্তবায়ন করতে আপনার createMessage অনুরোধগুলিতে Liquid সিনট্যাক্স ব্যবহার করুন। টেমপ্লেটগুলি createMessage অনুরোধের “content” প্যারামিটারের জন্য উপলব্ধ, সেইসাথে ডাইনামিক কন্টেন্ট সমর্থনকারী অন্য কোনও প্যারামিটারের জন্য, বিশেষ করে, প্ল্যাটফর্ম-নির্দিষ্ট “title”, “subtitle”, এবং “image” প্যারামিটারগুলির জন্য।
কন্টেন্ট টেমপ্লেট ব্যবহার করে, আপনি হয় আপনার API অনুরোধগুলিতে ডেটা নির্দিষ্ট করতে পারেন (“template_bindings” প্যারামিটার পাস করে) অথবা ব্যবহারকারীদের ডিভাইসে সংরক্ষিত ট্যাগ মানগুলি থেকে ডেটা পেতে পারেন (“template_bindings” প্যারামিটার ব্যবহার না করে)। এইভাবে, আপনি অত্যন্ত প্রাসঙ্গিক কন্টেন্ট সহ ব্যবহারকারী-ভিত্তিক পুশ ক্যাম্পেইন তৈরি করতে সক্ষম।
নামে স্পেস সহ ট্যাগ ব্যবহার করে টেমপ্লেট যুক্তি সংজ্ঞায়িত করতে, নিম্নলিখিত কৌশলটি ব্যবহার করুন:
উদাহরণ
{% capture my_tag %}{{My Tag}}{% endcapture %}{% if my_tag == 'value' %}এই ক্ষেত্রে পাঠানোর জন্য কন্টেন্ট{% else %}অন্যথায় পাঠানোর জন্য কন্টেন্ট{% endif %}Liquid টেমপ্লেট ব্যবহারের ক্ষেত্র
Anchor link toএখানে আপনি বেশ কয়েকটি ব্যবহারের ক্ষেত্র পাবেন যেখানে Liquid টেমপ্লেটগুলি কাজে আসে।
বহু-ভাষিক পুশ
Anchor link toLiquid টেমপ্লেটগুলি স্পষ্টভাবে নির্দিষ্ট করা সম্ভব করে যে ব্যবহারকারীরা কোন ভাষায় আপনার পুশ বার্তাগুলি পাবেন। API অনুরোধের সহজ উদাহরণ এবং অনুরোধে ব্যবহৃত টেমপ্লেট বাইন্ডিংয়ের উপর নির্ভর করে প্রাপ্ত বার্তাটি দেখুন।
{% if Language == 'es' %}¡Hola!{% else %}Hello!{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh app code "auth": "yxoPUlw.....IyEX4H", // API access token from Pushwoosh Control Panel "notifications" : [ // push message parameters { "content": "{% raw %}{% if language == 'es' %}¡Hola!{% else %}hello!{% endif %}{% endraw %}", "template_bindings": { // optional. When no template_bindings are passed in a request, Tag values from the device are used. "language" : "es" } } ] }}ভাষা ‘es’ হলে: ¡Hola!
ভাষা ‘en’ হলে: Hello!
সাবস্ক্রিপশন আপগ্রেড প্রম্পট
Anchor link toআপনার গ্রাহকদের তাদের বর্তমান প্ল্যানের উপর ভিত্তি করে তাদের সাবস্ক্রিপশন আপগ্রেড করতে উৎসাহিত করুন।
{% if Subscription == 'Basic' %} আরও পণ্যের বৈশিষ্ট্য এবং 24/7 সহায়তা পেতে সিলভারে আপগ্রেড করুন।{% elsif Subscription == 'Silver' %} অগ্রাধিকার সহায়তা এবং উন্নত বৈশিষ্ট্যগুলির জন্য গোল্ডে আপগ্রেড করুন।{% else %} আপনার সাবস্ক্রিপশন পুনর্নবীকরণ করতে অনুগ্রহ করে আপনার ম্যানেজারের সাথে যোগাযোগ করুন।{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh app code "auth": "yxoPUlw.....IyEX4H", // API access token from Pushwoosh Control Panel "notifications" : [ // push message parameters { "content": "{% raw %}{% if Subscription == 'Basic' %}Upgrade to Silver for getting more product features and 24/7 support.{% elsif Subscription == 'Silver' %}Upgrade to Gold for priority support and advanced features.{% else %}Please contact your manager to renew your subscription. {% endif %}{% endraw %}", "template_bindings": { // optional. When no template_bindings are passed in a request, Tag values from the device are used. "language" : "es" } } ] }}বেসিক সাবস্ক্রিপশন প্ল্যান সহ ব্যবহারকারীদের জন্য: আরও পণ্যের বৈশিষ্ট্য এবং 24/7 সহায়তা পেতে সিলভারে আপগ্রেড করুন।
সিলভার সাবস্ক্রিপশন প্ল্যান সহ ব্যবহারকারীদের জন্য: অগ্রাধিকার সহায়তা এবং উন্নত বৈশিষ্ট্যগুলির জন্য গোল্ডে আপগ্রেড করুন।
অন্যান্য প্ল্যান সহ ব্যবহারকারীদের জন্য: আপনার সাবস্ক্রিপশন পুনর্নবীকরণ করতে অনুগ্রহ করে আপনার ম্যানেজারের সাথে যোগাযোগ করুন।
তালিকা ট্যাগ
Anchor link toকন্টেন্ট টেমপ্লেটগুলি একটি তালিকা ধরনের ট্যাগগুলি পরিচালনা করতে বেশ সহায়ক।
ভেরিয়েবলের আকার
Anchor link toএকটি সম্ভাব্য ব্যবহারের ক্ষেত্র হল ট্যাগে থাকা মানের সংখ্যার উপর নির্ভর করে বিভিন্ন কন্টেন্ট সরবরাহ করা। উদাহরণস্বরূপ, আপনি বিভিন্ন আচরণের গ্রাহকদের বিভিন্ন ছাড় প্রদান করতে পারেন। ধরা যাক গ্রাহকের তাদের WishList-এ কিছু আইটেম আছে—তারা কতগুলি পণ্য কিনতে যাচ্ছে তার উপর ভিত্তি করে সবচেয়ে উপযুক্ত ছাড় দিয়ে তাদের কেনাকাটা করতে উৎসাহিত করুন!
{% if WishList.size >= 3 %}আপনার পরবর্তী কেনাকাটায় ২০% ছাড় পান!{% elsif WishList.size == 2 %}আপনার পরবর্তী কেনাকাটায় ১০% ছাড় পান!{% else %}আরে, নতুন পোশাকগুলো দেখুন!{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh app code "auth": "yxoPUlw.....IyEX4H", // API access token from Pushwoosh Control Panel "notifications" : [ // push message parameters { "content": "{% raw %}{% if WishList.size >= 3 %}Get 20% off your next purchase!{% elsif WishList.size == 2 %}Get a 10% discount on your next purchase!{% else %}Hey, take a look at new outwears!{% endif %}{% endraw %}", "template_bindings": { "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

ভেরিয়েবলে রয়েছে
Anchor link toআরেকটি ক্ষেত্র যা আপনার কভার করার প্রয়োজন হতে পারে তা হল তালিকা ট্যাগের মানগুলির সাথে মোকাবিলা করা এবং ট্যাগে কোন মান রয়েছে তার উপর ভিত্তি করে সবচেয়ে প্রাসঙ্গিক কন্টেন্ট সরবরাহ করা।
{% if WishList contains 'Skinny Low Ankle Jeans' %}আপনার উইশলিস্টের পণ্যগুলিতে ২০% ছাড় পান!{% else %}আরে, একেবারে নতুন স্কিনি লো অ্যাঙ্কেল জিন্স দেখুন!{% endif %}{ "request": { "application": "C90C0-0E786", "auth": "yxoPUlw.....IyEX4H", // API access token from Pushwoosh Control Panel "notifications" : [ // push message parameters { "content": "{% raw %}{% if WishList contains 'Skinny Low Ankle Jeans' %}Get 20% off your next purchase!{% else %}Hey, take a look at the brand new Skinny Low Ankle Jeans!{% endif %}{% endraw %}", "template_bindings": { "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

বহুবচন
Anchor link toকন্টেন্ট টেমপ্লেট ব্যবহার করে, আপনি ব্যবহারকারীদের আচরণ অনুযায়ী বার্তার কন্টেন্ট সামঞ্জস্য করতে সক্ষম। উদাহরণস্বরূপ, আপনি বার্তার টেক্সট পরিবর্তন করতে পারেন যাতে তালিকা ট্যাগে একাধিক মান থাকলে বহুবচন শব্দ থাকে।
আইটেমটিতে ২০% ছাড় পান{% if WishList.size > 1 %} গুলি আপনার WishList-এ!{% else %} আপনার Wishlist-এ!{% endif %}{ "request": { "application": "C90C0-0E786", "auth": "yxoPUlw.....IyEX4H", // API access token from Pushwoosh Control Panel "notifications" : [ // push message parameters { "content": "Get 20% off item{% raw %}{% if WishList.size > 1 %}s in your WishList!{% else %} in your Wishlist!{% endif %}{% endraw %}", "template_bindings": { // optional. When no template_bindings are passed in a request, Tag values from the device are used. "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

টাইমজোন
Anchor link toটাইমজোনের জন্য টেমপ্লেট নির্দিষ্ট টাইমজোন অনুযায়ী তারিখ এবং সময় রূপান্তর করে।
{{ MyDate | timezone: MyTimezone | date: \"%Y-%m-%d %H:%M\" }}{ "request" : { "auth" : "3H9bk8w3.....Acge2RbupTB", // API access token from Pushwoosh Control Panel "application" : "XXXXX-XXXXX", // Pushwoosh app code "notifications" : [ // push message parameters { "content": "Current Date: {{ MyDate | timezone: MyTimezone | date: \"%Y-%m-%d %H:%M\" }}", "template_bindings": { // optional. When no template_bindings are passed in a request, Tag values from the device are used. "MyDate" : "2019-07-23 15:00", "MyTimezone" : "Asia/Dubai" } } ] }}
সংযুক্ত কন্টেন্ট
Anchor link toসংযুক্ত কন্টেন্ট হল Liquid টেমপ্লেটের একটি বৈশিষ্ট্য যা আপনাকে আপনার ইমেল বা পুশ নোটিফিকেশন বার্তাগুলির মধ্যে সরাসরি একটি বাহ্যিক উৎস, যেমন একটি ওয়েব পরিষেবা, থেকে ডেটা গতিশীলভাবে পুনরুদ্ধার এবং ব্যবহার করতে দেয়। এই বৈশিষ্ট্যটি একটি নির্দিষ্ট URL থেকে JSON ডেটা এনে এবং এটি একটি ভেরিয়েবলে সংরক্ষণ করে রিয়েল-টাইম ব্যক্তিগতকরণ সক্ষম করে যা আপনার কন্টেন্টে ব্যবহার করা যেতে পারে।
মূল ব্যবহারের ক্ষেত্র
Anchor link to-
পণ্যের সুপারিশ: প্রতিটি ব্যবহারকারীর জন্য তৈরি ব্যক্তিগতকৃত পণ্যের তালিকা প্রদর্শন করুন।
-
প্রোমো কোড: একটি ব্যাকএন্ড পরিষেবা দ্বারা তৈরি অনন্য প্রোমো কোড সন্নিবেশ করান।
পূর্বশর্ত
Anchor link to- সংযুক্ত কন্টেন্ট ব্যবহার করার জন্য, আপনার অবশ্যই নিজস্ব ব্যাকএন্ড পরিষেবা থাকতে হবে যা User ID, HWID, বা কাস্টম ট্যাগ এর উপর ভিত্তি করে প্রয়োজনীয় ডেটা (যেমন, প্রোমো কোড, পণ্যের সুপারিশ) তৈরি এবং সরবরাহ করে। Pushwoosh তারপর একটি বার্তা পাঠানোর আগে এই ডেটা নিয়ে আসে।
ধাপে ধাপে বাস্তবায়ন নির্দেশিকা
Anchor link toধাপ ১. ব্যাকএন্ড সার্ভিস সেট আপ করুন
Anchor link toব্যাকএন্ড পরিষেবাটি উচিত:
- ব্যবহারকারী-নির্দিষ্ট প্যারামিটার (যেমন,
userId) সম্বলিত একটি অনুরোধ গ্রহণ করুন। সংযুক্ত কন্টেন্টUserID,HWID, বা আপনার প্রকল্পে সেট আপ করা যেকোনো কাস্টম ট্যাগ সমর্থন করে। - প্রয়োজনীয় ডেটা সহ একটি JSON প্রতিক্রিয়া ফেরত দিন। এই কন্টেন্টটি তারপর বার্তাগুলিতে গতিশীলভাবে সন্নিবেশ করা যেতে পারে।
ধাপ ২. Pushwoosh-এ সংযুক্ত কন্টেন্ট সহ একটি প্রিসেট তৈরি করুন
Anchor link to- পুশ বা ইমেল কন্টেন্ট এডিটর-এ, বার্তা ক্ষেত্রে সংযুক্ত কন্টেন্ট সিনট্যাক্স সন্নিবেশ করান।
উদাহরণ
{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :save result %}সিনট্যাক্স ব্রেকডাউন
connected_content | নির্দিষ্ট ব্যাকএন্ড URL থেকে JSON ডেটা নিয়ে আসে। |
http://your-backend-url.com | ব্যাকএন্ড এন্ডপয়েন্ট যা JSON ফরম্যাটে প্রয়োজনীয় ডেটা ফেরত দেয়। |
userId={{ ${userid} }} | একটি ডাইনামিক কোয়েরি প্যারামিটার যা ব্যবহারকারী আইডি ব্যাকএন্ডে পাস করে। |
:save result | Liquid টেমপ্লেটে ব্যবহারের জন্য আনা JSON প্রতিক্রিয়াটি result ভেরিয়েবলে সংরক্ষণ করে |

প্রমাণীকরণ (ঐচ্ছিক)
যদি আপনার ব্যাকএন্ড পরিষেবার জন্য প্রমাণীকরণের প্রয়োজন হয়, আপনি নিরাপদ অ্যাক্সেস নিশ্চিত করতে সংযুক্ত কন্টেন্ট অনুরোধে একটি API কী বা টোকেন অন্তর্ভুক্ত করতে পারেন।
{% connected_content http://your-backend-url.com?userId={{ ${userid} }}&auth=YOUR_API_KEY :save result %}সংযুক্ত কন্টেন্টে ট্যাগ ব্যবহার করা
কাস্টম ট্যাগ অন্তর্ভুক্ত করতে, সেগুলিকে সংযুক্ত কন্টেন্ট অনুরোধে কোয়েরি প্যারামিটার হিসাবে সন্নিবেশ করান ({{ tag_name }})।
{% connected_content http://your-backend-url.com?userId={{ ${userid} }}{{ Language }} :save result %}- এরপর, পুনরুদ্ধার করা ডেটা অন্তর্ভুক্ত করে বার্তার টেক্সট যোগ করুন, এইভাবে:
আরে, {{userid}}, আপনার ব্যক্তিগত প্রোমো কোড নিন - {{result.code}}
- বার্তার কন্টেন্ট চূড়ান্ত করার এবং প্রিসেট সেটিংস কনফিগার করার পরে, এটি প্রচারাভিযানে পুনরায় ব্যবহারের জন্য সংরক্ষণ করুন।
ধাপ ৩. কনফিগার করা প্রিসেট ব্যবহার করে একটি বার্তা পাঠান
Anchor link toএককালীন পুশ বা ইমেল ফর্ম বা গ্রাহক যাত্রা ব্যবহার করে এই প্রিসেট সহ একটি বার্তা পাঠান।