Gerenciar objetos do cliente

Esta página descreve como gerenciar objetos de cliente que um complemento precisa para se comunicar com o Google Meet.

Primeiro, o complemento precisa estabelecer uma sessão:

  const session = await window.meet.addon.createAddonSession({
      cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
    });

Substitua CLOUD_PROJECT_NUMBER pelo número do projeto do Google Cloud.

Na sessão, é possível criar dois objetos cliente:

É importante recuperar o objeto de cliente correto para o palco principal ou o painel lateral. Se o cliente errado for recuperado, o SDK de complementos do Google Meet vai gerar uma exceção. Para verificar em qual iframe (palco principal ou painel lateral) o complemento está sendo executado, use o método getFrameType().

A amostra de código a seguir mostra como instanciar o objeto cliente do estágio principal:

  const session = await window.meet.addon.createAddonSession({
      cloudProjectNumber: "CLOUD_PROJECT_NUMBER"
    });
  const mainStageClient = await session.createMainStageClient();

Substitua CLOUD_PROJECT_NUMBER pelo número do projeto do Cloud.

Recursos compartilhados

Alguns recursos estão disponíveis nos objetos MeetMainStageClient e MeetSidePanelClient, enquanto outros são específicos de um determinado cliente.

Por exemplo, alguns recursos disponíveis nos dois clientes incluem:

  • O método getActivityStartingState() que recebe informações sobre o estado inicial do complemento quando o participante aceita o convite para participar da atividade.
  • O método getMeetingInfo() que recebe detalhes sobre a reunião em que o complemento está sendo executado.
  • O método setActivityStartingState() que define o estado inicial do complemento quando o participante aceita o convite para participar da atividade.
  • Para uma lista completa de recursos nos dois clientes, consulte o objeto MeetAddonClient.

Recursos específicos do cliente

Recursos disponíveis apenas no objeto MeetMainStageClient:

  • O método notifySidePanel() envia uma mensagem para o painel lateral. A mensagem pode ser recebida ao assinar o frameToFrameMessage callback no painel lateral.

  • O método loadSidePanel() abre o iframe do painel lateral. A origem do iframe é definida como o URL do painel lateral do arquivo de manifesto.

  • O método unloadSidePanel() fecha o iframe do painel lateral. O estado do complemento não é mantido no Meet quando o método é chamado. É responsabilidade do complemento persistir qualquer estado antes da chamada desse método.

Recursos disponíveis apenas no objeto MeetSidePanelClient: