Firebase की इन-ऐप्लिकेशन मैसेज सेवा, पहले से कॉन्फ़िगर किए गए व्यवहार और मैसेज टाइप का एक उपयोगी सेट उपलब्ध कराती है. इसमें डिफ़ॉल्ट लुक और स्टाइल होता है. हालांकि, कुछ मामलों में आपको व्यवहार और मैसेज के कॉन्टेंट को बेहतर बनाना पड़ सकता है. इन-ऐप्लिकेशन मैसेज की सुविधा से, मैसेज में कार्रवाइयां जोड़ी जा सकती हैं. साथ ही, मैसेज के लुक और स्टाइल को पसंद के मुताबिक बनाया जा सकता है.
अपने मैसेज में कोई कार्रवाई जोड़ना
कार्रवाइयों की मदद से, इन-ऐप्लिकेशन मैसेज का इस्तेमाल करके उपयोगकर्ताओं को किसी वेबसाइट या आपके ऐप्लिकेशन की किसी खास स्क्रीन पर भेजा जा सकता है.
डीप लिंक हैंडलर लागू करना
Firebase In-App Messaging, कार्रवाइयों को प्रोसेस करने के लिए लिंक हैंडलर का इस्तेमाल करता है. SDK टूल, कई हैंडलर का इस्तेमाल कर सकता है. इसलिए, अगर आपके ऐप्लिकेशन में पहले से ही कोई हैंडलर मौजूद है, तो Firebase In-App Messaging बिना किसी सेटअप के उसका इस्तेमाल कर सकता है. अगर आपके पास अब तक कोई हैंडलर नहीं है, तो Firebase Dynamic Links का इस्तेमाल किया जा सकता है. ज़्यादा जानने के लिए, iOS पर डाइनैमिक लिंक बनाना लेख पढ़ें.
Firebase कंसोल का इस्तेमाल करके, अपने मैसेज में कार्रवाई जोड़ें
ऐप्लिकेशन में लिंक हैंडलर जोड़ने के बाद, किसी कार्रवाई के साथ कैंपेन बनाया जा सकता है.
Firebase कंसोल में, DevOps और यूज़र ऐक्टिविटी > मैसेजिंग पर जाएं.
नया कैंपेन सेट अप करने के लिए, वर्कफ़्लो लॉन्च करें:
अगर यह आपका पहला कैंपेन है, तो:
- अपना पहला कैंपेन बनाएं पर क्लिक करें.
- Firebase की इन-ऐप्लिकेशन मैसेज सुविधा को चुनें. इसके बाद, बनाएं पर क्लिक करें.
अगर आपने पहले कैंपेन बनाए हैं, तो:
- कैंपेन टैब में, नया कैंपेन पर क्लिक करें.
- इन-ऐप्लिकेशन मैसेजिंग को चुनें.
कैंपेन सेट अप करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.
कार्ड, बटन का टेक्स्ट, और बटन की कार्रवाई, इमेज की कार्रवाई या बैनर की कार्रवाई दें. इसमें कार्रवाई, काम का डीप लिंक होनी चाहिए.
कार्रवाई का फ़ॉर्मैट, आपके चुने गए मैसेज लेआउट पर निर्भर करता है. मोडल में ऐक्शन बटन होते हैं. इन बटन के टेक्स्ट, टेक्स्ट के रंग, और बैकग्राउंड के रंग को पसंद के मुताबिक बनाया जा सकता है. वहीं दूसरी ओर, इमेज और टॉप बैनर इंटरैक्टिव हो जाते हैं. साथ ही, टैप करने पर तय की गई कार्रवाई को ट्रिगर करते हैं.
मैसेज के लुक और स्टाइल में बदलाव करना
Firebase In-App Messaging की मदद से, मैसेज के डिसप्ले को पसंद के मुताबिक बनाया जा सकता है. इससे, आपके ऐप्लिकेशन में मैसेज के लेआउट, फ़ॉन्ट स्टाइल, बटन के आकार, और अन्य जानकारी को रेंडर करने का तरीका बदला जा सकता है. मैसेज के डिसप्ले में बदलाव करने के दो तरीके हैं: डिफ़ॉल्ट Firebase In-App Messaging डिसप्ले में बदलाव करें या शुरू से अपनी मैसेज डिसप्ले लाइब्रेरी बनाएं.
डिफ़ॉल्ट डिसप्ले में बदलाव करना
मैसेज को पसंद के मुताबिक बनाने का सबसे आसान तरीका है कि Firebase In-App Messaging के डिफ़ॉल्ट मैसेज डिसप्ले कोड का इस्तेमाल किया जाए.
firebase-ios-sdk रिपॉज़िटरी को क्लोन करें
शुरू करने के लिए, firebase-ios-sdk रेपो की नई रिलीज़ को क्लोन करें. इसके बाद, InAppMessaging डायरेक्ट्री खोलें.
बदलाव करने के लिए मैसेज टाइप चुनें
क्लोन किए गए रेपो की मदद से, Firebase In-App Messaging मैसेज के किसी भी या सभी टाइप में बदलाव किया जा सकता है:
Card, Modal, Banner, और ImageOnly. हर टाइप, Firebase In-App Messaging कैंपेन बनाने के फ़्लो में मौजूद मैसेज लेआउट से जुड़ा होता है.
इसलिए, हर टाइप के पास अलग-अलग डेटा सेट का ऐक्सेस होता है. यह Firebase कंसोल में, कैंपेन को पसंद के मुताबिक बनाने के विकल्पों से तय होता है:
| टाइप | titleText | bodyText | textColor | backgroundColor | imageData | actionButton | secondaryActionButton |
|---|---|---|---|---|---|---|---|
| कार्ड | |||||||
| मोडल | |||||||
| बैनर | |||||||
| ImageOnly |
मैसेज डिसप्ले रेंडरिंग कोड में बदलाव करना
मैसेज टाइप की सीमाओं को ध्यान में रखते हुए, आपके पास उन्हें अपनी पसंद के मुताबिक बदलने की सुविधा होती है. आपके पास ऐसा बैनर बनाने का विकल्प होता है जो आपके ऐप्लिकेशन के सबसे नीचे दिखता है. साथ ही, आपके पास किसी मॉडल पर ऐक्शन बटन को इधर-उधर ले जाने, उपयोगकर्ता के फ़ीड में ऐप्लिकेशन में दिखने वाले मैसेज को एम्बेड करने या कोई अन्य बदलाव करने का विकल्प होता है. इससे मैसेज का लुक और स्टाइल आपके ऐप्लिकेशन के हिसाब से सेट हो जाएगा.
मैसेज के डिसप्ले में बदलाव करते समय, इन दो मुख्य बातों का ध्यान रखना ज़रूरी है:
- मैसेज टाइप की डायरेक्ट्री: हर मैसेज टाइप की एक अलग डायरेक्ट्री होती है. इसमें ऐसी फ़ाइलें होती हैं जिनसे उस टाइप के लॉजिक का पता चलता है:
- स्टोरीबोर्ड:
InAppMessagingलाइब्रेरी में एक.storyboardफ़ाइल भी होती है. इसकी मदद से, तीनों तरह के मैसेज के लिए यूज़र इंटरफ़ेस (यूआई) तय किया जा सकता है:
अपनी पसंद के मैसेज टाइप की डायरेक्ट्री में मौजूद फ़ाइलों और .storyboard के उनसे जुड़े सेक्शन में बदलाव करें, ताकि आपके कस्टम मैसेज डिसप्ले बनाए जा सकें.
बदले गए InAppMessaging कोड का इस्तेमाल करने के लिए, अपनी podfile को अपडेट करें
Firebase In-App Messaging को डिफ़ॉल्ट डिसप्ले के बजाय, आपके बदले हुए मैसेज डिसप्ले का इस्तेमाल करने के लिए, अपनी podfile को अपडेट करें, ताकि आपकी पसंद के मुताबिक बनाई गई InAppMessaging लाइब्रेरी का इस्तेमाल किया जा सके:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
मैसेज दिखाने के लिए अपनी लाइब्रेरी बनाना
मैसेज दिखाने के लिए यूज़र इंटरफ़ेस (यूआई) बनाने के लिए, आपको सिर्फ़ InAppMessaging लाइब्रेरी का इस्तेमाल करने की ज़रूरत नहीं है. आपके पास खुद कोड लिखने का विकल्प भी है.
InAppMessagingDisplay प्रोटोकॉल को लागू करने वाली क्लास बनाएं
Firebase In-App Messaging, Firebase सर्वर और आपके ऐप्लिकेशन के बीच कम्यूनिकेशन को मैनेज करने के लिए, InAppMessaging क्लास का इस्तेमाल करता है. इसके बाद, वह क्लास, मिले मैसेज को दिखाने के लिए InAppMessagingDisplay प्रोटोकॉल का इस्तेमाल करती है.
अपनी डिसप्ले लाइब्रेरी बनाने के लिए, प्रोटोकॉल को लागू करने वाली क्लास लिखें.
प्रोटोकॉल की परिभाषा और इसके मुताबिक काम करने के तरीके के बारे में जानकारी, InAppMessaging लाइब्रेरी की FIRInAppMessagingDisplay.h फ़ाइल में दी गई है.
messageDisplayComponent को अपनी मैसेज डिसप्ले लाइब्रेरी इस्तेमाल करने के लिए सेट करें
InAppMessaging अपनी messageDisplayComponent प्रॉपर्टी का इस्तेमाल करके यह तय करता है कि मैसेज दिखाते समय किस ऑब्जेक्ट का इस्तेमाल करना है. उस प्रॉपर्टी को अपने कस्टम मैसेज डिसप्ले क्लास के ऑब्जेक्ट पर सेट करें, ताकि Firebase In-App Messaging को मैसेज रेंडर करने के लिए आपकी लाइब्रेरी का इस्तेमाल करने की जानकारी मिल सके:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance