ट्रिगर ईमेल एक्सटेंशन का इस्तेमाल करना

ट्रिगर ईमेल एक्सटेंशन (firestore-send-email) की मदद से, ईमेल अपने-आप भेजा जा सकता है जो Cloud Firestore संग्रह में मौजूद दस्तावेज़ों पर आधारित हैं. इसमें कोई दस्तावेज़ जोड़ रहा है कलेक्शन इस एक्सटेंशन को दस्तावेज़ के फ़ील्ड. दस्तावेज़ के टॉप लेवल फ़ील्ड, ईमेल भेजने वाले का नाम तय करते हैं और पाने वालों के लिए. इसमें to, cc, और bcc विकल्प (साथ काम करने वाले हर यूआईडी) शामिल हैं. कॉन्टेंट बनाने दस्तावेज़ का message फ़ील्ड अन्य ईमेल एलिमेंट के बारे में बताता है, जैसे कि सब्जेक्ट लाइन और ईमेल का मुख्य हिस्सा (सादा टेक्स्ट या एचटीएमएल) होना चाहिए.

यहां एक बुनियादी दस्तावेज़ लिखने का उदाहरण दिया गया है, जो इस एक्सटेंशन को ट्रिगर करेगा:

admin.firestore().collection('mail').add({
  to: 'someone@example.com',
  message: {
    subject: 'Hello from Firebase!',
    html: 'This is an <code>HTML</code> email body.',
  },
})

ईमेल को रेंडर करने के लिए, इस एक्सटेंशन को वैकल्पिक तौर पर भी कॉन्फ़िगर किया जा सकता है. ऐसा करने के लिए, हैंडलबार टेंप्लेट.

प्री-इंस्टॉलेशन सेटअप

एक्सटेंशन इंस्टॉल करने से पहले, इन चरणों को पूरा करें:

  1. अपनी आउटगोइंग मेल सेवा सेट अप करें.

    ट्रिगर ईमेल एक्सटेंशन इंस्टॉल करते समय, आपको एक एसएमटीपी सर्वर के कनेक्शन और पुष्टि की जानकारी, जो का इस्तेमाल ईमेल भेजने के लिए किया जाता है. आम तौर पर, इसे ईमेल डिलीवरी सेवा देने वाली कंपनी उपलब्ध कराती है जैसे कि Sendgrid, Mailgun या Mailchimp Transactional Email, लेकिन साथ ही, आपके पास खुद ही कोई सर्वर हो.

  2. ईमेल दस्तावेज़ों का कलेक्शन बनाएं.

    ट्रिगर ईमेल एक्सटेंशन, Cloud Firestore में नए दस्तावेज़ों को सुनता है जिसे आप तय करते हैं. जब उसे कोई नया दस्तावेज़ मिलता है, तो दस्तावेज़ के फ़ील्ड के आधार पर ईमेल भेजता है. किसी भी Cloud Firestore का इस्तेमाल किया जा सकता है इस मकसद से इकट्ठा किया जाने वाला डेटा; इस पेज पर दिए गए उदाहरणों में कलेक्शन का इस्तेमाल किया गया है email नाम दिया गया.

  3. अपने ईमेल दस्तावेज़ों के कलेक्शन के लिए, सुरक्षा के नियम सेट अप करें.

    इस एक्सटेंशन का इस्तेमाल करके, सीधे क्लाइंट से ईमेल डिलीवरी को ट्रिगर किया जा सकता है का इस्तेमाल करें. हालांकि, आपको संभावित दुरुपयोग से बचने के लिए संग्रह (आप नहीं चाहते कि उपयोगकर्ता आपकी कंपनी के पते से आर्बिट्रेरी ईमेल!).

    सुरक्षा के नियम हर ऐप्लिकेशन के लिए अलग-अलग होंगे, लेकिन आपको यह करना चाहिए हमेशा पक्का करें कि ईमेल सिर्फ़ तय किए गए लोगों को भेजे जाएं और फ़्री-फ़ॉर्म कॉन्टेंट को कम से कम रखा जाता है. टेंप्लेट यहां आपकी मदद कर सकते हैं—आपके पास सुरक्षा नियमों का इस्तेमाल करके, यह पुष्टि कर सकता है कि आपके डेटा की मदद से, टेंप्लेट आपकी उम्मीदों से मैच करता है. इसमें यह भी बताया गया है कि उपयोगकर्ता को क्या करने की अनुमति दी जानी चाहिए ट्रिगर होना चाहिए.

  4. ज़रूरी नहीं: उपयोगकर्ताओं का कलेक्शन सेट अप करना.

    इस एक्सटेंशन के सामान्य इस्तेमाल में, आप ईमेल पाने वालों के बारे में बताते हैं इसके to, cc, और bcc फ़ील्ड में अपने ईमेल पते दर्ज करके तो उसे भी सेव किया जा सकता है. विकल्प के तौर पर, अगर आपका उपयोगकर्ता डेटाबेस Cloud Firestore, उपयोगकर्ताओं की जानकारी का इस्तेमाल करके, तय किया जा सकता है यूआईडी. इसके लिए काम करने के लिए, आपके उपयोगकर्ता संग्रह को इन शर्तों को पूरा करना होगा:

    • कलेक्शन, यूज़र आईडी पर होना चाहिए. इसका मतलब है कि हर दस्तावेज़ के लिए, कलेक्शन का उपयोगकर्ता दस्तावेज़, उपयोगकर्ता की Firebase से पुष्टि करने का यूआईडी होना चाहिए.
    • हर उपयोगकर्ता दस्तावेज़ में उपयोगकर्ता के ईमेल वाला email फ़ील्ड होना चाहिए इससे पहले ही अपने कारोबार के हिसाब से name@yourcompany.com जैसा कोई ईमेल पता बनाएं.
  5. ज़रूरी नहीं: टेंप्लेट का कलेक्शन सेट अप करें.

    हैंडलबार टेंप्लेट का इस्तेमाल करके, ईमेल रेंडर किए जा सकते हैं. ऐसा करने के लिए, आपको अपने डेटा को टेम्प्लेट.

    ट्रिगर ईमेल एक्सटेंशन के साथ हैंडलबार टेंप्लेट का इस्तेमाल करना लेख पढ़ें देखें.

