सेगमेंटेशन भाषा
Pushwoosh टैग मानों के आधार पर विस्तृत सेगमेंट बनाने के लिए एक शक्तिशाली सेगमेंटेशन इंजन प्रदान करता है। सेगमेंटेशन भाषा सेगमेंटेशन मानदंडों को लिखने और संयोजित करने का एक विशिष्ट तरीका है ताकि उन मानदंडों से मेल खाने वाले उपयोगकर्ताओं के एक विशेष समूह का वर्णन किया जा सके और उन्हें एक एकल दर्शक सेगमेंट के रूप में माना जा सके।
यह लेख सेगमेंटेशन भाषा की मूल अवधारणाओं और सिंटैक्स का वर्णन करता है और विभिन्न मामलों के लिए सेगमेंटेशन मानदंड बनाने के व्यापक उदाहरण प्रदान करता है।
सहेजे गए सेगमेंट के बिना इनलाइन उपयोग
Anchor link toएक फ़िल्टर एक्सप्रेशन को सहेजे गए सेगमेंट से संबंधित होना आवश्यक नहीं है। इसे सीधे NotifySegment के expression फ़ील्ड में पास करें ताकि एक ही भेज को लक्षित किया जा सके — कोई सेगमेंट नहीं बनाया जाता है, और एक्सप्रेशन खाते पर संग्रहीत नहीं होता है।
curl -X POST https://api.pushwoosh.com/messaging/v2/notify \ -H "Authorization: Token YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "segment": { "application": "XXXXX-XXXXX", "platforms": ["IOS", "ANDROID"], "expression": "AT(\"XXXXX-XXXXX\", \"City\", eq, \"Tokyo\") * AT(\"XXXXX-XXXXX\", \"Age\", gte, 18)", "payload": { "content": { "localized_content": { "en": { "ios": { "body": "Hello, Tokyo!" } } } } }, "schedule": { "at": "2026-05-01T12:00:00Z" } } }'मूल बातें
Anchor link toआपके उपयोगकर्ता आधार में प्रत्येक डिवाइस के साथ टैग मानों के माध्यम से विशिष्ट विशेषताएँ जुड़ी होती हैं।
उदाहरण के लिए, मान लीजिए कि जेन नाम की एक उपयोगकर्ता टोक्यो में रहती है, और उसकी उम्र 28 है। उस उपयोगकर्ता के डिवाइस के लिए निम्नलिखित टैग सेट होंगे:
- नाम: जेन
- शहर: टोक्यो
- आयु: 28
जेन को लक्षित करने के लिए, आपको एक सेगमेंट का वर्णन इस प्रकार करना होगा:
AT("XXXXX-XXXXX", "Name", eq, "Jane") * AT("XXXXX-XXXXX", "Age", eq, 28) * AT("XXXXX-XXXXX", "City", eq, "Tokyo")
शर्तों का यह संयोजन एक फ़िल्टर एक्सप्रेशन है जिसका उपयोग सेगमेंटेशन भाषा में उपयोगकर्ताओं के समूहों यानी दर्शक सेगमेंट का वर्णन करने के लिए किया जाता है।
फ़िल्टर एक्सप्रेशन
Anchor link toफ़िल्टर एक्सप्रेशन एक स्ट्रिंग है जिसमें एक शर्त या शर्तों का संयोजन होता है जो आपके आवश्यक सेगमेंट का वर्णन करता है।
शर्तें
Anchor link toप्रत्येक शर्त उन डिवाइसों के एक सेगमेंट का वर्णन करती है जो उस शर्त में निर्दिष्ट मानदंडों से मेल खाते हैं।
उदाहरण के लिए, निम्नलिखित शर्त टोक्यो में रहने वाले उपयोगकर्ताओं का एक सेगमेंट बनाती है:
AT("XXXXX-XXXXX", "City", eq, "Tokyo")
जहाँ
- AT एक ऐप-स्कोप्ड टैग (शर्त का प्रकार) है;
- “XXXXX-XXXXX” उस ऐप का कोड है जिससे टैग मान संबद्ध है;
- eq लागू करने के लिए एक ऑपरेटर है;
- “Tokyo” एक टैग मान है जो उपयोगकर्ताओं के डिवाइसों से जुड़ा हुआ है।
शर्त के प्रकार
Anchor link toसेगमेंटेशन के लिए निम्नलिखित शर्त प्रकार उपलब्ध हैं:
- A (Application) – एक विशेष ऐप इंस्टॉल किए हुए डिवाइसों के एक सेगमेंट का वर्णन करता है। उपनाम: App, Application;
- AT (App-scoped tag) – निर्दिष्ट टैग मानों वाले डिवाइसों के एक सेगमेंट का वर्णन करता है; पहले तर्क के रूप में ऐप कोड आवश्यक है। उपनाम: Tag;
- Event – एक विशिष्ट Pushwoosh ईवेंट को ट्रिगर करने वाले डिवाइसों के एक सेगमेंट का वर्णन करता है;
- Geo – एक विशिष्ट भौगोलिक दायरे के भीतर डिवाइसों के एक सेगमेंट का वर्णन करता है;
- BTTS – उनके भेजने के लिए सबसे अच्छे समय के आधार पर डिवाइसों के एक सेगमेंट का वर्णन करता है;
- Updated – उनके अंतिम अपडेट टाइमस्टैम्प के आधार पर डिवाइसों के एक सेगमेंट का वर्णन करता है;
- Segment – किसी अन्य फ़िल्टर/सेगमेंट को उसके कोड द्वारा संदर्भित करता है;
- FeatureFlag – डिवाइसों को मिले फ़ीचर फ़्लैग की स्थिति के आधार पर डिवाइसों के एक सेगमेंट का वर्णन करता है;
शर्तों के साथ संचालन
Anchor link toपरिष्कृत सेगमेंट बनाने के लिए, फ़िल्टर एक्सप्रेशन के भीतर शर्तों पर निम्नलिखित संचालन लागू किए जा सकते हैं:
यूनियन (+)
Anchor link toसेगमेंट को जोड़ता है, यानी, उन उपयोगकर्ताओं का एक नया सेगमेंट बनाता है जो निर्दिष्ट शर्तों में से कम से कम एक से मेल खाते हैं।

