# Personalizando notificações para GitHub no Slack

Saiba como personalizar notificações para GitHub no Slack.

Você pode personalizar suas notificações inscrevendo-se em atividades relevantes para o canal do Slack e desinscrevendo-se das atividades menos relevantes para o seu projeto.

### Notificações habilitadas por padrão

As notificações a seguir são habilitadas por padrão, mas você pode desabilitar qualquer uma delas usando o comando `/github unsubscribe owner/repo [event]`.

| Event         | Description                                                                                              |
| ------------- | -------------------------------------------------------------------------------------------------------- |
| `issues`      | Problemas abertos, fechados ou reabertos.                                                                |
| `pulls`       | Solicitações pull novas ou mescladas e solicitações pull de rascunho marcadas como prontas para revisão. |
| `commits`     | Novas confirmações na ramificação padrão.                                                                |
| `releases`    | Versões publicadas.                                                                                      |
| `deployments` | Atualizações de status de implantação.                                                                   |

### Notificações desabilitadas por padrão

As notificações a seguir são desabilitadas por padrão, mas você pode habilitar qualquer uma delas usando o comando `/github subscribe owner/repo [event]`.

| Event                 | Description                                                          |
| --------------------- | -------------------------------------------------------------------- |
| `reviews`             | Revisões de Pull Request.                                            |
| `workflows`           | Execuções de workflows de ações                                      |
| `branches`            | Criação ou exclusão de branches.                                     |
| `comments`            | Novos comentários em problemas ou pull requests.                     |
| `commits`             | Todas as confirmações em qualquer ramificação.                       |
| `discussions`         | Discussões criadas ou respondidas.                                   |
| `+label:"your label"` | Problemas, solicitações pull e comentários com base em seus rótulos. |

Você pode assinar ou cancelar a assinatura de várias configurações ao mesmo tempo. Por exemplo:

* Para ativar a atividade de avaliações e comentários de solicitações pull, use `/github subscribe owner/repo reviews comments`.
* Para desativar a atividade de problemas e solicitações pull, use `/github unsubscribe owner/repo issues pulls`.

## Filtrando notificações

Você pode personalizar ainda mais suas notificações com filtros de branch e etiqueta. Os filtros de ramificação permitem filtrar as notificações de confirmações com base nos nomes das ramificações, enquanto os filtros de rótulo permitem filtrar as notificações de problemas e solicitações pull com base nos rótulos aplicados a elas.

### Filtros de ramificação para notificações de confirmação

Os filtros de ramificação permitem filtrar as notificações de confirmação com base nos nomes das ramificações. Por padrão, ao se inscrever no evento `commits`, você receberá notificações para sua ramificação padrão. No entanto, você pode optar por filtrar por uma ramificação específica, um padrão de ramificações ou todas as ramificações.

| Configuração de exemplo                          | Description                                                                               |
| ------------------------------------------------ | ----------------------------------------------------------------------------------------- |
| `/github subscribe owner/repo commits`           | Receba notificações de confirmação para a ramificação padrão.                             |
| `/github subscribe owner/repo commits:main`      | Receba notificações de confirmação apenas para a ramificação `main`.                      |
| `/github subscribe owner/repo commits:feature/*` | Receba notificações de confirmação para todas as ramificações que começam com `feature/`. |
| `/github subscribe owner/repo commits:*`         | Receba notificações de confirmação para todas as ramificações.                            |

> \[!NOTE] Você pode ter usado anteriormente o filtro `commits:all` para receber notificações de confirmação para todas as ramificações. Esse filtro é encerrando. Para receber notificações de confirmação para todas as ramificações, use o filtro `commits:*`. Se você tiver configurado o `commits:all` filtro anteriormente, ele continuará funcionando até que você atualize sua configuração para usar o `commits:*` filtro.

### Filtros de rótulos para notificações de problemas e solicitações pull

Os filtros de rótulo permitem filtrar notificações com base em rótulos aplicados a problemas e solicitações de pull. Quando um filtro de rótulo é definido, somente notificações para eventos, incluindo o rótulo especificado, serão enviadas. Para obter mais informações sobre rótulos, consulte [Gerenciar etiquetas](/pt/enterprise-server@3.22/issues/using-labels-and-milestones-to-track-work/managing-labels) e [Filtrando e pesquisando problemas e pull requests](/pt/enterprise-server@3.22/issues/tracking-your-work-with-issues/using-issues/filtering-and-searching-issues-and-pull-requests).

Atualmente, só é possível ter um filtro de rótulo necessário por repositório. A tabela abaixo mostra quais tipos de evento são afetados por filtros de rótulo.

| Tipo de evento       | É filtrado por rótulo                                                                                                                                                                                                                                                                                                                                                                                                   |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Solicitações de pull | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                 |
| Problemas            | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                 |
| Comments             | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                 |
| Reviews              | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Included" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>                                                                                                 |
| Confirmações/pushes  | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="N" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |
| Ramificações         | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="N" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |

#### Criando filtros de rótulo

Para criar um filtro de rótulo, use o seguinte formato de comando:

```text copy
/github subscribe [owner/repo] +label:"your label"
```

Isso cria um filtro de rótulo obrigatório com o valor `your label`. Os eventos de entrada que dão suporte a filtros são descartados, a menos que tenham esse rótulo.

#### Atualizando filtros de rótulo

Você pode atualizar um filtro de rótulo existente especificando um novo valor de rótulo:

```text copy
/github subscribe [owner/repo] +label:"new label"
```

Isso substituirá o filtro "sua etiqueta" pelo filtro "nova etiqueta".

#### Removendo filtros de rótulo

Você pode remover um filtro de rótulo existente usando o comando cancelar assinatura com a opção `+label` :

```text copy
/github unsubscribe [owner/repo] +label:"new label"
```

Isso removerá o filtro "novo rótulo" e o canal receberá todas as notificações para os eventos assinados sem nenhuma filtragem de rótulo.

#### Exibindo filtros de rótulo ativos

Para exibir os filtros de rótulo atualmente ativos para um canal, use o seguinte comando:

```text copy
/github subscribe list features
```

#### Filtros válidos

O aplicativo GitHub no Slack dá suporte aos caracteres especiais mais comuns para filtros de rótulo, incluindo todos os emojis que o Slack e GitHub fornecem como padrão. Raramente, você pode encontrar um rótulo que contém um caractere especial que não tem suporte. Por exemplo, qualquer caractere multibyte não codificado como `:foo:`, ou rótulos usando o caractere `,` podem não funcionar conforme esperado.

## Notificações do fluxo de trabalho de ações

Você pode se inscrever para receber notificações de execução de fluxos de trabalho GitHub Actions a partir do seu canal ou aplicativo pessoal, usando o recurso de "workflows" e o formato `/github subscribe owner/repo workflows`.

Quando você estiver inscrito em "fluxos de trabalho", a seguinte funcionalidade estará disponível:

* Você será notificado quando uma nova execução de fluxo de trabalho for disparada.

* Você pode acompanhar as notificações de aprovação como uma resposta no thread e aprovar as notificações diretamente do canal/aplicativo pessoal.

* Depois que o fluxo de trabalho for concluído, você receberá uma atualização como resposta no thread para que você possa concluir o contexto e o histórico sobre a execução do fluxo de trabalho.

* Se algo falhar, você pode optar por executar o workflow novamente no local e também pode habilitar logs de depuração, se necessário.

> \[!NOTE] Após 2025-03-10 (GHES versão 3.17), você não será mais notificado sobre o progresso de trabalhos individuais de fluxo de trabalho. Consulte o log de alterações [GitHub](https://github.blog/changelog/2025-02-03-deprecation-of-real-time-github-actions-workflow-job-events-in-slack-and-microsoft-teams-apps/) para obter mais detalhes.

### Filtros de notificação de fluxo de trabalho

Você pode filtrar notificações de fluxo de trabalho usando as seguintes opções:

| Filter   | Description                                                                                                                                                                                                                 |
| -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`   | Filtre pelo nome do fluxo de trabalho.                                                                                                                                                                                      |
| `actor`  | Filtrar pelo usuário que disparou o fluxo de trabalho.                                                                                                                                                                      |
| `branch` | Filtre pelo branch em que o fluxo de trabalho está sendo executado. Nos casos em que o evento `pull_request` está incluído, a ramificação será a ramificação de destino para a qual a solicitação de pull request é criada. |
| `event`  | Filtre pelo evento que disparou o fluxo de trabalho (por exemplo, push, pull\_request).                                                                                                                                     |

Você pode configurar filtros de notificação de fluxo de trabalho com o seguinte formato:

```text copy
/github subscribe owner/repo workflows:{name:"your workflow name" event:"workflow event" branch:"branch name" actor:"username"}
```

Você também pode passar vários valores para cada filtro, separados por vírgulas. Por exemplo:

```text copy
/github subscribe owner/repo workflows:{name:"your workflow name","another workflow name" event:"workflow event","another workflow event" branch:"branch name","another branch name" actor:"username","another-username"}
```

Por padrão, quando você configura as notificações de fluxo de trabalho sem aplicar filtros, elas são configuradas para fluxos de trabalho disparados por meio de solicitações pull request direcionadas ao seu branch padrão. Você pode inserir uma ou várias entradas.

Você pode cancelar a assinatura de notificações de fluxo de trabalho usando o comando: `/github unsubscribe owner/repo workflows`.

> \[!NOTE] Para receber GitHub Actions notificações no Slack, o aplicativo GitHub requer permissões adicionais. Ao tentar assinar os fluxos de trabalho pela primeira vez, você será solicitado a conceder essas permissões.

## Notificações de implantação

Você também pode configurar notificações de implantação separadas. Essas implantações podem ocorrer de GitHub Actions ou de fontes externas usando a API de implantações. Confira [Pontos de extremidade da API REST para implantações](/pt/enterprise-server@3.22/rest/deployments/deployments?apiVersion=2022-11-28).

Você pode assinar/cancelar a assinatura de notificações de implantação usando o comando: `/github subscribe/unsubscribe owner/repo deployments`.

> \[!NOTE] Se você estiver usando GitHub Actions e quiser acompanhar suas implantações em ambientes, o recurso `workflows` é recomendado, pois ele fornece uma visão mais completa e a capacidade de aprovar suas implantações diretamente pelo Slack.