Colaborar usando um complemento do Meet

Os participantes de uma reunião podem trabalhar em colaboração em uma atividade de complemento do Google Meet. Quando uma atividade colaborativa começa, todos os participantes da reunião recebem uma notificação de 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 precisar instalar o complemento.

  • Se o complemento não estiver disponível para a plataforma do participante: ele vai receber uma mensagem informando que não é possível participar da atividade usando o dispositivo atual.

Quando um usuário participa da atividade, ele carrega os próprios iframes com o conteúdo do seu complemento. Você pode personalizar se os novos participantes devem abrir a atividade colaborativa na tela 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, é possível chamar startActivity() em vez de setActivityStartingState().

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

    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 organizador: se um URL do 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 o complemento no palco principal ou no painel lateral, dependendo do ActivityStartingState.

Com a propriedade additionalData, é possível 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 recuperar 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 estado de duas maneiras:

  • Faça isso 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"Animação" 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 "Iniciar a animação" no painel lateral, o método startActivity() é chamado (Etapa 2) ao preencher o estado inicial com a cor selecionada pelo usuário. Depois que a atividade é iniciada, o estágio principal recupera o estado inicial chamando o método getActivityStartingState() (Etapa 3). A etapa 4 foi 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