इवेंट स्ट्रीमिंग इंटीग्रेशन
इंटीग्रेशन का अवलोकन
Anchor link toइंटीग्रेशन का प्रकार
Anchor link toस्रोत: कॉन्फ़िगर किए गए इवेंट ट्रिगर्स के आधार पर Pushwoosh से आपके सिस्टम में डेटा HTTP या gRPC के माध्यम से भेजा जाता है।
इंटीग्रेशन कैसे काम करता है?
Anchor link toPushwoosh संचार इवेंट डेटा (जैसे, पुश/ईमेल गतिविधि) को क्लाइंट-परिभाषित एंडपॉइंट पर प्रसारित करता है। डेटा निर्धारित अंतराल पर या न्यूनतम बैच आकार तक पहुंचने पर बैच स्ट्रीम में भेजा जाता है।
डेटा केवल तभी भेजा जाता है जब यह चयनित इवेंट्स, प्लेटफ़ॉर्म और वैकल्पिक फ़िल्टर (अभियान/संदेश कोड, लाइव गतिविधि) से मेल खाता हो। क्लाइंट एंडपॉइंट को प्राप्त करने और वैकल्पिक रूप से स्थिति के साथ प्रतिक्रिया देने के लिए तैयार होना चाहिए।
शब्दावली
Anchor link toएंडपॉइंट URL: सर्वर-साइड एंडपॉइंट जो अनुरोध प्राप्त करने की अनुमति देता है। क्लाइंट यदि आवश्यक हो तो एक पोर्ट निर्दिष्ट कर सकता है।
उदाहरण:
https://clientdomainname.com/webhook_endpointhttps://clientdomainname.com:8081/webhook_endpoint
सिंक्रनाइज़ की गई इकाइयों की सूची
Anchor link to- संचार सांख्यिकी इवेंट (जैसे, Push Sent, Email Delivered)
- पोस्ट इवेंट्स: वे इवेंट्स जो आपका ऐप
postEventके माध्यम से Pushwoosh को भेजता है, जो संचार सांख्यिकी इवेंट्स से अलग स्ट्रीम किए जाते हैं
उपयोग के मामले
Anchor link to- रीयल-टाइम एंगेजमेंट ट्रैकिंग
उपयोगकर्ता की बातचीत जैसे पुश भेजा गया, ईमेल खोला गया, या संदेश डिलीवर हुआ, जैसे ही वे होते हैं, उनकी निगरानी करें, जिससे अभियान के प्रदर्शन में तत्काल दृश्यता सक्षम हो।
- बाहरी एनालिटिक्स इंटीग्रेशन
केंद्रीकृत रिपोर्टिंग और विश्लेषण के लिए तीसरे पक्ष के एनालिटिक्स प्लेटफ़ॉर्म पर इवेंट स्ट्रीम करें।
- स्वचालित उपयोगकर्ता वर्कफ़्लो
उपयोगकर्ता के व्यवहार के आधार पर बाहरी सिस्टम (जैसे CRM या मार्केटिंग ऑटोमेशन टूल) में क्रियाएं ट्रिगर करें, जैसे, जब कोई उपयोगकर्ता ईमेल खोलता है तो एक फॉलो-अप संदेश भेजें।
- डिवाइस सूची सिंक
जब डिवाइस संदेश प्राप्त नहीं कर सकते, तो उन्हें अपने डेटाबेस से हटाएं। अपंजीकृत डिवाइस को अपने सिस्टम से सिंक करें देखें।
इंटीग्रेशन सेट अप करना
Anchor link toइंटीग्रेशन सेट अप करने के लिए:
- अपने Pushwoosh खाते में, सेटिंग्स > तृतीय-पक्ष इंटीग्रेशन पर जाएं, इवेंट स्ट्रीमिंग इंटीग्रेशन ढूंढें, और कॉन्फ़िगर करें पर क्लिक करें।

- खुलने वाली विंडो में, आवश्यक फ़ील्ड भरें।

