Dialogflow ES की मदद से Google Chat ऐड-ऑन बनाना

इस पेज पर, Google Workspace ऐड-ऑन के तौर पर Google Chat ऐप्लिकेशन बनाने का तरीका बताया गया है. यह ऐप्लिकेशन, सामान्य भाषा को समझने और उसका जवाब देने के लिए Dialogflow ES का इस्तेमाल करता है. Dialogflow CX का इस्तेमाल करके भी, Dialogflow CX Google Chat ऐप्लिकेशन बनाया जा सकता है. यह Google Chat के साथ सीधे तौर पर इंटिग्रेट होता है. इसके लिए, Dialogflow CX Google Chat गाइड में दिया गया तरीका अपनाएं.

मकसद

  • अपना एनवायरमेंट सेट अप करें.
  • Dialogflow ES एजेंट बनाना और उसे डिप्लॉय करना.
  • Dialogflow ES एजेंट की मदद से, Chat ऐप्लिकेशन बनाएं और उसे डिप्लॉय करें.
  • Chat ऐप्लिकेशन को टेस्ट करें.

ज़रूरी शर्तें

आर्किटेक्चर

यहां दिए गए डायग्राम में, Dialogflow की मदद से बनाए गए चैट ऐप्लिकेशन का आर्किटेक्चर दिखाया गया है:

Dialogflow की मदद से लागू किए गए Chat ऐप्लिकेशन का आर्किटेक्चर.

ऊपर दिए गए डायग्राम में, Dialogflow Chat ऐप्लिकेशन के साथ इंटरैक्ट करने वाले उपयोगकर्ता के लिए, जानकारी का फ़्लो इस तरह होता है:

  1. कोई उपयोगकर्ता, Chat ऐप्लिकेशन को Chat में मैसेज भेजता है. यह मैसेज, डायरेक्ट मैसेज या Chat स्पेस में भेजा जाता है.
  2. Dialogflow का वर्चुअल एजेंट, जो में मौजूद होता है, मैसेज को पाने और प्रोसेस करने के बाद जवाब जनरेट करता है.
  3. विकल्प के तौर पर, Dialogflow वेबहुक का इस्तेमाल करके, Dialogflow एजेंट तीसरे पक्ष की बाहरी सेवाओं के साथ इंटरैक्ट कर सकता है. जैसे, प्रोजेक्ट मैनेजमेंट सिस्टम या टिकट सिस्टम.
  4. Dialogflow एजेंट, Chat ऐप्लिकेशन की सेवा को Chat में जवाब भेजता है.
  5. जवाब, Chat स्पेस में दिया जाता है.

एनवायरमेंट सेट अप करना

Google API का इस्तेमाल करने से पहले, आपको उन्हें Google Cloud प्रोजेक्ट में चालू करना होगा. एक ही Google Cloud प्रोजेक्ट में, एक या उससे ज़्यादा एपीआई चालू किए जा सकते हैं.
  1. Google API Console में, Google Chat API और Dialogflow API को चालू करें.

    एपीआई चालू करना

  2. पुष्टि करें कि आपने सही Cloud प्रोजेक्ट में एपीआई चालू किए हैं. इसके बाद, आगे बढ़ें पर क्लिक करें.

  3. पुष्टि करें कि आपने सही एपीआई चालू किए हैं. इसके बाद, चालू करें पर क्लिक करें.

Dialogflow ES एजेंट बनाना

अगर आपके पास कोई मौजूदा Dialogflow ES एजेंट नहीं है, तो:

  1. Dialogflow ES Console पर जाएं.
  2. Create Agent पर क्लिक करें.
  3. इसे कोई नाम दें, डिफ़ॉल्ट भाषा और टाइम ज़ोन चुनें.
  4. इसे अपने Cloud प्रोजेक्ट से जोड़ें.
  5. बनाएं पर क्लिक करें.
  6. अपने चैट ऐप्लिकेशन में बातचीत के फ़्लो के लिए, ज़रूरत के हिसाब से इंटेंट और इकाइयां बनाएं. बातचीत की शुरुआत के लिए, ग्रीटिंग इंटेंट का इस्तेमाल किया जा सकता है.
  7. अपने प्रोजेक्ट आईडी को नोट कर लें.

ज़्यादा जानकारी के लिए, एजेंट बनाना लेख पढ़ें.

Chat ऐप्लिकेशन बनाएं और उसे Dialogflow एजेंट से कनेक्ट करें

