Re: [AsteriskBrasil] Balanceamento entre linhas
Olá, Se a operadora dos dois SIPs for a mesma, peça para ela unir as franquia/faturas, daí tanto faz... Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-20 1:11 GMT-03:00 Yves Fernandes yvesfernan...@gmail.com: Bom.. tenho um asterisk puro com 2 troncos registrados direto na operadora via SIP. Não tenho nenhum outro equipamento na conexao com a operadora. Em 19 de junho de 2015 20:43, Marcelo Terres mhter...@gmail.com escreveu: Antes de mais nada, cabe saber o hardware em uso. Khomp e Digivoice tem suporte a este tipo de controle direto no channel. []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-19 17:05 GMT-03:00 Alexandre Cavalcante Alencar alexandre.alen...@gmail.com: Olá, A discrepância numérica no número de chamadas não representa a discrepância no número de minutos. Creio que o objetivo seja balancear o número de minutos e não de chamadas. Armazenar o conteúdo de $CDR(billsec) no db interno do Asterisk poderia ser uma saída prática. A cada chamada, pega-se a próxima linha não usada com o menor billsec. Resta saber se o Asterisk DB possui controle de concorrência, caso contrário, terá que encontrar um meio de implementar semáforos no dialplan. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 14:37 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Alexandre. Eu concordo que randômico e balancear são coisas diferentes, mesmo porque o balanceamento você pode fazer modificações de pesos. mas no caso dele, me parece que ele só quer ter um equilíbrio nas duas linhas, então o rX na saída já seria o suficiente. No seu exemplo: Chamadas por 1: 48 Chamadas por 2: 52 eu entendo que jamais vai ser números iguais, mas é muito próximo. pra mim isso já é um equilíbrio. essa discrepância de 4 chamadas. acontece que uma das linha ficou menos ociosa por ligação que a outra. então uma vai receber menos ligações que a outra. No caso de 2 linhas ela vai se revezar, se a linha 1 ta ocupada ela obviamente sai pela 2. e se a linha 1 estivesse disponivel, mas foi a ultima a fazer ligação então a ligação sairia pela 2 e assim sucessivamente. Yves, o Ex. é o que te mandei... como vc tá fazendo a saida de suas ligações? como tá a configuração do seu dahdi tá como group=0 então para fazer ligação dahdi/r0 um exemplo simplório. se você tiver uma E1 ou FXO exten = _X,1,Dial(dahdi/r0/${EXTEN},30,t); same = n,Hangup() *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 19 de junho de 2015 11:43, Thiago Anselmo thiagoo.ansel...@gmail.com escreveu: Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO);
Re: [AsteriskBrasil] Balanceamento entre linhas
Sndo objetivo na sua pergunta vc pode setar uma variavel e azer um goto, ou vc pode usar o agi pra gerar odial de acordo com o resultado, ou ainda setar uma variavel com o tronco que sera utilizado, nao precisria trocar de contexto Sent from my iPhone On Jun 19, 2015, at 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com wrote: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. =-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Maurício Magalhães. T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) =-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite
Re: [AsteriskBrasil] Balanceamento entre linhas
Olá, A discrepância numérica no número de chamadas não representa a discrepância no número de minutos. Creio que o objetivo seja balancear o número de minutos e não de chamadas. Armazenar o conteúdo de $CDR(billsec) no db interno do Asterisk poderia ser uma saída prática. A cada chamada, pega-se a próxima linha não usada com o menor billsec. Resta saber se o Asterisk DB possui controle de concorrência, caso contrário, terá que encontrar um meio de implementar semáforos no dialplan. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 14:37 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com : Alexandre. Eu concordo que randômico e balancear são coisas diferentes, mesmo porque o balanceamento você pode fazer modificações de pesos. mas no caso dele, me parece que ele só quer ter um equilíbrio nas duas linhas, então o rX na saída já seria o suficiente. No seu exemplo: Chamadas por 1: 48 Chamadas por 2: 52 eu entendo que jamais vai ser números iguais, mas é muito próximo. pra mim isso já é um equilíbrio. essa discrepância de 4 chamadas. acontece que uma das linha ficou menos ociosa por ligação que a outra. então uma vai receber menos ligações que a outra. No caso de 2 linhas ela vai se revezar, se a linha 1 ta ocupada ela obviamente sai pela 2. e se a linha 1 estivesse disponivel, mas foi a ultima a fazer ligação então a ligação sairia pela 2 e assim sucessivamente. Yves, o Ex. é o que te mandei... como vc tá fazendo a saida de suas ligações? como tá a configuração do seu dahdi tá como group=0 então para fazer ligação dahdi/r0 um exemplo simplório. se você tiver uma E1 ou FXO exten = _X,1,Dial(dahdi/r0/${EXTEN},30,t); same = n,Hangup() *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 19 de junho de 2015 11:43, Thiago Anselmo thiagoo.ansel...@gmail.com escreveu: Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2)
Re: [AsteriskBrasil] Balanceamento entre linhas
Se vc quer balancear tempo, não faz sentido usar random ou round robin. Eu adotaria sua estratégia de consultar o banco do CDR pra cada tronco e totalizar os minutos de ligação de cada tronco (billsec - e não o duration !). Daí só faz um if e direciona pro tronco que tem menor minutagem. select sum(duration) as duration, sum(billsec) as billsec from cdr where outbound_cnum='NUMERO_DO_SEU_TRUNK' and disposition='ANSWERED' and calldate BETWEEN '2015/06/01 00:00:00' and '2015/06/30 23:59:59';; = ajuste as datas do seu período. O útlimo parâmetro de data vc pode substituir por now() pra totalizar até o presente momento. Daí é só chamar o trunk com menor tempo acumulado. Essa query vai ser sempre dinâmica, pq se a linha 1 é a menor minutagem, sai por ela, e qdo for a proxima ligação, vai inverter pq ela teve a minutagem da última chamada. 2015-06-19 14:59 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com : Em 19 de junho de 2015 13:09, Rafael dos Santos Saraiva rafaels...@gmail.com escreveu: não é randomica Correto é cíclica, eu escrevi randômica por equivoco, mesmo pq r de round robin que é cíclica. Abraços *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
Re: [AsteriskBrasil] Balanceamento entre linhas
Mário, E como eu chamaria o TRUNK? ueheuhehu $agi-exec(???) Obrigado a todos Em 19 de junho de 2015 17:05, Alexandre Cavalcante Alencar alexandre.alen...@gmail.com escreveu: Olá, A discrepância numérica no número de chamadas não representa a discrepância no número de minutos. Creio que o objetivo seja balancear o número de minutos e não de chamadas. Armazenar o conteúdo de $CDR(billsec) no db interno do Asterisk poderia ser uma saída prática. A cada chamada, pega-se a próxima linha não usada com o menor billsec. Resta saber se o Asterisk DB possui controle de concorrência, caso contrário, terá que encontrar um meio de implementar semáforos no dialplan. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 14:37 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Alexandre. Eu concordo que randômico e balancear são coisas diferentes, mesmo porque o balanceamento você pode fazer modificações de pesos. mas no caso dele, me parece que ele só quer ter um equilíbrio nas duas linhas, então o rX na saída já seria o suficiente. No seu exemplo: Chamadas por 1: 48 Chamadas por 2: 52 eu entendo que jamais vai ser números iguais, mas é muito próximo. pra mim isso já é um equilíbrio. essa discrepância de 4 chamadas. acontece que uma das linha ficou menos ociosa por ligação que a outra. então uma vai receber menos ligações que a outra. No caso de 2 linhas ela vai se revezar, se a linha 1 ta ocupada ela obviamente sai pela 2. e se a linha 1 estivesse disponivel, mas foi a ultima a fazer ligação então a ligação sairia pela 2 e assim sucessivamente. Yves, o Ex. é o que te mandei... como vc tá fazendo a saida de suas ligações? como tá a configuração do seu dahdi tá como group=0 então para fazer ligação dahdi/r0 um exemplo simplório. se você tiver uma E1 ou FXO exten = _X,1,Dial(dahdi/r0/${EXTEN},30,t); same = n,Hangup() *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 19 de junho de 2015 11:43, Thiago Anselmo thiagoo.ansel...@gmail.com escreveu: Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else
Re: [AsteriskBrasil] Balanceamento entre linhas
Antes de mais nada, cabe saber o hardware em uso. Khomp e Digivoice tem suporte a este tipo de controle direto no channel. []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-19 17:05 GMT-03:00 Alexandre Cavalcante Alencar alexandre.alen...@gmail.com: Olá, A discrepância numérica no número de chamadas não representa a discrepância no número de minutos. Creio que o objetivo seja balancear o número de minutos e não de chamadas. Armazenar o conteúdo de $CDR(billsec) no db interno do Asterisk poderia ser uma saída prática. A cada chamada, pega-se a próxima linha não usada com o menor billsec. Resta saber se o Asterisk DB possui controle de concorrência, caso contrário, terá que encontrar um meio de implementar semáforos no dialplan. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 14:37 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Alexandre. Eu concordo que randômico e balancear são coisas diferentes, mesmo porque o balanceamento você pode fazer modificações de pesos. mas no caso dele, me parece que ele só quer ter um equilíbrio nas duas linhas, então o rX na saída já seria o suficiente. No seu exemplo: Chamadas por 1: 48 Chamadas por 2: 52 eu entendo que jamais vai ser números iguais, mas é muito próximo. pra mim isso já é um equilíbrio. essa discrepância de 4 chamadas. acontece que uma das linha ficou menos ociosa por ligação que a outra. então uma vai receber menos ligações que a outra. No caso de 2 linhas ela vai se revezar, se a linha 1 ta ocupada ela obviamente sai pela 2. e se a linha 1 estivesse disponivel, mas foi a ultima a fazer ligação então a ligação sairia pela 2 e assim sucessivamente. Yves, o Ex. é o que te mandei... como vc tá fazendo a saida de suas ligações? como tá a configuração do seu dahdi tá como group=0 então para fazer ligação dahdi/r0 um exemplo simplório. se você tiver uma E1 ou FXO exten = _X,1,Dial(dahdi/r0/${EXTEN},30,t); same = n,Hangup() *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 19 de junho de 2015 11:43, Thiago Anselmo thiagoo.ansel...@gmail.com escreveu: Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp =
Re: [AsteriskBrasil] Balanceamento entre linhas
Bom.. tenho um asterisk puro com 2 troncos registrados direto na operadora via SIP. Não tenho nenhum outro equipamento na conexao com a operadora. Em 19 de junho de 2015 20:43, Marcelo Terres mhter...@gmail.com escreveu: Antes de mais nada, cabe saber o hardware em uso. Khomp e Digivoice tem suporte a este tipo de controle direto no channel. []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-19 17:05 GMT-03:00 Alexandre Cavalcante Alencar alexandre.alen...@gmail.com: Olá, A discrepância numérica no número de chamadas não representa a discrepância no número de minutos. Creio que o objetivo seja balancear o número de minutos e não de chamadas. Armazenar o conteúdo de $CDR(billsec) no db interno do Asterisk poderia ser uma saída prática. A cada chamada, pega-se a próxima linha não usada com o menor billsec. Resta saber se o Asterisk DB possui controle de concorrência, caso contrário, terá que encontrar um meio de implementar semáforos no dialplan. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 14:37 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Alexandre. Eu concordo que randômico e balancear são coisas diferentes, mesmo porque o balanceamento você pode fazer modificações de pesos. mas no caso dele, me parece que ele só quer ter um equilíbrio nas duas linhas, então o rX na saída já seria o suficiente. No seu exemplo: Chamadas por 1: 48 Chamadas por 2: 52 eu entendo que jamais vai ser números iguais, mas é muito próximo. pra mim isso já é um equilíbrio. essa discrepância de 4 chamadas. acontece que uma das linha ficou menos ociosa por ligação que a outra. então uma vai receber menos ligações que a outra. No caso de 2 linhas ela vai se revezar, se a linha 1 ta ocupada ela obviamente sai pela 2. e se a linha 1 estivesse disponivel, mas foi a ultima a fazer ligação então a ligação sairia pela 2 e assim sucessivamente. Yves, o Ex. é o que te mandei... como vc tá fazendo a saida de suas ligações? como tá a configuração do seu dahdi tá como group=0 então para fazer ligação dahdi/r0 um exemplo simplório. se você tiver uma E1 ou FXO exten = _X,1,Dial(dahdi/r0/${EXTEN},30,t); same = n,Hangup() *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 19 de junho de 2015 11:43, Thiago Anselmo thiagoo.ansel...@gmail.com escreveu: Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) {
Re: [AsteriskBrasil] Balanceamento entre linhas
Exato, a consulta ao db agrega um delay desnecessário e perigoso, caso o banco fique muito grande e esteja mal indexado. Além disso, caso o banco corrompa, por exemplo, tu impede que a telefonia funcionee. []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de
Re: [AsteriskBrasil] Balanceamento entre linhas
Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email
Re: [AsteriskBrasil] Balanceamento entre linhas
Eu confesso que nao entendi a questão do contexto. O que você quer fazer? Pode explicar melhor? []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-18 21:19 GMT-03:00 Yves Fernandes yvesfernan...@gmail.com: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
Re: [AsteriskBrasil] Balanceamento entre linhas
Olá Yves, Pode explicar melhor o cenário? Dependo do tipo de tecnologia que vc esta usando a sugestão do Mauricio é a melhor. Não entendi bem esta sua AGI o direcionamento que você quer fazer é para ligações de entrada ou saida? On 19/06/2015 01:06, Mauricio Magalhães wrote: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. * **=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães. *T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br mailto:mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com mailto:yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 tel:%2B55%20%2821%29%209357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br http://www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br http://www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org mailto:asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org -- ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em:
Re: [AsteriskBrasil] Balanceamento entre linhas
Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 2 1 2 2 2 2 1 1 2 1 1 1 2 2 2 2 1 1 1 2 1 1 2 2 1 1 1 2 2 1 2 2 1 1 2 2 2 1 2 1 2 1 2 1 2 1 2 1 2 2 2 2 2 2 2 2 2 1 1 1 1 2 1 1 1 2 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 2 2 1 2 1 1 2 2 1 1 2 2 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções
Re: [AsteriskBrasil] Balanceamento entre linhas
Eu ja fiz algo semelhante mas eu coloquei uma variavel global no asterik em um contador e testava se era par ou impar. pares saiam por uma linha e impares por outra Em 19 de junho de 2015 08:16, Marcelo Terres mhter...@gmail.com escreveu: Eu confesso que nao entendi a questão do contexto. O que você quer fazer? Pode explicar melhor? []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-18 21:19 GMT-03:00 Yves Fernandes yvesfernan...@gmail.com: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
Re: [AsteriskBrasil] Balanceamento entre linhas
Obrigado pelas respostas.. Vou fazer um esqueminha explicando melhor o cenário. De qualquer maneira, se alguém puder me explicar como eu posso utilizar o random, já daria pra quebrar um galho. Atenciosamente, Yves Fernandes Em 19 de junho de 2015 10:09, Alexandre Cavalcante Alencar alexandre.alen...@gmail.com escreveu: Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 2 1 2 2 2 2 1 1 2 1 1 1 2 2 2 2 1 1 1 2 1 1 2 2 1 1 1 2 2 1 2 2 1 1 2 2 2 1 2 1 2 1 2 1 2 1 2 1 2 2 2 2 2 2 2 2 2 1 1 1 1 2 1 1 1 2 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 2 2 1 2 1 1 2 2 1 1 2 2 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com : Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite
Re: [AsteriskBrasil] Balanceamento entre linhas
Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e
Re: [AsteriskBrasil] Balanceamento entre linhas
E devemos considerar ainda que talvez o que importe no cenário seja o custo em R$ com cada linha e não a quantidade de ligações. Talvez a ótica seja ir computando a minutagem em cada linha em uma tabela e, no momento de discar, consultar qual tem a menor minutagem e então utilizar essa linha. Bom entender o cenário e a necessidade. Se o cliente pede algo, é bom saber o PORQUE do pedido para então dar a solução mais adequada. *Atenciosamente,* *Cláudio Éden* Consultor de TI | dCAA | MCDST | ITIL +55 85 8972-1842 http://www.eden.com.br http://www.asteriskhandson.com.br Em 19 de junho de 2015 10:09, Alexandre Cavalcante Alencar alexandre.alen...@gmail.com escreveu: Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 2 1 2 2 2 2 1 1 2 1 1 1 2 2 2 2 1 1 1 2 1 1 2 2 1 1 1 2 2 1 2 2 1 1 2 2 2 1 2 1 2 1 2 1 2 1 2 1 2 2 2 2 2 2 2 2 2 1 1 1 1 2 1 1 1 2 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 2 2 1 2 1 1 2 2 1 1 2 2 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com : Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite
Re: [AsteriskBrasil] Balanceamento entre linhas
A opção r do DAHDI toma os troncos de forma ciclíca, não é randomica, ou seja, ele sempre vai pegar o próximo canal livre depois do que foi utilizado por último. [image: Sua Foto] rafaels...@gmail.comRafael S. SaraivaPorto Alegre - RS | Mobile: (51) 8174-7956 http://br.linkedin.com/pub/rafael-saraiva/52/aab/230 https://plus.google.com/u/0/+RafaelSaraivaRS Em 19 de junho de 2015 10:09, Alexandre Cavalcante Alencar alexandre.alen...@gmail.com escreveu: Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 2 1 2 2 2 2 1 1 2 1 1 1 2 2 2 2 1 1 1 2 1 1 2 2 1 1 1 2 2 1 2 2 1 1 2 2 2 1 2 1 2 1 2 1 2 1 2 1 2 2 2 2 2 2 2 2 2 1 1 1 1 2 1 1 1 2 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 2 2 1 2 1 1 2 2 1 1 2 2 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com : Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
Re: [AsteriskBrasil] Balanceamento entre linhas
É um round robin na realidade: *DAHDI/r1/5551212 dials 5551212 on the first available channel in group **one, going in round-robin fashion (and remembering where it last left **off), searching from lowest to highest* Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-19 10:09 GMT-03:00 Alexandre Cavalcante Alencar alexandre.alen...@gmail.com: Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 2 1 2 2 2 2 1 1 2 1 1 1 2 2 2 2 1 1 1 2 1 1 2 2 1 1 1 2 2 1 2 2 1 1 2 2 2 1 2 1 2 1 2 1 2 1 2 1 2 2 2 2 2 2 2 2 2 1 1 1 1 2 1 1 1 2 1 1 2 2 1 1 1 1 1 2 2 2 2 1 1 1 1 2 1 2 2 1 2 1 1 2 2 1 1 2 2 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com : Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___
Re: [AsteriskBrasil] Balanceamento entre linhas
Se o balanceamento fosse entre canais GSM da Khomp ou Digivoice, o driver de ambas tem um controle para enviar a ligação para o canal com menor minutagem usada. []s Marcelo H. Terres mhter...@gmail.com IM: marc...@jabber.mundoopensource.com.br http://www.mundoopensource.com.br http://twitter.com/mhterres 2015-06-19 12:54 GMT-03:00 Claudio Eden claudio.e...@gmail.com: E devemos considerar ainda que talvez o que importe no cenário seja o custo em R$ com cada linha e não a quantidade de ligações. Talvez a ótica seja ir computando a minutagem em cada linha em uma tabela e, no momento de discar, consultar qual tem a menor minutagem e então utilizar essa linha. Bom entender o cenário e a necessidade. Se o cliente pede algo, é bom saber o PORQUE do pedido para então dar a solução mais adequada. *Atenciosamente,* *Cláudio Éden* Consultor de TI | dCAA | MCDST | ITIL +55 85 8972-1842 http://www.eden.com.br http://www.asteriskhandson.com.br Em 19 de junho de 2015 10:09, Alexandre Cavalcante Alencar alexandre.alen...@gmail.com escreveu: Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 21 2 2 2 21 1 2 1 11 2 2 2 21 1 1 2 11 2 2 1 11 2 2 1 22 1 1 2 22 1 2 1 21 2 1 2 12 1 2 2 22 2 2 2 22 1 1 1 12 1 1 1 21 1 2 2 11 1 1 1 22 2 2 1 11 1 2 1 22 1 2 1 12 2 1 1 22 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça
Re: [AsteriskBrasil] Balanceamento entre linhas
Alexandre. Eu concordo que randômico e balancear são coisas diferentes, mesmo porque o balanceamento você pode fazer modificações de pesos. mas no caso dele, me parece que ele só quer ter um equilíbrio nas duas linhas, então o rX na saída já seria o suficiente. No seu exemplo: Chamadas por 1: 48 Chamadas por 2: 52 eu entendo que jamais vai ser números iguais, mas é muito próximo. pra mim isso já é um equilíbrio. essa discrepância de 4 chamadas. acontece que uma das linha ficou menos ociosa por ligação que a outra. então uma vai receber menos ligações que a outra. No caso de 2 linhas ela vai se revezar, se a linha 1 ta ocupada ela obviamente sai pela 2. e se a linha 1 estivesse disponivel, mas foi a ultima a fazer ligação então a ligação sairia pela 2 e assim sucessivamente. Yves, o Ex. é o que te mandei... como vc tá fazendo a saida de suas ligações? como tá a configuração do seu dahdi tá como group=0 então para fazer ligação dahdi/r0 um exemplo simplório. se você tiver uma E1 ou FXO exten = _X,1,Dial(dahdi/r0/${EXTEN},30,t); same = n,Hangup() *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 19 de junho de 2015 11:43, Thiago Anselmo thiagoo.ansel...@gmail.com escreveu: Amigo, usa o banco interno do asterisk para fazer isso... Faz tempo que não trabalho com ast, mais te mando que tenho. Na hora que chegar na empresa te mando. Em 19/06/2015 11:05, Yves Fernandes yvesfernan...@gmail.com escreveu: Maurício, Obrigado por sua resposta.. estou pesquisando sobre.. Pode me mandar um exemplo? Abs Em 19 de junho de 2015 01:06, Mauricio Magalhães mauriciommagalh...@gmail.com escreveu: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e
Re: [AsteriskBrasil] Balanceamento entre linhas
Boa tarde, desculpe caso eu não tenha visto a tecnologia que vc esta usando para sair com a chamada, mas se seu canal de saida for DigiVoice pode se utilizar da seguinte forma: - Implementado metodo de discagem *TalkTime*. Este novo metodo utiliza o tempo total de chamadas saintes realizadas por canal para decidir qual canal selecionar em uma nova chamada sainte. Estes tempos podem ser verificados utilizando o comando *dgv show statistics [group/all/json]* e podem ser resetados atraves do comando *dgv statistics reset channel/all*. Segue exemplo 1(extensions.conf): exten = 9119,1,Dial(DGV/t1/21916363) exten = 9119,n,Hangup Onde: No exemplo acima temos uma chamada sainte utilizando o canal do grupo 1 com menor tempo de uso. Abraços. 2015-06-19 13:09 GMT-03:00 Rafael dos Santos Saraiva rafaels...@gmail.com: A opção r do DAHDI toma os troncos de forma ciclíca, não é randomica, ou seja, ele sempre vai pegar o próximo canal livre depois do que foi utilizado por último. [image: Sua Foto] rafaels...@gmail.comRafael S. SaraivaPorto Alegre - RS | Mobile: (51) 8174-7956 http://br.linkedin.com/pub/rafael-saraiva/52/aab/230 https://plus.google.com/u/0/+RafaelSaraivaRS Em 19 de junho de 2015 10:09, Alexandre Cavalcante Alencar alexandre.alen...@gmail.com escreveu: Maurício, Randomizar não é balancear... Considerando 100 chamadas em duas linhas, atribuídas a 1 e 2 21 2 2 2 21 1 2 1 11 2 2 2 21 1 1 2 11 2 2 1 11 2 2 1 22 1 1 2 22 1 2 1 21 2 1 2 12 1 2 2 22 2 2 2 22 1 1 1 12 1 1 1 21 1 2 2 11 1 1 1 22 2 2 1 11 1 2 1 22 1 2 1 12 2 1 1 22 1 2 2 Chamadas por 1: 48 Chamadas por 2: 52 Em um SET maior, certamente vai haver divergências. Sds Alexandre Alencar Twitter @alexandreitpro http://blog.alexandrealencar.net/ http://www.alexandrealencar.net/ http://www.alexandrealencar.com http://www.servicosdeti.com.br/ COBIT, ITIL, CSM, LPI, MCP-I 2015-06-19 1:06 GMT-03:00 Mauricio Magalhães mauriciommagalh...@gmail.com: Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone
Re: [AsteriskBrasil] Balanceamento entre linhas
Em 19 de junho de 2015 13:09, Rafael dos Santos Saraiva rafaels...@gmail.com escreveu: não é randomica Correto é cíclica, eu escrevi randômica por equivoco, mesmo pq r de round robin que é cíclica. Abraços *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
Re: [AsteriskBrasil] Balanceamento entre linhas
Olá não seria mais fácil colocar os troncos em grupo e utilizar o rx onde x é o numero do grupo? Ex. dahdi/r0 Isso faz com que as ligações saiam randomicamente. portanto balanceadas. Abraços. *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* *Maurício Magalhães.*T3 tecnologia - Analista de Rede/Telfonia IP. Especialização em Segurança da Informação. ITIL® V3 Certification. Salvador - BA mauri...@t3tecnologia.com.br Cel. Com. (71) 97156766 - (VIVO) Cel. Com. (71) 87149189 - (OI) *=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=* Em 18 de junho de 2015 21:19, Yves Fernandes yvesfernan...@gmail.com escreveu: Prezados, boa noite. Estou tentando criar um balanceamento entre duas linhas que um cliente possui. Fiz um programa em php que consulta o banco cdr e verifica qual numero fez mais ligaçoes no dia e envia a ligaçao pro outro numero. O que gostaria de saber de vocês é o seguinte. Como eu transfiro essa ligação para outro contexto utilizando agi? === #!/usr/bin/php -q ? $conn = mysql_connect(localhost,,XXX) or die(PROBLEMA COM SERVER); mysql_select_db(asterisk,$conn) or die(PROBLEMA COM BANCO); $sql = SELECT calldate,dstchannel,lastapp,disposition FROM cdr where lastapp = 'Dial' AND disposition = 'ANSWERED'; $recordset = mysql_query($sql,$conn) OR DIE (erro: .$sql. .mysql_error()); $datalocal = date('Y-m-d'); $tel1 = 0; $tel2 = 0; while($row = mysql_fetch_assoc($recordset)) { $dstchannel = $row['dstchannel']; $lastapp = $row['lastapp']; $disposition = $row['disposition']; $databanco = $row['calldate']; $datatemp = substr($databanco,0,10); if((strpos($dstchannel,7535) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel1 = $tel1 + 1; else if((strpos($dstchannel,7505) == TRUE) (strcmp($datatemp,$datalocal) == 0)) $tel2 = $tel2 + 1; } if($tel1 = $tel2) $agi-exec(Queue,suporte,t,,,3600,1); else $agi-exec(Queue,suporte,t,,,3600,1); ? Sei que esta parte que chamo o $agi-exec está errada. Justamente ela que gostaria da sugestao de vocês como corrigir. Obrigado desde já -- = Yves Fernandes Cellphone +55 (21) 9357-7073 É fácil cobrar; Difícil é elogiar. ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ WORKOFFEE KHOMP: em Junho serão 2 edições do workshop gratuito da Khomp: dia 11 em Brasília, e dia 18 em Curitiba Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100 Garanta sua vaga e saiba mais em: www.workoffee.com.br ___ DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk. Construa soluções de PABX IP com produtos DigiVoice - visite www.digivoice.com.br ___ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org