Invia un SMS

In questa pagina viene spiegato come creare messaggi che vengono visualizzati in linea come se vengano digitati da un utente. Utilizza SMS per presentare agli utenti informazioni semplici. Per informazioni su come creare messaggi più complessi che generano schede nella chat, consulta Inviare un messaggio per le schede.

Prerequisiti

Per eseguire gli esempi illustrati in questa guida, sono necessari i seguenti prerequisiti:

Python

Anatomia di un SMS

Qualsiasi messaggio in Google Chat è rappresentato come un oggetto JSON. L'esempio seguente è un messaggio di base che specifica un corpo di testo semplice:

{
  "text": "Your pizza delivery is here!"
}

Se pubblicato in Google Chat, il seguente esempio viene visualizzato come segue:

Invia un SMS asincrono

Ecco come creare un messaggio di testo:

Python

  1. Nella tua directory di lavoro, crea un file denominato chat_create_text_message.py.
  2. Includi il seguente codice in chat_create_text_message.py:

    from httplib2 import Http
    from oauth2client.service_account import ServiceAccountCredentials
    from apiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['https://www.googleapis.com/auth/chat.bot']
    
    # Specify service account details.
    CREDENTIALS = ServiceAccountCredentials.from_json_keyfile_name(
        'service_account.json', SCOPES)
    
    # Build the URI and authenticate with the service account.
    chat = build('chat', 'v1', http=CREDENTIALS.authorize(Http()))
    
    # Create a Chat message.
    result = chat.spaces().messages().create(
    
        # The space to create the message in.
        #
        # Replace SPACE with a space name.
        # Obtain the space name from the spaces resource of Chat API,
        # or from a space's URL.
        parent='spaces/SPACE',
    
        # The message to create.
        body={'text': 'Hello, world!'}
    
    ).execute()
    
    print(result)
    
  3. Nel codice, sostituisci SPACE con un nome di spazio, che puoi ottenere dal metodo spaces.list() nell'API Chat o dall'URL di uno spazio.

  4. Nella directory di lavoro, crea ed esegui l'esempio:

    python3 chat_create_text_message.py
    

Formattare i testi nei messaggi

Google Chat ti consente di aggiungere una formattazione di base al testo del messaggio, inclusi grassetto, corsivo e barrato. Per formattare un testo, aggregalo con i seguenti simboli:

Formato Simbolo Esempio Il risultato
Grassetto * *ciao* ciao
Corsivo _ (trattino basso) _Ciao_ ciao
Barrato ~ ~ciao~ ciao
Monospace ` (virgolette) "ciao" hello
Blocco monospazio ``` (tre virgolette) ```
Ciao
Mondo
```
Hello
World

Ad esempio, considera il seguente JSON:

{
  "text": "Your pizza delivery *has arrived*!\nThank you for using _Pizza Bot!_"
}

Verrà inserito un messaggio simile a questo nello spazio di Chat:

Questa sintassi di markup è la stessa che si applica ai messaggi digitati dagli utenti, motivo per cui è diversa dalla formattazione basata su HTML applicata al testo all'interno delle schede.

Se includi un URL del link normale nel testo del messaggio, ad esempio http://example.com/, Google Chat lo utilizza come testo del link e rimanda automaticamente il testo all'URL specificato tramite link ipertestuali.

Per fornire il testo alternativo per il link, utilizza la seguente sintassi:

Sintassi Rendering
<https://example.com/|LINK_TEXT> LINK_TEXT

La barra verticale e il testo del link sono facoltativi, pertanto <https://example.com/> e https://example.com/ sono equivalenti.

Messaggi che menzionano utenti specifici

Un'app di chat può @menzionare un utente in un messaggio fornendo il codice USER_ID nella seguente sintassi. Per determinare l'USER_ID per un utente, esamina il campo sender del messaggio in arrivo dell'utente.

<users/USER_ID>

Questa stringa è sostituita da una @menzione dell'utente specificato. Ad esempio, considera il seguente JSON:

{
    "text": "Hey <users/123456789012345678901>! Thank you for using _Pizza bot!_"
}

Otterrai così un risultato simile al seguente:

Messaggi che menzionano tutti gli utenti

Puoi utilizzare l'ID utente all per @menzionare tutti gli utenti umani in uno spazio. Ad esempio:

{
    "text": "Important message for <users/all>: Code freeze starts at midnight tonight!"
}