---
title: "Faça failover e distribua chamadas recebidas entre seus gateways"
description: "Use grupos de busca em um tronco SIP para enviar chamadas recebidas a um gateway de reserva quando o primeiro falhar, ou para dividir as chamadas entre gateways por peso."
canonical: "https://bird.com/pt-br/documentacao/guides/voice/hunt-groups"
---

# Faça failover e distribua chamadas recebidas entre seus gateways

O roteamento de um tronco SIP decide o que acontece com cada chamada recebida: buscar em um grupo dos seus gateways, rejeitar a chamada ou encaminhá-la para um número verificado. Um grupo de busca é uma lista de gateways que o Bird tenta um após o outro até que um atenda. A ordem, as prioridades, os pesos e os tempos de toque do grupo decidem qual gateway toca primeiro e o que acontece quando ele não atende. Esta página mostra como configurá-los para failover e para distribuição de carga.

## Antes de começar

- Um tronco SIP com chamadas de entrada ativadas e pelo menos um gateway. [Configurar um tronco SIP](/docs/guides/voice/sip-trunk-setup) aborda os dois. Quando você adiciona o primeiro gateway a um tronco cujo roteamento nunca foi salvo, o dashboard aponta a rota padrão para **All gateways (automatic)**, o grupo que contém todos os gateways do tronco.
- Os gateways que você quer combinar, adicionados na aba **Inbound routing** > **Gateways** do tronco.

## Como um grupo faz a busca

Cada chamada recebida inicia uma busca. O Bird ordena os gateways do grupo para essa chamada, toca o primeiro e passa para o próximo quando ele falha:

- Um gateway toca durante o seu **Ring time**, de 1 a 120 segundos (30 por padrão). Se ninguém atender nesse tempo, o Bird passa adiante.
- Um gateway que não envia nenhuma resposta é ignorado após um curto intervalo, para que um gateway fora do ar não prenda quem liga durante todo o tempo de toque.
- Quando um gateway recusa a chamada com um código de falha SIP, a busca passa para o próximo gateway, a menos que esse código esteja listado em **Stop the hunt on** do grupo.
- A busca termina quando um gateway atende ou quando todos os gateways do grupo já foram tentados.

O Bird ordena cada chamada de forma independente e não mantém nenhuma rotação entre chamadas, portanto não há round-robin. Uma distribuição uniforme resulta da ordenação aleatória ou ponderada ao longo de muitas chamadas.

| Ordem          | Como ordena os gateways em cada chamada                                                                                                                             | Use para                                        |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| **Sequential** | A ordem da lista, de cima para baixo                                                                                                                                | Um gateway principal fixo e gateways de backup  |
| **Random**     | Uma nova ordem aleatória                                                                                                                                            | Distribuir as chamadas de forma uniforme        |
| **Weighted**   | **Priority** menor primeiro. Dentro de uma mesma prioridade, uma ordem aleatória em que a chance de cada gateway ser o primeiro corresponde à sua parcela dos pesos | Failover e distribuição por peso ao mesmo tempo |

## Use o grupo automático

Todos os gateways de um tronco fazem parte de **All gateways (automatic)**, a menos que o roteamento salvo do tronco tenha um grupo próprio no lugar dele (veja o final desta seção). Um gateway que você adiciona ou remove entra ou sai desse grupo. Ele usa a ordem **Weighted**, pesos iguais e um tempo de toque de 30 segundos, e tenta os gateways na ordem da **Priority** que você define na aba **Gateways**. No próprio grupo, não é possível editar o nome, a **Order**, os tempos de toque nem os membros.

Para fazer failover com esse grupo, dê ao gateway principal uma **Priority** menor que a do backup na aba **Gateways**. Gateways com a mesma **Priority** dividem as chamadas de forma uniforme. Para usar outros tempos de toque, pesos ou códigos em **Stop the hunt on**, adicione um grupo próprio com os mesmos gateways, como mostram as próximas seções.

Um grupo chamado **All gateways** que o dashboard criou quando você adicionou seu primeiro gateway é um grupo seu: ele mantém apenas os gateways com os quais foi salvo. Se a aba **Groups** não mostrar **All gateways (automatic)**, o roteamento salvo do tronco tem um grupo próprio no lugar desse grupo, normalmente chamado **All gateways**. Ao excluí-lo, o grupo automático volta ao lugar dele: as chamadas que iam para esse grupo passam a tocar em todos os gateways, na ordem de **Priority** e com um tempo de toque de 30 segundos. Mantenha-o se ele contiver os gateways, os tempos de toque ou os códigos em **Stop the hunt on** que você quer.

## Configure o failover

1. Abra **Voice** > [**SIP Trunks**](https://bird.com/dashboard/w/voice/sip-trunks), abra o trunk e acesse **Inbound routing** > **Groups**.
2. Abra um grupo seu ou selecione **Add group** e dê um nome a ele. Não é possível editar **All gateways (automatic)**.
3. Adicione seu gateway principal e seu gateway de backup com **Add gateway to group**.
4. Defina **Order** como **Sequential** e mantenha o principal no topo usando **Move up** e **Move down**. Como alternativa, defina **Order** como **Weighted** e atribua ao principal **Priority** 1 e ao backup **Priority** 2.
5. Defina o **Ring time** de cada gateway. Um tempo de toque menor no principal envia as chamadas não atendidas ao backup mais cedo.
6. Na aba **Rules**, defina o **Then** da **Default route** como **Route to group** e escolha o grupo, ou aponte uma regra para ele. Um grupo que nenhuma rota usa não recebe chamadas.
7. Selecione **Review and save** e confirme.

## Distribua chamadas entre gateways

1. Abra **Inbound routing** > **Groups** do tronco. Abra um grupo seu ou selecione **Add group**, dê um nome a ele e adicione os gateways com **Add gateway to group**.
2. Defina **Order** como **Weighted**, atribua a mesma **Priority** aos gateways e defina o **Weight** de cada um entre 1 e 100. Pesos de 70 e 30 enviam cerca de 70% e 30% das chamadas a cada gateway. Para uma distribuição uniforme, use pesos iguais ou defina **Order** como **Random**.
3. Para manter também um backup, dê **Priority** 1 aos gateways que dividem as chamadas e **Priority** 2 ao backup. O backup só toca quando todos os gateways de prioridade 1 falharem.
4. Na aba **Rules**, defina o **Then** da **Default route** como **Route to group** e escolha o grupo, ou aponte uma regra para ele.
5. Selecione **Review and save** e confirme.

## Interromper a busca quando a linha estiver ocupada

Se você não alterar essa configuração, o Bird tenta o próximo gateway a cada falha. Quando uma falha indica que outro gateway não vai resolver, inclua o código dela em **Stop the hunt on** do grupo. Por exemplo, adicione `486` (Busy Here) para que uma pessoa que já está em uma ligação não seja chamada de novo por um segundo gateway. Você pode inserir qualquer código de 400 a 699.

## Encaminhar chamadas diferentes para grupos diferentes

Um tronco pode ter vários grupos. A **Default route** envia para um grupo as chamadas que não corresponderam a nenhuma regra, e as regras da aba **Rules** podem enviar outras chamadas para outros grupos. [Entregar chamadas a um tronco SIP](/docs/guides/voice/receiving-calls#deliver-calls-to-a-sip-trunk) explica as regras e a rota padrão.

## Solução de problemas

| O que você vê                                                           | O que verificar                                                                                                                                                                                                                                        |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| O backup nunca toca                                                     | Confira se o backup está no grupo usado pela rota padrão (ou pela regra correspondente). Com **Weighted**, o número de **Priority** dele deve ser maior que o do primário. Um código em **Stop the hunt on** encerra a busca antes de chegar ao backup |
| Um único gateway recebe todas as chamadas com **Weighted**              | Gateways com prioridades diferentes não dividem as chamadas. Atribua a eles a mesma **Priority**                                                                                                                                                       |
| As chamadas tocam por tempo demais antes de chegar ao gateway de backup | Reduza o **Ring time** do gateway principal                                                                                                                                                                                                            |
| Um gateway nunca toca                                                   | Ele não está em nenhum grupo usado por uma regra ou pela rota padrão. Ao salvar, o dashboard exibe o aviso **Calls never reach some gateways**                                                                                                         |

## Próximos passos

| Página                                                            | O que aborda                                                                      |
| ----------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| [Configurar um tronco SIP](/docs/guides/voice/sip-trunk-setup)    | A configuração completa de um tronco, em ordem, da criação a uma chamada de teste |
| [Recebimento de chamadas](/docs/guides/voice/receiving-calls)     | Rotas de números, regras, a rota padrão e chamadas recusadas                      |
| [Solução de problemas de voz](/docs/guides/voice/troubleshooting) | Como diagnosticar uma chamada a partir do sintoma                                 |

## Related resources

- [What is a voice API?](/explained/voice/what-is-a-voice-api) (answer)
- [Voice](/voice-api) (product)
- [Voice overview](/docs/guides/voice/overview) (docs)

[Get an implementation brief](/learn/workspace?topic=voice)
