[AsteriskBrasil] RES: Sip Realtime
Thiago Maluf
malufrj em gmail.com
Terça Setembro 21 21:56:37 BRT 2010
1) call-limit = number : Number of simultaneous calls through this user/peer.
2) Não sei se funciona com todas as conexões de realtime, mas no mysql
basta colocar um atributo na sua coluna do sip-users chamada
call-limit INT e você define o valor que quiser.
Ok?
Abs, Thiago.
2010/9/21 <alcindo em sistecvoip.com.br>:
> Olá...
>
>
>
> O seguinte...
>
> Você tem que ter uma função no banco pra calcular o tempo máximo que pode
> durar a ligação de acordo com o saldo do cliente e inserir no
> extensions.conf algo como:
>
>
>
> [default]
>
> exten => _0X.,1,Mysql(Connect connid sip.server.com.br user senha
> NomeDoBancoSIP)
>
> exten => _0X.,2,Mysql(Query resultid ${connid} select\
> f_calc_time_balance("${CALLERID(num)}"\,\ "${SIP_HEADER(TO)}")\ as\ maxTime)
>
> exten => _0X.,3,Mysql(Fetch fetchid ${resultid} maxTime)
>
> exten => _0X.,4,Mysql(Clear ${resultid})
>
> exten => _0X.,5,Mysql(Disconnect ${connid})
>
> exten => _0X.,6,GotoIf($[${maxTime}=’’]|[${maxTime}<=0]?7:8)
>
> exten => _0X.,7,Hangup
>
> exten => _0X.,8,Wait,1
>
> switch => Realtime/mycontext em extensions
>
>
>
> Digamos que a estrutura da tabela de rotas do banco seja algo como:
>
>
>
> /*==============================================================*/
>
> /* Table: routes */
>
> /*==============================================================*/
>
> create table routes
>
> (
>
> pk_routes int not null,
>
> dsc_route varchar(50) not null,
>
> context varchar(30) not null,
>
> exten varchar(30) not null,
>
> priority int not null,
>
> app varchar(30) not null,
>
> appdata varchar(128) not null,
>
> flag_active smallint not null default,
>
> primary key (pk_routes)
>
> );
>
>
>
> No banco de dados você deve ter uma view que retorna as linhas das rotas a
> serem utilizadas pelo Realtime para poder determinar os parâmetros da
> aplicação Dial como abaixo:
>
>
>
> /*==============================================================*/
>
> /* View: vw_extensions */
>
> /*==============================================================*/
>
> create view vw_extensions as
>
> select pk_routes, context, exten, priority, app, appdata from routes
>
> where flag_active = 1
>
> and exten is not null
>
> and exten <> ''
>
> and context is not null
>
> and context <> ''
>
> order by context, pk_routes;
>
>
>
> +-----------+-----------+---------------+----------+------+----------------------------------------------------------+
>
> | pk_routes | context | exten | priority | app |
> appdata |
>
> +-----------+-----------+---------------+----------+------+----------------------------------------------------------+
>
> | 1 | mycontext | _0XX[23456]X. | 9 | Dial |
> SIP/55${EXTEN}@operadora:5060|90|S|${maxTime} |
>
> | 2 | mycontext | _0XX[789]X. | 9 | Dial |
> SIP/55${EXTEN}@operadora:5060|90|S(${maxTime} |
>
> | 3 | mycontext | _00X. | 9 | Dial |
> SIP/55${EXTEN}@operadora:5060|90|S|${maxTime} |
>
> +-----------+-----------+---------------+----------+------+----------------------------------------------------------+
>
>
>
> A aplicação irá buscar somente os dados da tabela que realmente interessam
> ao asterisk e o parâmetro maxTime deve conter o tempo máximo de duração da
> chamada.
>
> O Realtime vai automaticamente fazer a chamada para view que retornará
> somente uma das linhas acima que é a rota que combina exatamente com o
> parâmetro ${EXTEN}.
>
> O contexto default está definido na tabela ‘sip.conf’ do asterisk que também
> deve estar dentro do banco de dados referindo-se, no caso acima, pela string
> ‘operadora’.
>
> Observe que o Realtime irá chamar somente o contexto ‘mycontext’ então nesta
> mesma tabela você poderá ter também rotas entrantes algo ‘myfrompstn’
> chamando pela mesma rotina alternado o comando da aplicação (switch =>
> Realtime/myfrompstn em extensions).
>
> Neste modelo você consegue com uma simples troca do campo flag_active, sendo
> 1 rota ativa e 0 rota inativa, ter várias operadoras para realizar as
> terminações.
>
>
>
> Espero que ajude.
>
>
>
> De: asteriskbrasil-bounces em listas.asteriskbrasil.org
> [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de Alex
> Tavares Faiotto
> Enviada em: terça-feira, 21 de setembro de 2010 16:58
> Para: asteriskbrasil em listas.asteriskbrasil.org
> Assunto: [AsteriskBrasil] Sip Realtime
>
>
>
> Pessoal, como eu coloco o parametro.
>
>
>
> call-limit
>
>
>
> no Sip REALTIME na tabela do banco?
>
> Vlw
>
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Temos tudo para seu projeto VoIP com Asterisk!
> Descontos especiais para assinantes da AsteriskBrasil.org.
> Registre-se e receba um cupom exclusivo de desconto!
> Acesse agora www.voipmania.com.br
> ______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
> ______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
--
----------------------------------------------------------------
Thiago Maluf Resende
Tel: +55 21 9700-9113
e-mail: malufrj em gmail.com
Mais detalhes sobre a lista de discussão AsteriskBrasil