Cómo configurar el espacio de reuniones

Un espacio de reunión representa un lugar virtual o un objeto persistente (como una sala de reuniones) en el que se llevan a cabo conferencias. Un espacio de reuniones también ayuda a los usuarios a reunirse y encontrar recursos compartidos.

Cuando creas un espacio de reunión con el método spaces.create, se muestra una instancia de un recurso spaces. El recurso incluye el objeto SpaceConfig, que es la configuración del espacio de reunión. También contiene el objeto ActiveConference, que es un vínculo al recurso conferenceRecords actual dentro de la sala de reuniones. Para obtener más información sobre cómo administrar una sala de reuniones, consulta Administra salas de reuniones.

En las siguientes secciones, se detalla cómo configurar un espacio de reunión con estos objetos y métodos.

Cómo establecer la moderación y el acceso a la reunión

Puedes configurar cómo se unen los usuarios a una reunión, los modos de moderación, las restricciones de funciones y los permisos que reciben los usuarios cuando se unen a una reunión a través del objeto SpaceConfig.

Acceder a salas de reuniones

Para determinar quién puede unirse a un espacio de reunión sin solicitarlo, configura el campo accessType con el objeto AccessType. Puedes elegir entre varios parámetros de configuración para permitir automáticamente que los asistentes se unan. De forma predeterminada, el campo se establece según la configuración de acceso predeterminada del usuario.

Para definir los puntos de entrada que se pueden usar para unirse a reuniones alojadas en un espacio de reunión, configura el campo entryPointAccess con el objeto EntryPointAccess. Se establece en ALL para permitir todos los puntos de entrada o en CREATOR_APP_ONLY para limitar los puntos de entrada solo a los que pertenecen al proyecto de Google Cloud que creó el espacio de reunión.

En la siguiente muestra de código, se muestra cómo configurar los parámetros de acceso para un espacio de reunión:

Java

import com.google.apps.meet.v2.Space;
import com.google.apps.meet.v2.SpaceConfig;
import com.google.apps.meet.v2.SpacesServiceClient;
import com.google.apps.meet.v2.UpdateSpaceRequest;
import com.google.protobuf.FieldMask;

public class ConfigureSpaceAccess {
  public static void main(String[] args) throws Exception {
    try (SpacesServiceClient client = SpacesServiceClient.create()) {
      Space space =
          Space.newBuilder()
              .setName("spaces/SPACE_NAME")
              .setConfig(
                  SpaceConfig.newBuilder()
                      .setAccessType(SpaceConfig.AccessType.RESTRICTED)
                      .setEntryPointAccess(SpaceConfig.EntryPointAccess.ALL)
                      .build())
              .build();
      FieldMask updateMask =
          FieldMask.newBuilder()
              .addPaths("config.access_type")
              .addPaths("config.entry_point_access")
              .build();
      UpdateSpaceRequest request =
          UpdateSpaceRequest.newBuilder()
              .setSpace(space)
              .setUpdateMask(updateMask)
              .build();
      Space response = client.updateSpace(request);
      System.out.println("Updated space: " + response.getName());
    }
  }
}

Node.js

const {SpacesServiceClient} = require('@google-apps/meet').v2;

async function configureSpaceAccess(spaceName) {
  const meetClient = new SpacesServiceClient();
  const [response] = await meetClient.updateSpace({
    space: {
      name: spaceName,
      config: {
        accessType: 'RESTRICTED',
        entryPointAccess: 'ALL',
      },
    },
    updateMask: {
      paths: ['config.access_type', 'config.entry_point_access'],
    },
  });
  console.log(`Updated space: ${response.name}`);
  return response;
}

Python

from google.apps import meet_v2
from google.protobuf import field_mask_pb2

def configure_space_access(space_name):
    client = meet_v2.SpacesServiceClient()
    space = meet_v2.Space(
        name=space_name,
        config=meet_v2.SpaceConfig(
            access_type=meet_v2.SpaceConfig.AccessType.RESTRICTED,
            entry_point_access=meet_v2.SpaceConfig.EntryPointAccess.ALL,
        ),
    )
    update_mask = field_mask_pb2.FieldMask(
        paths=["config.access_type", "config.entry_point_access"]
    )
    request = meet_v2.UpdateSpaceRequest(
        space=space,
        update_mask=update_mask
    )
    response = client.update_space(request=request)
    print(f"Updated space: {response.name}")
    return response

Apps Script

function configureSpaceAccess(spaceName) {
  const baseUrl = 'https://meet.googleapis.com/v2/';
  const mask = 'updateMask=config.accessType,config.entryPointAccess';
  const response = UrlFetchApp.fetch(`${baseUrl}${spaceName}?${mask}`, {
    method: 'patch',
    contentType: 'application/json',
    headers: {
      Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
    },
    payload: JSON.stringify({
      config: {
        accessType: 'RESTRICTED',
        entryPointAccess: 'ALL',
      },
    }),
  });
  const space = JSON.parse(response.getContentText());
  Logger.log('Updated space: ' + space.name);
  return space;
}

cURL

curl -X PATCH \
  "https://meet.googleapis.com/v2/spaces/SPACE_NAME?updateMask=config.accessType,config.entryPointAccess" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "config": {
      "accessType": "RESTRICTED",
      "entryPointAccess": "ALL"
    }
  }'

Reemplaza ACCESS_TOKEN por el token de acceso que otorga acceso a la API.

Reemplaza el valor del nombre del espacio por el ID único generado por el servidor para el espacio de reunión.

Salas de reuniones medianas

