# ওয়েব পুশ কনফিগারেশন

Pushwoosh দিয়ে ওয়েব পুশ নোটিফিকেশন পাঠানো শুরু করতে, আপনাকে আপনার ওয়েব পুশ প্ল্যাটফর্ম কনফিগার করতে হবে এবং ব্যবহারকারীদের দেখানো সাবস্ক্রিপশন প্রম্পট সক্রিয় করতে হবে।

<Aside type="caution" title="গুরুত্বপূর্ণ">
নিশ্চিত করুন যে **ওয়েব পুশ SDK সঠিকভাবে আপনার ওয়েবসাইটে ইন্টিগ্রেটেড** আছে। ব্যবহারকারীদের সাবস্ক্রাইব করতে এবং নোটিফিকেশন পেতে অনুমতি দেওয়ার জন্য এটি একটি প্রয়োজনীয় পদক্ষেপ। [আরও জানুন](/bn/developer/pushwoosh-sdk/web-push-notifications/web-push-sdk-30/)
</Aside>

কনফিগারেশন শুরু করতে, **Settings > Platform Configuration > Web Push Notifications**-এ যান এবং **Configure**-এ ক্লিক করুন।

![ওয়েব পুশ নোটিফিকেশন কনফিগার করুন](/web-configuration-1.webp)


## সমস্ত ব্রাউজারের জন্য ওয়েব পুশ কনফিগার করুন (পুরানো Safari সংস্করণ ছাড়া)

এই কনফিগারেশনটি সমস্ত আধুনিক ব্রাউজারের জন্য প্রযোজ্য, যার মধ্যে Safari-এর সর্বশেষ সংস্করণও রয়েছে, যা এখন ওয়েব পুশ নোটিফিকেশন স্থানীয়ভাবে সমর্থন করে।

**দ্রষ্টব্য:** পুরানো Safari সংস্করণ (macOS 10.14–12) এর জন্য একটি পৃথক সেটআপ প্রয়োজন। আপনি এটি একটি ডেডিকেটেড বিভাগে কনফিগার করতে পারেন। আরও জানুন

সেটআপ শুরু করতে, **All browsers configuration**-এর অধীনে **Configure**-এ ক্লিক করুন।

![সমস্ত ব্রাউজারের জন্য ওয়েব পুশ কনফিগার করুন](/web-configuration-2.webp)

কনফিগারেশন উইন্ডোতে, নিম্নলিখিত বিকল্পগুলির মধ্যে একটি বেছে নিন:

* **একটি নতুন পুশ কনফিগারেশন তৈরি করুন**
  যদি আপনি আগে অন্য কোনো পরিষেবার মাধ্যমে ওয়েব পুশ নোটিফিকেশন সেট আপ না করে থাকেন তবে এটি প্রস্তাবিত। Pushwoosh স্বয়ংক্রিয়ভাবে একটি নতুন VAPID কী পেয়ার তৈরি করবে।

* **বিদ্যমান কনফিগারেশন ব্যবহার করুন**
  এই বিকল্পটি বেছে নিন যদি আপনার কাছে ইতিমধ্যে VAPID কী থাকে, উদাহরণস্বরূপ, Firebase থেকে, এবং ব্যবহারকারীদের আবার সাবস্ক্রাইব করতে না বলে সেগুলি ব্যবহার চালিয়ে যেতে চান।


### একটি নতুন পুশ কনফিগারেশন তৈরি করুন

যদি আপনি আগে অন্য কোনো পরিষেবার মাধ্যমে ওয়েব পুশ নোটিফিকেশন সেট আপ না করে থাকেন তবে **Create a new push configuration** বেছে নিন। Pushwoosh স্বয়ংক্রিয়ভাবে আপনার জন্য প্রয়োজনীয় VAPID (Voluntary Application Server Identification) কী তৈরি করবে।

<details>
  <summary>VAPID কী কী?</summary>
