REST Resource: spaces.messages

Zasób: wiadomość

Wiadomość w pokoju Google Chat.

Zapis JSON
{
  "name": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "lastUpdateTime": string,
  "deleteTime": string,
  "text": string,
  "formattedText": string,
  "cards": [
    {
      object (Card)
    }
  ],
  "cardsV2": [
    {
      object (CardWithId)
    }
  ],
  "annotations": [
    {
      object (Annotation)
    }
  ],
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "fallbackText": string,
  "actionResponse": {
    object (ActionResponse)
  },
  "argumentText": string,
  "slashCommand": {
    object (SlashCommand)
  },
  "attachment": [
    {
      object (Attachment)
    }
  ],
  "matchedUrl": {
    object (MatchedUrl)
  },
  "threadReply": boolean,
  "silent": boolean,
  "clientAssignedMessageId": string,
  "emojiReactionSummaries": [
    {
      object (EmojiReactionSummary)
    }
  ],
  "privateMessageViewer": {
    object (User)
  },
  "deletionMetadata": {
    object (DeletionMetadata)
  },
  "quotedMessageMetadata": {
    object (QuotedMessageMetadata)
  },
  "attachedGifs": [
    {
      object (AttachedGif)
    }
  ],
  "accessoryWidgets": [
    {
      object (AccessoryWidget)
    }
  ],
  "elements": {
    object (Elements)
  },
  "markupSyntax": enum (MarkupSyntax)
}
Pola
name

string

Identyfikator. Nazwa zasobu wiadomości.

Format: spaces/{space}/messages/{message}

Gdzie {space} to identyfikator pokoju, w którym opublikowano wiadomość, a {message} to identyfikator wiadomości przypisany przez system. Na przykład: spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB.

Jeśli podczas tworzenia wiadomości ustawisz niestandardowy identyfikator, możesz go użyć do określenia wiadomości w żądaniu, zastępując {message} wartością z pola clientAssignedMessageId. Na przykład: spaces/AAAAAAAAAAA/messages/client-custom-name. Więcej informacji znajdziesz w artykule Nadawanie nazwy wiadomości.

sender

object (User)

Tylko dane wyjściowe. Użytkownik, który utworzył wiadomość. Jeśli aplikacja Google Chat uwierzytelnia się jako użytkownik, dane wyjściowe wypełniają tylko pola użytkownik name i type w przypadku użytkowników wewnętrznych i zewnętrznych, chyba że są oni członkami pokoju lub mają wcześniejsze powiązanie, np. rozmowę na czacie, z użytkownikiem wywołującym.

createTime

string (Timestamp format)

Opcjonalnie: Wartość niezmienna. W przypadku pokoi utworzonych w Chat jest to czas utworzenia wiadomości. To pole jest tylko danymi wyjściowymi, z wyjątkiem sytuacji, gdy jest używane w pokojach w trybie importowania.

W przypadku pokoi w trybie importowania ustaw to pole na historyczny sygnaturę czasową, w której wiadomość została utworzona w źródle, aby zachować oryginalny czas utworzenia.

lastUpdateTime

string (Timestamp format)

Tylko dane wyjściowe. Czas ostatniej edycji wiadomości przez użytkownika. Jeśli wiadomość nigdy nie była edytowana, to pole jest puste.

deleteTime

string (Timestamp format)

Tylko dane wyjściowe. Czas usunięcia wiadomości w Google Chat. Jeśli wiadomość nigdy nie zostanie usunięta, to pole będzie puste.

text

string

Opcjonalnie: Treść wiadomości w postaci zwykłego tekstu. Pierwszy link do obrazu, filmu lub strony internetowej generuje element podglądu. Możesz też wspomnieć o użytkowniku Google Chat lub o wszystkich osobach w pokoju.

Więcej informacji o tworzeniu wiadomości tekstowych znajdziesz w artykule Wysyłanie wiadomości.

formattedText

string

Tylko dane wyjściowe. Zawiera wiadomość text z dodatkowymi znacznikami, które informują o formatowaniu. To pole może nie zawierać wszystkich elementów formatowania widocznych w interfejsie, ale obejmuje:

  • Składnia znaczników dla tekstu pogrubionego, kursywy, przekreślenia, czcionki o stałej szerokości znaków, bloku z czcionką o stałej szerokości znaków, listy punktowanej i bloku cytatu.

  • Wzmianki o użytkownikach w formacie <users/{user}>.

  • Niestandardowe hiperlinki w formacie <{url}|{rendered_text}>, gdzie pierwszy ciąg znaków to adres URL, a drugi to renderowany tekst, np. <http://example.com|custom text>.

  • niestandardowe emotikony w formacie :{emojiName}:, np. :smile:; Nie dotyczy to emotikonów Unicode, np. U+1F600, które przedstawiają uśmiechniętą buźkę.

  • Elementy listy punktowanej oznaczaj gwiazdkami (*), np. * item.

Więcej informacji znajdziesz w artykule Wyświetlanie formatowania tekstu wysłanego w wiadomości.

cards[]
(deprecated)

object (Card)

Wycofana: zamiast niej używaj zasady cardsV2.

Karty sformatowane i interaktywne, których możesz używać do wyświetlania elementów interfejsu, takich jak sformatowany tekst, przyciski i obrazy, które można kliknąć. Karty są zwykle wyświetlane pod treścią wiadomości w formacie zwykłego tekstu. cards i cardsV2 mogą mieć maksymalnie 32 KB.

cardsV2[]

object (CardWithId)

Opcjonalnie: Tablica kart.

Aplikacje do obsługi czatu mogą tworzyć karty z uwierzytelnianiem aplikacji. W ramach programu przedpremierowego dla deweloperów aplikacja do obsługi czatu, która uwierzytelnia się jako użytkownik, może tworzyć wiadomości z kartami. Jeśli Twoja aplikacja do obsługi Google Chat nie jest częścią programu wersji przedpremierowych dla programistów, nie może tworzyć kart z uwierzytelnianiem użytkownika.

