Rispondere ai comandi slash come app Google Chat

Questa pagina spiega come impostare e rispondere ai comandi slash per App Google Chat.

Un comando slash è un modo comune che gli utenti richiamano e interagiscono con un Chat. I comandi slash aiutano inoltre gli utenti a scoprire utilizzare le funzionalità principali di un'app di Chat.

Per utilizzare un comando slash, gli utenti digitano una barra (/) e poi un breve comando di testo. come /about per ottenere informazioni sull'app Chat. Gli utenti possono scoprire i comandi slash disponibili digitando una barra Google Chat, che visualizza una finestra in cui sono elencati i comandi disponibili per App Chat:

Finestra del comando con barra
Figura 1: la finestra visualizzata quando gli utenti digitano una barra in Google Chat.

Per decidere se impostare i comandi slash e capire come progettare le interazioni degli utenti, consulta Definire tutti i percorsi dell'utente.

Comandi slash con risposte private

Quando un utente invia un messaggio che contiene un comando slash, il messaggio viene visibile all'utente e all'app Chat. Se hai configurato l'aggiunta dell'app di Chat agli spazi con più persone, potresti rispondere al comando slash privatamente, per mantenere privata l'interazione tra l'utente e Chat.

Ad esempio, per avere informazioni su un'app di Chat in uno spazio, gli utenti possono usare comandi come /about o /help. Per evitare di inviare notifiche a tutte le altre persone nello spazio, L'app Chat può rispondere in privato con informazioni su come usare l'app Chat e ricevere assistenza.

Prerequisiti

Node.js

Un'app di Google Chat abilitata per le funzionalità interattive. Per creare un un'app di chat interattiva utilizzando un servizio HTTP, completa questa guida rapida.

Apps Script

Un'app di Google Chat abilitata per le funzionalità interattive. Per creare un app di Chat interattiva in Apps Script, completa questa guida rapida.

Python

Un'app di Google Chat abilitata per le funzionalità interattive. Per creare un un'app di chat interattiva utilizzando un servizio HTTP, completa questa guida rapida.

Configura un comando slash

Questa sezione spiega come completare i seguenti passaggi per impostare una barra :

  1. Assegna un nome al comando slash.
  2. Configura il comando slash nell'API Google Chat.

Assegna un nome al comando slash

Il nome di un comando slash è quello che gli utenti digitano in un messaggio di Chat per richiamare l'app Chat. Anche una breve descrizione sotto il nome, per chiedere agli utenti ulteriori informazioni su come utilizzare il comando:

Nome e descrizione del comando barra
Figura 2: il nome e la descrizione di un comando slash.

Quando scegli un nome e una descrizione per il comando slash, considera l'utilizzo seguenti consigli:

  • Per assegnare un nome al comando slash:

    • Usa parole o frasi brevi, descrittive e utili per rendere il comandi chiari e semplici per l'utente. Ad esempio, invece di dire /createAReminder, usa /remindMe.
    • Se il tuo comando contiene più di una parola, aiuta gli utenti a leggerlo utilizzando solo lettere minuscole per la prima parola e poi la prima parola in maiuscolo lettera di parole aggiuntive. Ad esempio, invece di /updatecontact, utilizza /updateContact.
    • Valuta se utilizzare un nome univoco o comune per il comando. Se il comando descrive una caratteristica o un'interazione tipica, puoi utilizzare nome comune che gli utenti riconoscono e si aspettano, ad esempio /settingso /feedback. Altrimenti, prova a usare nomi di comandi univoci, perché se nome comando è lo stesso di altre app di Chat, l'utente deve filtrando comandi simili per trovare e usare i tuoi.
  • Per descrivere il comando slash:

    • La descrizione deve essere breve e chiara in modo che gli utenti sappiano cosa aspettarsi quando richiamano il comando.
    • Comunica agli utenti se sono previsti requisiti di formattazione per il comando. Ad esempio, se crei un comando /remindMe che richiede un argomento di testo, imposta la descrizione ad esempio Remind me to do [something] at [time].
    • Fai sapere agli utenti se l'app Chat risponde tutti nello spazio o privatamente all'utente che richiama il comando. Ad esempio, per il comando slash /about, puoi descrivere questo comando come Learn about this app (Only visible to you). Per rispondere in privato a una slash, consulta la sezione Rispondere con un messaggio privato.

Configura il tuo comando slash nell'API Google Chat

Per creare un comando slash, devi specificare le relative informazioni in la configurazione dell'app Chat per l'API Google Chat.

Per configurare un comando slash nell'API Google Chat, completa quanto segue passaggi:

  1. Nella console Google Cloud, fai clic su Menu > API e Servizi > API abilitate e Servizi > API Google Chat

    Vai alla pagina dell'API Google Chat

  2. Fai clic su Configurazione.

  3. In Comandi Slash, fai clic su Aggiungi un comando con barra.

  4. Inserisci un nome, un ID comando e una descrizione per il comando:

    1. Nome: il nome visualizzato del comando e il testo digitato dagli utenti per richiamare la tua app. Deve iniziare con una barra, contenere solo testo e può contenere fino a 50 caratteri.
    2. Descrizione: il testo che descrive come utilizzare e formattare il comando. Le descrizioni possono contenere fino a 50 caratteri.
    3. ID comando: un numero compreso tra 1 e 1000 che il tuo L'app di chat utilizza per riconoscere il comando slash e restituire una risposta.
  5. (Facoltativo) Se vuoi che l'app Chat risponda a sul comando con una finestra di dialogo, seleziona Casella di controllo Apri una finestra di dialogo.

  6. Fai clic su Salva.

Il comando slash è ora configurato per l'app Chat.

Rispondi a un comando slash

Quando gli utenti creano un messaggio di Chat contenente un comando slash, l'app Chat riceve un evento di interazione MESSAGE. Il payload dell'evento contiene il file slashCommand. e slashCommandMetadata di oggetti strutturati. Questi oggetti contengono dettagli sul comando utilizzato nel messaggio (incluso l'ID comando), in modo da poter restituire una risposta appropriata.

Messaggio privato per
  App di chat di Cymbal Labs. Il messaggio dice che
  L'app di chat è stata creata da Cymbal Labs e condivide un link
  alla documentazione e a un link per contattare il team di assistenza.
Un'app di Chat risponde in privato comando slash /help per spiegare come ricevere assistenza.

Il codice seguente mostra un esempio di app di Chat che risponde al comando slash /help gestendo MESSAGE eventi di interazione e rilevamento se il messaggio contiene l'ID comando corrispondente. Se il messaggio contiene l'ID comando, l'app Chat restituisce un messaggio privato che spiega come ricevere assistenza:

Node.js

/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {!Object} req Request sent from Google Chat app
* @param {!Object} res Response to send back
*
* @return {!Object} respond to slash command
*/
exports.onMessage = function onMessage(req, res) {
  if (req.method === 'GET' || !req.body.message) {
    return res.send('Hello! This function is meant to be used in Google Chat app.');
  }

  const event = req.body;

  // Checks for the presence of event.message.slashCommand.
  // If the slash command is "/help", responds with a private text message.
  if (event.message.slashCommand) {
    switch (event.message.slashCommand.commandId) {
      case 'ID': // The ID for your slash command
        return res.json({
          privateMessageViewer: event.user, // Optional. Responds privately to the slash command.
          text: 'This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>.'
        });
    }
  }

  // If the Chat app doesn't detect a slash command, it responds
  // with a private text message
  return res.json({
    privateMessageViewer: event.user,
    text: 'Try a slash command.'
  });
};

Apps Script

/**
* Responds to a MESSAGE event in Google Chat.
*
* @param {Object} event the event object from Google Chat
*/
function onMessage(event) {
  if (event.message.slashCommand) {
    switch (event.message.slashCommand.commandId) {
      case ID: // The ID for your slash command
        return {
          "privateMessageViewer": event.user, // Optional. Responds privately to the slash command.
          "text": "This Chat app was created by Cymbal Labs. To get help with this app, <https://cymbalgroup.com/docs|see our documentation> or <https://cymbalgroup.com/support|contact our support team>."
        };
    }
  }
  else {
    return { "text": "Try a slash command.", "privateMessageViewer": event.user };
  }
}

Python

from typing import Any, Mapping

import flask
import functions_framework

@functions_framework.http
def main(req: flask.Request) -> Mapping[str, Any]:
  """Responds to a MESSAGE event in Google Chat.

  Args:
      req (flask.Request): the event object from Chat API.

  Returns:
      Mapping[str, Any]: open a Dialog in response to a card's button click.
  """
  if req.method == 'GET':
    return 'Hello! This function must be called from Google Chat.'

  request = req.get_json(silent=True)

  # Checks for the presence of event.message.slashCommand.
  # If the slash command is "/help", responds with a private text message.
  if request.get('message', {}).get('slashCommand'):
    command_id = request.get('message', {}).get('slashCommand').get('commandId')
    if command_id == 'ID': # The ID for your slash command
      return {
          'privateMessageViewer': request.get('user'),
          'text': (
              'This Chat app was created by Cymbal Labs. To get help with this'
              ' app, <https://cymbalgroup.com/docs|see our documentation> or'
              ' <https://cymbalgroup.com/support|contact our support team>.'
          ),
      }

  return {
      'privateMessageViewer': request.get('user'), # Optional. Responds privately to the slash command.
      'text': 'Try a slash command.',
  }

Sostituisci ID con l'ID comando che hai specificato quando configurato il comando slash nell'API Chat. Per testare questo codice, consulta Testare le funzionalità interattive per le app Google Chat.