Dialogflow ES एजेंट बनाने के बाद, उसे चैट ऐप्लिकेशन में बदलने के लिए यह तरीका अपनाएं:

  1. Google API Console में, Google Chat API पर जाएं. "Google Chat API" खोजें और Google Chat API पर क्लिक करें. इसके बाद, मैनेज करें पर क्लिक करें.

    Chat API पर जाएं

  2. कॉन्फ़िगरेशन पर क्लिक करें और Chat ऐप्लिकेशन सेट अप करें:

    1. ऐप्लिकेशन का नाम में, Dialogflow App डालें.
    2. अवतार यूआरएल में, https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png डालें.
    3. ब्यौरा में, Responds to real human conversation डालें.
    4. सुविधाएं में जाकर, स्पेस और ग्रुप बातचीत में शामिल हों को चुनें.
    5. कनेक्शन सेटिंग में जाकर, Dialogflow चुनें.
    6. Dialogflow की सेटिंग में जाकर, Dialogflow ES चुनें.
    7. अपने डोमेन में Chat ऐप्लिकेशन को कुछ लोगों और ग्रुप के लिए उपलब्ध कराएं और अपना ईमेल पता डालें.
    8. लॉग में जाकर, लॉगिंग में लॉग की गई गड़बड़ियां चुनें.
  3. सेव करें पर क्लिक करें.

Chat ऐप्लिकेशन, Chat पर मैसेज पाने और उनका जवाब देने के लिए तैयार है.

Chat ऐप्लिकेशन की टेस्टिंग करना

Dialogflow ES Chat ऐप्लिकेशन को Google Chat में मैसेज भेजकर आज़माएँ.

  1. उस Google Workspace खाते से Google Chat खोलें जिसका इस्तेमाल आपने भरोसेमंद टेस्टर के तौर पर खुद को शामिल करते समय किया था.

    Google Chat पर जाएं

  2. नई चैट पर क्लिक करें.
  3. एक या उससे ज़्यादा लोगों को जोड़ें फ़ील्ड में, अपने Chat ऐप्लिकेशन का नाम डालें.
  4. नतीजों में से अपना Chat ऐप्लिकेशन चुनें. एक डायरेक्ट मैसेज खुलता है.

  5. ऐप्लिकेशन को भेजे गए नए डायरेक्ट मैसेज में, Hello टाइप करें और enter दबाएं.

    Dialogflow Chat ऐप्लिकेशन, आपको वेलकम मैसेज भेजकर जवाब देता है.

टेक्स्ट वाले जवाब

टेक्स्ट वाले जवाब, Google Chat पर टेक्स्ट मैसेज के तौर पर भेजे जाते हैं. इस फ़ॉर्मैटिंग की मदद से, टेक्स्ट को बोल्ड या इटैलिक किया जा सकता है. इसके लिए, टेक्स्ट को कुछ (मार्कडाउन लाइट) सिंबल में रैप करें.

टेक्स्ट मैसेज का जवाब, Dialogflow Console में डिफ़ॉल्ट टेक्स्ट जवाब की तरह दिखता है. हालांकि, एपीआई से मिला रॉ डेटा थोड़ा अलग दिखेगा. यह प्लैटफ़ॉर्म कॉन्फ़िगरेशन को GOOGLE_HANGOUTS पर भी सेट करता है. यह कई इंटिग्रेशन के लिए एजेंट बनाते समय काम आ सकता है.

