---
title: Integração Microsoft Teams
description: "Colaboração em equipe e comunicação com integração Microsoft Teams para CrewAI."
icon: "users"
mode: "wide"
---

## Visão Geral

Permita que seus agentes acessem dados do Teams, enviem mensagens, criem reuniões e gerenciem canais. Automatize a comunicação da equipe, agende reuniões, recupere mensagens e simplifique seus fluxos de trabalho de colaboração com automação alimentada por IA.

## Pré-requisitos

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

- Uma conta [CrewAI AOP](https://app.crewai.com) com assinatura ativa
- Uma conta Microsoft com acesso ao Teams
- Conectado sua conta Microsoft através da [página de Integrações](https://app.crewai.com/crewai_plus/connectors)

## Configurando a Integração Microsoft Teams

### 1. Conecte sua Conta Microsoft

1. Navegue para [Integrações CrewAI AOP](https://app.crewai.com/crewai_plus/connectors)
2. Encontre **Microsoft Teams** 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 Teams
5. Copie seu Token Enterprise das [Configurações de Integração](https://app.crewai.com/crewai_plus/settings/integrations)

### 2. Instale o Pacote Necessário

```bash
uv add crewai-tools
```

### 3. Configuração de variável de ambiente

<Note>
  Para usar integrações com `Agent(apps=[])`, você deve definir a variável de ambiente `CREWAI_PLATFORM_INTEGRATION_TOKEN` com seu Enterprise Token.
</Note>

```bash
export CREWAI_PLATFORM_INTEGRATION_TOKEN="seu_enterprise_token"
```

Ou adicione ao seu arquivo `.env`:

```
CREWAI_PLATFORM_INTEGRATION_TOKEN=seu_enterprise_token
```

## Ações Disponíveis

<AccordionGroup>
  <Accordion title="microsoft_teams/get_teams">
    **Descrição:** Obter todas as equipes das quais o usuário é membro.

    **Parâmetros:**
    - Nenhum parâmetro necessário.
  </Accordion>

  <Accordion title="microsoft_teams/get_channels">
    **Descrição:** Obter canais em uma equipe específica.

    **Parâmetros:**
    - `team_id` (string, obrigatório): O ID da equipe.
  </Accordion>

  <Accordion title="microsoft_teams/send_message">
    **Descrição:** Enviar uma mensagem para um canal do Teams.

    **Parâmetros:**
    - `team_id` (string, obrigatório): O ID da equipe.
    - `channel_id` (string, obrigatório): O ID do canal.
    - `message` (string, obrigatório): O conteúdo da mensagem.
    - `content_type` (string, opcional): Tipo de conteúdo (html ou text). Opções: html, text. Padrão: text.
  </Accordion>

  <Accordion title="microsoft_teams/get_messages">
    **Descrição:** Obter mensagens de um canal do Teams.

    **Parâmetros:**
    - `team_id` (string, obrigatório): O ID da equipe.
    - `channel_id` (string, obrigatório): O ID do canal.
    - `top` (integer, opcional): Número de mensagens a recuperar (máx 50). Padrão: 20.
  </Accordion>

  <Accordion title="microsoft_teams/create_meeting">
    **Descrição:** Criar uma reunião do Teams.

    **Parâmetros:**
    - `subject` (string, obrigatório): Assunto/título da reunião.
    - `startDateTime` (string, obrigatório): Hora de início da reunião (formato ISO 8601 com fuso horário).
    - `endDateTime` (string, obrigatório): Hora de término da reunião (formato ISO 8601 com fuso horário).
  </Accordion>

  <Accordion title="microsoft_teams/search_online_meetings_by_join_url">
    **Descrição:** Pesquisar reuniões online por URL de participação na web.

    **Parâmetros:**
    - `join_web_url` (string, obrigatório): A URL de participação na web da reunião a pesquisar.
  </Accordion>
</AccordionGroup>

## Exemplos de Uso

### Configuração Básica do Agente Microsoft Teams

```python
from crewai import Agent, Task, Crew

# Crie um agente com capacidades do Microsoft Teams
teams_agent = Agent(
    role="Coordenador do Teams",
    goal="Gerenciar comunicação e reuniões do Teams de forma eficiente",
    backstory="Um assistente IA especializado em operações do Microsoft Teams e colaboração em equipe.",
    apps=['microsoft_teams']  # Todas as ações do Teams estarão disponíveis
)

# Tarefa para listar equipes e canais
explore_teams_task = Task(
    description="Listar todas as equipes das quais sou membro e depois obter os canais da primeira equipe.",
    agent=teams_agent,
    expected_output="Lista de equipes e canais exibida."
)

# Execute a tarefa
crew = Crew(
    agents=[teams_agent],
    tasks=[explore_teams_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 ao Teams.
- Escopos necessários incluem: `Team.ReadBasic.All`, `Channel.ReadBasic.All`, `ChannelMessage.Send`, `ChannelMessage.Read.All`, `OnlineMeetings.ReadWrite`, `OnlineMeetings.Read`.

**Acesso a Equipes e Canais**
- Certifique-se de que você é membro das equipes que está tentando acessar.
- Verifique novamente os IDs de equipe e canal para correção.

### Obtendo Ajuda

<Card title="Precisa de Ajuda?" icon="headset" href="mailto:support@crewai.com">
  Entre em contato com nossa equipe de suporte para assistência com configuração ou solução de problemas da integração Microsoft Teams.
</Card>
