# Pushwoosh Outsystems প্লাগইন ক্লায়েন্ট অ্যাকশন

এই প্লাগইনটি পুশ নোটিফিকেশন ব্যবস্থাপনার সুবিধার্থে ক্লায়েন্ট অ্যাকশনের একটি সেট প্রদান করে। এই অ্যাকশনগুলি আপনাকে ডিভাইস রেজিস্টার এবং আনরেজিস্টার করতে, ট্যাগ সেট করতে এবং পেতে, ইনবক্স মেসেজ পরিচালনা করতে এবং আরও অনেক কিছু করতে দেয়।

## Pushwoosh প্লাগইন ক্লায়েন্ট অ্যাকশন

### CheckPushwooshPlugin

Pushwoosh প্লাগইন বর্তমানে উপলব্ধ কিনা তা যাচাই করে।

#### আউটপুট প্যারামিটার

| IsAvailable | প্লাগইনটি ব্যবহারের জন্য উপলব্ধ হলে true রিটার্ন করে, অন্যথায় false                                                                                                  |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error       | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

#### ব্যবহারের উদাহরণ

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-1.webp" alt="CheckPushwooshPlugin অ্যাকশন"/>

### RegisterDevice

পুশ নোটিফিকেশনের জন্য একটি ডিভাইস রেজিস্টার করে এবং একটি পুশ টোকেন পুনরুদ্ধার করে।

#### ইনপুট প্যারামিটার

| ApplicationCode | টেক্সট, আপনার অ্যাকাউন্ট সেটিংস থেকে প্রাপ্ত Pushwoosh অ্যাপ্লিকেশন কোড। |
| --------------- | ------------------------------------------------------------------------- |



#### আউটপুট প্যারামিটার

| RegisterToken | ডিভাইসের জন্য Google বা Apple থেকে প্রাপ্ত টোকেন                                                                                                               |
| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Success       | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| Error         | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### UnregisterDevice

পুশ নোটিফিকেশন গ্রহণ থেকে একটি ডিভাইস আনরেজিস্টার করে।

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### GetDeviceID

ডিভাইস আইডি পুনরুদ্ধার করে, যা একটি অনন্য শনাক্তকারী হওয়া উচিত।

#### আউটপুট প্যারামিটার

| DeviceHwid | ডিভাইসের অনন্য শনাক্তকারী।                                                                                                          |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| Error      | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন কোনো ত্রুটি ছিল তখন সেট করা হয়। |

### GetDeviceType

ডিভাইসের ধরন (Android, iOS, বা Windows) পায়।

#### আউটপুট প্যারামিটার

| DeviceTypeId | এই ডিভাইস প্রকারের শনাক্তকারী। |
| ------------ | ----------------------------------- |

### GetTags

Pushwoosh থেকে ট্যাগ ডেটা নিয়ে আসে।

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |
| Tags    | Key, Value Record List রিটার্ন করে যা এই ডিভাইসে নির্ধারিত সমস্ত ট্যাগ ধারণ করে।                                                                                      |

#### ব্যবহারের উদাহরণ

1. Pushwoosh থেকে ট্যাগ ডেটা আনার জন্য **GetTags** অ্যাকশনটি চালু করুন।
2. ফেরত আসা ট্যাগগুলি **GetTags.Tags** তালিকার মাধ্যমে অ্যাক্সেস করা যায়।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-2.webp" alt=""/>

3. প্রতিটি ট্যাগের কী এবং মান লগ করতে **LogMessage** অ্যাকশনটি ব্যবহার করুন।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-3.webp" alt=""/>

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-4.webp" alt=""/>

### PostEvent

আপনার অ্যাপ্লিকেশনে একটি নির্দিষ্ট ইভেন্ট ঘটলে Pushwoosh-এ একটি বার্তা পাঠায়।

#### ইনপুট প্যারামিটার

| EventName       | টেক্সট, ইভেন্টের নাম                                                                                                                                                    |
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| EventAttributes | Key, Value Record List, Pushwoosh-এ অতিরিক্ত ইভেন্ট ডেটা পাঠাতে ব্যবহৃত হয় (যেমন "UserLogin" অ্যাকশনের জন্য আপনি লগইন ডেটা পাঠাতে চাইতে পারেন, যেমন - `{"username":"John"}`) |

আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

#### ব্যবহারের উদাহরণ

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-5.webp" alt=""/>

**1. Assign**

ইভেন্টের জন্য ডেটা সংজ্ঞায়িত করতে কী-ভ্যালু পেয়ার সেট আপ করুন। উদাহরণস্বরূপ, KeyValue1.AttributeName হিসেবে "test1" এবং KeyValue1.Value হিসেবে "test1value"। একইভাবে, উপযুক্ত অ্যাট্রিবিউট নাম এবং মান দিয়ে KeyValue2 সংজ্ঞায়িত করুন।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-6.webp" alt=""/>