"fulfillmentMessages": [
{
   "text": {
   "text": [
        "This is a test."
   ]
},
  "platform": "GOOGLE_HANGOUTS"
},

कार्ड

कार्ड के जवाब, Google Chat पर कार्ड मैसेज के तौर पर भेजे जाते हैं.

इमेज

इमेज वाले जवाब, Google Chat को Google Chat इमेज विजेट के तौर पर भेजे जाते हैं.

कस्टम पेलोड

Google Chat के अन्य तरह के मैसेज भेजने के लिए, कस्टम पेलोड का इस्तेमाल किया जा सकता है.

Google Chat के कस्टम पेलोड की मदद से, ज़्यादा बेहतर कार्ड बनाए जा सकते हैं. एक कार्ड में एक या कई सेक्शन हो सकते हैं. हर सेक्शन में एक हेडर हो सकता है. इस सुविधा के साथ बनाए जा सकने वाले कुछ कॉम्बिनेशन देखने के लिए, Google Workspace ऐड-ऑन की मदद से Chat कार्ड को बढ़ाने से जुड़ी रेफ़रंस गाइड देखें. हालांकि, कस्टम पेलोड का इस्तेमाल करने का मतलब है कि आपको JSON फ़ॉर्मैट देना होगा.

कार्ड वाला मैसेज बनाने के लिए, कस्टम पेलोड का उदाहरण यहां दिया गया है:

{ "hangouts": { "hostAppDataAction": { "chatDataAction": {
  "createMessageAction": { "message": { "cardsV2": [{
    "cardId": "pizza",
    "card": {
      "header": {
        "title": "Pizza Delivery Customer Support",
        "subtitle": "pizzadelivery@example.com",
        "imageUrl": "https://goo.gl/aeDtrS"
      },
      "sections": [{ "widgets": [{ "textParagraph": {
        "text": " Your pizza is here!"
      }}]}]
    }
  }]}}
}}}}

सीमाएं और ज़रूरी बातें

  • Dialogflow के साथ Google Workspace ऐड-ऑन का इस्तेमाल करते समय, चैट इवेंट ऑब्जेक्ट पर ये सीमाएं और शर्तें लागू होती हैं:
    • ऐप्लिकेशन होम इवेंट: फ़िलहाल, APP_HOME इवेंट के लिए सहायता उपलब्ध नहीं है.
    • Dialogflow क्वेरी इनपुट: Dialogflow एजेंट को क्वेरी इनपुट के तौर पर भेजा गया टेक्स्ट, इवेंट टाइप पर निर्भर करता है:
      • MESSAGE: चैट मैसेज में मौजूद argumentText फ़ील्ड की वैल्यू.
      • APP_COMMAND: स्ट्रिंग "APP_COMMAND_PAYLOAD".
      • ADDED_TO_SPACE: डिफ़ॉल्ट तौर पर सेट किया गया वेलकम इवेंट भेजा जाता है.
      • REMOVED_FROM_SPACE: स्ट्रिंग "REMOVED_FROM_SPACE_PAYLOAD".
      • CARD_CLICKED: स्ट्रिंग "BUTTON_CLICKED_PAYLOAD".
      • WIDGET_UPDATED: स्ट्रिंग "WIDGET_UPDATED_PAYLOAD" (इसका इस्तेमाल अपने-आप भरने की सुविधा के लिए किया जाता है).
    • पूरा इवेंट पेलोड: चैट इंटरैक्शन इवेंट का पूरा JSON पेलोड, Dialogflow को WebhookRequest.payload फ़ील्ड में भेजा जाता है. इसे Dialogflow वेबहुक में ऐक्सेस किया जा सकता है. ज़्यादा जानकारी के लिए, Dialogflow ES के वेबहुक अनुरोध का दस्तावेज़ देखें.
  • कमांड का जवाब देने और कार्ड या डायलॉग से डेटा पाने के लिए ध्यान रखने वाली बातें:
  • लिंक की झलक दिखाने की सुविधा काम नहीं करती.
  • अगर Dialogflow एजेंट सिर्फ़ एक मैसेज का जवाब देता है, तो मैसेज को Google Chat पर सिंक्रोनस तरीके से भेजा जाता है. अगर Dialogflow एजेंट एक से ज़्यादा मैसेज का जवाब देता है, तो सभी मैसेज को Chat में एसिंक्रोनस तरीके से भेजा जाता है. इसके लिए, Chat API में spaces.messages रिसॉर्स पर create तरीके को हर मैसेज के लिए एक बार कॉल किया जाता है.
  • Chat के साथ Dialogflow ES इंटिग्रेशन का इस्तेमाल करते समय, Dialogflow एजेंट और Chat ऐप्लिकेशन को एक ही Google Cloud प्रोजेक्ट में सेट अप किया जाना चाहिए.

समस्या हल करें

अपने Chat ऐप्लिकेशन को डीबग करने के लिए, गड़बड़ी के लॉग की समीक्षा करें. यह ऐप्लिकेशन Dialogflow का इस्तेमाल करता है. इसलिए, आपके पास लॉगिंग और समस्या हल करने के लिए कई संसाधन उपलब्ध हैं:

व्यवस्थित करें

इस ट्यूटोरियल में इस्तेमाल किए गए संसाधनों के लिए, अपने खाते से शुल्क लिए जाने से बचने के लिए, हमारा सुझाव है कि आप Cloud प्रोजेक्ट मिटा दें.

  1. Google API Console में, संसाधन मैनेज करें पेज पर जाएं. मेन्यू > IAM और एडमिन > संसाधन मैनेज करें पर क्लिक करें.

    Resource Manager पर जाएं

  2. प्रोजेक्ट की सूची में, वह प्रोजेक्ट चुनें जिसे आपको मिटाना है. इसके बाद, मिटाएं पर क्लिक करें.
  3. डायलॉग बॉक्स में, प्रोजेक्ट आईडी डालें. इसके बाद, प्रोजेक्ट मिटाने के लिए बंद करें पर क्लिक करें.
  • Dialogflow CX, Chat ऐप्लिकेशन के साथ Dialogflow का इस्तेमाल करने का एक और तरीका है.