configuracao do asterisk

20
VoIP e NGN Asterisk Configuração Frederico Madeira <[email protected]> www.madeira.eng.br

Upload: frederico-madeira

Post on 09-Jun-2015

2.452 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Configuracao do asterisk

VoIP e NGNAsteriskConfiguração

Frederico Madeira <[email protected]>www.madeira.eng.br

Page 2: Configuracao do asterisk

Agenda

➔ Arquivos de Configuração➔ sip.conf➔ Plano de Discagem

– Extensões– Prioridades– Aplicações– Contextos

➔ Prática

Page 3: Configuracao do asterisk

Arquivos de Configuração

➔ O asterisk é controlado por arquivos de texto localizados em /etc/asterisk

➔ Sessões são chamadas de contextos

➔ Exemplo da Sintaxe:

;; The first line without a comment should be the session title

;[Session]Key = value; Variable designation[Session 2]Key => value; Object declaration

Page 4: Configuracao do asterisk

Arquivos de Configuração

➔ sip.conf – Configurações do protocolo SIP – Configurações das extensões e troncos SIP

➔ extensions.conf– Plano de discagem do asterisk

➔ iax.conf– Configurações do protocolo IAX – Configurações das extensões e troncos IAX

Page 5: Configuracao do asterisk

sip.conf✔ Arquivo lido de cima para baixo✔ A primeira sessão é a [general] e possui os

parâmetros globais do SIP✔ Exemplo:

[general]bindport = 5060bindaddr = 192.168.30.10context = defaultdisallow = allallow = ulawmaxexpirey = 120defaultexpirey = 80

Page 6: Configuracao do asterisk

sip.confDefinições:

✔ allow/disallow: Define qual codec pode ser utilizado

✔ bindaddr: Endereço que sera utilizado pelo Asterisk SIP listener. Se for setado com 0.0.0.0 (default) irá utilizar todas as interfaces

✔ context: Configura o contexto padrão para todos os clientes, a não ser que seja modificado na sessão de definições do cliente

✔ bindport: Porta UDP SIP que ficará aberta✔ maxexpirey: Tempo máximo para se registrar

(segundos)✔ defaultexpirey: Temo padrão para se registro

(segundos)✔ register: Registra o Asterisk em outro host

Page 7: Configuracao do asterisk

sip.conf✔ Após a sessão é a [general] teremos a sessões

para definição dos clientes (extensões)✔ Exemplo:

[4020]type=friendsecret=mysecrethost=10.1.30.50context=trusted

[4021]type=friendsecret=xlitehost=dynamicdefaultip=10.1.30.17

Page 8: Configuracao do asterisk

sip.confDefinições:

✔ [nome]: Quando um dispositivo SIP se conecta ao Asterisk, ele usa a parte do nome do usuário retirado do SIP URI para localizar o peer/user.

✔ type: Configura a classe da conexão. Pode ser peer, user, e friend.

✔ peer: Asterisk envia chamadas para um peer.✔ user: Asterisk recebe chamadas de um usuário.✔ friend: os dois anterores ao mesmo tempo

✔ host: Endereco IP ou hostname. A opcão mais comum é “dynamic”, usado quando um host registra em um Asterisk.

✔ secret: Password para autenticar um usuário ou peer.

Page 9: Configuracao do asterisk

Testando o registro

✔ Configure seu cliente SIP para se registra no Asterisk

✔ Entre na console do Asterisk e aguarde pela mensagem de registo:

[root@pbxip asterisk]# /etc/init.d/iptables stop[root@pbxip asterisk]# /usr/sbin/asterisk -rvvvvvvvConnected to Asterisk 1.6.2.8 currently running on pbxip (pid = 2520)Verbosity was 3 and is now 7 -- Remote UNIX connectionpbxip*CLI> -- Registered SIP '4550' at 192.168.15.242 port 5060 > Saved useragent "Twinkle/1.4.2" for peer 4550pbxip*CLI>

Page 10: Configuracao do asterisk

Plano de discagem (Dialplan)✔ É o coração do Asterisk

✔ Define com o Asterisk irá tratar com cada chamada feita ou recebida pelo PBX

