Integração Microsoft Outlook
Visão Geral
Seção intitulada “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
Seção intitulada “Pré-requisitos”Antes de usar a integração Microsoft Outlook, certifique-se de ter:
- Uma conta CrewAI AMP com assinatura ativa
- Uma conta Microsoft com acesso ao Outlook
- Conectado sua conta Microsoft através da página de Integrações
Configurando a Integração Microsoft Outlook
Seção intitulada “Configurando a Integração Microsoft Outlook”1. Conecte sua Conta Microsoft
Seção intitulada “1. Conecte sua Conta Microsoft”- Navegue para Integrações CrewAI AMP
- Encontre Microsoft Outlook na seção de Integrações de Autenticação
- Clique em Conectar e complete o fluxo OAuth
- Conceda as permissões necessárias para acesso a email, calendário e contatos
- Copie seu Token Enterprise das Configurações de Integração
2. Instale o Pacote Necessário
Seção intitulada “2. Instale o Pacote Necessário”uv add crewai-tools3. Configuração de variável de ambiente
Seção intitulada “3. Configuração de variável de ambiente”export CREWAI_PLATFORM_INTEGRATION_TOKEN="seu_enterprise_token"Ou adicione ao seu arquivo .env:
CREWAI_PLATFORM_INTEGRATION_TOKEN=seu_enterprise_tokenAções Disponíveis
Seção intitulada “Ações Disponíveis”microsoft_outlook/get_messages
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.
microsoft_outlook/send_email
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.
microsoft_outlook/get_calendar_events
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”.
microsoft_outlook/create_calendar_event
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.
microsoft_outlook/get_contacts
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”.
microsoft_outlook/create_contact
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 comaddress(string) ename(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.
microsoft_outlook/get_message
Descrição: Obter uma mensagem de email específica por ID.
Parâmetros:
message_id(string, obrigatório): O identificador único da mensagem. Obter pela ação get_messages.select(string, opcional): Lista separada por vírgulas de propriedades a retornar. Exemplo: “id,subject,body,from,receivedDateTime”. Padrão: “id,subject,body,from,toRecipients,receivedDateTime”.
microsoft_outlook/reply_to_email
Descrição: Responder a uma mensagem de email.
Parâmetros:
message_id(string, obrigatório): O identificador único da mensagem a responder. Obter pela ação get_messages.comment(string, obrigatório): O conteúdo da mensagem de resposta. Pode ser texto simples ou HTML. A mensagem original será citada abaixo deste conteúdo.
microsoft_outlook/forward_email
Descrição: Encaminhar uma mensagem de email.
Parâmetros:
message_id(string, obrigatório): O identificador único da mensagem a encaminhar. Obter pela ação get_messages.to_recipients(array, obrigatório): Array de endereços de email dos destinatários. Exemplo: [“[email protected]”, “[email protected]”].comment(string, opcional): Mensagem opcional a incluir acima do conteúdo encaminhado. Pode ser texto simples ou HTML.
microsoft_outlook/mark_message_read
Descrição: Marcar uma mensagem como lida ou não lida.
Parâmetros:
message_id(string, obrigatório): O identificador único da mensagem. Obter pela ação get_messages.is_read(boolean, obrigatório): Definir como true para marcar como lida, false para marcar como não lida.
microsoft_outlook/delete_message
Descrição: Excluir uma mensagem de email.
Parâmetros:
message_id(string, obrigatório): O identificador único da mensagem a excluir. Obter pela ação get_messages.
microsoft_outlook/update_event
Descrição: Atualizar um evento de calendário existente.
Parâmetros:
event_id(string, obrigatório): O identificador único do evento. Obter pela ação get_calendar_events.subject(string, opcional): Novo assunto/título do evento.start_time(string, opcional): Nova hora de início no formato ISO 8601 (ex: “2024-01-20T10:00:00”). OBRIGATÓRIO: Também deve fornecer start_timezone ao usar este campo.start_timezone(string, opcional): Fuso horário da hora de início. OBRIGATÓRIO ao atualizar start_time. Exemplos: “Pacific Standard Time”, “Eastern Standard Time”, “UTC”.end_time(string, opcional): Nova hora de término no formato ISO 8601. OBRIGATÓRIO: Também deve fornecer end_timezone ao usar este campo.end_timezone(string, opcional): Fuso horário da hora de término. OBRIGATÓRIO ao atualizar end_time. Exemplos: “Pacific Standard Time”, “Eastern Standard Time”, “UTC”.location(string, opcional): Novo local do evento.body(string, opcional): Novo corpo/descrição do evento. Suporta formatação HTML.
microsoft_outlook/delete_event
Descrição: Excluir um evento de calendário.
Parâmetros:
event_id(string, obrigatório): O identificador único do evento a excluir. Obter pela ação get_calendar_events.
Exemplos de Uso
Seção intitulada “Exemplos de Uso”Configuração Básica do Agente Microsoft Outlook
Seção intitulada “Configuração Básica do Agente Microsoft Outlook”from crewai import Agent, Task, Crew
# Crie um agente com capacidades do Microsoft Outlookoutlook_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 emailsend_email_task = Task( description="Enviar um email para '[email protected]' com assunto 'Atualização do Projeto' e corpo 'Olá, aqui está a última atualização do projeto. Atenciosamente.'", agent=outlook_agent,)
# Execute a tarefacrew = Crew( agents=[outlook_agent], tasks=[send_email_task])
crew.kickoff()Solução de Problemas
Seção intitulada “Solução de Problemas”Problemas Comuns
Seção intitulada “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,subjectebodysejam fornecidos parasend_email. - Verifique se os endereços de email estão formatados corretamente.
Obtendo Ajuda
Seção intitulada “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.