Visão Geral

Permita que seus agentes gerenciem eventos de calendário, agendas e disponibilidade através do Google Calendar. Crie e atualize eventos, gerencie participantes, verifique disponibilidade e otimize seu fluxo de agendamento com automação potencializada por IA.

Pré-requisitos

Antes de usar a integração com o Google Calendar, certifique-se de ter:

Configurando a Integração com Google Calendar

1. Conecte sua Conta Google

  1. Acesse Integrações do CrewAI Enterprise
  2. Encontre Google Calendar na seção de Integrações de Autenticação
  3. Clique em Conectar e complete o fluxo OAuth
  4. Conceda as permissões necessárias para acesso ao calendário e contatos
  5. Copie seu Token Enterprise nas Configurações da Conta

2. Instale o Pacote Necessário

uv add crewai-tools

Ações Disponíveis

Exemplos de Uso

Configuração Básica de Agente de Calendário

from crewai import Agent, Task, Crew
from crewai_tools import CrewaiEnterpriseTools

# Obter ferramentas empresariais (as ferramentas do Google Calendar serão incluídas)
enterprise_tools = CrewaiEnterpriseTools(
    enterprise_token="your_enterprise_token"
)

# Criar um agente com capacidades do Google Calendar
calendar_agent = Agent(
    role="Schedule Manager",
    goal="Gerenciar eventos de calendário e agendamento de maneira eficiente",
    backstory="Um assistente de IA especializado em gerenciamento de agendas e coordenação de horários.",
    tools=[enterprise_tools]
)

# Tarefa de criação de reunião
create_meeting_task = Task(
    description="Crie uma reunião diária de equipe amanhã às 9h com o time de desenvolvimento",
    agent=calendar_agent,
    expected_output="Reunião criada com sucesso com link do Google Meet"
)

# Executar a tarefa
crew = Crew(
    agents=[calendar_agent],
    tasks=[create_meeting_task]
)

crew.kickoff()

Filtrando Ferramentas Específicas do Calendário

from crewai_tools import CrewaiEnterpriseTools

# Obter apenas ferramentas específicas do Google Calendar
enterprise_tools = CrewaiEnterpriseTools(
    enterprise_token="your_enterprise_token",
    actions_list=["google_calendar_create_event", "google_calendar_list_events", "google_calendar_get_availability"]
)

meeting_coordinator = Agent(
    role="Meeting Coordinator",
    goal="Coordenar reuniões e verificar disponibilidade",
    backstory="Um assistente de IA que foca em agendamento de reuniões e gerenciamento de disponibilidade.",
    tools=enterprise_tools
)

# Tarefa para agendar reunião com verificação de disponibilidade
schedule_meeting = Task(
    description="Verifique a disponibilidade para a próxima semana e agende uma reunião de revisão do projeto com os stakeholders",
    agent=meeting_coordinator,
    expected_output="Reunião agendada após verificação da disponibilidade de todos os participantes"
)

crew = Crew(
    agents=[meeting_coordinator],
    tasks=[schedule_meeting]
)

crew.kickoff()

Gerenciamento e Atualização de Eventos

from crewai import Agent, Task, Crew
from crewai_tools import CrewaiEnterpriseTools

enterprise_tools = CrewaiEnterpriseTools(
    enterprise_token="your_enterprise_token"
)

event_manager = Agent(
    role="Event Manager",
    goal="Gerenciar e atualizar eventos de calendário de forma eficiente",
    backstory="Um experiente gestor de eventos responsável pela logística e atualizações dos eventos.",
    tools=[enterprise_tools]
)

# Tarefa para gerenciar atualizações de eventos
event_management = Task(
    description="""
    1. Liste todos os eventos desta semana
    2. Atualize os eventos que precisarem de alteração de local para incluir links de videoconferência
    3. Envie convites de calendário para novos membros do time para reuniões recorrentes
    """,
    agent=event_manager,
    expected_output="Eventos semanais atualizados com os locais corretos e novos participantes incluídos"
)

crew = Crew(
    agents=[event_manager],
    tasks=[event_management]
)