Aby dowiedzieć się, jak utworzyć wiadomość zawierającą karty, przeczytaj artykuł Wysyłanie wiadomości.

Projektuj karty i wyświetlaj ich podgląd za pomocą narzędzia do tworzenia kart.

Otwórz narzędzie do tworzenia kart

annotations[]

object (Annotation)

Tylko dane wyjściowe. Adnotacje mogą być powiązane z treścią wiadomości w postaci zwykłego tekstu lub z elementami, które prowadzą do zasobów Google Workspace, takich jak Dokumenty Google czy Arkusze Google, z wartościami startIndex i length równymi 0.

thread

object (Thread)

Wątek, do którego należy wiadomość. Przykłady użycia znajdziesz w artykule Rozpoczynanie wątku wiadomości i odpowiadanie w nim.

space

object (Space)

Tylko dane wyjściowe. Jeśli aplikacja Google Chat uwierzytelnia się jako użytkownik, dane wyjściowe są wypełniane tylko w przypadku pokoju name.

fallbackText

string

Opcjonalnie: Opis w formie zwykłego tekstu kart w wiadomości, używany, gdy nie można wyświetlić rzeczywistych kart, np. w powiadomieniach mobilnych.

actionResponse

object (ActionResponse)

Tylko dane wejściowe. Parametry, których aplikacja do obsługi czatu może używać do konfigurowania sposobu publikowania odpowiedzi.

argumentText

string

Tylko dane wyjściowe. Treść wiadomości w formacie zwykłego tekstu, z której usunięto wszystkie wzmianki o aplikacji do obsługi czatu.

slashCommand

object (SlashCommand)

Tylko dane wyjściowe. Informacje o poleceniu po ukośniku (w stosownych przypadkach).

attachment[]

object (Attachment)

Opcjonalnie: Załącznik przesłany przez użytkownika.

matchedUrl

object (MatchedUrl)

Tylko dane wyjściowe. Adres URL w polu text wiadomości na czacie, który pasuje do wzorca podglądu linku. Więcej informacji znajdziesz w artykule Podgląd linków.

threadReply

boolean

Tylko dane wyjściowe. Gdy true, wiadomość jest odpowiedzią w wątku odpowiedzi. Gdy false, wiadomość jest widoczna w rozmowie najwyższego poziomu w pokoju jako pierwsza wiadomość w wątku lub wiadomość bez odpowiedzi w wątku.

Jeśli pokój nie obsługuje odpowiedzi w wątkach, to pole ma zawsze wartość false.

silent

boolean

Tylko dane wyjściowe. Czy jest to wiadomość cicha. Wyciszone wiadomości to wiadomości, w przypadku których Chat pomija powiadomienia push dla odbiorców.

clientAssignedMessageId

string

Opcjonalnie: Niestandardowy identyfikator wiadomości. Możesz użyć tego pola, aby zidentyfikować wiadomość lub ją pobrać, usunąć albo zaktualizować. Aby ustawić niestandardowy identyfikator, podczas tworzenia wiadomości określ pole messageId. Więcej informacji znajdziesz w artykule Nadawanie nazwy wiadomości.

emojiReactionSummaries[]

object (EmojiReactionSummary)

Tylko dane wyjściowe. Lista podsumowań reakcji emotikonami na wiadomość.

privateMessageViewer

object (User)

Opcjonalnie: Wartość niezmienna. Dane wejściowe do tworzenia wiadomości, w przeciwnym razie tylko dane wyjściowe. Użytkownik, który może wyświetlić wiadomość. Gdy to pole jest ustawione, wiadomość jest prywatna i widoczna tylko dla określonego użytkownika i aplikacji Chat. Aby uwzględnić to pole w żądaniu, musisz wywołać interfejs Chat API za pomocą uwierzytelniania aplikacji i pominąć te elementy:

Szczegółowe informacje znajdziesz w artykule Wysyłanie wiadomości prywatnej.

deletionMetadata

object (DeletionMetadata)

Tylko dane wyjściowe. Informacje o usuniętej wiadomości. Wiadomość jest usuwana, gdy ustawisz deleteTime.

quotedMessageMetadata

object (QuotedMessageMetadata)

Opcjonalnie: Informacje o wiadomości, którą cytuje inna wiadomość.

Podczas tworzenia wiadomości możesz cytować wiadomości w tym samym wątku lub zacytować wiadomość główną, aby utworzyć nową wiadomość główną. Nie możesz jednak zacytować odpowiedzi na wiadomość z innego wątku.

Podczas aktualizowania wiadomości nie możesz dodać ani zastąpić pola quotedMessageMetadata, ale możesz je usunąć.

Przykłady użycia znajdziesz w artykule Cytowanie innej wiadomości.

attachedGifs[]

object (AttachedGif)

Tylko dane wyjściowe. Obrazy GIF załączone do wiadomości.

accessoryWidgets[]

object (AccessoryWidget)

Opcjonalnie: Co najmniej 1 interaktywny widżet, który pojawia się u dołu wiadomości. Możesz dodawać widżety dodatkowe do wiadomości zawierających tekst, karty lub zarówno tekst, jak i karty. Nieobsługiwane w przypadku wiadomości zawierających okna dialogowe. Więcej informacji znajdziesz w artykule Dodawanie interaktywnych widżetów u dołu wiadomości.

Tworzenie wiadomości z widgetami dodatkowymi wymaga uwierzytelniania aplikacji.

elements

object (Elements)

Opcjonalnie: Elementy to dodatkowe komponenty udostępniane podczas tworzenia wiadomości, które mogą być powiązane z określonymi częściami tekstu wiadomości lub nie. Różnią się one od adnotacji, które są tylko danymi wyjściowymi i zawierają dodatkowe informacje powiązane z fragmentami wiadomości lub całym tekstem wiadomości.

markupSyntax

enum (MarkupSyntax)

Opcjonalnie: Określa, jak serwer interpretuje zawartość pola text wiadomości.

CardWithId

Karta w wiadomości na czacie Google Chat.

Aplikacje do obsługi czatu mogą tworzyć karty z uwierzytelnianiem aplikacji. W ramach programu przedpremierowego dla deweloperów aplikacja do obsługi czatu, która uwierzytelnia się jako użytkownik, może tworzyć wiadomości z kartami. Jeśli Twoja aplikacja do obsługi Google Chat nie jest częścią programu wersji przedpremierowych dla programistów, nie może tworzyć kart z uwierzytelnianiem użytkownika.

Aby dowiedzieć się, jak utworzyć wiadomość zawierającą karty, przeczytaj artykuł Wysyłanie wiadomości.

Projektuj karty i wyświetlaj ich podgląd za pomocą narzędzia do tworzenia kart.

Otwórz narzędzie do tworzenia kart

Zapis JSON
{
  "cardId": string,
  "card": {
    object (Card)
  }
}
Pola
cardId

string

Wymagane, jeśli wiadomość zawiera wiele kart. Unikalny identyfikator karty w wiadomości.

card

object (Card)

Kartę Maksymalny rozmiar to 32 KB.

Adnotacja

Adnotacje mogą być powiązane z treścią wiadomości w postaci zwykłego tekstu lub z elementami, które prowadzą do zasobów Google Workspace, takich jak Dokumenty Google czy Arkusze Google, z wartościami startIndex i length równymi 0. Aby dodać podstawowe formatowanie do SMS-a, przeczytaj artykuł Formatowanie SMS-ów.

Przykładowa treść wiadomości w formacie zwykłego tekstu:

Hello @FooBot how are you!"

Odpowiednie metadane adnotacji:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
Zapis JSON
{
  "type": enum (AnnotationType),
  "length": integer,
  "startIndex": integer,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "userMention": {
    object (UserMentionMetadata)
  },
  "slashCommand": {
    object (SlashCommandMetadata)
  },
  "richLinkMetadata": {
    object (RichLinkMetadata)
  },
  "customEmojiMetadata": {
    object (CustomEmojiMetadata)
  }
}
Pola
type

enum (AnnotationType)

Typ adnotacji.

length

integer

Długość podciągu w treści wiadomości w formie zwykłego tekstu, do którego odnosi się ta adnotacja. Jeśli nie jest obecny, oznacza długość 0.

startIndex

integer

Indeks początkowy (liczony od 0, włącznie) w treści wiadomości w formacie zwykłego tekstu, do którego odnosi się ta adnotacja.

Dodatkowe metadane dotyczące adnotacji. Poniżej znajduje się lista pól, które się wzajemnie wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
userMention

object (UserMentionMetadata)

Metadane wzmianki o użytkowniku.

slashCommand

object (SlashCommandMetadata)

Metadane polecenia po ukośniku.

customEmojiMetadata

object (CustomEmojiMetadata)

Metadane niestandardowego emotikona.

Koniec pól wykluczających się nawzajem.

AnnotationType

Typ adnotacji.

Wartości w polu enum
ANNOTATION_TYPE_UNSPECIFIED Wartość domyślna wyliczenia. Nie używaj.
USER_MENTION Użytkownik jest wymieniony.
SLASH_COMMAND Wywołano polecenie po ukośniku.
CUSTOM_EMOJI Adnotacja z niestandardowym emotikonem.

UserMentionMetadata

Metadane adnotacji dotyczące wzmianek o użytkownikach (@).

Zapis JSON
{
  "user": {
    object (User)
  },
  "type": enum (Type)
}
Pola
user

object (User)

Wspomniany użytkownik.

type

enum (Type)

Rodzaj wzmianki o użytkowniku.

Typ

Wartości w polu enum
TYPE_UNSPECIFIED Wartość domyślna wyliczenia. Nie używaj.
ADD Dodaj użytkownika do pokoju.
MENTION wzmianki o użytkowniku w pokoju,

SlashCommandMetadata

Metadane adnotacji do poleceń po ukośniku (/).

Zapis JSON
{
  "bot": {
    object (User)
  },
  "type": enum (Type),
  "commandName": string,
  "commandId": string,
  "triggersDialog": boolean
}
Pola
bot

object (User)

Aplikacja Google Chat, której polecenie zostało wywołane.

type

enum (Type)

Typ polecenia po ukośniku.

commandName

string

Nazwa wywołanego polecenia po ukośniku.

commandId

string (int64 format)

Identyfikator polecenia wywołanego polecenia po ukośniku.

triggersDialog

boolean

Wskazuje, czy polecenie po ukośniku dotyczy okna.

Typ

Wartości w polu enum
TYPE_UNSPECIFIED Wartość domyślna wyliczenia. Nie używaj.
ADD Dodaj aplikację do pokoju w Google Chat.
INVOKE wywołać polecenie po ukośniku w pokoju,

RichLinkMetadata

link do zasobu z dodatkowymi informacjami. Linki sformatowane mogą być powiązane z treścią wiadomości w postaci zwykłego tekstu lub reprezentować elementy, które prowadzą do zasobów Google Workspace, takich jak Dokumenty lub Arkusze Google, z wartościami startIndex i length równymi 0.

Zapis JSON
{
  "uri": string,
  "richLinkType": enum (RichLinkType),

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "driveLinkData": {
    object (DriveLinkData)
  },
  "chatSpaceLinkData": {
    object (ChatSpaceLinkData)
  },
  "meetSpaceLinkData": {
    object (MeetSpaceLinkData)
  },
  "calendarEventLinkData": {
    object (CalendarEventLinkData)
  }
}
Pola
uri

string

Identyfikator URI tego linku.

Dane połączonego zasobu. Poniżej znajduje się lista pól, które się wzajemnie wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
Koniec pól wykluczających się nawzajem.

RichLinkType

Typ linku z elementami rozszerzonymi. W przyszłości możemy dodać więcej typów.

Wartości w polu enum
DRIVE_FILE Typ linku sformatowanego Dysku Google.
CHAT_SPACE Typ linku sformatowanego w pokoju Google Chat. Na przykład element inteligentny pokoju.
GMAIL_MESSAGE Typ linku sformatowanego wiadomości w Gmailu. Chodzi o element Gmaila z opcji Udostępnij w Google Chat. Interfejs API obsługuje tylko odczytywanie wiadomości z linkami multimedialnymi GMAIL_MESSAGE.
MEET_SPACE Typ linku z elementami rozszerzonymi w wiadomości w Meet. Może to być na przykład element Meet.
CALENDAR_EVENT Typ linku z elementami multimedialnymi w wiadomości w Kalendarzu. Na przykład element Kalendarza.

DriveLinkData

Dane dotyczące linków do Dysku Google.

Zapis JSON
{
  "driveDataRef": {
    object (DriveDataRef)
  },
  "mimeType": string
}
Pola
driveDataRef

object (DriveDataRef)

Obiekt DriveDataRef, który odwołuje się do pliku na Dysku Google.

mimeType

string

Typ MIME połączonego zasobu Dysku Google.

ChatSpaceLinkData

Dane dotyczące linków do pokoi czatu.

Zapis JSON
{
  "space": string,
  "thread": string,
  "message": string
}
Pola
space

string

Pokój połączonego zasobu pokoju Google Chat.

Format: spaces/{space}

thread

string

Wątek połączonego zasobu pokoju Google Chat.

Format: spaces/{space}/threads/{thread}

message

string

Wiadomość z połączonego zasobu pokoju czatu.

Format: spaces/{space}/messages/{message}

MeetSpaceLinkData

Dane dotyczące linków do pokoi w Meet.

Zapis JSON
{
  "meetingCode": string,
  "type": enum (Type),
  "huddleStatus": enum (HuddleStatus)
}
Pola
meetingCode

string

Kod spotkania w połączonym pokoju w Meet.

type

enum (Type)

Wskazuje typ pokoju w Meet.

huddleStatus

enum (HuddleStatus)

Opcjonalnie: Tylko dane wyjściowe. Jeśli Meet to spotkanie w małej grupie, wskazuje stan spotkania. W przeciwnym razie to pole nie jest ustawione.

Typ

Typ pokoju w Meet.

Wartości w polu enum
TYPE_UNSPECIFIED Wartość domyślna wyliczenia. Nie używaj.
MEETING Przestrzeń Meet to spotkanie.
HUDDLE Przestrzeń Meet to miejsce spotkań.

HuddleStatus

Stan spotkania

Wartości w polu enum
HUDDLE_STATUS_UNSPECIFIED Wartość domyślna wyliczenia. Nie używaj.
STARTED Rozpoczęto szybkie spotkanie.
ENDED Usługa Huddle została zakończona. W takim przypadku identyfikator URI pokoju w Meet i identyfikatory nie będą już ważne.
MISSED Rozmowa Huddle została pominięta. W takim przypadku identyfikator URI pokoju w Meet i identyfikatory nie będą już ważne.

CalendarEventLinkData

Dane dotyczące linków do wydarzeń w Kalendarzu.

Zapis JSON
{
  "calendarId": string,
  "eventId": string
}
Pola
calendarId

string

Identyfikator Kalendarza połączonego Kalendarza.

eventId

string

Identyfikator wydarzenia powiązanego wydarzenia w Kalendarzu.

CustomEmojiMetadata

Metadane adnotacji dotyczące niestandardowych emotikonów.

Zapis JSON
{
  "customEmoji": {
    object (CustomEmoji)
  }
}
Pola
customEmoji

object (CustomEmoji)

Niestandardowy emotikon.

Wątek

wątku w pokoju Google Chat, Przykłady użycia znajdziesz w artykule Rozpoczynanie wątku wiadomości i odpowiadanie w nim.

Jeśli podczas tworzenia wiadomości określisz wątek, możesz ustawić pole messageReplyOption, aby określić, co się stanie, jeśli nie zostanie znaleziony pasujący wątek.

Zapis JSON
{
  "name": string,
  "threadKey": string
}
Pola
name

string

Identyfikator. Nazwa zasobu wątku.

Przykład: spaces/{space}/threads/{thread}

threadKey

string

Opcjonalnie: Dane wejściowe do tworzenia lub aktualizowania wątku. W przeciwnym razie tylko dane wyjściowe. Identyfikator wątku. Obsługuje do 4000 znaków.

Ten identyfikator jest unikalny dla aplikacji Google Chat, która go ustawia. Jeśli na przykład kilka aplikacji do obsługi Google Chat utworzy wiadomość przy użyciu tego samego klucza wątku, wiadomości zostaną opublikowane w różnych wątkach. Aby odpowiedzieć w wątku utworzonym przez osobę lub inną aplikację Google Chat, zamiast tego określ pole name wątku.

ActionResponse

Parametry, których aplikacja do obsługi czatu może używać do konfigurowania sposobu publikowania odpowiedzi.

Zapis JSON
{
  "type": enum (ResponseType),
  "url": string,
  "dialogAction": {
    object (DialogAction)
  },
  "updatedWidget": {
    object (UpdatedWidget)
  }
}
Pola
type

enum (ResponseType)

Tylko dane wejściowe. Typ odpowiedzi aplikacji Google Chat.

url

string

Tylko dane wejściowe. Adres URL, pod którym użytkownicy mogą się uwierzytelniać lub konfigurować. (Tylko w przypadku typów odpowiedzi REQUEST_CONFIG).

dialogAction

object (DialogAction)

Tylko dane wejściowe. Odpowiedź na zdarzenie interakcji związane z oknem. Musi mu towarzyszyć ResponseType.Dialog.

updatedWidget

object (UpdatedWidget)

Tylko dane wejściowe. Odpowiedź z informacjami o zaktualizowanym widżecie.

ResponseType

Typ odpowiedzi aplikacji Google Chat.

