Tworzenie wersji roboczych wiadomości

W dodatku do Google Workspace możesz tworzyć widżety z którymi są powiązane działania. Za pomocą utwórz nowe wersje robocze e-maili (opcjonalnie możesz wypełnić je za pomocą informacje wpisane w interfejsie dodatku lub informacje z otwartej wiadomości. Możesz na przykład umieścić przycisk na swojej stronie interfejs wiadomości dodatku tworzącą odpowiedź na aktualnie otwartą wiadomość zawierającą wstępnie pochodzące z dodatku.

Po wywołaniu działania tworzącego wiadomości Gmail wykonuje wywołanie zwrotne do skompilowania i zwrócenia wersji roboczej. Gmail wyświetli tę wersję roboczą Interfejs użytkownika w standardowym oknie tworzenia e-maili, które użytkownik może następnie edytować i wysłać. w razie potrzeby.

Konfigurowanie działania w celu utworzenia wersji roboczej wiadomości

Aby skonfigurować widżet, który po wybraniu rozpocznie działanie tworzenia wersji roboczej, musisz wykonaj te czynności:

  1. Upewnij się, że Twój manifest obejmuje Zakres action.compose:

    https://www.googleapis.com/auth/gmail.addons.current.action.compose

    Zamiast tego możesz użyć bardziej ograniczonego zakresu, ale należy to zrobić tylko wtedy, jest absolutnie konieczne.

  2. Tworzenie obiektu Action i powiąż ją z funkcją wywołania zwrotnego zdefiniowanych przez reklamodawcę.

  3. Wywołaj polecenie setComposeAction() widżetu funkcji obsługi widżetów, dostarczanie mu Action i określ ComposeEmailType

  4. Zaimplementuj funkcję wywołania zwrotnego, która wykonuje działanie tworzenia wersji roboczej. Ten funkcja otrzymuje obiekt zdarzenia jako argumentu. Funkcja wywołania zwrotnego musi:

    1. Tworzenie GmailDraft obiektu.
    2. Tworzenie ComposeActionResponse za pomocą funkcji ComposeActionResponseBuilder i GmailDraft obiektu.
    3. Zwróć utworzone ComposeActionResponse.

Możesz wstępnie wypełnić pole GmailDraft tworzone w funkcji wywołania zwrotnego za pomocą funkcji odbiorców, temat, treść wiadomości i załączniki. Aby wypełnić wersję roboczą: dane mogą pochodzić z dowolnego źródła, ale zwykle pochodzą z informacji przekazane do samego dodatku, informacje w otwartej wiadomości lub informacji zebranych z usługi innej firmy. obiekt zdarzenia przekazywana do funkcji wywołania zwrotnego zawiera identyfikator otwartej wiadomości i inny dodatek informacje, których możesz użyć do wstępnego wypełnienia wersji roboczej.

Wersję roboczą możesz utworzyć jako nową, samodzielną wiadomość lub jako odpowiedź na istniejącej wiadomości. Zależy to od ComposeEmailType wyliczanie podane w funkcji setComposeAction() Możesz tworzyć wersje robocze odpowiedzi jako pojedyncze odpowiedzi lub odpowiedzi „odpowiedz do wszystkich” wiadomości.

Samodzielne wersje robocze

Samodzielna wersja robocza otwiera nowy wątek i nie jest odpowiedzią w żadnym istniejącym . Możesz utworzyć osobną wersję roboczą, korzystając z jednej z tych usług: Funkcje usługi Gmail:

Wersje robocze odpowiedzi

Wersja robocza odpowiedzi jest częścią istniejącego wątku wiadomości. Wersje robocze odpowiedzi to: pojedyncze odpowiedzi wysyłane tylko do nadawcy wiadomości lub „Odpowiedz wszystkim” wersje robocze, które są wysyłane do wszystkich, którzy otrzymali daną wiadomość. Możesz utworzyć wersja robocza odpowiedzi w jednej z tych usług Gmail funkcje:

Przykład

Ten fragment kodu pokazuje, jak przypisać działanie tworzące odpowiedź wersji roboczej do przycisku.

  var composeAction = CardService.newAction()
      .setFunctionName('createReplyDraft');
  var composeButton = CardService.newTextButton()
      .setText('Compose Reply')
      .setComposeAction(
          composeAction,
          CardService.ComposedEmailType.REPLY_AS_DRAFT);

  // ...

  /**
   *  Creates a draft email (with an attachment and inline image)
   *  as a reply to an existing message.
   *  @param {Object} e An event object passed by the action.
   *  @return {ComposeActionResponse}
   */
  function createReplyDraft(e) {
    // Activate temporary Gmail scopes, in this case to allow
    // a reply to be drafted.
    var accessToken = e.gmail.accessToken;
    GmailApp.setCurrentMessageAccessToken(accessToken);

    // Creates a draft reply.
    var messageId = e.gmail.messageId;
    var message = GmailApp.getMessageById(messageId);
    var draft = message.createDraftReply('',
        {
            htmlBody: "Kitten! <img src='cid:kitten'/>",
            attachments: [
              UrlFetchApp.fetch('https://example.com/images/myDog.jpg')
                  .getBlob()
            ],
            inlineImages: {
              "kitten": UrlFetchApp.fetch('https://example.com/images/myKitten.jpg')
                           .getBlob()
            }
        }
    );

    // Return a built draft response. This causes Gmail to present a
    // compose window to the user, pre-filled with the content specified
    // above.
    return CardService.newComposeActionResponseBuilder()
        .setGmailDraft(draft).build();
  }