# आउटसिस्टम्स

## Pushwoosh प्लगइन इंस्टॉल करना

[OutSystems Forge](https://www.outsystems.com/forge/component-overview/1556/pushwoosh-plugin) से Pushwoosh प्लगइन इंस्टॉल करके शुरू करें। ऐसा करने का सबसे तेज़ तरीका यह है कि आप अपने डेवलपमेंट एनवायरनमेंट में आउटसिस्टम्स टैब पर जाएँ और इसे वहाँ से इंस्टॉल करें।

### Pushwoosh को कॉन्फ़िगर करना

आपको उन सभी प्लेटफ़ॉर्म के लिए Pushwoosh को कॉन्फ़िगर करना होगा जिनका आप समर्थन करेंगे। एक बार जब आपका कॉन्फ़िगरेशन हो जाता है, तो आपके पास Pushwoosh से एक एप्लीकेशन कोड होगा जिसका उपयोग आपके प्लगइन के साथ किया जाएगा।

#### iOS के लिए

जानें कि [iOS के लिए Pushwoosh को कैसे कॉन्फ़िगर करें](/hi/developer/first-steps/connect-messaging-services/ios-configuration/ios-platform-configuration/)।

#### Android के लिए

जानें कि [Android के लिए Pushwoosh को कैसे कॉन्फ़िगर करें](/hi/developer/first-steps/connect-messaging-services/android-configuration/android-firebase-configuration/)।

### अपने एप्लीकेशन में Pushwoosh प्लगइन जोड़ना

1. अपने एप्लीकेशन में, Pushwoosh प्लगइन का संदर्भ जोड़ने के लिए "Manage Dependencies…" का उपयोग करें।

<img src="/outsystems.webp" alt=""/>

2. "PushwooshNotifications" ब्लॉक को इसमें जोड़ें:

   - "Layout" ब्लॉक में यदि आपके एप्लीकेशन में कोई लॉगिन नहीं है
   - "LayoutBlank" ब्लॉक में यदि आपके एप्लीकेशन में लॉगिन है

   "PushwooshNotifications" ब्लॉक जोड़ते समय, इसे प्लेसहोल्डर्स के अंदर जोड़ने से बचें, क्योंकि कुछ केवल डिज़ाइन समय पर उपलब्ध होते हैं और, रनटाइम पर, Pushwoosh काम नहीं करेगा।

3. PushwooshNotifications में निम्नलिखित पैरामीटर सेट करें:

   - **PushwooshApplicationCode:** Pushwoosh कोड जो आपने Pushwoosh में एप्लीकेशन बनाने के बाद प्राप्त किया था।
   - **FCMSenderId:** पहचान संख्या जो आपने Android को कॉन्फ़िगर करते समय प्राप्त की थी। यदि आपका एप्लीकेशन केवल iOS के लिए उपलब्ध है तो आप इसे खाली छोड़ सकते हैं।
   - **NotificationReceivedEvent (वैकल्पिक):** एक इवेंट जो तब कॉल किया जाता है जब एप्लीकेशन फोरग्राउंड स्टेट में होने पर एक नोटिफिकेशन प्राप्त होता है।
   - **NotificationOpenedEvent (वैकल्पिक):** एक इवेंट जो तब कॉल किया जाता है जब कोई उपयोगकर्ता अपने डिवाइस पर एक नोटिफिकेशन पर क्लिक करता है।

यदि आप अपने Android ऐप में Pushwoosh प्लगइन का उपयोग कर रहे हैं, तो निम्नलिखित करें:

1. Firebase से [`google-services.json` प्राप्त करें](https://support.google.com/firebase/answer/7015592)। Google सेवाओं से पैकेज का नाम बनाए जा रहे आउटसिस्टम्स एप्लीकेशन के ऐप पहचानकर्ता से मेल खाना चाहिए।
2. रूट में `google-services.json` वाली एक ज़िप फ़ाइल बनाएँ।
3. पिछले चरण से "google-services.zip" फ़ाइल को अपने आउटसिस्टम्स एप्लीकेशन पर अपलोड करें और सुनिश्चित करें कि:
   - "Name" को "google-services.zip" के रूप में सेट करें
   - "Deploy to Target Directory" को "google-services" के रूप में सेट करें

<img src="/outsystems2.webp" alt=""/>

आपके डिवाइस को पुश नोटिफिकेशन प्राप्त करने के लिए, आपको इसे पंजीकृत करना होगा। यदि आपके उपयोगकर्ताओं को एप्लीकेशन का उपयोग करने के लिए लॉग इन करने की आवश्यकता है, तो "Login" स्क्रीन पर जाएँ और "Login" क्रिया को संपादित करें।

<img src="/outsystems3.webp" alt=""/>


"DoLogin" क्रिया के बाद डिवाइस को पंजीकृत करने के लिए कोड जोड़ें। यह कुछ इस तरह दिखना चाहिए:

<img src="/outsystems4.webp" alt=""/>

यदि आपके एप्लीकेशन में लॉगिन नहीं है, तो आप इस कोड को `PushwooshNotifications` ब्लॉक में `OnInitializeOver` इवेंट में जोड़ सकते हैं।

<img src="/outsystems5.webp" alt=""/>

इस इवेंट हैंडलर में, `RegisterDevice` क्रिया को कॉल करें।

<img src="/outsystems6.webp" alt=""/>

यदि आप एक डेवलपर प्रमाणपत्र का उपयोग करके एक iOS मोबाइल ऐप बना रहे हैं, तो आपको अपने आउटसिस्टम्स मॉड्यूल की एक्सटेंसिबिलिटी कॉन्फ़िगरेशन प्रॉपर्टी में एक वरीयता जोड़ने की आवश्यकता होगी:

```json
{
  "preferences": {
    "global": [
      {
        "name": "aps-environment",
        "value": "development"
      }
    ]
  }
}
```

<img src="/outsystems7.webp" alt=""/>

यह वरीयता आपकी एंटाइटलमेंट फ़ाइल में जोड़ दी जाएगी ([Apple डेवलपर दस्तावेज़ीकरण](https://developer.apple.com/library/content/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/AboutEntitlements.html) में एंटाइटलमेंट के बारे में और जानें)।

यदि आप एक उत्पादन प्रमाणपत्र का उपयोग करके एक iOS मोबाइल ऐप बना रहे हैं, तो आपको किसी भी वरीयता को निर्दिष्ट करने की आवश्यकता नहीं होगी, क्योंकि आउटसिस्टम्स में `aps-environment` वरीयता का डिफ़ॉल्ट मान `production` है।

आपका एप्लीकेशन अब पुश नोटिफिकेशन प्राप्त करने के लिए तैयार है। [अपने मोबाइल ऐप को कॉन्फ़िगर और जेनरेट करें](https://success.outsystems.com/documentation/10/delivering_mobile_apps/generate_and_distribute_your_mobile_app/) और इसे अपने डिवाइस पर इंस्टॉल करें। इस बिंदु पर, आप अपने ऐप पर नोटिफिकेशन भेजने के लिए Pushwoosh इंटरफ़ेस का उपयोग कर सकते हैं और सुनिश्चित कर सकते हैं कि सब कुछ ठीक से कॉन्फ़िगर किया गया है। ध्यान दें कि यदि ऐप चल रहा है तो आपको कोई नोटिफिकेशन नहीं दिखाई देगा। इसके बजाय, `NotificationReceivedEvent` इवेंट तुरंत उठाया जाता है।

### नोटिफिकेशन भेजना

नोटिफिकेशन भेजने के लिए, आपको एक Pushwoosh [API एक्सेस टोकन](/hi/developer/api-reference/api-access-token/) की आवश्यकता है। Pushwoosh कंसोल तक पहुँच कर एक बनाएँ, "API Access" पर जाएँ, और "Generate new access token" पर क्लिक करें।

<img src="/outsystems8.webp" alt=""/>

सभी डिवाइसों को एक नोटिफिकेशन भेजने के लिए, `SendPushNotificationToAll` क्रिया का उपयोग करें।

<img src="/outsystems9.webp" alt=""/>

यह क्रिया निम्नलिखित पैरामीटर लेती है:

- **PushwooshApplicationCode:** Pushwoosh कोड जो आपने Pushwoosh में एप्लीकेशन बनाने के बाद प्राप्त किया था।
- **ApiAccessToken:** पहले प्राप्त किया गया Pushwoosh API एक्सेस टोकन।
- **Message:** वह संदेश टेक्स्ट जिसे आप भेजना चाहते हैं।
- **Badge:** एक संख्या जो iOS एप्लीकेशन आइकन पर प्रदर्शित होती है।
- **Deeplink:** नोटिफिकेशन के साथ भेजने के लिए एक डीप लिंक। जानें [डीप लिंक कैसे परिभाषित करें](https://success.outsystems.com/documentation/how_to_guides/development/how_to_define_mobile_app_deep_links/)।

उदाहरण के लिए, यदि आप इस क्रिया का उपयोग "PushTest" नामक एप्लीकेशन को "Hello from OutSystems" संदेश भेजने के लिए करते हैं, तो iOS में निम्नलिखित दिखाया जाएगा:

<img src="/outsystems10.webp" alt=""/>

### अतिरिक्त जानकारी

- यदि आपका ऐप चल रहा है, तो नोटिफिकेशन डिवाइस पर नहीं दिखता है। इसके बजाय, यह ऐप को भेजा जाता है, और `NotificationReceivedEvent` इवेंट उठाया जाता है। आपको यह परिभाषित करने की आवश्यकता होगी कि आप उस स्थिति में ऐप को क्या करना चाहते हैं।
- पुश नोटिफिकेशन को सक्रिय होने में कुछ समय लग सकता है। यदि आपको नोटिफिकेशन आते हुए नहीं दिख रहे हैं, तो आगे की समस्या निवारण से पहले कुछ मिनट प्रतीक्षा करें।

## अपनी प्रतिक्रिया हमारे साथ साझा करें

आपकी प्रतिक्रिया हमें एक बेहतर अनुभव बनाने में मदद करती है, इसलिए यदि आपको SDK एकीकरण प्रक्रिया के दौरान कोई समस्या आती है तो हम आपसे सुनना पसंद करेंगे। यदि आपको कोई कठिनाई आती है, तो कृपया [इस फ़ॉर्म के माध्यम से](https://docs.google.com/forms/d/e/1FAIpQLSd_0b8jwn-V_JmoPLIxIFYbHACCQhrzidOZV3ELywoQPXRSxw/viewform) अपने विचार हमारे साथ साझा करने में संकोच न करें।