Wartości w polu enum
TYPE_UNSPECIFIED Domyślny typ, który jest traktowany jako NEW_MESSAGE.
NEW_MESSAGE opublikować jako nową wiadomość w temacie,
UPDATE_MESSAGE Zaktualizuj wiadomość aplikacji Chat. Jest to dozwolone tylko w przypadku zdarzenia CARD_CLICKED, w którym typ nadawcy wiadomości to BOT.
UPDATE_USER_MESSAGE_CARDS Aktualizowanie kart w wiadomości użytkownika. Jest to dozwolone tylko w odpowiedzi na zdarzenie MESSAGE z pasującym adresem URL lub zdarzenie CARD_CLICKED, w którym typ nadawcy wiadomości to HUMAN. Tekst jest ignorowany.
REQUEST_CONFIG Prywatnie poproś użytkownika o dodatkowe uwierzytelnianie lub konfigurację.
DIALOG Wyświetla okno.
UPDATE_WIDGET Zapytanie o opcje autouzupełniania tekstu widżetu.

DialogAction

Zawiera okno i kod stanu żądania.

Zapis JSON
{
  "actionStatus": {
    object (ActionStatus)
  },

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "dialog": {
    object (Dialog)
  }
}
Pola
actionStatus

object (ActionStatus)

Tylko dane wejściowe. Stan prośby o wywołanie lub przesłanie okna. W razie potrzeby wyświetla użytkownikom stan i komunikat. Na przykład w przypadku błędu lub powodzenia.

Działanie do wykonania. Poniżej znajduje się lista pól, które się wzajemnie wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
dialog

object (Dialog)

Tylko dane wejściowe. Okno dialogowe dotyczące żądania.

Koniec pól wykluczających się nawzajem.

Dialog

Kontener wokół treści karty w oknie.

Zapis JSON
{
  "body": {
    object (Card)
  }
}
Pola
body

object (Card)

Tylko dane wejściowe. Treść okna dialogowego, która jest renderowana w oknie modalnym. Aplikacje Google Chat nie obsługują tych elementów karty: DateTimePicker, OnChangeAction.

ActionStatus

Reprezentuje stan żądania wywołania lub przesłania dialogu.

Zapis JSON
{
  "statusCode": enum (Code),
  "userFacingMessage": string
}
Pola
statusCode

enum (Code)

Kod stanu.

userFacingMessage

string

Wiadomość, którą należy wysłać użytkownikom w sprawie stanu ich prośby. Jeśli nie jest ustawiony, wysyłana jest ogólna wiadomość na podstawie statusCode.

Kod

Kanoniczne kody błędów interfejsów API gRPC.

Czasami może obowiązywać kilka kodów błędów. Usługi powinny zwracać najbardziej szczegółowy kod błędu, który ma zastosowanie. Jeśli np. oba kody mają zastosowanie, wybierz OUT_OF_RANGE zamiast FAILED_PRECONDITION. Podobnie preferuj NOT_FOUND lub ALREADY_EXISTS zamiast FAILED_PRECONDITION.

Wartości w polu enum
OK

Nie jest to błąd. Zwracany w przypadku powodzenia.

Mapowanie HTTP: 200 OK

CANCELLED

Operacja została anulowana, zwykle przez wywołującego.

Mapowanie HTTP: 499 Client Closed Request

UNKNOWN

Nieznany błąd. Na przykład ten błąd może być zwracany, gdy wartość Status otrzymana z innej przestrzeni adresowej należy do przestrzeni błędów, która nie jest znana w tej przestrzeni adresowej. Ten błąd może też być generowany w przypadku błędów zgłaszanych przez interfejsy API, które nie zwracają wystarczającej ilości informacji o błędzie.

Mapowanie HTTP: 500 Wewnętrzny błąd serwera

INVALID_ARGUMENT

Klient podał nieprawidłowy argument. Pamiętaj, że różni się on od FAILED_PRECONDITION. INVALID_ARGUMENT oznacza argumenty, które są problematyczne niezależnie od stanu systemu (np. nieprawidłowa nazwa pliku).

Mapowanie HTTP: 400 Nieprawidłowe żądanie

DEADLINE_EXCEEDED

Termin upłynął, zanim operacja została ukończona. W przypadku operacji, które zmieniają stan systemu, ten błąd może zostać zwrócony nawet wówczas, gdy operacja zakończyła się pomyślnie. Na przykład odpowiedź serwera informująca o powodzeniu mogła być opóźniona na tyle, że upłynął termin.

Mapowanie HTTP: 504 Przekroczono limit czasu bramy

NOT_FOUND

Nie znaleziono żądanej encji (np. pliku lub katalogu).

Uwaga dla deweloperów serwerów: jeśli żądanie zostanie odrzucone w przypadku całej klasy użytkowników, np. w ramach stopniowego wdrażania funkcji lub nieudokumentowanej listy dozwolonych, można użyć kodu NOT_FOUND. Jeśli prośba zostanie odrzucona w przypadku niektórych użytkowników w danej klasie użytkowników, np. w przypadku kontroli dostępu opartej na użytkownikach, należy użyć zestawu PERMISSION_DENIED.

Mapowanie HTTP: 404 Nie znaleziono

ALREADY_EXISTS

Encja, którą klient próbował utworzyć (np. plik lub katalog), już istnieje.

Mapowanie HTTP: 409 Conflict

PERMISSION_DENIED

Wywołujący nie ma uprawnień do wykonania określonej operacji. Kodu PERMISSION_DENIED nie należy używać w przypadku odrzuceń spowodowanych wyczerpaniem zasobów (w takich przypadkach używaj kodu RESOURCE_EXHAUSTED). Nie można używać kodu PERMISSION_DENIED, jeśli nie można zidentyfikować wywołującego (w przypadku takich błędów użyj kodu UNAUTHENTICATED). Ten kod błędu nie oznacza, że żądanie jest prawidłowe ani że żądany podmiot istnieje lub spełnia inne warunki wstępne.

Mapowanie HTTP: 403 Dostęp zabroniony

UNAUTHENTICATED

Żądanie nie ma prawidłowych danych uwierzytelniających dla tej operacji.

Mapowanie HTTP: 401 Unauthorized

RESOURCE_EXHAUSTED

Wykorzystano wszystkie zasoby, np. limit na użytkownika lub całe miejsce w systemie plików.

Mapowanie HTTP: 429 Zbyt wiele żądań

FAILED_PRECONDITION

Operacja została odrzucona, ponieważ system nie znajduje się w stanie wymaganym do jej wykonania. Na przykład katalog do usunięcia nie jest pusty, operacja rmdir jest stosowana do elementu, który nie jest katalogiem itp.

Osoby wdrażające usługę mogą skorzystać z tych wytycznych, aby zdecydować, czy użyć FAILED_PRECONDITION, ABORTED czy UNAVAILABLE: (a) użyj UNAVAILABLE, jeśli klient może ponowić tylko połączenie, które się nie powiodło. (b) Użyj ABORTED, jeśli klient powinien ponowić próbę na wyższym poziomie. Na przykład gdy test i ustawienie określone przez klienta nie powiodą się, co oznacza, że klient powinien ponownie uruchomić sekwencję odczytu, modyfikacji i zapisu. (c) Użyj FAILED_PRECONDITION, jeśli klient nie powinien ponawiać próby, dopóki stan systemu nie zostanie bezpośrednio poprawiony. Jeśli na przykład polecenie „rmdir” zakończy się niepowodzeniem, ponieważ katalog nie jest pusty, należy zwrócić wartość FAILED_PRECONDITION, ponieważ klient nie powinien ponawiać próby, dopóki pliki nie zostaną usunięte z katalogu.

Mapowanie HTTP: 400 Nieprawidłowe żądanie

ABORTED

Operacja została przerwana, najczęściej z powodu problemu równoczesności, np. w przypadku nieudanej kontroli sekwencera lub przerwanej transakcji.

Wskazówki powyżej pomogą Ci zdecydować, czy wybrać FAILED_PRECONDITION, ABORTED czy UNAVAILABLE.

Mapowanie HTTP: 409 Conflict

OUT_OF_RANGE

Operacja została podjęta poza prawidłowym zakresem. np. szukanie lub czytanie po końcu pliku.

W przeciwieństwie do błędu INVALID_ARGUMENT ten błąd wskazuje na problem, który można rozwiązać, jeśli zmieni się stan systemu. Na przykład 32-bitowy system plików wygeneruje INVALID_ARGUMENT, jeśli zostanie poproszony o odczytanie danych z przesunięcia, które nie mieści się w zakresie [0, 2^32-1], ale wygeneruje OUT_OF_RANGE, jeśli zostanie poproszony o odczytanie danych z przesunięcia przekraczającego bieżący rozmiar pliku.

Między FAILED_PRECONDITION a OUT_OF_RANGE występuje dość duża zbieżność. Zalecamy używanie kodu OUT_OF_RANGE (bardziej szczegółowego błędu), gdy ma on zastosowanie, aby osoby dzwoniące, które iterują przestrzeń, mogły łatwo wyszukać błąd OUT_OF_RANGE i wykryć, kiedy skończyły.

Mapowanie HTTP: 400 Nieprawidłowe żądanie

UNIMPLEMENTED

Operacja nie jest zaimplementowana lub nie jest obsługiwana/włączona w tej usłudze.

Mapowanie HTTP: 501 Not Implemented

INTERNAL

Błędy wewnętrzne. Oznacza to, że niektóre niezmienniki oczekiwane przez system bazowy zostały naruszone. Ten kod błędu jest zarezerwowany dla poważnych błędów.

Mapowanie HTTP: 500 Wewnętrzny błąd serwera

UNAVAILABLE

Usługa jest obecnie niedostępna. Jest to najprawdopodobniej stan przejściowy, który można skorygować, ponawiając próbę z wycofywaniem. Pamiętaj, że ponawianie operacji nieidempotentnych nie zawsze jest bezpieczne.

Wskazówki powyżej pomogą Ci zdecydować, czy wybrać FAILED_PRECONDITION, ABORTED czy UNAVAILABLE.

Mapowanie HTTP: 503 Usługa niedostępna

DATA_LOSS

Nieodwracalna utrata lub uszkodzenie danych.

Mapowanie HTTP: 500 Wewnętrzny błąd serwera

UpdatedWidget

W przypadku widżetów selectionInput zwraca sugestie autouzupełniania dla menu wielokrotnego wyboru.

Zapis JSON
{
  "widget": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "suggestions": {
    object (SelectionItems)
  }
}
Pola
widget

string

Identyfikator zaktualizowanego widżetu. Identyfikator musi być zgodny z identyfikatorem widżetu, który wywołał prośbę o aktualizację.

Widżet został zaktualizowany w odpowiedzi na działanie użytkownika. Poniżej znajduje się lista pól, które się wzajemnie wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
suggestions

object (SelectionItems)

Lista wyników autouzupełniania widżetu

Koniec pól wykluczających się nawzajem.

SelectionItems

Lista wyników autouzupełniania widżetu.

Zapis JSON
{
  "items": [
    {
      object (SelectionItem)
    }
  ]
}
Pola
items[]

object (SelectionItem)

Tablica obiektów SelectionItem.

SlashCommand

Metadane dotyczące polecenia po ukośniku w Google Chat.

Zapis JSON
{
  "commandId": string
}
Pola
commandId

string (int64 format)

Identyfikator polecenia po ukośniku.

MatchedUrl

Pasujący adres URL w wiadomości na czacie. Aplikacje do obsługi czatu mogą wyświetlać podgląd pasujących adresów URL. Więcej informacji znajdziesz w artykule Wyświetlanie podglądu linków.

Zapis JSON
{
  "url": string
}
Pola
url

string

Tylko dane wyjściowe. Adres URL, który został dopasowany.

EmojiReactionSummary

Liczba osób, które zareagowały na wiadomość za pomocą określonego emotikonu.

Zapis JSON
{
  "emoji": {
    object (Emoji)
  },
  "reactionCount": integer
}
Pola
emoji

object (Emoji)

Tylko dane wyjściowe. Emotikon powiązany z reakcjami.

reactionCount

integer

Tylko dane wyjściowe. Łączna liczba reakcji z użyciem powiązanego emotikona.

DeletionMetadata

Informacje o usuniętej wiadomości. Wiadomość jest usuwana, gdy ustawisz deleteTime.

Zapis JSON
{
  "deletionType": enum (DeletionType)
}
Pola
deletionType

