Difference between revisions of "Rota customizada no AG561"

From Aligera Docs
Jump to navigation Jump to search
Line 48: Line 48:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
==  Agora vamos analisar cada um dos parâmetros da regra: ==
  
−
Agora vamos analisar cada um dos parâmetros da regra:
+
* O parâmetro source_peer especifica o canal de origem da chamada, ou seja, nesta regra serão tratadas somente as chamadas entrantes através deste canal. No caso a regra especifica que o canal de origem deve ser do tipo tdm e o grupo deve ser o group1:
−
 
 
−
O parâmetro source_peer especifica o canal de origem da chamada, ou seja, nesta regra serão tratadas somente as chamadas entrantes através deste canal. No caso a regra especifica que o canal de origem deve ser do tipo tdm e o grupo deve ser o group1:
 
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default source_peer tdm group1
 
config dialplan rule tdm_group1_default source_peer tdm group1
Line 57: Line 56:
 
Para interfaces TDM as regras são separadas por grupos. No caso do AG561 há somente o grupo group1, para equipamentos de maior porte, poderão existir mais grupos e os mesmos poderão ser customizados. Para o tipo de canal SIP deverão ser utilizados os nomes das contas.
 
Para interfaces TDM as regras são separadas por grupos. No caso do AG561 há somente o grupo group1, para equipamentos de maior porte, poderão existir mais grupos e os mesmos poderão ser customizados. Para o tipo de canal SIP deverão ser utilizados os nomes das contas.
  
−
O parâmetro destination_peer especifica o canal de destino, ou seja, para qual canal a chamada será encaminhada.<syntaxhighlight lang="python">
+
* O parâmetro destination_peer especifica o canal de destino, ou seja, para qual canal a chamada será encaminhada.<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default destination_peer sip trunk1
 
config dialplan rule tdm_group1_default destination_peer sip trunk1
 
</syntaxhighlight>
 
</syntaxhighlight>
  
−
O parâmetro called_pattern especifica o padrão esperado para o número que entra pela interface de origem:
+
* O parâmetro called_pattern especifica o padrão esperado para o número que entra pela interface de origem:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default called_pattern X.
 
config dialplan rule tdm_group1_default called_pattern X.
Line 67: Line 66:
 
No exemplo acima, o valor "X." indica que a regra trata quaisquer números, pois o "X" indica qualquer dígitos de 0 a 9, e o "." indica quaisquer dígitos em qualquer quantidade.
 
No exemplo acima, o valor "X." indica que a regra trata quaisquer números, pois o "X" indica qualquer dígitos de 0 a 9, e o "." indica quaisquer dígitos em qualquer quantidade.
  
−
O parâmetro callerid_pattern representa o padrão esperado para o número de "A", ou seja, o callerid:
+
* O parâmetro callerid_pattern representa o padrão esperado para o número de "A", ou seja, o callerid:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default callerid_pattern
 
config dialplan rule tdm_group1_default callerid_pattern
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Deixe vázio para não filtrar a chamada por callerid.
 
Deixe vázio para não filtrar a chamada por callerid.
−
 
−
 
  
 
Os parâmetros callerd_pattern e callerid_pattern utilizam o padrão de dígitos que segue:
 
Os parâmetros callerd_pattern e callerid_pattern utilizam o padrão de dígitos que segue:
Line 93: Line 90:
 
|}
 
|}
  
−
 
+
* O parâmetro outgoing_called representa o número de saída. No exemplo abaixo, as duas chaves sem quaisquer outros dígitos junto a elas ou entre elas, indicam que será enviado para a saída o mesmo número recebido na entrada:
−
O parâmetro outgoing_called representa o número de saída. No exemplo abaixo, as duas chaves sem quaisquer outros dígitos junto a elas ou entre elas, indicam que será enviado para a saída o mesmo número recebido na entrada:
 
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default outgoing_called {}
 
config dialplan rule tdm_group1_default outgoing_called {}
 
</syntaxhighlight>
 
</syntaxhighlight>
  
−
O parâmetro outgoing_callerid representa o número de identificação para a saída. No exemplo abaixo, as duas chavess sem quaisquer outros dígitos junto a elas, indicam  que será enviado como identificação para frente o mesmo número de identificação recebido:
+
* O parâmetro outgoing_callerid representa o número de identificação para a saída. No exemplo abaixo, as duas chavess sem quaisquer outros dígitos junto a elas, indicam  que será enviado como identificação para frente o mesmo número de identificação recebido:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default outgoing_callerid {}
 
config dialplan rule tdm_group1_default outgoing_callerid {}
Line 105: Line 101:
  
 
Seguem alguns exemplos de preenchimentos dos parâmetros outgoing_callerid e outgoing_called:
 
Seguem alguns exemplos de preenchimentos dos parâmetros outgoing_callerid e outgoing_called:
 +
{| class="wikitable"
 +
|{}
 +
|Encaminha todos os dígitos recebidos (padrão)
 +
|-
 +
|{:2:4}
 +
|Após o segundo dígito, encaminha 4 dígitos. Exemplo: de 123456 encaminha 3456
 +
|-
 +
|{:-4}
 +
|Encaminha os últimos 4 dígitos
 +
|-
 +
|{:2}
 +
|Remove os 2 primeiros dígitos
 +
|-
 +
|012{}
 +
|Adiciona o prefixo 012 ao número original
 +
|-
 +
|{}0100
 +
|Adiciona o sufixo 0100 ao número original
 +
|}
  
−
{}
+
* O parâmetro timeout indica o tempo pelo qual a regra aguardará o atendimento antes de desligar por timeout. O valor é expresso em segundos:
−
Encaminha todos os dígitos recebidos (padrão)
 
−
{:2:4}
 
−
Após o segundo dígito, encaminha 4 dígitos. Exemplo: de 123456 encaminha 3456
 
−
{:-4}
 
−
Encaminha os últimos 4 dígitos
 
−
{:2}
 
−
Remove os 2 primeiros dígitos
 
−
012{}
 
−
Adiciona o prefixo 012 ao número original
 
−
{}0100
 
−
Adiciona o sufixo 0100 ao número original
 
−
 
 
−
 
 
−
O parâmetro timeout indica o tempo pelo qual a regra aguardará o atendimento antes de desligar por timeout. O valor é expresso em segundos:
 
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
config dialplan rule tdm_group1_default answer_timeout 90
 
config dialplan rule tdm_group1_default answer_timeout 90

Revision as of 09:54, 15 July 2021

OBS.: Procedimento válido a partir da versão de firmware 5.40

Por padrão as rotas do gateway são previamente configuradas para encaminhar as chamadas oriundas da conta SIP para a interface TDM e vice-versa. Porém, em muitos casos é necessário fazer manipulações nos números enviados ou recebidos.

O primeiro passo é identificarmos as regras atuais no equipamento e avaliar os parâmetros para entendermos o que cada um faz. Para isso acesse o gateway via ssh.

Execute o comando que segue:

config dialplan show

Com isso será exibido o dialplan atualmente configurado no gateway. Será mostrado como abaixo:

config dialplan rule tdm_group1_default source_peer tdm group1
config dialplan rule tdm_group1_default destination_peer sip trunk1
config dialplan rule tdm_group1_default called_pattern X.
config dialplan rule tdm_group1_default callerid_pattern
config dialplan rule tdm_group1_default outgoing_called {}
config dialplan rule tdm_group1_default outgoing_callerid {}
config dialplan rule tdm_group1_default answer_timeout 90
config dialplan rule sip_trunk1_default source_peer sip trunk1
config dialplan rule sip_trunk1_default destination_peer tdm group1
config dialplan rule sip_trunk1_default called_pattern X.
config dialplan rule sip_trunk1_default callerid_pattern
config dialplan rule sip_trunk1_default outgoing_called {}
config dialplan rule sip_trunk1_default outgoing_callerid {}
config dialplan rule sip_trunk1_default answer_timeout 90


Os parâmetros exibidos têm a seguinte sintaxe:

config dialplan rule <nome_da_regra> <parâmetro> <valor> <...>


Sabendo isso, podemos separar as duas regras apresentadas e analisa-las.

Essa primeira regra, denominada tdm_group1_default é a regra que trata as chamadas recebidas pela conta SIP e que serão encaminhadas para o E1:

config dialplan rule tdm_group1_default source_peer tdm group1
config dialplan rule tdm_group1_default destination_peer sip trunk1
config dialplan rule tdm_group1_default called_pattern X.
config dialplan rule tdm_group1_default callerid_pattern
config dialplan rule tdm_group1_default outgoing_called {}
config dialplan rule tdm_group1_default outgoing_callerid {}
config dialplan rule tdm_group1_default answer_timeout 90

Agora vamos analisar cada um dos parâmetros da regra:

  • O parâmetro source_peer especifica o canal de origem da chamada, ou seja, nesta regra serão tratadas somente as chamadas entrantes através deste canal. No caso a regra especifica que o canal de origem deve ser do tipo tdm e o grupo deve ser o group1:
config dialplan rule tdm_group1_default source_peer tdm group1

Para interfaces TDM as regras são separadas por grupos. No caso do AG561 há somente o grupo group1, para equipamentos de maior porte, poderão existir mais grupos e os mesmos poderão ser customizados. Para o tipo de canal SIP deverão ser utilizados os nomes das contas.

  • O parâmetro destination_peer especifica o canal de destino, ou seja, para qual canal a chamada será encaminhada.
    config dialplan rule tdm_group1_default destination_peer sip trunk1
  • O parâmetro called_pattern especifica o padrão esperado para o número que entra pela interface de origem:
config dialplan rule tdm_group1_default called_pattern X.

No exemplo acima, o valor "X." indica que a regra trata quaisquer números, pois o "X" indica qualquer dígitos de 0 a 9, e o "." indica quaisquer dígitos em qualquer quantidade.

  • O parâmetro callerid_pattern representa o padrão esperado para o número de "A", ou seja, o callerid:
config dialplan rule tdm_group1_default callerid_pattern

Deixe vázio para não filtrar a chamada por callerid.

Os parâmetros callerd_pattern e callerid_pattern utilizam o padrão de dígitos que segue:

X Dígito de 0 a 9
Z Dígito de 1 a 9
N Dígito de 2 a 9
[1237-9] Qualquer dígito entre os colchetes. No exemplo serão aceitos 1, 2, 3, 7 até 9
. Qualquer dígito, um ou mais caracteres
  • O parâmetro outgoing_called representa o número de saída. No exemplo abaixo, as duas chaves sem quaisquer outros dígitos junto a elas ou entre elas, indicam que será enviado para a saída o mesmo número recebido na entrada:
config dialplan rule tdm_group1_default outgoing_called {}
  • O parâmetro outgoing_callerid representa o número de identificação para a saída. No exemplo abaixo, as duas chavess sem quaisquer outros dígitos junto a elas, indicam que será enviado como identificação para frente o mesmo número de identificação recebido:
config dialplan rule tdm_group1_default outgoing_callerid {}

Seguem alguns exemplos de preenchimentos dos parâmetros outgoing_callerid e outgoing_called:

{} Encaminha todos os dígitos recebidos (padrão)
{:2:4} Após o segundo dígito, encaminha 4 dígitos. Exemplo: de 123456 encaminha 3456
{:-4} Encaminha os últimos 4 dígitos
{:2} Remove os 2 primeiros dígitos
012{} Adiciona o prefixo 012 ao número original
{}0100 Adiciona o sufixo 0100 ao número original
  • O parâmetro timeout indica o tempo pelo qual a regra aguardará o atendimento antes de desligar por timeout. O valor é expresso em segundos:
config dialplan rule tdm_group1_default answer_timeout 90

A regra original encaminha todos os dígitos recebidos para a frente. Mantendo-se essa regra, podem ser criadas regras mais específicas que se sobreponham a ela. Por exemplo, supondo que queiramos adicionar o CSP (código de seleção de prestadora) 21 aos números discados iniciados por 0 (zero).

O primeiro passo será criar uma regra:

config dialplan rule sip_trunk1_inserir_csp

Com o comando acima criamos a regra denominada sip_trunk1_inserir_csp.

Execute o comando abaixo visualizar os parâmetros da regra:

config dialplan rule sip_trunk1_inserir_csp show


A regra é criada, por padrão, com alguns parâmetros já preenchidos:

config dialplan rule sip_trunk1_inserir_csp source_peer tdm group1
config dialplan rule sip_trunk1_inserir_csp called_pattern X.
config dialplan rule sip_trunk1_inserir_csp callerid_pattern
config dialplan rule sip_trunk1_inserir_csp outgoing_called {}
config dialplan rule sip_trunk1_inserir_csp outgoing_callerid {}
config dialplan rule sip_trunk1_inserir_csp answer_timeout 90


Para editar os parâmetros conforme a sua necessidade, copie cada um dos comandos, altere o parâmetro desejado, cole-o na console e pressione a tecla ENTER.

Agora, vamos analisar cada um dos comandos, fazendo as alterações necessárias para o que foi proposto.

O canal de destino no nosso caso será a conta SIP trunk1:

config dialplan rule sip_trunk1_inserir_csp source_peer sip trunk1


No called_pattern que vamos definir o padrão do número esperado, neste exemplo, esperamos todo número que inicie com 0 (zero), seguido de qualquer dígito em qualquer quantidade:

config dialplan rule sip_trunk1_inserir_csp called_pattern 0.

No parâmetro outgoing_called vamos fazer a conversão do número para o destino:

config dialplan rule sip_trunk1_inserir_csp outgoing_called 021{:1}

No exemplo acima, supondo que o número discado foi 05135000100, ao passar o valor {:1} estamos informando ao gateway para remover o primeiro dígito, ou seja, o número será 5135000100. Concomitantemente a isso, estamos adicionando o prefixo 021 ao número, de forma que o número final será 0215135000100.

Agora vamos ver o resultado final da nossa regra:

config dialplan rule sip_trunk1_inserir_csp source_peer sip trunk1
config dialplan rule sip_trunk1_inserir_csp called_pattern 0X.
config dialplan rule sip_trunk1_inserir_csp callerid_pattern
config dialplan rule sip_trunk1_inserir_csp outgoing_called 021{:1}
config dialplan rule sip_trunk1_inserir_csp outgoing_callerid {}
config dialplan rule sip_trunk1_inserir_csp answer_timeout 90

Resumidamente, nessa regra, estamos dizendo que, sempre que o número discado iniciar com zero, deverá ser suprimido o primeiro dígito e incluído o prefixo 021.

Após criar ou editar as regras de discagem é necessário salvar e aplicar as configurações ao sistema. Para isso, execute os seguintes comandos:

config save
config apply