High-speed delivery सेटअप
अवलोकन
Anchor link toPushwoosh में, ऑडियंस सेगमेंट्स को Segments का उपयोग करके परिभाषित किया जाता है।
मानक पुश अभियानों (campaigns) के लिए, /createMessage अनुरोध भेजे जाने के बाद सेगमेंट को कंपाइल किया जाता है। इसका मतलब है कि संदेश बाहर जाने से पहले थोड़ी देरी हो सकती है, खासकर यदि सेगमेंट जटिल है।
High-speed delivery (हाई-स्पीड डिलीवरी) के साथ, सेगमेंट्स हर 10 मिनट में प्री-कंपाइल (पहले से तैयार) किए जाते हैं। यह उन्हें अपडेट और उपयोग के लिए तैयार रखता है, ताकि संदेश तुरंत भेजे जा सकें—सेगमेंट के कंपाइल होने का इंतजार किए बिना।
High-speed delivery विशेष रूप से तब उपयोगी होती है जब समय महत्वपूर्ण होता है। उदाहरण के लिए, UEFA और FIBA जैसे खेल संगठन इसका उपयोग रीयल-टाइम अपडेट देने के लिए कर सकते हैं जहाँ हर सेकंड मायने रखता है।
यह गाइड एक स्पोर्ट्स ऐप को उदाहरण के रूप में उपयोग करते हुए हाई-स्पीड डिलीवरी सेट करने का तरीका बताती है। आप सीखेंगे कि आगामी मैचों और लाइव इवेंट्स के बारे में उपयोगकर्ताओं को सूचित करने के लिए ऑडियंस सेगमेंट्स कैसे बनाएं।
High-speed delivery क्यों?
Anchor link toखेल संगठनों द्वारा हाई-स्पीड डिलीवरी का उपयोग करने के लिए पूर्वापेक्षाएँ (prerequisites) इस प्रकार हैं:
- सभी मैच पहले से निर्धारित होते हैं, इसलिए आप जानते हैं कि संबंधित Segments कब बनाने हैं और ऑडियंस सेगमेंट्स को प्री-कंपाइल कर सकते हैं।
- प्रत्येक मैच एक यूनिक ID से जुड़ा होता है। उदाहरण के लिए, चैंपियंस लीग फाइनल के लिए मैच ID 0123 है।
- प्रत्येक टीम एक यूनिक ID से जुड़ी होती है। उदाहरण के लिए, जुवेंटस (Juventus) ID 111 है, रियल मैड्रिड (Real Madrid) ID 222 है, आदि।
- लाइव इवेंट्स का एक सेट होता है जिसके बारे में आप उपयोगकर्ताओं को सूचित करना चाहते हैं (गोल, लाइनअप, किकऑफ, आदि)।
सेटअप
Anchor link toहाई-स्पीड डिलीवरी के लिए सभी सेगमेंट्स पहले से बनाए जाने चाहिए—आदर्श रूप से उदाहरण के उपयोग के मामले में मैच शुरू होने से पहले। Pushwoosh ऐप के यूज़र बेस पर सेगमेंट की शर्तें लागू करता है और हर 10 मिनट में सेगमेंट्स को प्री-कंपाइल करता है (यह अंतराल समायोज्य है)।
जब आप पुश सामग्री और सेगमेंट नाम के साथ /createMessage API अनुरोध भेजते हैं, तो Pushwoosh के पास पहले से ही प्राप्तकर्ताओं (recipients) की एक प्री-कंपाइल सूची होती है, जिससे पुश नोटिफिकेशन तुरंत भेजा जा सकता है।
Tags बनाएं
Anchor link toसबसे पहले, लागू करने के लिए Tags का एक सेट बनाएं, और उपयोगकर्ताओं के डिवाइस के लिए Tag मान सेट करें। लाइव मैच इवेंट्स जैसे kickoff (किकऑफ), goal (गोल), red card (रेड कार्ड), आदि के अनुरूप LIST प्रकार के Tags बनाएं।
उदाहरण के लिए:
MATCH-KICKOFF, MATCH-GOAL, MATCH-RED_CARD