VAPID কী হলো একটি পাবলিক-প্রাইভেট কী পেয়ার যা ওয়েব পুশ প্রোটোকলে অ্যাপ্লিকেশন সার্ভারকে প্রমাণীকরণের জন্য ব্যবহৃত হয় যখন ওয়েব ব্রাউজারে পুশ নোটিফিকেশন পাঠানো হয়। **পাবলিক কী** ব্রাউজারের সাথে শেয়ার করা হয় যখন একজন ব্যবহারকারী নোটিফিকেশনের জন্য সাবস্ক্রাইব করে। **প্রাইভেট কী** আপনার সার্ভারে থাকে এবং আপনার পাঠানো প্রতিটি বার্তা সুরক্ষিতভাবে সাইন করতে ব্যবহৃত হয়।
</details>

কী তৈরি এবং প্রয়োগ করতে **Configure**-এ ক্লিক করুন।

![একটি নতুন পুশ কনফিগারেশন তৈরি করুন](/web-configuration-3.webp) 

একবার তৈরি হয়ে গেলে, Pushwoosh স্বয়ংক্রিয়ভাবে SDK কনফিগারেশনে এই কীগুলি ব্যবহার করবে। [ওয়েব পুশ SDK ইন্টিগ্রেট করার বিষয়ে আরও জানুন](/bn/developer/pushwoosh-sdk/web-push-notifications/web-push-sdk-30/)

### বিদ্যমান কনফিগারেশন ব্যবহার করুন

যদি আপনার কাছে ইতিমধ্যে VAPID কী থাকে (যেমন Firebase-এর মাধ্যমে তৈরি করা), আপনি Pushwoosh-এ ওয়েব পুশ নোটিফিকেশন সেট আপ করতে সেগুলি পুনরায় ব্যবহার করতে পারেন।

এর জন্য:

1. **Use existing configuration** নির্বাচন করুন।

2. **Web Push Certificate** ফিল্ডে, আপনার **VAPID public key** লিখুন।

3. **Web Push Private Key** ফিল্ডে, আপনার **VAPID private key** লিখুন।

4. সেটিংস সংরক্ষণ এবং প্রয়োগ করতে **Configure**-এ ক্লিক করুন।

![বিদ্যমান কনফিগারেশন ব্যবহার করুন](/web-configuration-4.webp)

#### Firebase-এ VAPID কী কীভাবে খুঁজে পাবেন

আপনি যদি Firebase থেকে মাইগ্রেট করছেন এবং আপনার বিদ্যমান VAPID কী পুনরায় ব্যবহার করতে চান, তবে সেগুলি খুঁজে পেতে এই পদক্ষেপগুলি অনুসরণ করুন।

##### ওয়েব পুশ সার্টিফিকেট

1. **Firebase**-এ, **Project Settings → Cloud Messaging**-এ নেভিগেট করুন।
2. **Web Configuration** বিভাগে স্ক্রোল ডাউন করুন এবং বিদ্যমান কী পেয়ারটি কপি করুন।

![ওয়েব পুশ সার্টিফিকেট খুঁজুন](/web-configuration-6.webp)
3. এটি Pushwoosh ওয়েব কনফিগারেশন ফর্মের **Web Push Certificate** ফিল্ডে পেস্ট করুন।

![এটি **Web Push Certificate** ফিল্ডে পেস্ট করুন](/web-configuration-7.webp) 

##### ওয়েব পুশ প্রাইভেট কী 

1. **Firebase Console**-এ, **Project Settings → Cloud Messaging → Web Configuration**-এ যান।
2. কী পেয়ারের পাশে **Actions**-এর অধীনে **তিন-ডট মেনু**-তে ক্লিক করুন এবং **Show private key** নির্বাচন করুন। ওয়েব পুশ নোটিফিকেশন সঠিকভাবে কাজ করার জন্য এই কী অপরিহার্য।

![ওয়েব পুশ প্রাইভেট কী খুঁজুন](/web-configuration-8.webp)

3. প্রদর্শিত কী আপনার ক্লিপবোর্ডে কপি করুন।

4. **Pushwoosh Web Configuration** ফর্মে, এটি **Web Push Private Key** ফিল্ডে পেস্ট করুন।