एक्सटेंशन इंस्टॉल करें

एक्सटेंशन इंस्टॉल करने के लिए, Firebase एक्सटेंशन इंस्टॉल करना करें. सारांश में, इनमें से कोई एक काम करें:

एक्सटेंशन इंस्टॉल करते समय, आपको अपना SMTP बताने के लिए कहा जाएगा कनेक्शन की जानकारी और Cloud Firestore के कलेक्शन, जो आपने पहले सेट अप किए हों.

एक्सटेंशन का इस्तेमाल करना

इंस्टॉलेशन के बाद, यह एक्सटेंशन जिसे आपने कॉन्फ़िगर किया हो. ईमेल को इसके कॉन्टेंट के आधार पर डिलीवर किया जाता है दस्तावेज़ के फ़ील्ड. सबसे ऊपर के फ़ील्ड, ईमेल भेजने वाले और इसकी जानकारी देते हैं पाने वाले. message फ़ील्ड में, भेजे जाने वाले ईमेल की जानकारी होती है, ईमेल का मुख्य हिस्सा शामिल करें.

उदाहरण: ईमेल भेजना

आसान मैसेज भेजने के लिए, to की मदद से मैसेज के कलेक्शन में कोई दस्तावेज़ जोड़ें फ़ील्ड और message फ़ील्ड में इन कॉन्टेंट का इस्तेमाल किया जा सकता है:

to: ['someone@example.com'],
message: {
  subject: 'Hello from Firebase!',
  text: 'This is the plaintext section of the email body.',
  html: 'This is the <code>HTML</code> section of the email body.',
}

मैसेज भेजने और पाने वाले के फ़ील्ड