2. ইভেন্টের সাথে যুক্ত করার জন্য অ্যাট্রিবিউটের তালিকা তৈরি করুন।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-7.webp" alt=""/>

3. অবশেষে, **PostEvent** অ্যাকশনটি কনফিগার করুন।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-8.webp" alt=""/>

### SetBadgeNumber

অ্যাপ্লিকেশন আইকন ব্যাজ নম্বর সেট করে।

#### ইনপুট প্যারামিটার

| BadgeNumber | Integer, আইকন ব্যাজ নম্বর। |
| ----------- | --------------------------- |

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### SetLanguage

ডিফল্ট সিস্টেম ভাষার পরিবর্তে কাস্টম অ্যাপ্লিকেশন ভাষা সেট করে।

#### ইনপুট প্যারামিটার

| Language | টেক্সট, ২-অক্ষরের ISO ফরম্যাটে কাস্টম অ্যাপ্লিকেশন ভাষা (যেমন, "en", "es", "fr") |
| -------- | --------------------------------------------------------------------------------- |

### SetTags

Pushwoosh-এ ট্যাগ এবং তাদের মান পাঠায়।

#### ইনপুট প্যারামিটার

| Tags | TagName, TagValue Record List যা আপনি পাঠাতে চান এমন সমস্ত ট্যাগ ধারণ করে। TagName টাইপ সবসময় Text হওয়া উচিত, যখন TagValue Text, Integer, Boolean, Date, ইত্যাদি হতে পারে। |
| ---- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

#### ব্যবহারের উদাহরণ

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-9.webp" alt=""/>

1. ট্যাগের মান নির্ধারণ করুন। নিচের উদাহরণে, দুটি ট্যাগ আছে:

* Tag1 যার নাম testTag এবং এর মান বর্তমান তারিখে সেট করা হয়েছে।
* Tag2 যার নাম testTag2 এবং এর মান True তে সেট করা হয়েছে।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-10.webp" alt=""/>

2. তারপর, একটি তালিকায় ট্যাগ যুক্ত করুন। এই উদাহরণে:

* ListAppend3 LocalTag তালিকায় Tag1 যোগ করে।
* ListAppend4 LocalTag তালিকায় Tag2 যোগ করে।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-11.webp" alt=""/>

3. প্রয়োজনীয় ট্যাগ দিয়ে তালিকাটি পূরণ করার পরে, এই তালিকাটি Pushwoosh-এ পাঠাতে **SetTags** ক্লায়েন্ট অ্যাকশনটি ব্যবহার করুন।

<img src="/outsystems-pushwoosh-outsystems-plugin-client-actions-12.webp" alt=""/>

### SetUserId

এই ডিভাইসে একটি কাস্টম User ID নির্ধারণ করে।

#### ইনপুট প্যারামিটার

| UserID | টেক্সট, কাস্টম User ID। |
| ------ | --------------------- |

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

## Pushwoosh ইনবক্স ক্লায়েন্ট অ্যাকশন

ইনবক্সের সাথে কাজ করার প্রক্রিয়াটি নিম্নরূপ:

1. InboxMessage অবজেক্টের একটি তালিকা লোড করুন।
2. ইনবক্স ভিউ রেন্ডার করতে এই অবজেক্টগুলি ব্যবহার করুন।
3. নিচে তালিকাভুক্ত অ্যাকশনগুলি সম্পাদন করুন, অথবা নিচে বর্ণিত অ্যাকশনগুলি ব্যবহার করে এই অবজেক্টগুলি মুছুন।