टीमों के लिए लाइव मैच इवेंट्स का वर्णन करने वाले Tags का समान सेट बनाएं। उदाहरण के लिए: TEAM-KICKOFF, TEAM-GOAL, TEAM-RED_CARD
इन Tags को सब्सक्राइब करके, ऐप उपयोगकर्ता चुन सकते हैं कि वे कौन से नोटिफिकेशन प्राप्त करना चाहते हैं:
- विशिष्ट मैच के बारे में नोटिफिकेशन (उदाहरण के लिए, जुवेंटस - रियल मैड्रिड मैच);
- पसंदीदा टीम के मैचों के बारे में नोटिफिकेशन (उदाहरण के लिए, केवल जुवेंटस मैच);
- मैच के दौरान होने वाली घटनाओं के बारे में नोटिफिकेशन (उदाहरण के लिए, केवल जुवेंटस - रियल मैड्रिड मैच में गोल);
- पसंदीदा टीम से विशिष्ट घटनाओं के बारे में नोटिफिकेशन (उदाहरण के लिए, जुवेंटस मैचों के गोल और लाइनअप)।
Tags सेट करें
Anchor link toअब आप setTags API अनुरोध के माध्यम से पहले से निर्दिष्ट Tag मानों को पॉप्युलेट कर सकते हैं, और उपयोगकर्ताओं को पुश नोटिफिकेशन की विशिष्ट श्रेणियों के लिए सब्सक्राइब कर सकते हैं।
उदाहरण के लिए:
जब कोई उपयोगकर्ता चैंपियंस लीग फाइनल किकऑफ और गोल अपडेट प्राप्त करने के लिए सब्सक्राइब करता है, तो मैच ID के साथ /setTags कॉल करें:
{ "request": { "application": "app_code", "hwid": "device_hardware_id", "tags": { "MATCH_KICKOFF": "0123", // match ID "MATCH_GOAL": "0123" // match ID } }}उपयोगकर्ता को चैंपियंस लीग फाइनल किकऑफ और किए गए गोल के बारे में नोटिफिकेशन प्राप्त होंगे।
जब कोई उपयोगकर्ता रियल मैड्रिड मैचों के गोल और रेड कार्ड अपडेट प्राप्त करने के लिए सब्सक्राइब करता है, तो /setTags को इस प्रकार कॉल करें:
{ "request": { "application": "app_code", "hwid": "device_hardware_id", "tags": { "TEAM_KICKOFF": "222", // team ID "TEAM_GOAL": "222" // team ID } }}जब भी रियल मैड्रिड खेल रही होगी, इस उपयोगकर्ता को किकऑफ और गोल के बारे में नोटिफिकेशन प्राप्त होंगे।
Segments बनाएं
Anchor link toअब आप Tags और उनके मानों (मैच IDs और टीम IDs) के आधार पर मैच इवेंट्स के लिए Segments बना सकते हैं। Segments को मैच शुरू होने से 30 मिनट पहले /createFilter API अनुरोध के माध्यम से बनाया जाना चाहिए।
ऊपर दिए गए उदाहरण से चैंपियंस लीग फाइनल में किए गए गोल के बारे में उपयोगकर्ताओं को सूचित करने के लिए, निम्नलिखित मापदंडों के साथ /createFilter कॉल करें:
Segment name: 0123_GOAL
Segment conditions: #TEAM-GOAL(111, 222) OR #MATCH-GOAL(0123)
{ "request": { "auth": "auth_token", "name": "0123_GOAL", "conditions": [ ["TEAM-GOAL", "IN", ["111", "222"]], ["MATCH-GOAL", "IN", ["0123"]] ], "operator": "OR", // optional. Operator values: 'AND', 'OR' "application" : "AAAAA-00000" }}यह अनुरोध चैंपियंस लीग फाइनल (मैच ID=0123) के गोल अपडेट के लिए सब्सक्राइब किए गए उपयोगकर्ताओं OR (या) उन उपयोगकर्ताओं के सेगमेंट को कंपाइल करेगा जो जुवेंटस या रियल मैड्रिड (टीम ID=111,222) को फॉलो करते हैं।
अपने Pushwoosh कंट्रोल पैनल में High-Speed Delivery सेट करने के लिए, संबंधित Tag मानों के साथ एक नया Segment बनाएं और इसे उस ऐप से संबद्ध करें जिसे आप पुश भेजने जा रहे हैं। ऑडियंस सेगमेंट्स को हमेशा अपडेट रखने के लिए ऐप-विशिष्ट Segments हर 10 मिनट में प्री-कंपाइल किए जाते हैं।

जब मैच इवेंट होता है (गोल हुआ, मैच किकऑफ, रेड कार्ड, आदि), तो पुश नोटिफिकेशन सामग्री और Segment नाम के साथ /createMessage कॉल करें:
{ "request": { "application": "AAAAA_00000", "auth": "auth_token", "notifications": [ { "content": "12’ Juventus goal! Juventus 1 – 0 Real Madrid", "filter": "0123_GOAL", "send_date": "now" } ] }}जैसे ही हमें /createMessage कॉल प्राप्त होती है, हमारे पास पहले से ही उन उपकरणों की एक प्री-कंपाइल सूची होती है जो Segment मानदंडों से मेल खाते हैं, और हम तुरंत APNs और FCM गेटवे की ओर नोटिफिकेशन भेजते हैं।
Segments हटाएं
Anchor link toमैच खत्म होने के बाद, सभी संबंधित Segments को हटा दिया जाना चाहिए ताकि कंप्यूटिंग संसाधन उन Segments के पुन: कंपाइलेशन (re-compilation) पर खर्च न हों जो अब प्रासंगिक नहीं हैं, विशेष रूप से उन Segments की कीमत पर जो अगले शेड्यूल किए गए मैचों के लिए हैं। /deleteFilter API अनुरोध के माध्यम से Segments हटाएं, उदाहरण के लिए:
{ "request": { "auth": "auth_token", "name": "0123_GOAL" }}मैनुअल Segments विलोपन (deletion) से बचने के लिए, /createFilter अनुरोध के माध्यम से Segment समाप्ति तिथि (expiration date) सेट करें ताकि निर्दिष्ट तिथि पर Segment स्वचालित रूप से हटा दिया जाए:
{ "request": { "auth": "auth_token", "name": "0123_GOAL", "conditions": [ ["TEAM-GOAL", "IN", ["111", "222"]], ["MATCH-GOAL", "IN", ["0123"]] ], "operator": "OR", // optional. Values: 'AND', 'OR' "application": "AAAAA-00000", "expiration_date": "YYYY-MM-DD" // optional. Segment (Filter) expiry }}