enum (DeletionType)

Wskazuje, kto usunął wiadomość.

DeletionType

kto i jak usunął wiadomość; W przyszłości możemy dodać więcej wartości. Szczegółowe informacje o tym, kiedy można usunąć wiadomości, znajdziesz w artykule Edytowanie i usuwanie wiadomości w Google Chat.

Wartości w polu enum
DELETION_TYPE_UNSPECIFIED Ta wartość nie jest używana.
CREATOR Użytkownik usunął własną wiadomość.
SPACE_OWNER Wiadomość została usunięta przez właściciela lub menedżera.
ADMIN Administrator Google Workspace usunął wiadomość. Administratorzy mogą usuwać dowolne wiadomości z pokoju, w tym wiadomości wysłane przez dowolnego członka pokoju lub aplikację Chat.
APP_MESSAGE_EXPIRY Aplikacja Chat usunęła swoją wiadomość po wygaśnięciu.
CREATOR_VIA_APP Aplikacja Google Chat usunęła wiadomość w imieniu twórcy (przy użyciu uwierzytelniania użytkownika).
SPACE_OWNER_VIA_APP Aplikacja do Google Chat usunęła wiadomość w imieniu menedżera pokoju (przy użyciu uwierzytelniania użytkownika).
SPACE_MEMBER Wiadomość została usunięta przez osobę w pokoju. Użytkownicy mogą usuwać wiadomości wysłane przez aplikacje.

QuotedMessageMetadata

Informacje o wiadomości, którą cytuje inna wiadomość.

Podczas aktualizowania wiadomości nie możesz dodać ani zastąpić pola quotedMessageMetadata, ale możesz je usunąć.

Przykłady użycia znajdziesz w artykule Cytowanie innej wiadomości.

Zapis JSON
{
  "name": string,
  "lastUpdateTime": string,
  "quoteType": enum (QuoteType),
  "quotedMessageSnapshot": {
    object (QuotedMessageSnapshot)
  },
  "forwardedMetadata": {
    object (ForwardedMetadata)
  }
}
Pola
name

string

Wymagane. Nazwa zasobu cytowanej wiadomości.

Format: spaces/{space}/messages/{message}

lastUpdateTime

string (Timestamp format)

Wymagane. Sygnatura czasowa utworzenia cytowanej wiadomości lub jej ostatniej aktualizacji.

Jeśli wiadomość została edytowana, użyj tego pola: lastUpdateTime. Jeśli wiadomość nigdy nie była edytowana, użyj tego polecenia: createTime.

Jeśli lastUpdateTime nie pasuje do najnowszej wersji cytowanej wiadomości, żądanie nie zostanie zrealizowane.

quoteType

enum (QuoteType)

Opcjonalnie: Określa typ cytatu. Jeśli nie jest ustawiona, domyślnie przyjmuje wartość REPLY na ścieżce odczytu/zapisu wiadomości w celu zapewnienia zgodności wstecznej.

quotedMessageSnapshot

object (QuotedMessageSnapshot)

Tylko dane wyjściowe. zrzut treści cytowanej wiadomości;

forwardedMetadata

object (ForwardedMetadata)

Tylko dane wyjściowe. Metadane dotyczące pokoju źródłowego cytowanej wiadomości. Wartość podawana tylko w przypadku typu wyceny FORWARD.

QuoteType

Typ cytowanej wiadomości.

Wartości w polu enum
QUOTE_TYPE_UNSPECIFIED Zarezerwowane. Ta wartość nie jest używana.
REPLY

Gdy quoteType ma wartość REPLY, możesz wykonać te czynności:

  • Jeśli odpowiadasz w wątku, możesz zacytować inną wiadomość z tego wątku.

  • Jeśli tworzysz wiadomość główną, możesz zacytować inną wiadomość główną w tym pokoju.

FORWARD

Gdy quoteType to FORWARD, możesz podać:

  • Wiadomość z innego pokoju.

  • Odpowiedź na wiadomość z innego wątku w tym samym pokoju.

QuotedMessageSnapshot

Zawiera zrzut treści zacytowanej wiadomości w momencie cytowania lub przekazywania.

Zapis JSON
{
  "sender": string,
  "text": string,
  "formattedText": string,
  "annotations": [
    {
      object (Annotation)
    }
  ],
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
Pola
sender

string

Tylko dane wyjściowe. Imię i nazwisko autora cytowanej wiadomości. Wypełniane w przypadku typów cytatów ODPOWIEDŹ i PRZEŚLIJ DALEJ.

text

string

Tylko dane wyjściowe. Migawka treści tekstowej cytowanej wiadomości.

formattedText

string

Tylko dane wyjściowe. Zawiera cytowaną wiadomość text z dodanymi znacznikami obsługującymi formatowanie,takie jak hiperlinki, niestandardowe emotikony, znaczniki itp. Wypełniane tylko w przypadku typu cytatu FORWARD.

annotations[]

object (Annotation)

Tylko dane wyjściowe. Adnotacje przeanalizowane z treści cytowanej wiadomości. Wartość podawana tylko w przypadku typu wyceny FORWARD.

attachments[]

object (Attachment)

Tylko dane wyjściowe. załączniki, które były częścią cytowanej wiadomości; Są to kopie metadanych załączników cytowanej wiadomości. Wartość podawana tylko w przypadku typu wyceny FORWARD.

ForwardedMetadata

Metadane dotyczące pokoju źródłowego, z którego została przekazana wiadomość.

Zapis JSON
{
  "space": string,
  "spaceDisplayName": string
}
Pola
space

string

Tylko dane wyjściowe. Nazwa zasobu przestrzeni źródłowej. Format: spaces/{space}

spaceDisplayName

string

Tylko dane wyjściowe. Wyświetlana nazwa źródłowego pokoju lub wiadomości bezpośredniej w momencie przekazywania. W przypadku SPACE jest to nazwa pokoju. W przypadku DIRECT_MESSAGE jest to nazwa innego uczestnika (np. „Użytkownik A”). W przypadku GROUP_CHAT jest to wygenerowana nazwa na podstawie imion wspierających, ograniczona do 5 osób, w tym twórcy (np. „Użytkownik A, Użytkownik B”).

AttachedGif

Obraz GIF określony przez adres URL.

Zapis JSON
{
  "uri": string
}
Pola
uri

string

Tylko dane wyjściowe. Adres URL, pod którym znajduje się obraz GIF.

AccessoryWidget

Co najmniej 1 interaktywny widżet, który pojawia się u dołu wiadomości. Więcej informacji znajdziesz w artykule Dodawanie interaktywnych widżetów u dołu wiadomości.

Zapis JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "buttonList": {
    object (ButtonList)
  }
}
Pola
Typ działania. Poniżej znajduje się lista pól, które się wzajemnie wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
buttonList