| code              | টেক্সট                   | একটি ইনবক্স নোটিফিকেশনের অনন্য আইডি।                                                                                                                                                                                                                                                                                               |
| ----------------- | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| title             | টেক্সট                   | নোটিফিকেশনের শিরোনাম।                                                                                                                                                                                                                                                                                                               |
| message           | টেক্সট                   | নোটিফিকেশনের বার্তা।                                                                                                                                                                                                                                                                                                             |
| imageUrl          | টেক্সট                   | একটি নোটিফিকেশনের সাথে সংযুক্ত কাস্টম ছবির URL।                                                                                                                                                                                                                                                                                 |
| sendDate          | <p>তারিখ</p><p>সময়</p> | একটি নোটিফিকেশন পাঠানোর সময়কে প্রতিনিধিত্ব করে।                                                                                                                                                                                                                                                                                 |
| type              | Integer                | <p>নোটিফিকেশনের ধরন।</p><p> সম্ভাব্য মান:</p><ul><li>0 - নিয়মিত নোটিফিকেশন</li><li>1 - রিচ মিডিয়া নোটিফিকেশন</li><li>2 - URL নোটিফিকেশন</li><li>3 - ডিপ লিঙ্ক নোটিফিকেশন</li></ul>                                                                                                                                |
| bannerUrl         | টেক্সট                   | একটি অ্যান্ড্রয়েড ব্যানারের URL ধারণ করে।                                                                                                                                                                                                                                                                                                |
| customData        | Key, Value Record List | কাস্টম ডেটা হিসেবে পাস করা প্যারামিটারের একটি তালিকা ধারণ করে।                                                                                                                                                                                                                                                                              |
| isRead            | Boolean                | ইনবক্স নোটিফিকেশন পড়া হলে True।                                                                                                                                                                                                                                                                                               |
| isActionPerformed | Boolean                | <ul><li><strong>True</strong> যদি নোটিফিকেশন অ্যাকশন সম্পাদিত হয়। </li><li>নিয়মিত নোটিফিকেশনের জন্য, <strong>true</strong> যদি একটি নোটিফিকেশন পড়া হয়। </li><li>রিচ মিডিয়ার জন্য, <strong>true</strong> যদি রিচ মিডিয়া উপস্থাপন করা হয়। </li><li>URL এবং ডিপ লিঙ্কের জন্য, <strong>true</strong> যদি URL/ডিপ লিঙ্ক খোলা হয়।</li></ul> |

### LoadMessages

Pushwoosh থেকে ইনবক্স নোটিফিকেশন নিয়ে আসে।

#### আউটপুট প্যারামিটার

| InboxMessages | InboxMessage List, সমস্ত ইনবক্স মেসেজের তালিকা।                                                                                                                   |
| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Success       | সবকিছু প্রত্যাশিতভাবে চললে **true** রিটার্ন করে, কোনো ত্রুটি থাকলে **false**।                                                                                 |
| Error         | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### ReadMessage

ইনবক্স মেসেজটিকে পড়া হিসেবে চিহ্নিত করে।

#### ইনপুট প্যারামিটার

| MessageCode | টেক্সট, একটি InboxMessage-এর কোড (LoadMessages-এ একটি InboxMessage-এর প্যারামিটার হিসেবে প্রাপ্ত) |
| ----------- | ------------------------------------------------------------------------------------------ |

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে True, কোনো ত্রুটি থাকলে false।                                                                                                 |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### PerformAction

নির্দিষ্ট ইনবক্স মেসেজের জন্য অ্যাকশন সম্পাদন করে (যেমন, ব্রাউজারে URL খোলা)।

#### ইনপুট প্যারামিটার

| MessageCode | টেক্সট, একটি InboxMessage-এর কোড (LoadMessages-এ একটি InboxMessage-এর প্যারামিটার হিসেবে প্রাপ্ত) |
| ----------- | ------------------------------------------------------------------------------------------ |

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### DeleteMessage

ইনবক্স থেকে একটি মেসেজ সরিয়ে দেয়।

#### ইনপুট প্যারামিটার

| MessageCode | টেক্সট, একটি InboxMessage-এর কোড (LoadMessages-এ একটি InboxMessage-এর প্যারামিটার হিসেবে প্রাপ্ত) |
| ----------- | ------------------------------------------------------------------------------------------ |

#### আউটপুট প্যারামিটার

| Success | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Error   | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### TotalMessagesCount

ইনবক্স মেসেজের মোট সংখ্যা রিটার্ন করে।

#### আউটপুট প্যারামিটার

| MessagesCount | Integer, ইনবক্স মেসেজের মোট সংখ্যা।                                                                                                                         |
| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Success       | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| Error         | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### UnreadMessagesCount

অপঠিত ইনবক্স মেসেজের সংখ্যা রিটার্ন করে।

#### আউটপুট প্যারামিটার

| UnreadMessagesCount | Integer, অপঠিত ইনবক্স মেসেজের সংখ্যা।                                                                                                                        |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Success             | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| Error               | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |

### MessagesWithNoActionPerformedCount

কোনো অ্যাকশন সম্পাদিত হয়নি এমন ইনবক্স মেসেজের সংখ্যা রিটার্ন করে।

#### আউটপুট প্যারামিটার

| MessagesWithNoActionPerformedCount | Integer, কোনো অ্যাকশন সম্পাদিত হয়নি এমন ইনবক্স মেসেজের সংখ্যা।                                                                                                      |
| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Success                            | সবকিছু প্রত্যাশিতভাবে চললে true রিটার্ন করে, কোনো ত্রুটি থাকলে false।                                                                                         |
| Error                              | একটি ত্রুটি কোড এবং ত্রুটির বার্তা সহ একটি ত্রুটি থাকে, যা কোনো ত্রুটির বিবরণ দেয়। শুধুমাত্র যখন Success আউটপুট প্যারামিটার false হয় তখন সেট করা হয়। |