crew.kickoff()

Gerenciamento de Contatos e Disponibilidade

from crewai import Agent, Task, Crew
from crewai_tools import CrewaiEnterpriseTools

enterprise_tools = CrewaiEnterpriseTools(
    enterprise_token="your_enterprise_token"
)

availability_coordinator = Agent(
    role="Availability Coordinator",
    goal="Coordenar disponibilidade e gerenciar contatos para agendamento",
    backstory="Um assistente de IA que se especializa em gerenciamento de disponibilidade e coordenação de contatos.",
    tools=[enterprise_tools]
)

# Tarefa de coordenação de disponibilidade
availability_task = Task(
    description="""
    1. Pesquise contatos no departamento de engenharia
    2. Verifique a disponibilidade de todos os engenheiros para a próxima sexta-feira à tarde
    3. Crie uma reunião de equipe no primeiro intervalo de 2 horas disponível
    4. Inclua o link do Google Meet e envie convites
    """,
    agent=availability_coordinator,
    expected_output="Reunião agendada com base na disponibilidade com todos os engenheiros convidados"
)

crew = Crew(
    agents=[availability_coordinator],
    tasks=[availability_task]
)

crew.kickoff()

Workflows de Agendamento Automatizado

from crewai import Agent, Task, Crew
from crewai_tools import CrewaiEnterpriseTools

enterprise_tools = CrewaiEnterpriseTools(
    enterprise_token="your_enterprise_token"
)

scheduling_automator = Agent(
    role="Scheduling Automator",
    goal="Automatizar workflows de agendamento e gerenciamento de calendários",
    backstory="Um assistente de IA que automatiza cenários complexos de agendamento e workflows de agenda.",
    tools=[enterprise_tools]
)

# Tarefa de automação de agendamento complexo
automation_task = Task(
    description="""
    1. Liste todos os eventos futuros das próximas duas semanas
    2. Identifique conflitos de agendamento ou reuniões consecutivas
    3. Sugira horários ótimos de reunião verificando as disponibilidades
    4. Crie intervalos entre reuniões quando necessário
    5. Atualize a descrição dos eventos com pautas e links de reunião
    """,
    agent=scheduling_automator,
    expected_output="Calendário otimizado com conflitos resolvidos, intervalos e detalhes das reuniões atualizados"
)

crew = Crew(
    agents=[scheduling_automator],
    tasks=[automation_task]
)

crew.kickoff()

Solução de Problemas

Problemas Comuns

Erros de Autenticação

  • Certifique-se de que sua conta Google possui as permissões necessárias para acessar o calendário
  • Verifique se a conexão OAuth inclui todos os escopos necessários para a API do Google Calendar
  • Confirme se as configurações de compartilhamento do calendário permitem o nível de acesso necessário

Problemas na Criação de Eventos

  • Verifique se os formatos de horário estão corretos (ISO8601 ou timestamps Unix)
  • Assegure-se de que os endereços de e-mail dos participantes estão corretamente formatados
  • Verifique se o calendário de destino existe e está acessível
  • Confirme se os fusos horários estão especificados corretamente

Disponibilidade e Conflitos de Horário

  • Use formato ISO adequado para os intervalos de horário ao verificar disponibilidade
  • Certifique-se de que os fusos horários estão consistentes em todas as operações
  • Verifique se os IDs dos calendários estão corretos ao consultar múltiplos calendários

Pesquisa de Contatos e Pessoas

  • Assegure-se de que os termos de pesquisa estão devidamente formatados
  • Verifique se as permissões para acesso ao diretório foram concedidas
  • Certifique-se de que as informações de contato estão atualizadas e acessíveis

Atualização e Exclusão de Eventos

  • Verifique se os IDs dos eventos estão corretos e se os eventos existem
  • Assegure-se de que você possui permissões de edição para os eventos
  • Verifique se a propriedade do calendário permite modificações

Obtendo Ajuda

Precisa de ajuda?

Entre em contato com nosso time de suporte para assistência na configuração da integração com o Google Calendar ou solução de problemas.