Google Chat में स्लैश कमांड का जवाब देना

इस पेज पर, स्लैश निर्देशों का जवाब देने के लिए, Google Chat ऐप्लिकेशन को कॉन्फ़िगर करने का तरीका बताया गया है.

Google Chat में, ऐड-ऑन उपयोगकर्ताओं को Google Chat ऐप्लिकेशन के तौर पर दिखते हैं. ज़्यादा जानने के लिए, Google Chat का ऐक्सेस देने की सुविधा के बारे में खास जानकारी देखें.

स्लैश कमांड, एक सामान्य तरीका है जिससे उपयोगकर्ता Chat ऐप्लिकेशन को इस्तेमाल करते हैं. स्लैश कमांड की मदद से, उपयोगकर्ता Chat ऐप्लिकेशन की मुख्य सुविधाओं को खोज सकते हैं और उनका इस्तेमाल कर सकते हैं. यह तय करने के लिए कि आपको स्लैश कमांड सेट अप करने चाहिए या नहीं और उपयोगकर्ता इंटरैक्शन को डिज़ाइन करने का तरीका जानने के लिए, Chat API दस्तावेज़ में सभी उपयोगकर्ता सफ़र तय करें देखें.

उपयोगकर्ता स्लैश कमांड का इस्तेमाल कैसे करते हैं

स्लैश कमांड का इस्तेमाल करने के लिए, उपयोगकर्ता स्लैश (/) टाइप करते हैं. इसके बाद, वे Chat ऐप्लिकेशन के बारे में जानकारी पाने के लिए, /about जैसे कोई छोटा टेक्स्ट कमांड टाइप करते हैं. उपयोगकर्ता, Google Chat में स्लैश टाइप करके, उपलब्ध स्लैश कमांड देख सकते हैं. इससे एक विंडो खुलती है, जिसमें Chat ऐप्लिकेशन के लिए उपलब्ध कमांड की सूची दिखती है:

स्लैश कमांड विंडो
पहली इमेज: यह विंडो तब दिखती है, जब उपयोगकर्ता Google Chat में स्लैश टाइप करते हैं.

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

उदाहरण के लिए, अगर उपयोगकर्ता को किसी स्पेस में कोई Chat ऐप्लिकेशन दिखता है, तो वह /about या /help जैसे निर्देशों का इस्तेमाल करके उस ऐप्लिकेशन के बारे में जान सकता है. स्पेस में मौजूद सभी लोगों को सूचना न देने के लिए, Chat ऐप्लिकेशन निजी तौर पर जवाब दे सकता है. इसमें, Chat ऐप्लिकेशन को इस्तेमाल करने और सहायता पाने के तरीके के बारे में जानकारी दी जा सकती है.

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

Node.js

Google Workspace का एक ऐड-ऑन, जो Google Chat की सुविधाओं को बेहतर बनाता है. इसे बनाने के लिए, एचटीटीपी से जुड़ी शुरुआती जानकारी वाला लेख पढ़ें.

Apps Script

Google Workspace का एक ऐड-ऑन, जो Google Chat की सुविधाओं को बेहतर बनाता है. कोई ऐप्लिकेशन बनाने के लिए, Apps Script का शुरुआती कोर्स पूरा करें.

स्लैश कमांड सेट अप करना

इस सेक्शन में, स्लैश कमांड सेट अप करने के लिए, इन चरणों को पूरा करने का तरीका बताया गया है:

  1. अपने स्लैश कमांड के लिए कोई नाम बनाएं.
  2. Google Chat API में स्लैश कमांड कॉन्फ़िगर करें.

अपने स्लैश कमांड को नाम दें

स्लैश कमांड का नाम वह होता है जिसे उपयोगकर्ता Chat ऐप्लिकेशन को चालू करने के लिए, Chat मैसेज में टाइप करते हैं. नाम के नीचे कम शब्दों में जानकारी भी दिखती है, ताकि उपयोगकर्ताओं को कमांड के इस्तेमाल के बारे में ज़्यादा जानकारी मिल सके:

स्लैश कमांड का नाम और जानकारी
दूसरी इमेज: स्लैश कमांड का नाम और ब्यौरा.

स्लैश कमांड के लिए नाम और ब्यौरा चुनते समय, इन सुझावों पर ध्यान दें:

  • स्लैश कमांड को नाम देने के लिए:

    • उपयोगकर्ता के लिए निर्देशों को साफ़ और आसान बनाने के लिए, छोटे, जानकारी देने वाले, और कार्रवाई करने वाले शब्दों या वाक्यांशों का इस्तेमाल करें. उदाहरण के लिए, /createAReminder के बजाय /remindMe का इस्तेमाल करें.
    • अगर आपके निर्देश में एक से ज़्यादा शब्द हैं, तो उपयोगकर्ताओं को निर्देश पढ़ने में मदद करें. इसके लिए, पहले शब्द के लिए सभी छोटे अक्षरों का इस्तेमाल करें और फिर बाकी शब्दों के पहले अक्षर को कैपिटल में लिखें. उदाहरण के लिए, /updatecontact के बजाय, /updateContact का इस्तेमाल करें.
    • यह तय करें कि आपको अपने निर्देश के लिए कोई यूनीक नाम इस्तेमाल करना है या कोई सामान्य नाम. अगर आपके निर्देश में किसी सामान्य इंटरैक्शन या सुविधा के बारे में बताया गया है, तो किसी ऐसे सामान्य नाम का इस्तेमाल किया जा सकता है जिसे उपयोगकर्ता पहचानते हों और जिसकी उम्मीद करते हों. जैसे, /settings या /feedback. इसके अलावा, निर्देशों के लिए यूनीक नाम इस्तेमाल करें. ऐसा इसलिए, क्योंकि अगर आपके निर्देश का नाम, चैट के दूसरे ऐप्लिकेशन के निर्देशों के नाम से मेल खाता है, तो उपयोगकर्ता को आपके निर्देश को ढूंढने और इस्तेमाल करने के लिए, मिलते-जुलते निर्देशों को फ़िल्टर करना होगा.
  • अपने स्लैश कमांड के बारे में बताने के लिए:

    • जानकारी को कम और साफ़ शब्दों में रखें, ताकि उपयोगकर्ताओं को यह पता रहे कि कमांड का इस्तेमाल करने पर क्या होगा.
    • उपयोगकर्ताओं को बताएं कि कमांड के लिए फ़ॉर्मैट करने से जुड़ी कोई ज़रूरी शर्त है या नहीं. उदाहरण के लिए, अगर आपने कोई ऐसा /remindMe कमांड बनाया है जिसके लिए आर्ग्युमेंट टेक्स्ट की ज़रूरत है, तो ब्यौरे को Remind me to do [something] at [time] जैसा सेट करें.
    • उपयोगकर्ताओं को बताएं कि Chat ऐप्लिकेशन, स्पेस में मौजूद सभी लोगों को जवाब देता है या सिर्फ़ उस व्यक्ति को जवाब देता है जिसने निर्देश दिया है. उदाहरण के लिए, स्लैश कमांड /about के लिए, इसे Learn about this app (Only visible to you) के तौर पर दिखाया जा सकता है.

Google Chat API में स्लैश कमांड कॉन्फ़िगर करना

स्लैश कमांड बनाने के लिए, आपको Google Chat API के लिए अपने Chat ऐप्लिकेशन के कॉन्फ़िगरेशन में कमांड के बारे में जानकारी देनी होगी.

