Colaborar usando um complemento do Meet

Os participantes de uma reunião podem trabalhar em conjunto em uma atividade de complemento do Google Meet. Quando uma atividade colaborativa começa, todos os participantes da reunião recebem uma notificação informando que a atividade está em andamento.

Essa notificação é adaptada à disponibilidade e ao status de instalação do complemento:

  • Se o participante tiver o complemento instalado: Ele poderá participar da atividade.

  • Se o participante não tiver o complemento instalado: ele vai receber instruções para instalar o complemento.

  • Se o complemento não estiver disponível para a plataforma do participante: o participante vai receber a informação de que não é possível participar da atividade com o dispositivo atual.

Quando um usuário participa da atividade, ele carrega os próprios iframes com seu conteúdo complementar. É possível personalizar se os novos participantes vão abrir a atividade colaborativa no palco principal ou no painel lateral.

Iniciar a atividade

Uma atividade é iniciada chamando o método startActivity(), que usa a interface ActivityStartingState.

Etapa 1 (opcional): o complemento define o estado inicial da atividade

O ActivityStartingState contém informações sobre o estado inicial do complemento usado quando o participante aceita o convite para participar da atividade.

O complemento pode definir ou atualizar o ActivityStartingState chamando o método setActivityStartingState() a qualquer momento antes ou durante a atividade. As chamadas para setActivityStartingState() podem ser omitidas se o ActivityStartingState for definido exclusivamente na chamada para startActivity().

Etapa 2: o complemento inicia a atividade

A atividade começa quando o complemento chama o método startActivity() no MeetSidePanelClient. O método startActivity() usa um objeto ActivityStartingState como parâmetro. Assim, startActivity() pode ser chamado em vez de chamar setActivityStartingState().

Quando o usuário concluir a seleção de conteúdo e estiver pronto para iniciar uma atividade, chame o método startActivity() no seu complemento da seguinte maneira:

    sidePanelClient.startActivity({
        mainStageUrl: "https://app.example.com/mainstage",
        additionalData: JSON.stringify({
            // State to send to participants.
        })
    });

Quando o método startActivity() é invocado, o Meet realiza as seguintes ações:

  • Para outros participantes: o Meet mostra uma notificação de que a atividade está em andamento.

  • Para o iniciador: se um URL de palco principal foi especificado no ActivityStartingState, o Meet abre o palco principal usando o URL do ActivityStartingState.

Etapa 3: receber o estado inicial da atividade

Quando um usuário participa da atividade, ele carrega seu complemento no palco principal ou no painel lateral, dependendo do ActivityStartingState.

Com a propriedade additionalData, você pode compartilhar dados iniciais (também chamados de estado) com os usuários que participam da atividade. Depois de inicializar um MainStageClient ou SidePanelClient, você pode chamar o método getActivityStartingState() para extrair a propriedade additionalData.

const startingState = client.getActivityStartingState();
const additionalData = JSON.parse(startingState.additionalData);

Etapa 4 (opcional): compartilhar o estado do complemento em uma atividade

Você também pode compartilhar o estado entre usuários enquanto a atividade está em andamento. É possível compartilhar o estado de duas maneiras:

  • Gerencie-o por conta própria criando seu próprio back-end de sincronização.
  • Use a API Co-Doing, que é uma maneira conveniente e rápida de compartilhar dados arbitrários entre usuários.

Exemplo: complemento de animação no GitHub

O complemento de exemplo"Animation" no GitHub inclui colaboração em um complemento. A Etapa 1 deste guia não está incluída na amostra. Em vez disso, quando o iniciador do complemento clica no botão "Start the Animation" no painel lateral, o método startActivity() é chamado (Etapa 2) preenchendo o estado inicial com a cor selecionada pelo usuário. Depois que a atividade é iniciada, a etapa principal recupera o estado inicial chamando o método getActivityStartingState() (Etapa 3). A Etapa 4 é omitida, porque o estado (a cor selecionada) não é compartilhado entre os participantes durante a atividade neste complemento de exemplo. No entanto, os usuários individuais podem mudar o próprio estado selecionando uma cor, que é enviada do frame do painel lateral para o frame do palco principal usando mensagens frame a frame.

Restrições