✔ Constituída por extensões que são formadas por instruções as quais o Asterisk executará de forma sequenciada.

✔ Configurado no extensions.conf

✔ Possui 4 conceitos de maior relevância✔ Extensões✔ Prioridades✔ Aplicações✔ Contexto

Page 11: Configuracao do asterisk

Plano de discagem (Dialplan)✔ Extensões

✔ O plano de discagem é feito por diversas extensões

✔ É uma string que irá trigar um evento quando uma chamada for feita

✔ Pode ser literal ou pattern

Page 12: Configuracao do asterisk

Plano de discagem (Dialplan)✔ Extensões (exemplos)

Onde:✔ Exten : define o próximo passo da chamada✔ 8580 : é o grupo de dígitos que foram discados

(called number)✔ 1 e 2: são prioridades que definem a ordem de

execução

✔ Ao discar 8580, a chamada será encaminhada para o cliente registrado com o número 8580 e tocará durante 20s, caso não haja atendimento a chamada será desligada.

exten=>8580,1,Dial(SIP/8580,20)exten=>8580,2,hangup()

Page 13: Configuracao do asterisk

Plano de discagem (Dialplan)

✔ Prioridades

✔ São ações numeradas para execução sequenciada em cada extensão

✔ Cada prioridade chama uma aplicação

✔ Inicia com 1 e é incrementada de 1 a cada linha da extensão.

✔ Se a numeração não for sequenciada a execução será abortada

Page 14: Configuracao do asterisk

Plano de discagem (Dialplan)

✔ Aplicações

✔ Parte fundamental do Asterisk✔ Lidam com canais de voz, reproduzem

mensagens/tons, lidam com as chamadas e com a desconexão

✔ Para verificar as aplicações instaladas:

pbxip*CLI> core show applications -= Registered Asterisk Applications =- ADSIProg: Load Asterisk ADSI Scripts into phone AgentLogin: Call agent login. AGI: Executes an AGI compliant application AMD: Attempt to detect answering machines. Answer: Answer a channel if ringing. Authenticate: Authenticate a user BackGround: Play an audio file while waiting for digits of an extension to go to.

Page 15: Configuracao do asterisk

Plano de discagem (Dialplan)

✔ Contexto

✔ Fundamental para o utilização do Asterisk bem como para a Segurança

✔ Define um escopo✔ Permite a separação do plano de discagem em

partes diferentes✔ Altamente ligado aos canais do Asterisk✔ Quando o Asterisk recebe uma chamada, ela é

tratada dentro do contexto de entrada daquele canal.

✔ O contexto de entrada sempre é definido no arquivo de configuração do canal (iax.conf, sip.conf)

Page 16: Configuracao do asterisk

Plano de discagem (Dialplan)

✔ Contexto

Page 17: Configuracao do asterisk

Plano de discagem (Dialplan)

✔ Contexto (Exemplo)

Page 18: Configuracao do asterisk

Plano de discagem (Dialplan)

✔ Contexto

✔ Contextos diferentes podem ser criados para atender a diferentes empresas

✔ Ou diferentes classes de usuários✔ Ou definir quem pode realizar ligações

internacionas, interurbanas, locais ou apenas dentro da rede

✔ Tudo isso com os mesmos arquivos de configuração

✔ Um contexto é criado com um nome entre []✔ Um contexto é composto por diversas extensões✔ Ele termina quando o outro inicia

Page 19: Configuracao do asterisk

Prática✔ Na empresa temos 4 grupos de ramais

✔ 8010 – 8019 (Administração)✔ 8020 – 8029 (RH)✔ 8030 – 8039 (TI)✔ 8040 – 8049 (Financeiro)

1. Crie extensões no contexto [default] para que todos possam se falar

2. Crie um contexto chamado [simplifica] e crie uma única extensão que permita falar com todos os ramais.

3. Uma nova politica foi dada conforme regras abaixo, crie contextos e extensões que implementem a mesma.

✗ TI liga para todos os ramais✗ RH só liga para TI e Financeiro✗ Admin só liga para TI✗ Financeiro liga para TI e Admin

Page 20: Configuracao do asterisk

VoIP e NGNAsteriskConfiguração

Frederico Madeira <[email protected]>www.madeira.eng.br