Para moderar una reunión, puedes configurar el campo moderation con el objeto Moderation. Cuando el modo moderation es on, el organizador de la reunión tiene control sobre ella con funciones como la administración de coorganizadores (consulta spaces.members) y las restricciones de funciones con el campo moderationRestrictions. Para obtener más información sobre los miembros, consulta Cómo administrar miembros del espacio de reunión.

Para definir restricciones de funciones cuando la reunión está moderada (moderation es on), configura el campo moderationRestrictions con el objeto ModerationRestrictions. Las restricciones definen quién tiene permiso dentro del espacio de la reunión para enviar mensajes de chat o reacciones, o para compartir su pantalla.

Para establecer las restricciones de funciones en el campo moderationRestrictions, usa RestrictionType para aplicar chatRestriction, reactionRestriction y presentRestriction. Configúralo en HOSTS_ONLY para aplicar los permisos al organizador y a los coorganizadores de la reunión, o en NO_RESTRICTION para aplicarlos a todos los participantes.

Para restringir el rol predeterminado asignado a los usuarios como visualizadores, configura el campo defaultJoinAsViewerType con DefaultJoinAsViewerType. Si defaultJoinAsViewerType es on, los usuarios se unen como espectadores. Si es off, los usuarios se unen como colaboradores. La cantidad predeterminada es off. Si se establece un rol explícito para un usuario en spaces.members, el usuario se unirá con ese rol.

Genera un informe de asistencia

Para crear un informe de asistencia del espacio de reunión, configura el campo attendanceReportGenerationType con el objeto AttendanceReportGenerationType. Si se solicita un informe, Google Meet lo guarda en la unidad de Google Drive del organizador de la reunión y también se envía un correo electrónico.

Administra artefactos automáticos

Los organizadores de reuniones, pero no los coanfitriones, pueden configurar previamente la grabación automática, las transcripciones automáticas y las notas inteligentes en la sala de reuniones. Cuando se habilitan estos parámetros de configuración, se graba la sala de reuniones, se generan transcripciones y se toman notas de la reunión, que se organizan automáticamente en Documentos de Google. Cada función es independiente y se configura por espacio de reunión. Los subtítulos de grabación solo están disponibles en inglés.

Puedes configurar previamente los artefactos automáticos cuando crees un espacio de reunión o una vez que se haya creado. Ambos métodos requieren el alcance de OAuth meetings.space.settings. Para obtener más información, consulta Permisos de OAuth por caso de uso.

También puedes configurar artefactos automáticos para las reuniones creadas desde el Calendario de Google.

Para configurar los artefactos automáticos, usa el objeto ArtifactConfig dentro del objeto SpaceConfig. ArtifactConfig se compone de los campos recordingConfig, transcriptionConfig y smartNotesConfig.

Cada campo se asigna a un objeto similar, como RecordingConfig, TranscriptionConfig y SmartNotesConfig. Para establecer cada objeto, usa AutoGenerationType para alternar el objeto de configuración on o off.

Para recuperar los artefactos creados durante una conferencia, consulta Trabaja con artefactos.

Diferencia entre las transcripciones y las notas inteligentes

Si bien las transcripciones de reuniones y las notas inteligentes (también conocidas como "tomar notas por mí") capturan información de tu reunión, estas funciones tienen diferentes propósitos y producen diferentes artefactos.

En la siguiente tabla, se muestran las diferencias:

Función Transcripciones Notas inteligentes
Descripción general Un registro literal, palabra por palabra. Un resumen conciso de los puntos clave que genera Gemini.
Nivel de detalle Detalle al 100%. Todo lo que se dice se escribe. Es de alto nivel. Se enfoca en las decisiones y los elementos de acción.
Caso práctico Cumplimiento de los requisitos legales, verificación de citas exactas y accesibilidad para los usuarios Permite que los participantes que llegan tarde se pongan al día al instante, y automatiza la toma de notas y el seguimiento de proyectos.
Uso en tiempo real Se usa para los subtítulos. El archivo se genera después de la llamada. Puedes ver el edificio resumido en el panel lateral durante la llamada.
Resultado Un documento largo de Docs con el nombre del orador y marcas de tiempo. Un documento de Documentos conciso con notas de la reunión, secciones y viñetas.
Cita Contiene el texto completo al que se puede vincular. Incluye citas (marcas de tiempo) que se vinculan al momento específico de la transcripción para brindar contexto, si tanto las transcripciones como las notas inteligentes están habilitadas. Para obtener más información, consulta Cuando ambas funciones están habilitadas.

Cuando ambas funciones están habilitadas

Si bien cada función se puede usar por separado, tanto las transcripciones como las notas inteligentes también se pueden usar al mismo tiempo para crear mejores artefactos posteriores a la reunión.

Cuando ambas funciones estén habilitadas, verás citas en el documento generado de notas inteligentes. Estas citas aparecen en diferentes partes de la sección de detalles y se vinculan a marcas de tiempo específicas de la transcripción de la reunión. Si haces clic en estas citas, puedes ir directamente a la sección correspondiente de la transcripción para comprender mejor de qué se estaba hablando.

Durante la reunión, los participantes verán indicadores de que ambas funciones están activas. Deben permanecer activos durante toda la reunión para generar citas en las que se pueda hacer clic. Aunque los archivos están vinculados entre sí, el sistema genera dos documentos distintos en el Drive del host. Ambos archivos también se adjuntan automáticamente al evento de Calendario.

Para obtener más información sobre los permisos de OAuth necesarios para los espacios y la configuración de reuniones, consulta Permisos de OAuth por caso de uso.