एंडपॉइंट URL दर्ज करें
Anchor link toएंडपॉइंट URL फ़ील्ड में, वह पूरा URL दर्ज करें जहां इवेंट भेजे जाएंगे, जिसमें यदि लागू हो तो प्रोटोकॉल और पोर्ट भी शामिल है।
उदाहरण
https://clientdomainname.com/webhook_endpointhttps://clientdomainname.com:8081/webhook\_endpoint
इवेंट्स चुनें
Anchor link toइवेंट्स ड्रॉपडाउन से, कम से कम एक इवेंट चुनें। यदि कोई भी नहीं चुना गया है, तो सत्यापन विफल हो जाएगा। इवेंट्स की सूची बैकएंड द्वारा प्रबंधित की जाती है और समय के साथ बदल सकती है।
प्राधिकरण क्रेडेंशियल प्रदान करें
Anchor link toयदि आपके सर्वर द्वारा आवश्यक हो, तो प्राधिकरण फ़ील्ड में Authorization हेडर के लिए पूरा मान दर्ज करें।
उदाहरण:
-
Bearer your_token_here -
Basic base64encoded_credentials
ट्रांसपोर्ट प्रकार चुनें
Anchor link toट्रांसपोर्ट प्रकार ड्रॉपडाउन से, इवेंट ट्रांसमिशन के लिए डिलीवरी प्रोटोकॉल चुनें: HTTP या gRPC। प्रत्येक का विशिष्ट व्यवहार और कॉन्फ़िगरेशन है।
HTTP
Anchor link toHTTP ट्रांसपोर्ट प्रकार के साथ, Pushwoosh निम्नलिखित शर्तों में से किसी एक के आधार पर बैचों में डेटा भेजता है:
-
कम से कम 100 इवेंट भेजे जाने के लिए तैयार हैं, या
-
अंतिम प्रसारण के बाद एक घंटा बीत चुका है।
डेटा भेजने के बाद, एक सफल प्रतिक्रिया प्राप्त होने पर कनेक्शन बंद हो जाता है।
यदि सर्वर 5xx त्रुटि के साथ प्रतिक्रिया करता है, तो Pushwoosh परिभाषित रिट्राई नीति के अनुसार अनुरोध को फिर से प्रयास करेगा।
रिट्राई तंत्र
| प्रयास | देरी |
|---|---|
| पहला | 1 सेकंड |
| दूसरा | पहले प्रयास के 3 सेकंड बाद |
| तीसरा | दूसरे प्रयास के 8 सेकंड बाद |
यदि सभी रिट्राई विफल हो जाते हैं, तो अनुरोध को छोड़ दिया जाता है।
टाइमआउट
एक अनुरोध के लिए डिफ़ॉल्ट टाइमआउट 30 सेकंड है। इसे समर्थन के माध्यम से अनुरोध पर अनुकूलित किया जा सकता है।
gRPC
Anchor link togRPC ट्रांसपोर्ट प्रकार डेटा ट्रांसमिशन के लिए द्विदिश स्ट्रीमिंग का उपयोग करता है। gRPC दस्तावेज़ीकरण में और जानें।
एक स्ट्रीम तब खोली जाती है जब निम्नलिखित में से कोई भी शर्त पूरी होती है:
- कम से कम 1,000 इवेंट डिलीवरी के लिए तैयार हैं
- अंतिम स्ट्रीम खोले जाने के बाद एक घंटा बीत चुका है
इवेंट भेजे जाने के बाद स्ट्रीम बंद हो जाती है। यह सुनिश्चित करता है कि कम समय में प्रत्येक व्यक्तिगत इवेंट के लिए एक नई स्ट्रीम नहीं खोली जाती है।
रिट्राई तंत्र
प्रत्येक इवेंट में एक अद्वितीय uuid शामिल होता है। यदि कोई इवेंट विफल होता है:
- प्रतिक्रिया में एक
statusशामिल होना चाहिए जो"Success"के बराबर नहीं हो - अनुरोध से मूल
uuidशामिल होना चाहिए
Pushwoosh इस प्रतिक्रिया के आधार पर डिलीवरी का पुनः प्रयास करेगा।
कनेक्शन सेटिंग्स
उन्नत विकल्प जैसे TLS, keep-alive, या रिट्राई नीतियां समर्थन के माध्यम से मैन्युअल रूप से कॉन्फ़िगर की जाती हैं और इसके लिए विकास भागीदारी की आवश्यकता हो सकती है।
पोस्ट इवेंट्स सक्षम करें
Anchor link toयह टॉगल डिफ़ॉल्ट रूप से बंद होता है, इसलिए केवल संचार सांख्यिकी इवेंट स्ट्रीम होते हैं। वे इवेंट्स जो आपका ऐप postEvent के माध्यम से Pushwoosh को भेजता है को भी स्ट्रीम करने के लिए, पोस्ट इवेंट्स की अनुमति दें टॉगल को चालू करें।
दिखाई देने वाले पोस्ट इवेंट्स फ़ील्ड से, चुनें कि आपके खाते के कौन से इवेंट स्ट्रीम करने हैं। टॉगल चालू होने पर कम से-कम एक इवेंट आवश्यक है। यदि आपके खाते ने अभी तक कोई इवेंट नहीं भेजा है, तो यह सूची तब तक खाली रहती है जब तक आप कम से कम एक बार postEvent को कॉल नहीं करते।
इन-ऐप इम्प्रेशन और क्लिक भी इसी पोस्ट इवेंट स्ट्रीम के माध्यम से PW_InAppShow और PW_InAppClicked के रूप में भेजे जाते हैं। किसी भी अन्य पोस्ट इवेंट की तरह, इनमें से प्रत्येक पोस्ट इवेंट्स सूची में तभी दिखाई देता है जब वह खाते के लिए कम से कम एक बार ट्रिगर हो चुका हो।
प्लेटफ़ॉर्म चुनें
Anchor link toप्लेटफ़ॉर्म अनुभाग में, इवेंट स्ट्रीमिंग को सक्रिय करने के लिए कम से कम एक प्लेटफ़ॉर्म चुनें।

समर्थित प्लेटफ़ॉर्म में शामिल हैं:
- iOS, Android, macOS, Windows, Amazon, Safari
- Chrome, Firefox, Internet Explorer, Huawei
- Email, SMS, Line, Xiaomi, WhatsApp
उन्नत फ़िल्टर कॉन्फ़िगर करें
Anchor link toउन्नत फ़िल्टर अनुभाग में, फ़िल्टर का उपयोग करके इवेंट डिलीवरी मानदंडों को परिष्कृत करें:
-
लाइव गतिविधि इवेंट्स: लाइव गतिविधि इवेंट्स प्राप्त करने के लिए सक्षम करें। इन इवेंट्स में केवल
live_activity_idसहित मेटाडेटा होता है। -
अभियान फ़िल्टर: अभियान कोड द्वारा फ़िल्टर करें। केवल इन अभियानों से जुड़े इवेंट ही डिलीवर किए जाएंगे।
-
संदेश फ़िल्टर: संदेश कोड द्वारा फ़िल्टर करें। केवल इन संदेशों से जुड़े इवेंट ही डिलीवर किए जाएंगे।

सभी आवश्यक फ़ील्ड भरने के बाद, अपने इंटीग्रेशन को सहेजने और सक्रिय करने के लिए लागू करें बटन पर क्लिक करें।
अनुरोध विवरण और उदाहरण
Anchor link to| एंडपॉइंट | https://exampleclientendpoint.com/webhook_endpoint |
| HTTP अनुरोध | POST |
| प्रमाणीकरण | नहीं |
| अनुरोध प्रकार | स्रोत |
| अनुरोध का अर्थ | वेबहुक एंडपॉइंट पर अनुरोध भेजें |
| हेडर्स | Content-Type: application/json |
अनुरोध बॉडी का उदाहरण
{ "event_name": "Email Opened", "message_code": "E682-E6D92B9A-53E24868", "campaign_id": 961048, "platform": "Email", "payload": "Welcome to Headway! 👋", "application_code": "XXXXX-XXXXX", "hwid": "user@example.com", "user_id": "USER_ID", "timestamp": 1723799271, "journey_title": "", "journey_point_title": "5_Welcome_ID_new", "attributes": null}एट्रिब्यूट्स
Anchor link toसंचार सांख्यिकी इवेंट्स में, attributes केवल पुश इवेंट्स के लिए पॉप्युलेट होता है, जिसमें उस प्लेटफ़ॉर्म के लिए चैनल-विशिष्ट सामग्री (Android, iOS, आदि) होती है जिस पर पुश भेजा गया था। ईमेल और SMS इवेंट्स में केवल शीर्ष-स्तरीय फ़ील्ड (event_name, platform, payload, आदि) होते हैं। उन इवेंट्स के लिए attributes null होता है। एक पॉप्युलेटेड attributes ऑब्जेक्ट के भीतर, इवेंट के अपने प्लेटफ़ॉर्म के बाहर के फ़ील्ड को खाली मान के रूप में भेजने के बजाय छोड़ दिया जाता है। पूरी फ़ील्ड सूची के लिए webhook.proto देखें।
एक पोस्ट इवेंट अपने एट्रिब्यूट कुंजी/मान जोड़े को attributes.event_attributes में ले जाता है। message_code और payload खाली रहते हैं, क्योंकि एक पोस्ट इवेंट किसी संदेश या अभियान से जुड़ा नहीं होता है।
प्रतिक्रिया
फिलहाल, प्रतिक्रिया कोड और बॉडी को अनदेखा कर दिया जाता है।
अपंजीकृत डिवाइस को अपने सिस्टम से सिंक करें
Anchor link toयदि आप डिवाइस सूची की अपनी कॉपी रखते हैं, उदाहरण के लिए किसी CRM या ग्राहक डेटा प्लेटफॉर्म में, तो उन डिवाइस का पता लगाने के लिए PW_DeviceUnregistered पोस्ट इवेंट स्ट्रीम करें जिन तक Pushwoosh अब नहीं पहुंच सकता। जब किसी डिवाइस की पुश सदस्यता समाप्त हो जाती है, तो Pushwoosh यह इवेंट भेजता है: पुश सेवा टोकन को अमान्य बताती है, ऐप SDK के माध्यम से डिवाइस को अपंजीकृत करता है, या उपयोगकर्ता ईमेल की सदस्यता समाप्त कर देता है।
ऐसे इंटीग्रेशन से शुरू करें जो पहले से सेट अप है, जिसमें एंडपॉइंट URL दर्ज है और कम से कम एक प्लेटफ़ॉर्म चुना गया है। फिर:
- इंटीग्रेशन सेटिंग्स में, पोस्ट इवेंट्स की अनुमति दें चालू करें। पोस्ट इवेंट्स सक्षम करें देखें।
- पोस्ट इवेंट्स फ़ील्ड में,
PW_DeviceUnregisteredचुनें। - पुश टोकन प्राप्त करने वाले डिवाइस के बारे में भी जानने के लिए,
PW_DeviceRegisteredचुनें। - लागू करें पर क्लिक करें। परिवर्तन 15 मिनट के भीतर प्रभावी होता है।
PW_DeviceUnregistered पोस्ट इवेंट्स सूची में तभी दिखाई देता है जब यह खाते के लिए कम से कम एक बार ट्रिगर हो चुका हो। तब तक आप इसे नहीं चुन सकते।
इवेंट्स को प्रोसेस करते समय इन सीमाओं का ध्यान रखें:
- डिवाइस का मिलान
hwidयाuser_idसे करें, पुश टोकन से नहीं। इवेंट में डिवाइस काhwid,user_idऔर प्लेटफ़ॉर्म होता है, लेकिन पुश टोकन और अपंजीकरण का कारण नहीं होता। समाप्त हो चुका टोकन और SDK के माध्यम से अपंजीकरण एक जैसे दिखते हैं। - टोकन बदलने पर कोई इवेंट नहीं भेजा जाता।
PW_DeviceRegisteredतभी ट्रिगर होता है जब बिना पुश टोकन वाले डिवाइस को टोकन मिलता है। जब कोई डिवाइस अपने टोकन को नए टोकन से बदलता है, तो दोनों में से कोई भी इवेंट ट्रिगर नहीं होता, इसलिए टोकन पर आधारित सूची में पुराने टोकन जमा होते रहते हैं। - ईमेल सदस्यता समाप्त करने से डिवाइस नहीं हटता। ईमेल के लिए, पता डिवाइस पर बना रहता है और Pushwoosh उसे केवल सदस्यता समाप्त के रूप में चिह्नित करता है। जब उपयोगकर्ता ने किसी ईमेल में दिए गए लिंक से सदस्यता समाप्त की हो, तो
attributes.event_attributesमें उस ईमेल काmessage_codeऔरcampaign_idभी होता है।
चूंकि जो बैच सभी HTTP रिट्राई में विफल हो जाता है उसे हटा दिया जाता है, इसलिए कुछ इवेंट्स आपके एंडपॉइंट तक कभी नहीं पहुंच सकते। अपनी सूची का समय-समय पर मिलान करें: जिन डिवाइस को आप टारगेट करते हैं उनके सेगमेंट को CSV में एक्सपोर्ट करें और उसकी तुलना अपने रिकॉर्ड से करें। सेगमेंट एक्सपोर्ट करने के लिए आपकी भूमिका में Personal data अनुमति होनी चाहिए।
आपको कैसे पता चलेगा कि इंटीग्रेशन काम कर रहा है?
Anchor link toआपको अपने कॉन्फ़िगर किए गए एंडपॉइंट पर Pushwoosh से अनुरोध प्राप्त होने लगेंगे।