उदाहरण के लिए, टोक्यो या ओसाका में रहने वाले उपयोगकर्ताओं को लक्षित करने के लिए, आपको निम्नलिखित शर्तों के साथ सेगमेंट का वर्णन करना होगा:
AT("XXXXX-XXXXX", "City", eq, "Tokyo") + AT("XXXXX-XXXXX", "City", eq, "Osaka")
इंटरसेक्शन (*)
Anchor link toशर्तों द्वारा वर्णित दोनों सेगमेंट से संबंधित उपयोगकर्ताओं का एक सेगमेंट बनाता है। इस प्रकार, केवल वे उपयोगकर्ता शामिल किए जाएंगे जो आपके द्वारा निर्दिष्ट प्रत्येक शर्त का पालन करते हैं।

निम्नलिखित एक्सप्रेशन उन उपयोगकर्ताओं के एक सेगमेंट का वर्णन करता है जो टोक्यो में रहते हैं और जिन्होंने अपने नाम निर्दिष्ट किए हैं:
AT("XXXXX-XXXXX", "City", eq, "Tokyo") * AT("XXXXX-XXXXX", "Name", any)
अंतर (\)
Anchor link toउन उपयोगकर्ताओं का एक सेगमेंट बनाता है जो वर्णित सेगमेंट में से एक से संबंधित हैं और दूसरे से संबंधित नहीं हैं।

