Re: [AsteriskBrasil] RES: Asterisk + MS Sql

2012-08-31 Por tôpico Daviramos Roussenq Fortunato
Sim com o __ você seta a variável GLOBAL.

Em 31 de agosto de 2012 09:53, Alexander escreveu:

> Nas AGIs que utilizo eu uso da seguinte forma:
>
> $AGI->set_variable("INDIVIDUO",$NOME_INDIDIDUO);
>
> ** **
>
> Sem esse “__”, se não me engano isso é utilizado para variáveis global no
> extension.conf.
>
> ** **
>
> Mas se utiliza “__” no extensions também tem que colocar:
>
> exten => _*1230,n,NoOP(NOME DO INDIVIDUO ${*__INDIVIDUO})
>
> ** **
>
> Att.
>
> Alexander
>
> ** **
>
> *De:* asteriskbrasil-boun...@listas.asteriskbrasil.org [mailto:
> asteriskbrasil-boun...@listas.asteriskbrasil.org] *Em nome de *Daviramos
> Roussenq Fortunato
> *Enviada em:* sexta-feira, 31 de agosto de 2012 10:43
> *Para:* asteriskbrasil@listas.asteriskbrasil.org
> *Assunto:* Re: [AsteriskBrasil] Asterisk + MS Sql
>
> ** **
>
> Conforme mencionei, não fiz o teste. Vamos lá.
>
> ** **
>
> 1 : { Qual a necessidade desta instancia se o objeto criado não esta sendo
> chamado?
> $astman = new AGI_AsteriskManager();
> } 
>
> ** **
>
> Pode retirar que vai funcionar normalmente.
>
> ** **
>
> 2 : { Ao definir a varial ${INDIVIDUO} sua referencia no php é desta forma
> ?
> $AGI->set_variable("__
> INDIVIDUO",0);
> } 
>
> ** **
>
> Deve ser:
>
> ** **
>
> $AGI->set_variable("__INDIVIDUO",$NOME_INDIDIDUO);
>
> ** **
>
> Acho que agora funciona, se alguém poder testar. 
>
> ** **
>
> Em 31 de agosto de 2012 09:11, Ricardo Augusto 
> escreveu:
>
> Amigo analisando teu post, fiquei com algumas duvidas.
>
> Usou programador php e um novato estudante das funcionalidades AGI.
>
> O codigo a baixo exemplifica, mas deixa algumas duvidas :
> 1 : { Qual a necessidade desta instancia se o objeto criado não esta sendo
> chamado?
> $astman = new AGI_AsteriskManager();
> }
> 2 : { Ao definir a varial ${INDIVIDUO} sua referencia no php é desta forma
> ?
> $AGI->set_variable("__
> INDIVIDUO",0);
> }
>
> Oque não ficou claro é a atribuição do nome obtido no banco a variavel
> ${INDIVIDUO} dentro do php, acredito que tenha uma referencia direta e
> clara a = b, mas pela pouca experiencia no ambiente, posso não ter essa
> visão e compreensao.
>
> Agradeço desde já pela atenção.
>
> Ricardo Augusto
> -
>
> exten => _1230,1,Answer
> exten => _1230,n,AGI(LerDadosMSSql.php)
> exten => _1230,n,NoOP(NOME DO INDIVIDUO ${INDIVIDUO})
> exten => _1230,n,Hangup
>
>
> LerDadosMSSql.php
> (corpo do arquivo)
> #!/usr/bin/php -q
>  require_once "phpagi.php";
> require_once "phpagi-asmanager.php";
> $AGI = new AGI();
> $astman = new AGI_AsteriskManager();
>
> if (!$astman->connect("127.0.0.1", "manager", "managersecret"))
> {
> exit (1);
> }
>
> $host = "IP_DATA_BASE";
> $user = "usuario_database";
> $pass = "senha_database";
> $banco = "nome_database";
>
> $conexao = mssql_connect($host, $user, $pass) or debug("Erro de conexão.");
> mssql_select_db($banco,$conexao) or debug("Erro ao tentar abrir o Banco.");
>
> $telefone = get_var($AGI,'CALLERID(number)');
>
> $sql = "SELECT NOME_INDIVIDUO FROM tabela WHERE
> NUMERO_TELEFONE='$telefone'";
> $result = mssql_query($SQL,$conexao);
>
> while($linha = mssql_fetch_array($result)) {
> $NOME_INDIDIDUO = $linha[0];
> }
>
> $AGI->set_variable("__INDIVIDUO",0);
> exit( 0 );
>
> function get_var( $agi, $value) {
> $r = $agi->get_variable( $value );
> if ($r['result'] == 1) {
> $result = $r['data'];
> return $result;
> }
> return '';
> }
>
> ?>
>
> ___
> KHOMP Inovação: External Board Series
> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
> FreeSWITCH.
> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
> ___
> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
> www.digivoice.com.br
> 
> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
> mercado.
> email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
> __
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
>
>
>
> 
>
> ** **
>
> --
> Atenciosamente
> Daviramos Roussenq Fortunato
>
> ___
> KHOMP Inovação: External Board Series
> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
> FreeSWITCH.
> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
> ___
> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
> www.digivoice.com.br
> 
> YEALINK: Telefones IP e VídeoPhones IP com o melho

[AsteriskBrasil] RES: Asterisk + MS Sql

2012-08-31 Por tôpico Alexander
Nas AGIs que utilizo eu uso da seguinte forma:

$AGI->set_variable("INDIVIDUO",$NOME_INDIDIDUO);

 

Sem esse “__”, se não me engano isso é utilizado para variáveis global no
extension.conf.

 

Mas se utiliza “__” no extensions também tem que colocar:

exten => _1230,n,NoOP(NOME DO INDIVIDUO ${__INDIVIDUO})

 

Att.

Alexander

 

De: asteriskbrasil-boun...@listas.asteriskbrasil.org
[mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] Em nome de
Daviramos Roussenq Fortunato
Enviada em: sexta-feira, 31 de agosto de 2012 10:43
Para: asteriskbrasil@listas.asteriskbrasil.org
Assunto: Re: [AsteriskBrasil] Asterisk + MS Sql

 

Conforme mencionei, não fiz o teste. Vamos lá.

 

1 : { Qual a necessidade desta instancia se o objeto criado não esta sendo
chamado? 
$astman = new AGI_AsteriskManager();
} 

 

Pode retirar que vai funcionar normalmente.

 

2 : { Ao definir a varial ${INDIVIDUO} sua referencia no php é desta forma ?
$AGI->set_variable("__
INDIVIDUO",0);
} 

 

Deve ser:

 

$AGI->set_variable("__INDIVIDUO",$NOME_INDIDIDUO);

 

Acho que agora funciona, se alguém poder testar. 

 

Em 31 de agosto de 2012 09:11, Ricardo Augusto 
escreveu:

Amigo analisando teu post, fiquei com algumas duvidas.

Usou programador php e um novato estudante das funcionalidades AGI.

O codigo a baixo exemplifica, mas deixa algumas duvidas :
1 : { Qual a necessidade desta instancia se o objeto criado não esta sendo
chamado? 
$astman = new AGI_AsteriskManager();
}
2 : { Ao definir a varial ${INDIVIDUO} sua referencia no php é desta forma ?
$AGI->set_variable("__
INDIVIDUO",0);
}

Oque não ficou claro é a atribuição do nome obtido no banco a variavel
${INDIVIDUO} dentro do php, acredito que tenha uma referencia direta e clara
a = b, mas pela pouca experiencia no ambiente, posso não ter essa visão e
compreensao.

Agradeço desde já pela atenção.

Ricardo Augusto
-

exten => _1230,1,Answer
exten => _1230,n,AGI(LerDadosMSSql.php)
exten => _1230,n,NoOP(NOME DO INDIVIDUO ${INDIVIDUO})
exten => _1230,n,Hangup


LerDadosMSSql.php
(corpo do arquivo)
#!/usr/bin/php -q
connect("127.0.0.1", "manager", "managersecret"))
{
exit (1);
}

$host = "IP_DATA_BASE";
$user = "usuario_database";
$pass = "senha_database";
$banco = "nome_database";

$conexao = mssql_connect($host, $user, $pass) or debug("Erro de conexão.");
mssql_select_db($banco,$conexao) or debug("Erro ao tentar abrir o Banco.");

$telefone = get_var($AGI,'CALLERID(number)');

$sql = "SELECT NOME_INDIVIDUO FROM tabela WHERE
NUMERO_TELEFONE='$telefone'";
$result = mssql_query($SQL,$conexao);

while($linha = mssql_fetch_array($result)) {
$NOME_INDIDIDUO = $linha[0];
}

$AGI->set_variable("__INDIVIDUO",0);
exit( 0 );

function get_var( $agi, $value) {
$r = $agi->get_variable( $value );
if ($r['result'] == 1) {
$result = $r['data'];
return $result;
}
return '';
}

?>

___
KHOMP Inovação: External Board Series
Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e
FreeSWITCH.
Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
___
DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
www.digivoice.com.br

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do
mercado.
email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
 
__
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org





 

-- 
Atenciosamente
Daviramos Roussenq Fortunato

___
KHOMP Inovação: External Board Series
Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e 
FreeSWITCH.
Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
___
DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.
email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
__
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org

[AsteriskBrasil] RES: Asterisk + MS Sql

2012-08-29 Por tôpico Eder
Esse link já vai começar a te ajudar

Que e ligando o asterisk no sql

 

http://gheeknet.wordpress.com/2011/10/13/perl-to-microsoft-sql-server-2008-s
tandard-via-odbc-using-freetds-drivers/

 

depois procura sobre algo na lista ou no Google de um contexto que faça
consulta no SQL...tem muita coisa

 

vai aos poucos que o pessoal te ajuda aqui Tb...

 

 

 

De: asteriskbrasil-boun...@listas.asteriskbrasil.org
[mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] Em nome de silvio
barros
Enviada em: quarta-feira, 29 de agosto de 2012 17:33
Para: asteriskbrasil@listas.asteriskbrasil.org
Assunto: [AsteriskBrasil] Asterisk + MS Sql

 

Boa noite pessoal.

 

Gostaria de saber se tem uma forma de ao receber uma ligação antes de tocar
o asterisk pegar o numero de origem fazer uma consulta no banco de dados "MS
SQL" dai criar uma condição para que se ele existir ao tocar no soft-phone
aparecer o nome da pessoa e não o numero.

 

Como poderia fazer isso?

 

De ultimo caso pensei em fazer uma migração da base do MSsql para mysql e
assim provavelmente teria como.

 

Alguém teria uma dica de como fazer essa operação com banco Ms-SQL ou MySQL?

 

Grato pela atenção de todos.

___
KHOMP Inovação: External Board Series
Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e 
FreeSWITCH.
Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
___
DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.
email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
__
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org