Google Chat API में स्लैश कमांड को कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:

  1. Google Cloud कंसोल में, मेन्यू > एपीआई और सेवाएं > चालू किए गए एपीआई और सेवाएं > Google Chat API पर क्लिक करें

    Google Chat API पेज पर जाएं

  2. कॉन्फ़िगरेशन पर क्लिक करें.

  3. बेहतर सेटिंग में जाकर, ट्रिगर पर जाएं और देखें कि मैसेज फ़ील्ड में कोई ट्रिगर मौजूद है या नहीं. जैसे, एचटीटीपी एंडपॉइंट या Apps Script फ़ंक्शन. स्लैश कमांड का जवाब देने के लिए, आपको इस ट्रिगर का इस्तेमाल करना होगा. इसके लिए, नीचे दिए गए सेक्शन में जाएं.

  4. स्लैश कमांड में जाकर, स्लैश कमांड जोड़ें पर क्लिक करें.

  5. निर्देश का नाम, निर्देश आईडी, और जानकारी डालें:

    1. नाम: यह कमांड का डिसप्ले नेम होता है. साथ ही, यह वह नाम होता है जिसे उपयोगकर्ता आपके ऐप्लिकेशन को चालू करने के लिए टाइप करते हैं. यह स्लैश से शुरू होना चाहिए. इसमें सिर्फ़ टेक्स्ट होना चाहिए और इसमें ज़्यादा से ज़्यादा 50 वर्ण हो सकते हैं.
    2. ब्यौरा: यह टेक्स्ट, निर्देश को इस्तेमाल और फ़ॉर्मैट करने का तरीका बताता है. ब्यौरे में ज़्यादा से ज़्यादा 50 वर्ण हो सकते हैं.
    3. कमांड आईडी: यह एक संख्या होती है, जो 1 से 1,000 के बीच होती है. इसका इस्तेमाल, आपके Chat ऐप्लिकेशन में स्लैश कमांड की पहचान करने और जवाब देने के लिए किया जाता है.
  6. ज़रूरी नहीं: अगर आपको Chat ऐप्लिकेशन से, डायलॉग बॉक्स के ज़रिए निर्देश का जवाब पाना है, तो डायलॉग बॉक्स खोलें चेकबॉक्स को चुनें.

  7. सेव करें पर क्लिक करें.

स्लैश कमांड अब Chat ऐप्लिकेशन के लिए कॉन्फ़िगर हो गया है.

स्लैश कमांड का जवाब देना

जब उपयोगकर्ता Chat में कोई मैसेज बनाते हैं, तो आपके Chat ऐप्लिकेशन को एक इवेंट ऑब्जेक्ट मिलता है. इसमें मैसेज के बारे में जानकारी होती है. इवेंट ऑब्जेक्ट में एक पेलोड होता है. इसमें मैसेज में इस्तेमाल किए गए कमांड की जानकारी होती है. इसमें कमांड आईडी भी शामिल होता है. इससे, आपको सही जवाब देने में मदद मिलती है.

स्लैश कमांड का जवाब देने के लिए, आपको मैसेज ट्रिगर लागू करना होगा, ताकि आपका Chat ऐप्लिकेशन, स्लैश कमांड का मेटाडेटा वाले किसी भी इवेंट ऑब्जेक्ट को मैनेज कर सके.

Cymbal Labs Chat ऐप्लिकेशन के लिए निजी मैसेज. मैसेज में बताया गया है कि Cymbal Labs ने Chat ऐप्लिकेशन बनाया है. साथ ही, दस्तावेज़ का लिंक और सहायता टीम से संपर्क करने का लिंक भी शेयर किया गया है.
Chat ऐप्लिकेशन, स्लैश कमांड /help पर निजी तौर पर जवाब देता है. इससे, सहायता पाने का तरीका पता चलता है.

नीचे दिए गए कोड में, Chat ऐप्लिकेशन का एक उदाहरण दिया गया है, जो /about स्लैश कमांड का जवाब टेक्स्ट मैसेज के ज़रिए देता है. स्लैश निर्देशों का जवाब देने के लिए, Chat ऐप्लिकेशन किसी मैसेज ट्रिगर से इवेंट ऑब्जेक्ट मैनेज करता है. जब किसी इवेंट ऑब्जेक्ट के पेलोड में स्लैश कमांड आईडी होता है, तो Chat ऐप्लिकेशन createMessageAction ऑब्जेक्ट के साथ ऐक्शन DataActions दिखाता है:

Node.js

// The ID of the slash command "/about".
// It's not enabled by default, set to the actual ID to enable it. You must
// use the same ID as set in the Google Chat API configuration.
const ABOUT_COMMAND_ID = 0;

/**
 * Google Cloud Function that responds to messages sent from a
 * Google Chat space.
 *
 * @param {Object} req Request sent from Google Chat space
 * @param {Object} res Response to send back
 */
exports.avatarApp = function avatarApp(req, res) {
    if (req.method === 'GET' || !req.body.chat) {
        return res.send('Hello! This function is meant to be used ' +
            'in a Google Chat Space.');
    }

    // Stores the Google Chat event as a variable.
    const chatMessage = req.body.chat.messagePayload.message;

    if (chatMessage.slashCommand) {
        // Executes the slash command logic based on its ID.
        // Slash command IDs are set in the Google Chat API configuration.
        switch (chatMessage.slashCommand.commandId) {
            case ABOUT_COMMAND_ID:
                return res.send({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
                    text: 'The Avatar app replies to Google Chat messages.'
                }}}}});
        }
    }

    // Replies with the sender's avatar in a card otherwise.
    const displayName = chatMessage.sender.displayName;
    const avatarUrl = chatMessage.sender.avatarUrl;
    res.send({ hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
        text: 'Here\'s your avatar',
        cardsV2: [{
            cardId: 'avatarCard',
            card: {
                name: 'Avatar Card',
                header: {
                    title: `Hello ${displayName}!`,
                },
                sections: [{
                    widgets: [{
                        textParagraph: { text: 'Your avatar picture: ' }
                    }, {
                        image: { imageUrl: avatarUrl }
                    }]
                }]
            }
        }]
    }}}}});
};

Apps Script

// The ID of the slash command "/about".
// It's not enabled by default, set to the actual ID to enable it. You must
// use the same ID as set in the Google Chat API configuration.
const ABOUT_COMMAND_ID = 0;

/**
 * Responds to a MESSAGE event in Google Chat.
 *
 * @param {Object} event the event object from Google Chat
 */
function onMessage(event) {
    // Stores the Google Chat event as a variable.
    const chatMessage = event.chat.messagePayload.message;

    if (chatMessage.slashCommand) {
        // Executes the slash command logic based on its ID.
        // Slash command IDs are set in the Google Chat API configuration.
        switch (chatMessage.slashCommand.commandId) {
            case ABOUT_COMMAND_ID:
                return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
                    text: 'The Avatar app replies to Google Chat messages.'
                }}}}};
        }
    }

    // Replies with the sender's avatar in a card otherwise.
    const displayName = chatMessage.sender.displayName;
    const avatarUrl = chatMessage.sender.avatarUrl;
    return { hostAppDataAction: { chatDataAction: { createMessageAction: { message: {
        text: 'Here\'s your avatar',
        cardsV2: [{
            cardId: 'avatarCard',
            card: {
                name: 'Avatar Card',
                header: {
                    title: `Hello ${displayName}!`,
                },
                sections: [{
                    widgets: [{
                        textParagraph: { text: 'Your avatar picture: ' }
                    }, {
                        image: { imageUrl: avatarUrl }
                    }]
                }]
            }
        }]
    }}}}};
}

इस कोड सैंपल का इस्तेमाल करने के लिए, ABOUT_COMMAND_ID की जगह उस कमांड आईडी को डालें जिसे आपने Chat API में स्लैश कमांड कॉन्फ़िगर करते समय बताया था.