टोक्यो में रहने वाले लेकिन जिन्होंने आपको अपना नाम नहीं दिया है, उन उपयोगकर्ताओं का वर्णन इस प्रकार किया जाएगा:
AT("XXXXX-XXXXX", "City", eq, "Tokyo") \ AT("XXXXX-XXXXX", "Name", any)
कोष्ठक
Anchor link toआपके फ़िल्टर एक्सप्रेशन में शर्तों के साथ किए जाने वाले संचालन के क्रम को निर्धारित करते हैं।
उदाहरण के लिए, निम्नलिखित फ़िल्टर एक्सप्रेशन पहले 12345-67890 ग्राहकों का एक सेगमेंट प्राप्त करेगा जिनकी आयु 18 है और फिर उस सेगमेंट के सभी पुरुषों को घटा देगा:
( A("12345-67890") * AT("12345-67890", "Age", eq, 18) ) \ AT("12345-67890", "Gender", eq, "Male")
टैग शर्तों के ऑपरेटर
Anchor link toप्रत्येक टैग प्रकार के लिए, उनके अपने ऑपरेटर लागू होते हैं।
इंटीजर टैग ऑपरेटर
Anchor link to- eq - एक निर्दिष्ट मान के बराबर
- noteq - एक निर्दिष्ट मान के बराबर नहीं
- lte - एक निर्दिष्ट मान से कम या बराबर
- gte - एक निर्दिष्ट मान से अधिक या बराबर
- in - निर्दिष्ट मानों में से कोई भी
- notin - निर्दिष्ट मानों में से किसी के बराबर नहीं
- between - एक निर्दिष्ट सीमा में
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
स्ट्रिंग टैग ऑपरेटर
Anchor link to- eq - एक निर्दिष्ट मान के बराबर
- noteq - एक निर्दिष्ट मान के बराबर नहीं
- startswith - एक निर्दिष्ट उपसर्ग से शुरू होता है
- endswith - एक निर्दिष्ट प्रत्यय के साथ समाप्त होता है
- contains - एक निर्दिष्ट सबस्ट्रिंग शामिल है
- in - निर्दिष्ट मानों में से किसी के बराबर
- notin - निर्दिष्ट मानों में से किसी के बराबर नहीं
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
लिस्ट टैग ऑपरेटर
Anchor link to- in - निर्दिष्ट टैग मानों में से किसी के साथ डिवाइस
- notin - डिवाइस से जुड़े निर्दिष्ट टैग मानों में से कोई नहीं
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
डेट टैग ऑपरेटर
Anchor link to- eq - निर्दिष्ट तिथि के बराबर
- noteq - निर्दिष्ट तिथि के बराबर नहीं
- lte - निर्दिष्ट तिथि से पहले या उस पर
- gte - निर्दिष्ट तिथि के बाद या उस पर
- in - निर्दिष्ट तिथियों में से किसी के बराबर
- notin - निर्दिष्ट तिथियों में से किसी के बराबर नहीं
- between - एक निर्दिष्ट सीमा में
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
- match - वर्ष के एक निर्दिष्ट महीने और महीने के दिन से मेल खाता है।
- daysago eq - वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों के बराबर
- daysago noteq - वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों के बराबर नहीं
- daysago lte - वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों से कम या बराबर
- daysago gte - वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों से अधिक या बराबर
- daysago between - दिनों की निर्दिष्ट संख्याओं के बीच
- minutesago lte - वर्तमान क्षण से पहले एक निर्दिष्ट संख्या के मिनटों से कम या बराबर
- minutesago gte - वर्तमान क्षण से पहले एक निर्दिष्ट संख्या के मिनटों से अधिक या बराबर
- daysahead - वर्तमान दिन (UTC) से N से M दिनों में, दोनों सिरों पर समावेशी
बूलियन टैग ऑपरेटर
Anchor link to- eq - एक निर्दिष्ट मान के बराबर
- noteq - एक निर्दिष्ट मान के बराबर नहीं
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
प्राइस टैग ऑपरेटर
Anchor link to- eq - एक निर्दिष्ट मान के बराबर
- noteq - एक निर्दिष्ट मान के बराबर नहीं
- lte - एक निर्दिष्ट मान से कम या बराबर
- gte - एक निर्दिष्ट मान से अधिक या बराबर
- in - निर्दिष्ट मानों में से किसी के बराबर
- notin - निर्दिष्ट मानों में से किसी के बराबर नहीं
- between - एक निर्दिष्ट सीमा में
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
वर्शन टैग ऑपरेटर
Anchor link to- eq - एक निर्दिष्ट मान के बराबर
- noteq - एक निर्दिष्ट मान के बराबर नहीं
- lte - एक निर्दिष्ट मान से कम या बराबर
- gte - एक निर्दिष्ट मान से अधिक या बराबर
- in - निर्दिष्ट मानों में से किसी के बराबर
- notin - निर्दिष्ट मानों में से किसी के बराबर नहीं
- between - एक निर्दिष्ट सीमा में
- any - टैग के लिए कोई भी मान सेट किए हुए डिवाइस
- notset - टैग के लिए कोई मान सेट नहीं किए हुए डिवाइस
ईवेंट शर्तों के ऑपरेटर
Anchor link toईवेंट गणना
Anchor link to- count gte - डिवाइसों ने ईवेंट को n बार से अधिक या ठीक n बार ट्रिगर किया
- count lte - डिवाइसों ने ईवेंट को n बार से कम या ठीक n बार ट्रिगर किया
- count eq - डिवाइसों ने ईवेंट को ठीक n बार ट्रिगर किया
- count noteq - डिवाइसों ने ईवेंट को किसी भी बार ट्रिगर किया लेकिन n के बराबर नहीं
ईवेंट तिथि
Anchor link to- date gte - डिवाइसों ने ईवेंट को निर्दिष्ट तिथि के बाद या ठीक उसी पर ट्रिगर किया
- date lte - डिवाइसों ने ईवेंट को निर्दिष्ट तिथि से पहले या ठीक उसी पर ट्रिगर किया
- date eq - डिवाइसों ने ईवेंट को ठीक निर्दिष्ट तिथि पर ट्रिगर किया
- date noteq - डिवाइसों ने ईवेंट को कभी भी ट्रिगर किया लेकिन निर्दिष्ट तिथि पर नहीं
- date in - डिवाइसों ने ईवेंट को निर्दिष्ट तिथियों में से किसी पर भी ट्रिगर किया
- date notin - डिवाइसों ने ईवेंट को कभी भी ट्रिगर किया लेकिन निर्दिष्ट तिथियों में से किसी पर भी नहीं
- date between - डिवाइसों ने ईवेंट को एक निर्दिष्ट अवधि के भीतर ट्रिगर किया
- date daysago eq - ईवेंट ट्रिगर तिथि वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों के बराबर है
- date daysago noteq - ईवेंट ट्रिगर तिथि वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों के बराबर नहीं है
- date daysago lte - ईवेंट ट्रिगर तिथि वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों से कम या बराबर है
- date daysago gte - ईवेंट ट्रिगर तिथि वर्तमान दिन से पहले एक निर्दिष्ट संख्या के दिनों से अधिक या बराबर है
- date daysago between - ईवेंट ट्रिगर तिथि दिनों की निर्दिष्ट संख्याओं के बीच है
- date daysahead - ईवेंट ट्रिगर तिथि वर्तमान दिन से एक निर्दिष्ट संख्या के दिनों में है (अंतराल दोनों सिरों पर समावेशी है, पूर्ण सिमेंटिक्स के लिए ऊपर डेट टैग ऑपरेटर देखें)
- date minutesago lte - ईवेंट ट्रिगर तिथि वर्तमान क्षण से पहले निर्दिष्ट संख्या के मिनटों से कम या बराबर है
- date minutesago gte - ईवेंट ट्रिगर तिथि वर्तमान क्षण से पहले निर्दिष्ट संख्या के मिनटों से अधिक या बराबर है
ईवेंट प्लेटफॉर्म
Anchor link toईवेंट को उस प्लेटफॉर्म के अनुसार फ़िल्टर करें जहाँ वे ट्रिगर हुए थे।
- platforms - प्लेटफॉर्म की सूची (जैसे, [“ios”, “android”])
ईवेंट विशेषताएँ
Anchor link toईवेंट की शर्तें ईवेंट विशेषता मानों के आधार पर फ़िल्टर कर सकती हैं। विशेषताएँ अपने संबंधित ऑपरेटरों के साथ विभिन्न डेटा प्रकारों का समर्थन करती हैं।
इंटीजर ईवेंट विशेषताएँ
Anchor link to- attribute “name” eq - विशेषता एक निर्दिष्ट मान के बराबर है
- attribute “name” noteq - विशेषता एक निर्दिष्ट मान के बराबर नहीं है
- attribute “name” gte - विशेषता एक निर्दिष्ट मान से अधिक या बराबर है
- attribute “name” lte - विशेषता एक निर्दिष्ट मान से कम या बराबर है
- attribute “name” between - विशेषता एक निर्दिष्ट सीमा में है
- attribute “name” in - विशेषता निर्दिष्ट मानों में से किसी के बराबर है
- attribute “name” notin - विशेषता निर्दिष्ट मानों में से किसी के बराबर नहीं है
- attribute “name” any - विशेषता के लिए कोई भी मान सेट है
- attribute “name” notset - विशेषता के लिए कोई मान सेट नहीं है
स्ट्रिंग ईवेंट विशेषताएँ
Anchor link to- attribute “name” eq - विशेषता एक निर्दिष्ट मान के बराबर है
- attribute “name” noteq - विशेषता एक निर्दिष्ट मान के बराबर नहीं है
- attribute “name” startswith - विशेषता एक निर्दिष्ट उपसर्ग से शुरू होती है
- attribute “name” endswith - विशेषता एक निर्दिष्ट प्रत्यय के साथ समाप्त होती है
- attribute “name” contains - विशेषता एक निर्दिष्ट सबस्ट्रिंग शामिल करती है
- attribute “name” in - विशेषता निर्दिष्ट मानों में से किसी के बराबर है
- attribute “name” notin - विशेषता निर्दिष्ट मानों में से किसी के बराबर नहीं है
- attribute “name” any - विशेषता के लिए कोई भी मान सेट है
- attribute “name” notset - विशेषता के लिए कोई मान सेट नहीं है
बूलियन ईवेंट विशेषताएँ
Anchor link to- attribute “name” eq - विशेषता true या false के बराबर है
- attribute “name” noteq - विशेषता true या false के बराबर नहीं है
डेट ईवेंट विशेषताएँ
Anchor link to- attribute “name” eq - विशेषता एक निर्दिष्ट तिथि के बराबर है
- attribute “name” noteq - विशेषता एक निर्दिष्ट तिथि के बराबर नहीं है
- attribute “name” gte - विशेषता एक निर्दिष्ट तिथि के बाद या उस पर है
- attribute “name” lte - विशेषता एक निर्दिष्ट तिथि से पहले या उस पर है
- attribute “name” between - विशेषता एक निर्दिष्ट तिथि सीमा के भीतर है
- attribute “name” in - विशेषता निर्दिष्ट तिथियों में से किसी के बराबर है
- attribute “name” notin - विशेषता निर्दिष्ट तिथियों में से किसी के बराबर नहीं है
- attribute “name” daysago eq/noteq/gte/lte/between - विशेषता दिनों पहले के सापेक्ष
- attribute “name” daysahead from to - विशेषता वर्तमान दिन से दिनों के एक निर्दिष्ट अंतराल में (अंतराल दोनों सिरों पर समावेशी है, पूर्ण सिमेंटिक्स के लिए ऊपर डेट टैग ऑपरेटर देखें)
- attribute “name” minutesago gte/lte - विशेषता मिनटों पहले के सापेक्ष
- attribute “name” any - विशेषता के लिए कोई भी मान सेट है
- attribute “name” notset - विशेषता के लिए कोई मान सेट नहीं है
प्राइस ईवेंट विशेषताएँ
Anchor link to- attribute “name” eq - विशेषता एक निर्दिष्ट मूल्य मान के बराबर है
- attribute “name” noteq - विशेषता एक निर्दिष्ट मूल्य मान के बराबर नहीं है
- attribute “name” gte - विशेषता एक निर्दिष्ट मूल्य से अधिक या बराबर है
- attribute “name” lte - विशेषता एक निर्दिष्ट मूल्य से कम या बराबर है
- attribute “name” between - विशेषता एक निर्दिष्ट मूल्य सीमा में है
- attribute “name” in - विशेषता निर्दिष्ट मूल्यों में से किसी के बराबर है
- attribute “name” notin - विशेषता निर्दिष्ट मूल्यों में से किसी के बराबर नहीं है
- attribute “name” any - विशेषता के लिए कोई भी मान सेट है
- attribute “name” notset - विशेषता के लिए कोई मान सेट नहीं है
लिस्ट ईवेंट विशेषताएँ
Anchor link to- attribute “name” in - विशेषता में निर्दिष्ट मानों में से कोई भी शामिल है
- attribute “name” notin - विशेषता में निर्दिष्ट मानों में से कोई भी शामिल नहीं है
- attribute “name” any - विशेषता के लिए कोई भी मान सेट है
- attribute “name” notset - विशेषता के लिए कोई मान सेट नहीं है
ईवेंट विशेषता योग
Anchor link toयोग विकल्प उसी Event(...) शर्त के अन्य विकल्पों (गणना, तिथि, प्लेटफॉर्म और विशेषता शर्तें) को पास करने वाले सभी ईवेंट में किसी इंटीजर या प्राइस विशेषता के कुल योग की तुलना करता है।
- sum “name” eq - योग एक निर्दिष्ट मान के बराबर है
- sum “name” noteq - योग एक निर्दिष्ट मान के बराबर नहीं है
- sum “name” gte - योग एक निर्दिष्ट मान से अधिक या बराबर है
- sum “name” lte - योग एक निर्दिष्ट मान से कम या बराबर है
- sum “name” between - योग एक निर्दिष्ट सीमा में है, दोनों सिरों सहित
नियम:
- विशेषता इंटीजर या प्राइस प्रकार की होनी चाहिए। किसी भी अन्य प्रकार से एक्सप्रेशन अमान्य हो जाता है।
- इंटीजर विशेषता के लिए मान पूर्ण संख्या होना चाहिए।
sum "qty" gte 1.5अमान्य है। betweenके लिए पहला मान दूसरे मान से कम या उसके बराबर होना चाहिए।- मान ऋणात्मक हो सकते हैं। ऋणात्मक विशेषता मान, जैसे रिफ़ंड, योग में से घटा दिया जाता है।
- जिस ईवेंट में विशेषता नहीं है, वह योग में 0 जोड़ता है।
- जिस डिवाइस का कोई ईवेंट अन्य विकल्पों को पास नहीं करता, वह योग के मान की परवाह किए बिना शर्त से मेल नहीं खाता।
count eq 0के साथ, शर्त उन डिवाइसों को छोड़कर सभी डिवाइसों से मेल खाती है जिनके ईवेंट अन्य विकल्पों और योगों को पास करते हैं।- एक शर्त में कई योग विकल्प AND से जोड़े जाते हैं।
Event(...)के भीतर विकल्पों का क्रम मायने नहीं रखता।
अतिरिक्त शर्त प्रकार
Anchor link toजियो शर्त
Anchor link toएक निर्दिष्ट दायरे के भीतर भौगोलिक स्थान के आधार पर डिवाइसों को लक्षित करें।
सिंटैक्स: Geo("<app-code>", <latitude>, <longitude>, <range-in-km>)
BTTS शर्त
Anchor link toडिवाइसों को उनके सूचनाएं भेजने के लिए सबसे अच्छे समय (दिन का घंटा, 0-23) के अनुसार लक्षित करें।
ऑपरेटर:
- any - भेजने के लिए कोई भी सबसे अच्छा समय मान सेट है
- eq - सटीक घंटे का मिलान
- noteq - घंटे के बराबर नहीं
- gte - घंटा इससे अधिक या बराबर
- lte - घंटा इससे कम या बराबर
अपडेटेड शर्त
Anchor link toडिवाइसों को उनके अंतिम अपडेट टाइमस्टैम्प के अनुसार फ़िल्टर करें।
ऑपरेटर:
- gte - निर्दिष्ट तिथि के बाद या उस पर अपडेट किया गया
- lte - निर्दिष्ट तिथि से पहले या उस पर अपडेट किया गया
- between - तिथि सीमा के भीतर अपडेट किया गया
सेगमेंट शर्त
Anchor link toकिसी अन्य फ़िल्टर/सेगमेंट को उसके कोड द्वारा संदर्भित करें।
फ़ीचर फ़्लैग शर्त
Anchor link toडिवाइसों को SDK से मिले फ़ीचर फ़्लैग के परिणाम के अनुसार लक्षित करें।
सिंटैक्स: FeatureFlag("<app-code>", "<flag-key>", "<state>")
स्थिति इनमें से एक मान लेती है:
enabled- वे डिवाइस जिन्हें फ़्लैग ऑन मिलाdisabled- वे डिवाइस जिन्हें फ़्लैग ऑफ़ मिलाrule:<rule_id>- वे डिवाइस जो इस नियम के सेगमेंट से मेल खाते हैं, चाहे इसके रोलआउट ने उनके लिए फ़्लैग ऑन किया हो या नहीं। फ़ीचर फ़्लैग API सेrule_idका उपयोग करें।
जिस डिवाइस ने कभी फ़्लैग का अनुरोध नहीं किया, वह किसी भी स्थिति से मेल नहीं खाता। जब फ़्लैग को Kill switch से बंद या आर्काइव किया जाता है, तो लगभग 10 सेकंड के भीतर enabled और rule: किसी भी डिवाइस से मेल नहीं खाते, और disabled हर उस डिवाइस से मेल खाता है जिसे कभी भी फ़्लैग मिला हो।
फ़्लैग और नियम एप्लिकेशन में मौजूद होने चाहिए, और अकाउंट के प्लान में फ़ीचर फ़्लैग शामिल होने चाहिए। अन्यथा सेगमेंट सेव नहीं होता, और त्रुटि में गायब फ़्लैग या नियम का नाम होता है या Your plan does not include feature flags लिखा होता है। जहाँ API कारण कोड लौटाता है, वह FILTER_EXPRESSION_FEATURE_FLAG_NOT_FOUND है। High Speed Delivery सेगमेंट में केवल टैग शर्तें हो सकती हैं, इसलिए उसमें यह शर्त नहीं हो सकती।
एप्लिकेशन शर्त डिवाइस उपस्थिति फ़्लैग
Anchor link toएप्लिकेशन की शर्तें डिवाइस और टोकन फ़िल्टरिंग को नियंत्रित करने के लिए अतिरिक्त फ़्लैग का समर्थन करती हैं:
- with_tokens - पुश नोटिफिकेशन टोकन वाले डिवाइस
- without_tokens - पुश नोटिफिकेशन टोकन के बिना डिवाइस
- with_devices - पंजीकृत डिवाइस वाले उपयोगकर्ता
- without_devices - पंजीकृत डिवाइस के बिना उपयोगकर्ता/प्रोफाइल
फ़िल्टर एक्सप्रेशन उदाहरण
Anchor link toबुनियादी उदाहरण
Anchor link to- ऐप इंस्टॉल किए हुए और पुश टोकन वाले iOS और Android डिवाइस:
A("11111-11111", ["ios","android"], [with_tokens])- ऐप इंस्टॉल किए हुए लेकिन पुश टोकन के बिना iOS और Android डिवाइस:
A("11111-11111", ["ios","android"], [without_tokens])- ऐप इंस्टॉल किए हुए iOS और Android डिवाइस, चाहे उनके पास पुश टोकन हों या नहीं:
A("11111-11111", ["ios","android"], [with_tokens, without_tokens])- सभी ऐप ग्राहक जिन्होंने ऐप में कुछ खरीदा है:
AT("11111-11111", "In-App Purchase", gte, 1)उन्नत उदाहरण
Anchor link to- टोक्यो में उपयोगकर्ता जिन्होंने पिछले 7 दिनों में ऐप खोला है:
AT("11111-11111", "City", eq, "Tokyo") * Event("11111-11111", "App Open", date daysago lte 7)- वे उपयोगकर्ता जिन्होंने पिछले 30 दिनों में $50 से अधिक की खरीदारी की है:
Event("11111-11111", "Purchase", attribute "total_price" gte 50.00, date daysago lte 30)- वे उपयोगकर्ता जिनके नाम “J” से शुरू होते हैं या “e” पर समाप्त होते हैं:
AT("11111-11111", "Name", startswith, "J") + AT("11111-11111", "Name", endswith, "e")- न्यूयॉर्क के 100 किमी के भीतर सक्रिय iOS उपयोगकर्ता जिन्होंने हाल ही में खरीदारी नहीं की है:
A("11111-11111", ["ios"], [with_tokens]) * Geo("11111-11111", 40.7128, -74.0060, 100) \ Event("11111-11111", "Purchase", date daysago lte 30)- सुबह 9 बजे से शाम 5 बजे के बीच भेजने के लिए सबसे अच्छे समय वाले उपयोगकर्ता:
BTTS("11111-11111", gte 9) * BTTS("11111-11111", lte 17)- वे उपयोगकर्ता जिन्होंने पिछले घंटे में Android या iOS पर एक विशिष्ट ईवेंट ट्रिगर किया है:
Event("11111-11111", "Button Click", platforms ["android", "ios"], date minutesago lte 60)- पिछले 3 महीनों में अपडेट किए गए डिवाइस जिनका ऐप वर्शन 4.2 या उच्चतर है:
Updated("11111-11111", gte "2024-07-01 00:00:00") * AT("11111-11111", "App Version", gte, "4.2")