![ওয়েব পুশ প্রাইভেট কী পেস্ট করুন](/web-configuration-9.webp)

5. আপনার পরিবর্তনগুলি সংরক্ষণ করতে **Apply**-এ ক্লিক করুন।

### ওয়েব পুশ কনফিগারেশন পুনরায় কনফিগার করুন

যদি আপনি ইতিমধ্যে ওয়েব পুশ নোটিফিকেশন সেট আপ করে থাকেন কিন্তু আপনার ক্রেডেনশিয়াল আপডেট করতে চান (যেমন আপনার VAPID কী প্রতিস্থাপন করা), তবে এটি কীভাবে করবেন তা এখানে দেওয়া হলো:

1. **All browsers configuration**-এর অধীনে **Reconfigure**-এ ক্লিক করুন।

![ওয়েব পুশ কনফিগারেশন পুনরায় কনফিগার করুন](/web-configuration-5.webp)

2. যে পপআপটি প্রদর্শিত হবে, সেখানে আপনার নতুন VAPID কী লিখুন:

   * **Web Push Certificate**: আপনার নতুন পাবলিক VAPID কী
   * **Web Push Private Key**: আপনার নতুন প্রাইভেট VAPID কী

3. পরিবর্তনগুলি সংরক্ষণ করতে **Configure**-এ ক্লিক করুন।

<Aside type="caution" title="গুরুত্বপূর্ণ">
আপনার VAPID কী প্রতিস্থাপন করা আপনার সম্পূর্ণ ওয়েব পুশ সেটআপকে প্রভাবিত করে এবং সঠিকভাবে পরিচালনা না করলে নোটিফিকেশন ডেলিভারিতে ব্যাঘাত ঘটাতে পারে। শুধুমাত্র যদি এটি সত্যিই প্রয়োজনীয় হয় তবেই কী পরিবর্তন করুন, এবং কোনো আপডেট করার আগে এর প্রভাব সম্পর্কে নিশ্চিত হন।
</Aside>

### সাবস্ক্রিপশন প্রম্পট কনফিগার করুন

পুশ নোটিফিকেশন পাঠাতে, ব্যবহারকারীদের অবশ্যই ব্রাউজারের সিস্টেম-স্তরের প্রম্পটের মাধ্যমে স্পষ্টভাবে অনুমতি দিতে হবে। এই অনুমতি ছাড়া, নোটিফিকেশন ডেলিভারি করা যাবে না।

সাম্প্রতিক Chrome এবং Firefox নীতির পরিবর্তনের কারণে, নেটিভ পারমিশন পপ-আপ শুধুমাত্র ব্যবহারকারী পৃষ্ঠার সাথে ইন্টারঅ্যাক্ট করার পরেই (যেমন, একটি বোতামে ক্লিক করে) প্রদর্শিত হতে পারে। এই প্রয়োজনীয়তা পূরণ করতে, Pushwoosh ডিফল্টভাবে একটি [সাবস্ক্রিপশন প্রম্পট উইজেট](/bn/developer/guides/messaging-channels/subscription-prompt/) প্রদর্শন করে। এই উইজেটটি ব্যবহারকারীদের অপ্ট-ইন করতে উৎসাহিত করে এবং, সম্মতির পরে, নেটিভ ব্রাউজার প্রম্পট ট্রিগার করে।
<Aside type="tip">
একটি ভালভাবে ডিজাইন করা প্রম্পট যা নোটিফিকেশনের মূল্য ব্যাখ্যা করে (যেমন, "সর্বশেষ খবর এবং আপডেট পান") অপ্ট-ইন হার উল্লেখযোগ্যভাবে উন্নত করতে পারে।
</Aside>

প্রম্পটের টেক্সট এবং চেহারা কাস্টমাইজ করতে, **Settings**-এ ক্লিক করুন।
![সাবস্ক্রিপশন প্রম্পট কনফিগার করুন](/web-configuration-16.webp) 

#### প্রম্পটের প্রকার

