Olá Julio, Aqui em Salvador a regra dos 50 km e diferencias entre cidades também não se aplica em alguns casos. E por exemplo: Salvador / Lauro de Freitas / Camaçari Todas tem o mesmo código de área (71), distancias maior que 50 km entre elas , são cidades diferentes e não precisam do código de área para realizar uma ligação.
Pablo 2009/9/10 JP Telecom- Julio <[email protected]> > Pablo, > > O uso de DDD não é só apenas qdo ultrapassar 50KM, pode ser mesmo sendo bem > menos, essa regra não existe mais ( é uma regra antiga), agora a regra é se > for cidade diferente mesmo tendo o mesmo DDD tem que discar o Código de área > ( isso para telefones fixo) e para celular sendo o mesmo DDD não precisa de > código de área. > > > ----- Original Message ----- > *From:* Pablo Câmara <[email protected]> > *To:* [email protected] > *Sent:* Thursday, September 10, 2009 8:56 AM > *Subject:* [AsteriskBrasil] Calcula distâncias entre cidades utilizando > latitude e longitude. MYSQL - ASTERISK 1.6 > > Olá pessoal... > > Quando devo utilizar o código de area dentro de um mesmo estado? Não sei se > a informação procede, mas quando a distancia ultrapassa 50 km, o uso do > código da area é obrigatório. > > Logo resolvi apelar. Calcular as distancias utilizando latitude e longitude > utilizando os dados da Tabela cnlfixo da anatel. > E uma tabela de preferencias (filiais) que tem as informações da filial. > > Porem não tenho certeza se esses cálculos estão corretos. > > Passo como paramento o número discado. ('11', '9999' '9999') > > > DELIMITER $$ > > DROP FUNCTION IF EXISTS `asterisk`.`fn_calculaDistancia` $$ > CREATE definer=`ro...@`%` FUNCTION `fn_calculaDistancia`(varDDD varchar(2), > varFaixa1 varchar(6), varFaixa2 varchar(4)) RETURNS varchar(10) CHARSET > latin1 > BEGIN > > declare radiano float default 0; > declare unidade float default 0; > declare area varchar(2) default 0; > declare latitude_1 float default 0; > declare longitude_1 float default 0; > declare latitude_2 float default 0; > declare longitude_2 float default 0; > declare distancia float default 50; > > set radiano = 180/PI(); > set unidade = 60 * 1.1515 * 1.609344; > > select substr(prefixo,1,2), substr(latitude,1,4)/100, > substr(longitude,1,4)/100 > into area, latitude_1, longitude_1 > from asterisk.preferencias > where principal = 1; > > if (area = varDDD) then > select substr(latitude,1,4)/100, substr(longitude,1,4)/100 > into latitude_2, longitude_2 > from asterisk.cnlfixo > where prefixo = concat(varDDD,varFaixa1) > and varFaixa2 between faixainicial and faixafinal; > > set distancia = ((ACOS(SIN(latitude_1/radiano) * SIN(latitude_2/radiano) > + > COS(latitude_1/radiano) * COS(latitude_2/radiano) * > COS(longitude_2/radiano - longitude_1/radiano))) * unidade); > > end if; > > if (distancia >= 50) then > return 0; -- usa ddd > else > return 1; -- remove ddd > end if; > > > END $$ > > DELIMITER ; > > Porem meus resultados não estao muito confiáveis. > Alguem consegue ver algum problema nessa procedure? > > ------------------------------ > > > _______________________________________________ > Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. > VoIP, Asterisk e Convergência de Redes. > http://www.encontrovoipcenter.com.br > > Compre uma camiseta da AsteriskBrasil.org! > http://www.voipmania.com.br > > Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na > rede Freenode.net: #asterisk-br > _______________________________________________ > Lista de discussões AsteriskBrasil.org > [email protected] > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > > > > _______________________________________________ > Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. > VoIP, Asterisk e Convergência de Redes. > http://www.encontrovoipcenter.com.br > > Compre uma camiseta da AsteriskBrasil.org! > http://www.voipmania.com.br > > Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na > rede Freenode.net: #asterisk-br > _______________________________________________ > Lista de discussões AsteriskBrasil.org > [email protected] > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >
_______________________________________________ Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. VoIP, Asterisk e Convergência de Redes. http://www.encontrovoipcenter.com.br Compre uma camiseta da AsteriskBrasil.org! http://www.voipmania.com.br Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br _______________________________________________ Lista de discussões AsteriskBrasil.org [email protected] http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil

