O que é?
O presente documento contém as principais ações necessárias para efetuar a atualização da interface web do PABXFLEX.

Valide demais procedimentos após finalizar este!
-
https://intranet.itflex.com.br/produto/pabx-v2.7/instalacao/troncos/
-
https://intranet.itflex.com.br/produto/pabx-v2.7/instalacao/uras/
-
https://intranet.itflex.com.br/produto/pabx-v2.7/instalacao/ami/
-
https://intranet.itflex.com.br/produto/pabx-v2.7/instalacao/clarity/
Passo 1:
- Efetuar o backup geral do servidor
tar -czvf /opt/client/backup/atualizacao-pabx-itflex.tar.gz /etc/ /usr/lib/asterisk/ /var/lib/asterisk/ /usr/sbin/*asterisk* /etc/init.d/asterisk /usr/lib/itflex-asterisk/
Passo 2
Importante validar com o cliente a Janela de parada. Aproveitar a janela para atualizar o sistema operacional.
- Rodar o comando de update
sudo yum update
Passo 3
- Para ambiente sem cluster:
sudo systemctl enable webmin
sudo systemctl restart webmin
- Para ambiente em cluster:
sudo systemctl restart webmin
Não de reload nos arquivos até finalizar o procedimento.
Passo 4
Neste passo vamos ajustar em alguns módulos os arquivos de configuração para o novo padrão.
A seguir serão apresentados os módulos que precisarão ser corrigidos:
Avançadas
Lembre se de migrar demais contextos personalizados do cliente.
O principal arquivo onde as configurações estão presentes é o DIALPLAN localizado em Configurações → Avançadas → DIALPLAN
. Antes de iniciar a migração dos contextos, realize os seguintes passos:
-
Limpar as regras que estiverem comentadas.
-
Copiar os dados do discagem-ramais para o caminho:
Configurações → Regras Personalizadas → Entrada Por Número
-
Copiar os dados do ramais-internos para o caminho:
Configurações → Regras Personalizadas → Discagem de Ramais Internos
-
Copiar os dados do ramais-monitoramento para o caminho:
Configurações → Regras Personalizadas → Discagem de Ramais Internos
-
Copiar os dados do ramais-porteiro para o caminho:
Configurações → Regras Personalizadas → Entrada das Portarias
-
Copiar os dados do discagem-click2dial para o caminho:
Configurações → Regras Personalizadas → Discagem via Click To Dial
-
Copiar os dados do discagem-feriado para o caminho:
Configurações → Regras Personalizadas → Entrada de Feriados
-
Colocar os contextos de entrada(Entrada-voip, entrada-vivo, discagem-ddr-e1, etc….) de operadoras no caminho:
Configurações → Troncos → ENTRADA
-
Após colar os contextos de de Regras Personalizadas, é preciso executar o comando ctrl+f e pesquisar se existem includes repetidos, caso haja é nesserário remover os repetidos.
Contextos e includes que devem ser apagados:
-
Contextos
- [queue-member-norecord],
- [conferencia],
- [discagem-pstn],
- [ramais-externos],
- [discagem-filas],
- [entrada-itflex].
- Includes
#include "extensions.default"; Contextos default e guest
#include "extensions.routing"; Roteamento de chamadas de saída
#include /etc/asterisk/internal.hints; Hints para Ramais Internos
#include "extensions.hints"; Hints Ramais SIP quando usado Telefone com BLF
#include "extensions.custom"; Menu de atendimento gerenciado pelo cliente
ctvoicerAMI=2020-01-01 12:00:00; Variável de integração com o CTVoicer Clarity
Sempre após salvar o arquivo Configurações → Avançadas → DIALPLAN é importante clicar em Configurações → Avançadas → Validar Sintaxe em DIALPLAN, essa ação tem o objetivo efetuar o reload das configurações
A partir dos erros do logs será possível verificar quais contextos estão repetidos e corrigí-los.
- Padronize a ura conforme: https://intranet.itflex.com.br/produto/pabx-v2.7/configura%C3%A7%C3%B5es/uras/
Copie o include de libs personalizadas antes de apagar.
- Acessar via ssh o arquivo
/etc/asterisk/extensions.ael
e recortar os dados após o include#include "/usr/lib/itflex-asterisk/ael/default.ael"
e salvar o arquivo.
// Uso exclusivo da iTFLEX Tecnologia - Software Livre, Redes, Segurança e Telefonia IP
// http://www.itflex.com.br - +55 (47) 3029-3388 - Joinville/SC - Brasil
// Bibliotecas do Plano de Discagem do PABXFLEX, essencial para o funcionamento!
#include "/usr/lib/itflex-asterisk/ael/default.ael"
- Adicionar os includes de ura dentro do
Configurações → Avançadas → URAs
Exemplo:
#include "/etc/asterisk/ael/ura.ael"
Realizar o reload da configurações em Configurações → Avançadas → Validar Sintaxe em AEL, e verificar se ocorreram logs de erro.
Regras Personalizadas
Entrada Por Número
- Acessar o arquivo
Configurações → Avançadas → DIALPLAN
, recortar as extensões e entradas (discagem-ramais e discagem-ddr-e1) que estão diferentes do arquivo padrão/usr/share/itflex-asterisk/etc/asterisk/extensions.conf
.
Realizar o reload da configurações em Configurações → Avançadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
- Acessar o arquivo
Configurações → Regras Personalizadas → Entrada Personalizada Por Número
, colar as extensões e entradas dentro do contexto discagem-ramais e salvar o arquivo.
; Definição de regras especificas personalizadas ao cliente!
; Edite somente se souber o que está fazendo, risco de parar a ENTRADA DE LIGAÇÕES
[discagem-ramais]
include => dial-ramais ; Biblioteca de discagem para os Ramais
Realizar o reload da configurações em Configurações → Regras Personalizadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
Entrada das Portarias
- Acessar o arquivo
Configurações → Avançadas → DIALPLAN
, recortar as extensões e entradas (ramais-gateway e ramais-porteiro) que estão diferentes do arquivo padrão/usr/share/itflex-asterisk/etc/asterisk/extensions.conf
e salvar o arquivo.
[ramais-gateway]
include => ramais-porteiro
[ramais-porteiro]
; Entrada de Ligações das Portarias
exten => _ZX,1,NoOp("Bilhete<->Tipo:Interna,Origem:${CALLERID(num)},Destino:${EXTEN},Canal:${CHANNEL},ID:${UNIQUEID}")
same => n,Set(CDR(userfield)=PORTARIAS)
same => n,Gosub(check-originate-id,~~s~~,1)
same => n,Gosub(check-monitor,~~s~~,1(${CALLERID(num)},${EXTEN}))
same => n,Gosub(api-portaria-send-event,s,1) ; Se ativar está Macro, adicione botões: "Configuração do PABXFLEX --> API Portaria - Definição do Sistema de Portaria ..."
same => n,Set(__API_QUEUE_NAME=DESATIVADO)
same => n,Set(QUEUE_OPTS=mt)
same => n,Set(QUEUE_TIMEOUT=300)
same => n,Ringing()
same => n,Wait(1)
same => n,Gosub(dial-exten,${EXTEN},1) ; Necessário existir include do queues.ael dentro do arquivo extension.ael
same => n,Busy(5)
same => n,Hangup()
Realizar o reload da configurações em Configurações → Avançadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
- Acessar o arquivo
Configurações → Regras Personalizadas → Entrada das Portarias
, colar as extensões e entradas dentro do contexto ramais-gateway e ramais-porteiros respectivamente e salvar o arquivo.
; Entrada de Ligações das Portarias
[ramais-porteiro]
include => ramais-porteiro-dfl
[ramais-gateway]
include => ramais-porteiro-dfl
Realizar o reload da configurações em Configurações → Regras Personalizadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
Discagem de Ramais Internos
- Acessar o arquivo
Configurações → Avançadas → DIALPLAN
, recortar as extensões e entradas (ramais-internos) que estão diferentes do arquivo padrão/usr/share/itflex-asterisk/etc/asterisk/extensions.conf
e salvar o arquivo.
[ramais-internos]
include => comandos
include => conferencia
include => VOIP-ITFLEX
exten => _${DDR},1,Set(CDR(userfield)=INTERNO)
same => n,Set(__TRANSFER_CONTEXT=${CONTEXT})
same => n,Gosub(check-originate-id,~~s~~,1)
same => n,Goto(discagem-ramais,${EXTEN},1)
exten => _${DDR}[1-3],1,Gosub(get-pbxuserinfo,~~s~~,1(${EXTEN:0:-1},telefone${EXTEN:-1}))
same => n,Gosub(check-originate-id,~~s~~,1)
same => n,Gotoif($[ "${USERINFOVALUE}" != "" ]?${USERINFOVALUE},1)
Realizar o reload da configurações em Configurações → Avançadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
- Acessar o arquivo
Configurações → Regras Personalizadas → Discagem de Ramais Internos
, colar as extensões e entradas dentro do contexto ramais-internos e salvar o arquivo.
[ramais-internos]
include => from-internal
Realizar o reload da configurações em Configurações → Regras Personalizadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
Entrada de Feriados
- Acessar o arquivo
Configurações → Avançadas → DIALPLAN
e verificar se existem regras de feriados, recortá-las e salvar o arquivo.
Realizar o reload da configurações em Configurações → Avançadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
- Acessar o arquivo
Configurações → Regras Personalizadas → Entrada de Feriados
, colar o contexto e salvar o arquivo.
; Regra de Entrada para Feriados
; ==============================
[discagem-feriado]
exten => s,1,Set(CDR(userfield=ENTRADA-FERIADO))
same => n,Playback(ola-informamos-que-hoje-nao-temos-atendimento-ligar-proximo-dia-util)
same => n,Busy(5)
same => n,Hangup()
Realizar o reload da configurações em Configurações → Regras Personalizadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
Discagem via Click To Dial
- Acessar o arquivo
Configurações → Avançadas → DIALPLAN
e verificar se existem regras de Discagem Click To Dial, recortá-las e salvar o arquivo.
Realizar o reload da configurações em Configurações → Avançadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.
- Acessar o arquivo
Configurações → Regras Personalizadas → Discagem via Click To Dial
, colar o contexto e salvar o arquivo.
; Regras de Entrada e Discagem via Click To Dial
[discagem-click2dial]
exten => ura-exemplo,1,Noop([click2dial] src iniciado)
same => n,Goto(${EXTEN},s,1)
exten => _0X.,1,Goto(discagem-click2dial,${EXTEN:1},1)
exten => _ZX.,1,Noop([click2dial] dst iniciado)
same => n,Goto(discagem-pstn,${EXTEN},1)
Realizar o reload da configurações em Configurações → Regras Personalizadas → Validar Sintaxe em DIALPLAN, e verificar se ocorreram logs de erro.