Pular para o conteúdo principal

Visão Geral

Permita que seus agentes acessem e gerenciem emails, eventos de calendário e contatos do Outlook. Envie emails, recupere mensagens, gerencie eventos de calendário e organize contatos com automação alimentada por IA.

Pré-requisitos

Antes de usar a integração Microsoft Outlook, certifique-se de ter:

Configurando a Integração Microsoft Outlook

1. Conecte sua Conta Microsoft

  1. Navegue para Integrações CrewAI AMP
  2. Encontre Microsoft Outlook 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 a email, calendário e contatos
  5. Copie seu Token Enterprise das Configurações de Integração

2. Instale o Pacote Necessário

uv add crewai-tools

Ações Disponíveis

Descrição: Obter mensagens de email da caixa de correio do usuário.Parâmetros:
  • top (integer, opcional): Número de mensagens a recuperar (máx 1000). Padrão: 10.
  • filter (string, opcional): Expressão de filtro OData (ex: “isRead eq false”).
  • search (string, opcional): String de consulta de pesquisa.
  • orderby (string, opcional): Ordenar por campo (ex: “receivedDateTime desc”). Padrão: “receivedDateTime desc”.
  • select (string, opcional): Selecionar propriedades específicas para retornar.
  • expand (string, opcional): Expandir recursos relacionados inline.
Descrição: Enviar uma mensagem de email.Parâmetros:
  • to_recipients (array, obrigatório): Array de endereços de email dos destinatários.
  • cc_recipients (array, opcional): Array de endereços de email dos destinatários em cópia.
  • bcc_recipients (array, opcional): Array de endereços de email dos destinatários em cópia oculta.
  • subject (string, obrigatório): Assunto do email.
  • body (string, obrigatório): Conteúdo do corpo do email.
  • body_type (string, opcional): Tipo de conteúdo do corpo. Opções: Text, HTML. Padrão: HTML.
  • importance (string, opcional): Nível de importância da mensagem. Opções: low, normal, high. Padrão: normal.
  • reply_to (array, opcional): Array de endereços de email para resposta.
  • save_to_sent_items (boolean, opcional): Se deve salvar a mensagem na pasta Itens Enviados. Padrão: true.
Descrição: Obter eventos de calendário do calendário do usuário.Parâmetros:
  • top (integer, opcional): Número de eventos a recuperar (máx 1000). Padrão: 10.
  • skip (integer, opcional): Número de eventos a pular. Padrão: 0.
  • filter (string, opcional): Expressão de filtro OData (ex: “start/dateTime ge ‘2024-01-01T00:00:00Z’”).
  • orderby (string, opcional): Ordenar por campo (ex: “start/dateTime asc”). Padrão: “start/dateTime asc”.
Descrição: Criar um novo evento de calendário.Parâmetros:
  • subject (string, obrigatório): Assunto/título do evento.
  • body (string, opcional): Corpo/descrição do evento.
  • start_datetime (string, obrigatório): Data e hora de início no formato ISO 8601 (ex: ‘2024-01-20T10:00:00’).
  • end_datetime (string, obrigatório): Data e hora de término no formato ISO 8601.
  • timezone (string, opcional): Fuso horário (ex: ‘Pacific Standard Time’). Padrão: UTC.
  • location (string, opcional): Local do evento.
  • attendees (array, opcional): Array de endereços de email dos participantes.
Descrição: Obter contatos do catálogo de endereços do usuário.Parâmetros:
  • top (integer, opcional): Número de contatos a recuperar (máx 1000). Padrão: 10.
  • skip (integer, opcional): Número de contatos a pular. Padrão: 0.
  • filter (string, opcional): Expressão de filtro OData.
  • orderby (string, opcional): Ordenar por campo (ex: “displayName asc”). Padrão: “displayName asc”.
Descrição: Criar um novo contato no catálogo de endereços do usuário.Parâmetros:
  • displayName (string, obrigatório): Nome de exibição do contato.
  • givenName (string, opcional): Primeiro nome do contato.
  • surname (string, opcional): Sobrenome do contato.
  • emailAddresses (array, opcional): Array de endereços de email. Cada item é um objeto com address (string) e name (string).
  • businessPhones (array, opcional): Array de números de telefone comerciais.
  • homePhones (array, opcional): Array de números de telefone residenciais.
  • jobTitle (string, opcional): Cargo do contato.
  • companyName (string, opcional): Nome da empresa do contato.

Exemplos de Uso

Configuração Básica do Agente Microsoft Outlook

from crewai import Agent, Task, Crew

# Crie um agente com capacidades do Microsoft Outlook
outlook_agent = Agent(
    role="Assistente de Email",
    goal="Gerenciar emails, eventos de calendário e contatos de forma eficiente",
    backstory="Um assistente IA especializado em operações do Microsoft Outlook e gerenciamento de comunicação.",
    apps=['microsoft_outlook']  # Todas as ações do Outlook estarão disponíveis
)

# Tarefa para enviar um email
send_email_task = Task(
    description="Enviar um email para 'colega@exemplo.com' com assunto 'Atualização do Projeto' e corpo 'Olá, aqui está a última atualização do projeto. Atenciosamente.'",
    agent=outlook_agent,
    expected_output="Email enviado com sucesso para colega@exemplo.com"
)

# Execute a tarefa
crew = Crew(
    agents=[outlook_agent],
    tasks=[send_email_task]
)

crew.kickoff()

Solução de Problemas

Problemas Comuns

Erros de Autenticação
  • Certifique-se de que sua conta Microsoft tenha as permissões necessárias para acesso a email, calendário e contatos.
  • Escopos necessários incluem: Mail.Read, Mail.Send, Calendars.Read, Calendars.ReadWrite, Contacts.Read, Contacts.ReadWrite.
Problemas de Envio de Email
  • Certifique-se de que to_recipients, subject e body sejam fornecidos para send_email.
  • Verifique se os endereços de email estão formatados corretamente.

Obtendo Ajuda

Precisa de Ajuda?

Entre em contato com nossa equipe de suporte para assistência com configuração ou solução de problemas da integração Microsoft Outlook.
I