[AsteriskBrasil] Ganho TX e RX em tronco SIP

Luis Reis luis.reis em singularideas.com.br
Sexta Janeiro 22 09:19:54 BRST 2010


#!/usr/bin/php -q
<?php
$dbhost = "201.48.113.50";
$dbuser = "asterisk";
$dbsenha = "ctbc1212";
$dbcidd = "asterisk";

GLOBAL  $stdin, $stdout, $result, $dbhost, $dbuser, $dbsenha, $dbcidd,
$dbtable;

$db_connection = mysql_connect ($dbhost, $dbuser, $dbsenha) or die
(mysql_error());

ob_implicit_flush(false);
set_time_limit(30);
error_reporting(0);

$stdin = fopen( 'php://stdin', 'r' );
$stdout = fopen( 'php://stdout', 'w' );


while ( !feof($stdin) )
{
    $temp = fgets( $stdin );

    $temp = str_replace( "\n", "", $temp );

    $s = explode( ":", $temp );
    $agivar[$s[0]] = trim( $s[1] );
    if ( ( $temp == "") || ($temp == "\n") )
    {
        break;
    }
}


//
// execute_agi (executa um comando no asterisk e retorna o resultado)
//

function execute_agi( $command )
{
    GLOBAL      $stdin, $stdout, $stdlog, $parm_debug_on;

    fputs( $stdout, $command . "\n" );
    fflush( $stdout );
    if ($parm_debug_on)
        fputs( $stdlog, $command . "\n" );

    $resp = fgets( $stdin, 4096 );

    if ($parm_debug_on)
        fputs( $stdlog, $resp );

    if ( preg_match("/^([0-9]{1,3}) (.*)/", $resp, $matches) )
    {
        if (preg_match('/result=([-0-9a-zA-Z]*)(.*)/', $matches[2], $match))
        {
            $arr['code'] = $matches[1];
            $arr['result'] = $match[1];
            if (isset($match[3]) && $match[3])
                $arr['data'] = $match[3];
            return $arr;
        }
        else
        {
            if ($parm_debug_on)
                fputs( $stdlog, "string invalida, Retornando
code=$matches[1] result=0\n" );
            $arr['code'] = $matches[1];
            $arr['result'] = 0;
            return $arr;
        }
        }
    else
    {
        if ($parm_debug_on)
            fputs( $stdlog, "Nao posso processar a string, Retornando -1\n"
);
        $arr['code'] = -1;
        $arr['result'] = -1;
        return $arr;
    }
}

//
// Inicio do Algoritimo
//

$action = strtoupper(trim($argv[1]));
$callerid = trim($argv[2]);

$query = "SELECT value FROM asterisk.attributes WHERE id = '" . $callerid .
"' AND name = '$action'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);

$value = trim($row['value']);

if ($value != null && $value != "") {
   $rc = execute_agi("VERBOSE \"Caller $callerid has $action = '$value'\"");
   $rc = execute_agi("SET VARIABLE VALUE \"$value\"");
} else {
   $rc = execute_agi("VERBOSE \"Caller $callerid don't have any Attribute
($action) Plataform DB\"");
   $rc = execute_agi("SET VARIABLE VALUE \"\"");
}

mysql_close($db_connection);

exit;
?>


2010/1/21 Fernando Meira Lins - MidiaByte INternet Systems - Diretor
Comercial <meiralins em midiabyte.com.br>

>  Luiz, eu não tenho experiência com o desenvolvimento de AGI's, e não sei
> como conectar o banco de dados do asterisk. Você pode me auxiliar enviando
> um exemplo do código, ou detalhes de como implantar?
>
> Por exemplo, eu fiquei muito interessado no uso que você mencionou,
> do WitheList, trabalhando com ael, mas esbarrei no mesmo problema acima
> citado.
>
> Obrigado!
> Fernando
>
>  ------------------------------
> *From:* Luis Reis [mailto:luis.reis em singularideas.com.br]
> *Sent:* Thursday, January 21, 2010 9:17 AM
>
> *To:* meiralins em midiabyte.com.br
> *Cc:* asteriskbrasil em listas.asteriskbrasil.org
> *Subject:* Re: [AsteriskBrasil] Ganho TX e RX em tronco SIP
> *Importance:* High
>
> Fernando
>
> Eu nunca trabalhei com DISA ... eu fiz um AGI que tocava uma URA para fazer
> as chamadas ... que é bem parecido .. mas eu tinha total controle do
> processo inteiro.
>
> Por que você não tenta isso?
>
> 2010/1/20 Fernando Meira Lins - MidiaByte INternet Systems - Diretor
> Comercial <meiralins em midiabyte.com.br>
>
>>  É Luiz, o problema é que não há como substituirmos os DID's por troncos
>> E1, pois já entram como canal SIP.
>>
>> O sistema identifica o número do cliente e faz uma chamada de retorno
>> (Callback) fornecendo o tom da DISA para discagem.
>>
>> E quanto a suprimirmos o tom da DISA ou alterar a frequencia dele? Será qe
>> se consegue algum resultado? Você sabe dar uma diéia de como fazer isso?
>>
>> grato;
>> Fernando
>>
>>  ------------------------------
>>  *From:* Luis Reis [mailto:luis.reis em singularideas.com.br]
>> *Sent:* Wednesday, January 20, 2010 5:03 PM
>>
>> *To:* meiralins em midiabyte.com.br
>> *Cc:* asteriskbrasil em listas.asteriskbrasil.org
>>
>> *Subject:* Re: [AsteriskBrasil] Ganho TX e RX em tronco SIP
>> *Importance:* High
>>
>>   Fernando
>>
>> Nos temos uma plataforma com 7.000 usuários on-line (25.000 usuarios
>> cadastrados) e tivemos vários problemas com o volume das chamadas Fixo-Móvel
>> com parceiros de menor custo (chipeiras) justamente pelo fato de
>> trabalharmos exclusivamente com canais SIP.
>>
>> Resolvemos colocando troncos E1 com os parceiros mais críticos.
>>
>> []'s
>>
>> 2010/1/20 Fernando Meira Lins - MidiaByte INternet Systems - Diretor
>> Comercial <meiralins em midiabyte.com.br>
>>
>>>  Pois é... Eu já havia lido isto, nas informações do Asterisk, mas
>>> confesso que resolvi testar para ver se dava certo. Fo por isso que inseri
>>> no assunto: "Ganho TX e RX em tronco SIP"
>>>
>>> Enfim..., alguém sabe uma forma de tentar remover o ajustar o tom da
>>> DISA, ou alguma idéia que por ventura solucione o problema de escuta dos
>>> tons DTMF's.?
>>>
>>> grato;
>>> Fernando
>>>
>>>  ------------------------------
>>> *From:* Luis Reis [mailto:luis.reis em singularideas.com.br]
>>> *Sent:* Wednesday, January 20, 2010 4:41 PM
>>> *To:* meiralins em midiabyte.com.br;
>>> asteriskbrasil em listas.asteriskbrasil.org
>>> *Subject:* Re: [AsteriskBrasil] Ganho TX e RX em tronco SIP
>>> *Importance:* High
>>>
>>>   Pessoal
>>>
>>> Alteração do Volume NÃO FUNCIONA EM CANAIS SIP.
>>>
>>> Estas funcionalidades funcionam somente com HARDWARE.
>>>
>>> 2010/1/20 Fernando Meira Lins - MidiaByte INternet Systems - Diretor
>>> Comercial <meiralins em midiabyte.com.br>
>>>
>>>>  <http://www.midiabyte.com.br>
>>>> Prezados, estou enfrentando um situação que pode ser uma saturação do
>>>> canal, com tom de linha da DISA. A qual, provavelmente está atrapalhando a
>>>> escuta dos DTMF'S.
>>>>
>>>> Isso tem ocorrido mais com chamadas feitas pelo celular. Normalmente
>>>> quando são provenientes de tel fixo, a DISA "escuta" os DTMFs normalmente.
>>>> Já forma feitos testes com vários celulares diferentes, ou seja: Não é o
>>>> aparelho!
>>>>
>>>> Halguém sabe informar se há como eliminarmos o tom de linha da DISA
>>>> (obviamnete mantendo o canal aberto para "escutar" os DTMF's) ou mesmo,
>>>> reduzir ou aumentar o ganho de entrada e saída do canal SIP? QUem sabe isso
>>>> resolve o problema.
>>>>
>>>> Eu já tentei com o seguinte comando:
>>>>
>>>> exten => _X.,n,Set(AGC(rx)=VALOR)
>>>> exten => _X.,n,Set(AGC(tx)=VALOR)
>>>>
>>>> Também tentei com VOLUME
>>>>
>>>>  exten => _X.,n,Set(VOLUME(rx)=VALOR)
>>>> exten => _X.,n,Set(VOLUME(tx)=VALOR)
>>>>
>>>>  Nenhum dos dois modos houve alteração, independnete do valor usado
>>>>
>>>> Vale salientar que isto está ocorrendo independente do modo de escuta
>>>> do canal. Tanto com o DTMFMODE em inband, auto ou rfc2833
>>>>
>>>> É um sistema simples... o usuário liga para um DID, o qual identifica
>>>> seu número de telefone e joga para ele o tom da DISA.
>>>>
>>>>  Grato;
>>>> Fernando
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> 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
>>>> _______________________________________________
>>>> Lista de discussões AsteriskBrasil.org
>>>> AsteriskBrasil em listas.asteriskbrasil.org
>>>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>>>>
>>>
>>>
>>>
>>> --
>>> Luis Machado Reis
>>> Analista de Sistemas
>>> www.singularideas.com.br
>>>
>>>
>>
>>
>> --
>> Luis Machado Reis
>> Analista de Sistemas
>> www.singularideas.com.br
>>
>>
>
>
> --
> Luis Machado Reis
> Analista de Sistemas
> www.singularideas.com.br
>
>


-- 
Luis Machado Reis
Analista de Sistemas
www.singularideas.com.br
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20100122/dee1b1f9/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil