Configuração do ASTERISK

Transcrição

Configuração do ASTERISK
Configuração do ASTERISK
[INBOUND]
// FORA->DENTRO com condições no horário
include=> a_trabalhar|9:00-17:30|mon-fri
include=> a_n_trabalhar
[a_trabalhar]
// quem liga de FORA vem para aqui
exten=>0,1,Dial(ZAP/1,20)
exten=>0,2,Goto(menu,s,1)
//se !operadora por menu
[a_n_trabalhar]
exten=>s,1,Playback(estamos fechados) //o playback obriga a ouvir
exten=>0,2,Goto(menu,s,1)
[menu]
exten=>s,1,Background(menu)
exten=>1,1,Goto(interno)
exten=>0,1,Wait(20)
exten=>0,1,Hangup
//o background não obriga a ouvir
//se n escolherem nada, desligamos
[menu_in]
exten=>s,1,Background(menu_in)
//apresentar menu
exten=>1,1,Goto(extern,s,1)
// ir para o contexto ligar para fora
exten=>2,1,Dial(Zap/1,20)
// ligar outro número (tipo vendas,etc..)
exten=>3,1,Goto(cria_conferencia)
// criar conferencia dinamicamente
exten=>0,1,Wait(20)
exten=>0,1,Hangup
[extern]
exten=>s,1,Background(extwhat) //apresentar menu de escolha
exten=>1,1,Goto(local)
exten=>2,1,Goto(international)
exten=>3,1,Goto(interno)
exten=>4,1,Goto(directdial)
[directdial]
exten=>0,1,Dial(Zap/g2/)
exten=>0,2,Congestion
//marca qualquer coisa que o user puser
[international]
include=>international_VOIP
include=>international_PT
[international_VOIP]
exten=>_3512XNXXXXXX,1,Dial(Zap/g2/${EXTEN:1}) // “internacional PT”
exten=>_3512XXXXXXXX,2,Congestion
[international_PT]
exten=>_003512XNXXXXXX,1,Dial(Iax/crit_uk/${EXTEN})
exten=>_003512XNXXXXXX,2,Dial(Zap/g2/${EXTEN:1})
exten=>_003512XXXXXXXX,3,Congestion
[interno]
exten=>_1XXX,1,Dial(Zap/g2/${EXTEN:1})
exten=>_1XXX,2,Congestion
// 4 digitos sendo o 1º 1
// avisar se não conseguir
[local]
include=>local_VOIP
include=>local_PT
[local_VOIP]
exten=>_239XXXXXX,1,Dial(Zap/g2/${EXTEN:1})
exten=>_239XXXXXX,2,Congestion
[local_PT]
exten=>_239XXXXXX,1,Dial(Iax/crit_LX/${EXTEN})
exten=>_239XXXXXX,2,Dial(Zap/g2,${EXTEN:2})
exten=>_239XXXXXX,3,Congestion
[voicemail]
//vê quem telefona, e dp só lhe pede
exten=> 9999,1,VoicemailMain(s${CALLERIDNUM})
exten=> 9999,2,Hangup
[cria_conferencia]
exten=>0000,1,Wait(1)
exten=>0000,2,MeetMe(|MDi) //http://www.voip-info.org/wiki-Asterisk+cmd+MeetMe
[INTERNAL]
// DENTRO->DENTRO
include=>interno
exten=>9,1,Dial(ZAP/1,20)
exten=>112,1,Goto(nineoneone,s,1)
[globals]
EMERGENCY=0
EMERGENCY_TRUNK=Zap/17
EMERGENCY_NUM=112
[nineoneone]
exten
exten
exten
exten
exten
exten
exten
exten
exten
exten
exten
exten
exten
=>
=>
=>
=>
=>
=>
=>
=>
=>
=>
=>
=>
=>
s,1,SetVar(SET_EMERG_FLAG=0)
s,n(checkavail),ChanIsAvail(${EMERGENCY_TRUNK})
s,n,SetGlobalVar(EMERGENCY=1)
s,n,SetVar(SET_EMERG_FLAG=1)
s,n(dial),Dial(${EMERGENCY_TRUNK}/${EMERGENCY_NUM})
s,s+2(trunkbusy),GotoIf($[${EMERGENCY} = 1]?inprogress)
s,n,SoftHangup(${EMERGENCY_TRUNK}-1)
s,n,Wait(12)
s,n,Goto(checkavail)
s,s+2(inprogress),Congestion
s,checkavail+101(notavail),Goto(trunkbusy)
h,1,GotoIf($[${SET_EMERG_FLAG} = 1]?3)
h,3,SetGlobalVar(EMERGENCY=0)
Configurações no voicemail.conf:
format=wav49|gsm|wav
servermail=asterisk
attach=yes
maxmessage=180
minmessage=3
charset=ISO-8859-1
pbxskip=no
fromstring=Edgebox's PBX
emailsubject=...
emailbody=...
[default]
// de quem é que vem o e-mail(user)
// se o voicemail vai junto do e-mail de notificação ou não
// tamanho máximo das mensagens em segundos
// tamanho minimo das mensagens em segundos
// será que queremos usar UTF-8 para dar para toda a gente?
// deverá aparecer [PBX] no subject do e-mail?
// de quem é que vem o mail
// string a definir o subject do e-mail
// dá para definir o corpo do e-mail usando-se algumas variáveis
// este 9999 seria criado com o comando addmailbox
9999 => 1234,<your name in here>,<your email address here>
Configurações no sip.conf:
context=default
// ter em atenção como vai ficar definido o INCOMING
tos=lowdelay
// lowdelay,throughput,reliability,mincost,none
videosupport=yes
// vamos suportar isto?
register => 1234:[email protected] // registar-se num SIP proxy
Configurações no cdr_manager.conf:
enabled=yes
// vamos fazer billing? (este módulo tem que estar carregado: cdr_csv.so)
Configurações no cdr_pgsql.conf:
[global]
hostname=localhost
port=5432
dbname=asterisk
password=password
user=postgres
// vamos dar a hipótese de logar noutro sítio que não nosso?
Configurações no extensions.conf:
atenção que este ficheiro é que leva aquelas definições todas que andam lá por cima
Configurações no parking.conf:
[general]
parkext => 700
parkpos => 701-720
parkingtime => 45
original toca de novo)
adsipark = yes
pickupexten = *8
// que número é que se marca para fazer o park
// entre que extenções é que ficam as chamadas paradas (dá para 19 aqui)
// tempo máximo para uma chamada ficar em park em segundos (depois o
// avisa-se via ADSI sobre os parks?
// configurar a extensão para se returnar do park
Configurações no meetme.conf:
conf => num_da_conf,PIN
// não é necessário se usarmos criação dinâmica
Configurações no musiconhold.conf:
// o Asterisk precisa de levar reload
[classes]
default => quietmp3:/var/lib/asterisk/mohmp3
Notas:
●
Directory
Também é possível a utilização de uma lista telefónica (Directory), valerá a pena investir já nisto
nesta fase inicial?
●
Configuração com CISCO clients
http://www.voip-info.org/wiki-Asterisk+config+skinny.conf
●
MeetME Control
http://www.areski.net/asterisk-meetme/about.php?s=0
●
Audio
Os
vários
sons
utilizados
pelo
sistema
encontram-se
normalmente
em
/var/lib/asterisk/sounds e utilizam o formato GSM. Para que se possam implementar
outras linguas, devem-se seguir os seguintes critérios:
●
●
/var/lib/asterisk/sounds/pt digits/pt letters/pt etc
●
●
definir-se a lingua ou via variável language=pt ou via a função SetLanguage()
neste momento existem cerca de 922 sons
Telefones (syntaxe)
[phone1]
type=friend
// seria peer se isto se tratasse de um proxy
host=dynamic
defaultip=192.168.1.4
username=blah
secret=blah
// podem usar-se aqui hashes md5 (md5secret=)
dtmfmode=rfc2833 ; Choices are inband, rfc2833, or info
mailbox=9999 ; Mailbox for message waiting indicator
context=sip
// todos os telefones, pelo menos inicialmente devem estar no mm
callerid="Me" <2124>
●
Firewall
Portas que devem passar conforme a necessidade:
●
●
●
●
●
●
5060 (tcp/udp)
4569 (udp)
5036 (udp)
10000:20000 (udp)
2727 (udp)
[SIP (alguns só usam a udp)]
[IAX .v2]
[IAX]
[media stream]
[media gateway protocol]
Algumas considerações relativamente à segurança
Um dos mecanismos que aumentam a segurança, é a hipótese de não se ter que correr o asterisk
com a conta de um utilizador com permissões elevadas (eg. root). Um pequeno tutorial sobre como
se por a correr o Asterisk a correr com um utilizador mais limitado encontra-se no seguinte
endereço: http://www.voip-info.org/wiki-Asterisk+non-root.
Deve-se também ter em conta que o algoritmo de encriptação durante a autenticação via protocolo
SIP é o MD5, que apesar de não ser o mais seguro, já fornece uma boa camada de confidencialidade
e protecção.
Aquando a implementação do sistema não se sistema a consulta de um documento da Cisco
(http://www.cisco.com/en/US/tech/tk652/tk701/technologies_white_paper09186a00800ae41c.shtml
) onde são descritas implementações práticas de sistemas VOIP.
Nos contextos deve-se também ter em conta que não pode ser possível aos utilizadores que ligam
de fora possam utilizar a conta da empresa para fazer chamadas à custa da mesma.

Documentos relacionados

Configurando Asterisk

Configurando Asterisk Depois de instalar o Asterisk, mudar para este diretório: etc/asterisk e localize o arquivo sip.conf. Confira e veja se você tem as configurações listadas abaixo neste arquivo. [general] port=5060 ...

Leia mais

Manual de Configuração do Asterisk Como Gateway de Voz

Manual de Configuração do Asterisk Como Gateway de Voz Agora que as configurações associadas aos canais ZAP e OH323 já foram realizadas, deve ser definido o plano de numeração que será utilizado no Asterisk. Este plano é especificado no arquivo /etc/as...

Leia mais