दस्तावेज़ के टॉप-लेवल फ़ील्ड, ईमेल भेजने वाले और पाने वाले व्यक्ति के बारे में जानकारी देते हैं जानकारी. उपलब्ध फ़ील्ड हैं:

  • भेजने वाला: भेजने वाले का ईमेल पता. अगर दस्तावेज़ में इसकी जानकारी नहीं दी गई है, तो कॉन्फ़िगर किए गए "डिफ़ॉल्ट FROM पते" का इस्तेमाल करता है पैरामीटर.
  • जवाब देने के लिए: वह ईमेल पता जिस पर जवाब दिया जा रहा है. अगर दस्तावेज़ में इसकी जानकारी नहीं दी गई है, तो कॉन्फ़िगर किए गए "जवाब देने का डिफ़ॉल्ट पता" का इस्तेमाल करता है पैरामीटर.
  • पाने वाला: ईमेल पाने वाले लोगों का ईमेल पता या ऐसा कलेक्शन जिसमें ईमेल पाने वाले कई ईमेल पते शामिल हों.
  • toUids: ऐसा कलेक्शन जिसमें ईमेल पाने वाले लोगों के यूआईडी शामिल होते हैं.
  • cc: पाने वाले का ईमेल पता या एक कलेक्शन, जिसमें ईमेल पाने वाले एक से ज़्यादा ईमेल पते होते हैं.
  • ccUids: ऐसा कलेक्शन जिसमें कॉपी पाने वाले लोगों के यूआईडी शामिल होते हैं.
  • गुप्त प्रति: ईमेल पाने वालों का ईमेल पता या एक कलेक्शन, जिसमें ईमेल पाने वाले एक से ज़्यादा ईमेल पते होते हैं.
  • bccUids: ऐसा कलेक्शन जिसमें गुप्त कॉपी पाने वाले लोगों के यूआईडी शामिल होते हैं.
  • हेडर: अतिरिक्त हेडर फ़ील्ड का ऑब्जेक्ट (उदाहरण के लिए, {"X-Custom-Header": "value", "X-Second-Custom-Header": "value"}).

ध्यान दें: toUids, ccUids, और bccUids विकल्प इसके हिसाब से ईमेल डिलीवर करते हैं उपयोगकर्ता के यूआईडी, Cloud Firestore दस्तावेज़ में मौजूद ईमेल पतों से जोड़े गए हैं. इस्तेमाल करने के लिए अगर हां, तो आपको नीचे दिए गए विकल्पों के लिए Cloud Firestore कलेक्शन तय करना होगा. एक्सटेंशन का "उपयोगकर्ताओं का संग्रह" पैरामीटर. इसके बाद, एक्सटेंशन हर यूआईडी के लिए email फ़ील्ड की जानकारी, toUids, ccUids, और/या bccUids फ़ील्ड में दी गई है.

मैसेज फ़ील्ड

दस्तावेज़ के message फ़ील्ड में ईमेल. आम तौर पर, यह फ़ील्ड सिर्फ़ इसमें चल रहे भरोसेमंद कोड से भरा जाना चाहिए आपके सर्वर या Cloud Functions मौजूद है (इन्हें देखने के लिए "सुरक्षा नियम और ईमेल" सेक्शन देखें).

message फ़ील्ड के लिए उपलब्ध प्रॉपर्टी ये हैं:

  • messageId: ईमेल के लिए मैसेज आईडी का हेडर.
  • विषय: ईमेल का विषय.
  • टेक्स्ट: ईमेल का सादा टेक्स्ट.
  • html: ईमेल का एचटीएमएल कॉन्टेंट.
  • amp: ईमेल का AMP4EMAIL कॉन्टेंट.
  • अटैचमेंट: अटैचमेंट वाला कलेक्शन; नोडमेलर के विकल्प इस्तेमाल किए जा सकते हैं: utf-8 स्ट्रिंग, कस्टम कॉन्टेंट टाइप, यूआरएल, कोड में बदली गई स्ट्रिंग, डेटा यूआरआई, और पहले से जनरेट किया गया MIME नोड. ध्यान रखें कि आपके ईमेल पर क्लाउड सर्वर के फ़ाइल सिस्टम का ऐक्सेस नहीं है.

बेहतर इस्तेमाल के लिए

इस एक्सटेंशन के ज़्यादा बेहतर इस्तेमाल के बारे में जानें: