Con la risorsaMessagePin
nell'API Chat, la tua app può bloccare messaggi, sbloccare messaggi e
ottenere un elenco di tutti i messaggi bloccati negli spazi Google Chat. I messaggi fissati sono
visibili nell'interfaccia di Chat per tutti i membri dello spazio. Questa
API aiuta la tua app a gestire i messaggi fissati per conto di un utente.
Per informazioni su come gli utenti fissano i messaggi negli spazi, vedi Fissare messaggi, file e link in spazi e messaggi.
Prerequisiti
Node.js
- Un account Google Workspace Business o Enterprise con accesso a Google Chat.
- Configura l'ambiente:
- Crea un progetto Google Cloud.
- Configura la schermata per il consenso OAuth.
- Abilita e configura l'API Google Chat con un nome, un'icona e una descrizione per la tua app di chat.
- Installa la libreria client Cloud Node.js.
-
Crea le credenziali dell'ID client OAuth per un'applicazione desktop. Per eseguire l'esempio in questa
guida, salva le credenziali come file JSON denominato
credentials.jsonnella directory locale.
- Scegli un ambito di autorizzazione che supporti l'autenticazione utente.
Considerazioni
- Puoi mettere in primo piano solo i messaggi già presenti in uno spazio. Non puoi creare un nuovo messaggio e bloccarlo nella stessa richiesta.
- Non puoi mettere in primo piano i messaggi visibili solo a te. Ad esempio, non puoi bloccare i messaggi privati che ricevi da un'app.
- Ogni spazio di Chat può avere fino a 100 messaggi fissati. Se la tua app tenta di bloccare un 101° messaggio, l'API restituisce un errore.
Mettere in primo piano un messaggio
Per bloccare un messaggio con l'autenticazione utente, trasmetti quanto segue nella richiesta:
- Specifica l'ambito di autorizzazione
chat.spaces.pinsochat.spaces. - Chiama il numero
messagePins.create. - Specifica
parent(il nome dello spazio) e forniscibodycon il nome della risorsamessagedel messaggio originale.
Il seguente esempio blocca un messaggio in uno spazio:
Python
- Nella directory di lavoro, crea un file denominato
chat_pin_message.py. Includi il seguente codice in
chat_pin_message.py:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. SCOPES = ["https://www.googleapis.com/auth/chat.spaces.pins"] def main(): ''' Authenticates with Chat API via user credentials, then pins a message in a space. ''' # Authenticate with Google Workspace and get user authorization. flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. service = build('chat', 'v1', credentials=creds) # Pin a message. result = service.spaces().messagePins().create( # The space to pin the message in. # # Replace SPACE with a space ID or name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # The message to pin. body={ 'message': 'spaces/SPACE/messages/MESSAGE' } ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()Nel codice, sostituisci quanto segue:
Nella directory di lavoro, compila ed esegui l'esempio:
python3 chat_pin_message.py
Rimuovere un messaggio dall'alto
Per annullare l'aggiunta di un messaggio con l'autenticazione utente, passa quanto segue nella richiesta:
- Specifica l'ambito di autorizzazione
chat.spaces.pinsochat.spaces. - Chiama il numero
messagePins.delete. - Imposta
namesul nome della risorsaMessagePinda eliminare.
Ecco come annullare l'aggiunta di un messaggio in primo piano:
Python
- Nella directory di lavoro, crea un file denominato
chat_unpin_message.py. Includi il seguente codice in
chat_unpin_message.py:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. SCOPES = ["https://www.googleapis.com/auth/chat.spaces.pins"] def main(): ''' Authenticates with Chat API via user credentials, then unpins a message from a space. ''' # Authenticate with Google Workspace and get user authorization. flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. service = build('chat', 'v1', credentials=creds) # Unpin a message. result = service.spaces().messagePins().delete( # The resource name of the message pin to delete. # # Replace SPACE with a space ID or name, and MESSAGE with the message ID. name='spaces/SPACE/messagePins/MESSAGE' ).execute() print(result) if __name__ == '__main__': main()Nel codice, sostituisci quanto segue:
Nella directory di lavoro, compila ed esegui l'esempio:
python3 chat_unpin_message.py
Visualizzare un elenco dei messaggi fissati
Per ottenere un elenco dei messaggi fissati negli spazi a cui hai accesso, utilizza l'autenticazione utente e passa quanto segue nella richiesta:
- Specifica uno degli ambiti di lettura:
chat.spaces.pins.readonly,chat.spaces.readonly,chat.spaces.pinsochat.spaces. - Chiama il numero
messagePins.list. - Specifica
parentcome nome dello spazio da cui recuperare i messaggi fissati.
Ecco come elencare i messaggi fissati:
Python
- Nella directory di lavoro, crea un file denominato
chat_list_pinned_messages.py. Includi il seguente codice in
chat_list_pinned_messages.py:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Define your app's authorization scopes. SCOPES = ["https://www.googleapis.com/auth/chat.spaces.pins.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then lists pinned messages in a space. ''' # Authenticate with Google Workspace and get user authorization. flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. service = build('chat', 'v1', credentials=creds) # List pinned messages. result = service.spaces().messagePins().list( # The space to list pinned messages from. # # Replace SPACE with a space ID or name. parent='spaces/SPACE' ).execute() print(result) if __name__ == '__main__': main()Nel codice, sostituisci
SPACEcon l'ID spazio dell'name.Nella directory di lavoro, compila ed esegui l'esempio:
python3 chat_list_pinned_messages.py
Argomenti correlati
- Formattare un messaggio.
- Eliminare un messaggio.
- Visualizzare i dettagli di un messaggio.
- Elenca i messaggi in uno spazio.
- Aggiornare un messaggio.
- Inviare un messaggio.