object (ButtonList)

Lista przycisków.

Koniec pól wykluczających się nawzajem.

Elementy

Elementy to dodatkowe komponenty, które mogą być powiązane z tekstem wiadomości podanym podczas tworzenia wiadomości.

Zapis JSON
{
  "citedSources": [
    {
      object (CitedSource)
    }
  ],
  "citations": [
    {
      object (Citation)
    }
  ]
}
Pola
citedSources[]

object (CitedSource)

Lista źródeł, które mają być wyświetlane pod wiadomością jako linki w stopce. Nie są one przywoływane w tekście. W przypadku odwołań w tekście użyj elementu citations.

citations[]

object (Citation)

Lista cytatów w tekście wiadomości (za pomocą tagów <chat-citation>), które są wyświetlane jako interaktywne karty po najechaniu kursorem.

CitedSource

Odwołanie do źródła informacji.

Zapis JSON
{
  "title": string,
  "uri": string,
  "snippet": {
    object (Snippet)
  },
  "footer": {
    object (Footer)
  }
}
Pola
title

string

Wymagane. Tytuł CitedSource w formie zwykłego tekstu. To pole nie obsługuje formatowania.

uri

string

Wymagane. Identyfikator URI wskazujący zasób, do którego odwołuje się ten element CitedSource.

snippet

object (Snippet)

Opcjonalnie: Fragment zawierający informacje bezpośrednio ze źródła.

footer

object (Footer)

Opcjonalnie: Dodatkowe informacje, które mają być wyświetlane obok fragmentu kodu w formie stopki.

Krótki opis

Obiekt fragmentu reprezentujący wyciąg z większego korpusu.

Zapis JSON
{
  "text": string,
  "imagePreview": {
    object (ElementsImage)
  }
}
Pola
text

string

Opcjonalnie: Krótki fragment tekstu w formacie zwykłego tekstu pochodzący bezpośrednio z korpusu, który może być renderowany w Google Chat. Nie obsługuje formatu Markdown.

imagePreview

object (ElementsImage)

Opcjonalnie: Podgląd obrazu fragmentu podanego jako dane wejściowe podczas tworzenia cytatu.

ElementsImage

Obiekt zawierający różne sposoby reprezentowania obrazu. Obecnie obsługiwane reprezentacje: - obraz pobrany z identyfikatora URI. W przyszłości możemy dodać obsługę kolejnych reprezentacji.

Zapis JSON
{

  "imageUri": string
}
Pola
Wymagane. Jedna z obsługiwanych reprezentacji obrazu. Poniżej znajduje się lista pól, które się wzajemnie wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:
imageUri

string

Wymagane. Publicznie dostępny identyfikator URI obrazu.

Koniec pól wykluczających się nawzajem.

Stopka źródła używana do atrybucji.

Zapis JSON
{
  "text": string
}
Pola
text

string

Opcjonalnie: Tekst, który ma być wyświetlany w stopce.

Cytat

Cytaty to odwołania w tekście, które mogą dostarczać użytkownikom bardziej szczegółowych informacji o odwołaniu. Odpowiednie cytaty w tekście wiadomości powinny być podane w formacie <chat-citation data-id="{id}">{text}</chat-citation>. Cytaty są obsługiwane tylko wtedy, gdy pole markupSyntax wiadomości jest ustawione na MARKDOWN.

Nieodwołane cytaty w Elements.citations (czyli te, które nie mają pasującego tagu <chat-citation> w tekście wiadomości) są ignorowane i nie powodują odrzucenia wiadomości.

Zapis JSON
{
  "id": string,
  "citedSources": [
    {
      object (CitedSource)
    }
  ]
}
Pola
id

string

Wymagane. Identyfikator zdefiniowany przez aplikację. Musi zawierać tylko litery i cyfry ASCII oraz mieć mniej niż 63 znaki.

citedSources[]

object (CitedSource)

Opcjonalnie: Lista źródeł, które są istotne dla cytatu. Źródła są wyświetlane na karcie po najechaniu kursorem na cytat.

MarkupSyntax

Określa składnię znaczników używaną do formatowania tekstu wiadomości na czacie. Dotyczy pola text zasobu Message.

Wartości w polu enum
MARKUP_SYNTAX_UNSPECIFIED Reprezentuje nieokreśloną wartość.
MARKUP_SYNTAX_CHAT Używa składni znaczników Google Chat. Więcej informacji znajdziesz na stronie https://developers.google.com/workspace/chat/format-messages#format-texts.
MARKUP_SYNTAX_MARKDOWN Używa składni Markdown. Ta składnia jest oparta na specyfikacji CommonMark z dodatkowymi rozszerzeniami. Więcej informacji znajdziesz na stronie https://developers.google.com/workspace/chat/format-messages#format-texts.

Metody

create

Tworzy wiadomość w pokoju Google Chat.

delete

Usuwa wiadomość.

get

Zwraca szczegóły wiadomości.

list

Wyświetla wiadomości w pokoju, do którego należy dzwoniący, w tym wiadomości od zablokowanych użytkowników i pokoi.

patch

Aktualizuje wiadomość.

replaceCards

Zastępuje karty dołączone do wiadomości.
Wyszukiwanie wiadomości w Google Chat, do których użytkownik ma dostęp.

update

Aktualizuje wiadomość.