Ir para a navegação

FreePBX e Asterisk

Envie chamadas do seu sistema telefônico FreePBX ou Asterisk para sua recepcionista por um tronco SIP.

Seu PBX mantém a operadora e os números, e encaminha as chamadas que você escolher para o Reception.ai por um tronco SIP. Você adiciona um segundo tronco no PBX que aponta para o Reception.ai e, depois, roteia um DID, uma condição de horário ou uma opção de IVR para ele.

Antes de começar

  • FreePBX 15 ou posterior, ou Asterisk com PJSIP, acessível pela internet.
  • Um endereço IP público estático para o PBX. O Reception.ai aceita chamadas apenas de endereços permitidos por você.
  • Alguém familiarizado com os troncos, as rotas e o firewall do seu PBX.

Configuração

1

Adicione o tronco SIP no Reception.ai

Acesse Integrations, selecione Add integration e escolha SIP Trunk. Em Inbound allowed addresses, adicione o endereço IP público do seu PBX. Se você também definir um nome de usuário e uma senha de entrada, use o mesmo par no tronco do PBX abaixo.

2

Adicione o número

Acesse Receptionists, selecione o bloco Phone, informe o número para o qual as pessoas ligam, com o código do país, e selecione Add SIP Trunk number. O Reception.ai mostra o host do servidor SIP e o URI de solicitação a usar.

3

Ative o TCP no FreePBX

O Reception.ai não aceita UDP. No FreePBX, acesse Settings → Asterisk SIP Settings → SIP Settings [chan_pjsip], defina o transporte tcp como Yes e selecione Submit e Apply Config. Reinicie o Asterisk para que o novo transporte seja carregado. O TLS também funciona se você tiver configurado um certificado em Certificate Management.

4

Crie o tronco para o Reception.ai

Acesse Connectivity → Trunks → Add Trunk → Add SIP (chan_pjsip) Trunk. Na aba General, informe um Trunk Name, como reception. Defina CID Options como Allow Any CID, para que a recepcionista veja o número de cada pessoa que liga. Na aba pjsip Settings:

CampoValor
RegistrationNone
AuthenticationNone ou Outbound com Username e Secret se você definiu credenciais de entrada no Reception.ai
SIP ServerO host do servidor SIP do Reception.ai
SIP Server Port5060 para TCP ou 5061 para TLS
TransportO transporte TCP (ou TLS), por exemplo, 0.0.0.0-tcp
5

Adicione uma rota de saída que envie +E.164

Acesse Connectivity → Outbound Routes e adicione uma rota chamada Reception que use apenas o tronco reception. Adicione um padrão de discagem com um prefix não utilizado, como 88, um match pattern de X. e um prepend de +. Uma chamada para 8814155550123 sairá pelo tronco como +14155550123, que é o formato exigido pelo Reception.ai.

6

Envie o DID para o Reception.ai

Acesse Applications → Misc Destinations e adicione um destino que disque 88 seguido pelo número no formato E.164 sem +, por exemplo, 8814155550123. Em seguida, acesse Connectivity → Inbound Routes, abra a rota para seu DID e defina o destino como esse destino miscelâneo. Você também pode usá-lo como destino de uma condição de horário, failover de grupo de toque ou opção de IVR.

7

Corrija o NAT e o áudio

Acesse Settings → Asterisk SIP Settings → General SIP Settings. Defina External Address como o IP público do PBX e liste suas sub-redes privadas em Local Networks. Abra no firewall os RTP Port Ranges exibidos nessa página (UDP, 10000–20000 por padrão).

8

Teste

Ligue para seu DID de outro telefone e verifique se sua recepcionista atende.

Asterisk sem FreePBX

No Asterisk sem FreePBX, a mesma configuração em pjsip.conf é assim. Substitua SIP_SERVER pelo host exibido pelo Reception.ai.

[transport-tcp]
type=transport
protocol=tcp
bind=0.0.0.0:5060
external_signaling_address=PBX_PUBLIC_IP
external_media_address=PBX_PUBLIC_IP
local_net=192.168.0.0/16
[reception]
type=aor
contact=sip:SIP_SERVER:5060;transport=tcp
[reception]
type=endpoint
transport=transport-tcp
aors=reception
context=from-reception
disallow=all
allow=ulaw,alaw

No plano de discagem, envie a chamada com o número no formato E.164:

exten => YOUR_DID,1,Dial(PJSIP/+14155550123@reception)

Se você definiu credenciais de entrada no Reception.ai, adicione uma seção type=auth com elas e faça referência a ela com outbound_auth= no endpoint.

Limitações

  • Transferências. Sua recepcionista transfere chamadas fazendo uma nova chamada para o Outbound SIP address. Direcione-o para sua operadora SIP, usando uma conta da operadora que aceite nome de usuário e senha. O roteamento de transferências de volta ao PBX não é abordado aqui: o Reception.ai liga de um grupo variável de endereços, portanto o PBX não consegue associar essas chamadas a um tronco por IP.
  • Seu PBX transporta cada chamada duas vezes, uma vez da operadora e outra para o Reception.ai, então ele precisa de um canal livre para cada trecho.

Solução de problemas

ProblemaO que verificar
As chamadas falham antes de tocarVerifique se o tronco usa o transporte TCP ou TLS, e não UDP, e se a porta corresponde a ele.
As chamadas são rejeitadasAdicione o IP público do PBX a Inbound allowed addresses. Verifique no console do Asterisk se o URI de solicitação do INVITE começa com + e o código do país.
A recepcionista vê o número do PBX como o da pessoa que ligaDefina CID Options no tronco do Reception.ai como Allow Any CID.
Áudio em apenas uma direção ou sem áudioDefina External Address e Local Networks e abra a faixa de portas RTP no firewall.
A recepcionista não atendeVerifique se o número foi adicionado no bloco Phone da recepcionista e se corresponde ao número enviado pelo PBX.