দুটি ধরণের সাবস্ক্রিপশন প্রম্পট উপলব্ধ রয়েছে:

* **ডিফল্ট উইজেট**
  Pushwoosh দ্বারা সরবরাহ করা এবং স্বয়ংক্রিয়ভাবে প্রদর্শিত হয়। [ডিফল্ট উইজেট কীভাবে কাস্টমাইজ করবেন তা জানুন](/bn/developer/guides/messaging-channels/subscription-prompt/default-widget/)।

* **কাস্টম উইজেট**
  আপনার নিজের উইজেট ডিজাইন ব্যবহার করুন। [আরও জানুন](/bn/developer/guides/messaging-channels/subscription-prompt/custom-subscription-widget/) 

> **দ্রষ্টব্য:** প্ল্যাটফর্ম সীমাবদ্ধতার কারণে, উইজেটের পরিবর্তনগুলি প্রদর্শিত হতে ৩০ মিনিট পর্যন্ত সময় লাগতে পারে। যদি পরিবর্তনগুলি প্রতিফলিত না হয়, তবে Pushwoosh সাপোর্ট টিমের সাথে যোগাযোগ করুন।

### Safari কনফিগারেশন (macOS 10.14–12)

Safari-এর পুরানো সংস্করণগুলিতে (macOS 10.14–12) পুশ নোটিফিকেশন সমর্থন করার জন্য, আপনাকে আপনার Apple Developer ক্রেডেনশিয়াল ব্যবহার করে একটি পৃথক কনফিগারেশন প্রক্রিয়া সম্পন্ন করতে হবে। এই পদক্ষেপটি শুধুমাত্র এই পুরানো সংস্করণগুলির জন্য প্রয়োজন কারণ নতুন Safari সংস্করণগুলি (macOS Ventura এবং পরবর্তী) স্ট্যান্ডার্ড ওয়েব পুশ সেটআপ সমর্থন করে যা [সমস্ত ব্রাউজার কনফিগারেশন](#configure-web-push-for-all-browsers-except-older-safari-versions)-এ অন্তর্ভুক্ত।

#### Apple থেকে প্রয়োজনীয় ক্রেডেনশিয়াল সংগ্রহ করুন


1. Apple Developer Portal-এর [Certificates, Identifiers & Profiles section](https://developer.apple.com/account/overview.action)-এ যান।

2. নতুন সার্টিফিকেট যোগ করুন।

<img src="/web-configuration-13.webp" alt="Apple Developer Portal-এ নতুন সার্টিফিকেট যোগ করার বিকল্প"/>

3. **Website Push ID Certificate** টাইপ নির্বাচন করুন এবং **Continue**-এ ক্লিক করুন।

<img src="/web-configuration-14.webp" alt="Apple Developer Portal-এ Website Push ID Certificate টাইপ নির্বাচন"/>

4. **Website Push ID** নির্বাচন করুন - আপনার অনন্য রিভার্স-ডোমেইন স্ট্রিং, যেমন _web.com.example.domain_ (অবশ্যই _web._ দিয়ে শুরু হতে হবে)।
<img src="/configure-project-safari-configuration-4.webp" alt="Apple Developer Portal-এ Website Push ID নির্বাচন"/>

5. একটি **Certificate Signing Request** আপলোড করুন। Certificate Signing Request তৈরি করার বিষয়ে আরও জানতে, অনুগ্রহ করে [Developer Account Help article](https://developer.apple.com/help/account/create-certificates/create-a-certificate-signing-request) দেখুন।

6. এরপরে, পুশ নোটিফিকেশন সার্টিফিকেটটি ডাউনলোড করুন।

<img src="/web-configuration-15.webp" alt="Apple Developer Portal থেকে পুশ নোটিফিকেশন সার্টিফিকেট ডাউনলোড করুন"/>

<Aside type="note">
আপনি Apple থেকে যে সার্টিফিকেটটি ডাউনলোড করেন তা একটি **.cer** ফাইল। Pushwoosh কনফিগার করার জন্য প্রয়োজনীয় **.p12** ফাইল পেতে, আপনাকে একটি প্রাইভেট কী এক্সপোর্ট করতে হবে। বিস্তারিত তথ্যের জন্য [iOS Configuration guide](/bn/developer/first-steps/connect-messaging-services/ios-configuration/ios-platform-configuration/) দেখুন। 
</Aside>


#### Pushwoosh-এ Safari কনফিগার করুন

1. **Safari Configuration**-এর অধীনে **Configure**-এ ক্লিক করুন।

![Pushwoosh-এ Safari কনফিগার করুন](/web-configuration-11.webp)

2. কনফিগারেশন ফর্মে নিম্নলিখিত ফিল্ডগুলি পূরণ করুন:

|                 |                                                                                                           |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------------- |
| **Website name**         | আপনার ওয়েবসাইটের নাম যা পুশ প্রম্পটে প্রদর্শিত হয়।                                                              |
| **Allowed domains**      | নোটিফিকেশন অনুমতির অনুরোধ করার জন্য অনুমোদিত ডোমেনের তালিকা (প্রতি লাইনে একটি)।                                             |
| **URL template**         | ব্যবহারকারী নোটিফিকেশনে ক্লিক করলে যে URL খোলা হবে। ডাইনামিক মান সন্নিবেশ করার জন্য `%@`-এর মতো প্লেসহোল্ডার সমর্থন করে। উদাহরণ: `https://yourwebsite.com/%@` |
| **Website icon**         | একটি বর্গাকার PNG ছবি (256×256 px) আপলোড করুন। Pushwoosh এটি বিভিন্ন ইন্টারফেসের জন্য স্বয়ংক্রিয়ভাবে রিসাইজ করে।                   |
| **Key file**             | আপনার Apple Developer অ্যাকাউন্ট থেকে এক্সপোর্ট করা `.p12` সার্টিফিকেট আপলোড করুন।                                              |
| **Private key password** | `.p12` ফাইল এক্সপোর্ট করার সময় ব্যবহৃত পাসওয়ার্ড।                                                                          |

![Safari কনফিগারেশন ফর্মটি পূরণ করুন](/web-configuration-12.webp)


3. আপনার পরিবর্তনগুলি সংরক্ষণ করতে **Configure**-এ ক্লিক করুন।

Pushwoosh স্বয়ংক্রিয়ভাবে আইকন সেট, ওয়েবসাইট JSON ডিকশনারি, এবং ম্যানিফেস্ট ফাইল সহ পুশ প্যাকেজ তৈরি করবে যা Safari সার্ভার থেকে অনুরোধ করে। আপনার প্রয়োজন হলে আপনি এটি ডাউনলোড করতে পারেন।

<Aside type="caution" title="গুরুত্বপূর্ণ">
যখন একজন ব্যবহারকারীকে পুশ নোটিফিকেশন পাওয়ার জন্য অনুমতি চাওয়া হয়, তখন Safari Pushwoosh-এর ওয়েব সার্ভার থেকে একটি `push package` অনুরোধ করে। প্যাকেজটিতে নোটিফিকেশন UI দ্বারা ব্যবহৃত ডেটা থাকে, যেমন আপনার ওয়েবসাইটের নাম এবং আইকন, সেইসাথে একটি ক্রিপ্টোগ্রাফিক স্বাক্ষর যা যাচাই করে যে আপনার নোটিফিকেশন একটি বিশ্বস্ত উৎস থেকে আসছে: আপনি। 

**পুশ প্যাকেজটি তার সমস্ত বিষয়বস্তু সহ প্রতিটি সাবস্ক্রাইব করা ব্যবহারকারীর দ্বারা রেজিস্ট্রেশনের সময় শুধুমাত্র একবার ডাউনলোড করা হয়, এবং ডিভাইসগুলিতে জোর করে আপডেট করা যায় না।**

 আপনার ওয়েবসাইটের জন্য প্রোডাকশনে Safari পুশ নোটিফিকেশন চালু করার সময় এটি বিবেচনা করুন। 
</Aside>