Re: [AsteriskBrasil] IAX2
Como você esta utilizando o mesmo contexto para autenticação nas duas pontas, coloca assim: [*PABX*] username=*pbx* type=friend trunk=yes secret=teste123 qualify=yes host=10.0.0.2 disallow=all context=from-internal allow=g729 auth=md5 [*PABX*] username=*pbx* type=friend trunk=yes secret=teste123 qualify=yes host=10.0.0.1 disallow=all context=from-internal allow=g729 auth=md5 Quando ele for autenticar vai buscar um contexto com o nome do usuário no outro pabx, por isso, o nome do contexto, PABX. E Assim no inverso também, com isso, o nome do username tem que ser o mesmo do contexto. Att, Carlos Eduardo 2012/9/17 Eder e...@openminds.com.br Alguem pode ajudar onde pode ser o erro. ** ** Pabx A 10.0.0.1 Pabx B 10.0.0.2 ** ** PABX A username=pbxa type=friend trunk=yes secret=teste123 qualify=yes host=10.0.0.2 disallow=all context=from-internal allow=g729 auth=md5 ** ** PABX B ** ** username=pbxb type=friend trunk=yes secret=teste123 qualify=yes host=10.0.0.1 disallow=all context=from-internal allow=g729 auth=md5 ** ** ** ** no cli quando ligo do PABX A pro PABX B da mensagem ** ** NOTICE[2922]: chan_iax2.c:10303 socket_process: Host 10.0.0.1 failed to authenticate as pbxa ** ** ___ KHOMP Inovação: External Board Series Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH. Tenha a External Series Experience na sua aplicação. Visite www.khomp.com ___ DIGIVOICE Fabricante de Placas de Voz e Channel Bank 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro Treinamento - Curso de PABX IP - Asterisk - Site www.digivoice.com.br YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado. email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011 __ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ KHOMP Inovação: External Board Series Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH. Tenha a External Series Experience na sua aplicação. Visite www.khomp.com ___ DIGIVOICE Fabricante de Placas de Voz e Channel Bank 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro Treinamento - Curso de PABX IP - Asterisk - Site www.digivoice.com.br YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado. email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011 __ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
Re: [AsteriskBrasil] Gravação de ligações.
Bom dia, galera. Hudson muito obrigado por enviar seu exemplo, mi ajudou bastante a pensar em uma solução. Mas por fim, eu consegui descobri o que tava errado, era no features.conf. Então ficou o seguinte: *# features.conf* record = *,*self*/*caller*,Macro,apprecord recordrecebidas = *,*peer*/*callee*,Macro,apprecordrecebidas -- Quando utilizo self, ele pega o canal de ida, então pro canal de volta, tenho que criar outra aplicação utilizando peer. *# extensions.conf* [macro-apprecord] exten = s,1,GotoIf($[${XAD} = 0 | ${XAD} = ]?startrec:stoprec) exten = s,n(startrec),Set(AUDIOHOOK_INHERIT(MixMonitor)=yes) exten = s,n,Set(XAD=1) exten = s,n,MixMonitor(/home/asterisk/gravacoes/todas/${CALLERID(num)}/${CALLERID(num)}-${DESTINO}.${STRFTIME(${EPOCH},,%d%m%y-%H%M%S)}.wav,b); exten = s,n,MacroExit exten = s,n(stoprec),StopMixMonitor exten = s,n,Set(XAD=0) exten = s,n,MacroExit [macro-apprecordrecebidas] exten = s,1,GotoIf($[${XADR} = 0 | ${XADR} = ]?startrec:stoprec) exten = s,n(startrec),Set(AUDIOHOOK_INHERIT(MixMonitor)=yes) exten = s,n,Set(XADR=1) exten = s,n,MixMonitor(/home/asterisk/gravacoes/todas/${DESTINO}/${CALLERID(num)}-${DESTINO}.${STRFTIME(${EPOCH},,%d%m%y-%H%M%S)}.wav,b); exten = s,n,MacroExit exten = s,n(stoprec),StopMixMonitor exten = s,n,Set(XADR=0) exten = s,n,MacroExit Para utilizar a função é só habilitar a aplicação, quando necessário, setando a variável conforme abaixo. Set(DYNAMIC_FEATURES=recordrecebidas); ou então Set(DYNAMIC_FEATURES=record); Vlw, obrigado a todos. Att, Carlos Eduardo Em 4 de setembro de 2012 09:43, Hudson Cardoso hudsoncard...@hotmail.comescreveu: Bom, dai é só mudar no teu contexto, essa foi apenas um exemplo, tenho outras. que gravam determinadas situcoes, como sala de risco, numeros determinados, frudes. voce é quem decide como gravar. Hudson 048 8413 7000 Para quem nao cre, nenhuma prova converte, Para aquele que cre, nenhuma prova precisa. -- Date: Mon, 3 Sep 2012 18:21:34 -0300 From: kadu.edua...@gmail.com To: asteriskbrasil@listas.asteriskbrasil.org Subject: Re: [AsteriskBrasil] Gravação de ligações. Obrigado por tentar ajudar Hudson. Mas no seu exemplo abaixo, todas as ligações que utilizarem esse contexto irão ser gravadas. Os ramais que tem a necessidade de serem gravados, eu consegui gravar com MixMonitor, porém eu não queria gravar todas as ligações, para o restante dos ramais seria facultativo, ou seja, para gravar a ligação o usuário teria que precionar *, no caso estou utilizando *2 para testes, mas a idéia é que seja precionado * para gravar uma ligação de usuários comuns. Att, Carlos Eduardo Em 3 de setembro de 2012 17:23, Hudson Cardoso hudsoncard...@hotmail.comescreveu: Faz assim : context ramais{ _0[1234]XXX = {grava(${CALLERID(num)},${EXTEN:1}); noop(ramal=${CALLERID(num)} discado=${EXTEN}); MixMonitor(/gravados/${anomes}/${setor}/${ramal}/S_${ramal}_${dia}_${num_discado}.wav,ab); dial(dahdi/r1/${EXTEN}); HangUp;} macro grava_entrada(VDISCADO,VRAMAL){ set(ramal=${VRAMAL}); set(num_discado=${VDISCADO}); set(DB(quemchamou/${num_discado})=${ramal}); set(dia=${STRFTIME(${EPOCH},,%Y%m%d_%H%M%S)}); set(anomes=${STRFTIME(${EPOCH},,%Y%m%d_%H%M%S):0:6}); set(setor=nao_definido); if( ${ramal}=4499 )set(setor=ZOIPER); if (${ramal}=4414) set(setor=asspres); if (${ramal}=4417) set(setor=zeladoria); ... noop(dia=${dia} id=${EXTEN} anomes=${anomes} ramal=${ramal} Numero=${num_discado} setor=${setor}); return; } Hudson 048 8413 7000 Para quem nao cre, nenhuma prova converte, Para aquele que cre, nenhuma prova precisa. -- Date: Mon, 3 Sep 2012 16:51:38 -0300 From: kadu.edua...@gmail.com To: asteriskbrasil@listas.asteriskbrasil.org Subject: [AsteriskBrasil] Gravação de ligações. Boa tarde Amigos. Alterei todos os scripts aqui do asterisk da minha empresa para AEL, e ficou bem legal. Porém estou com dificuldade para realizar as gravações de uma maneira diferenciada. Ou seja, até consigo gravar com a aplicação automon, porém eu vi alguns scripts para fazer uma aplicação própia, e achei que ela ti da mais liberade, e deixa o código mais limpo, pois em todas as extensões eu tenho que setar o valor da variavél TOUCH_MONITOR: Set(TOUCH_MONITOR=${CALLERID(num)}-${DESTINO}.${STRFTIME(${EPOCH},,%d%m%y-%H%M%S)}); Eu gostaria também de gravar as ligações em pastas separadas, dessa forma me pareceu viável. Pesquisando e realizando alguns testes cheguei no script abaixo, que não consigo colocar em AEL, pois não sei porque em AEL ele não funciona: -- extensions.conf [macro-apprecord] exten = s,1,GotoIf($[${XAD} = 0 | ${XAD} = ]?startrec:stoprec) exten =
Re: [AsteriskBrasil] Gravação de ligações.
Obrigado por tentar ajudar Hudson. Mas no seu exemplo abaixo, todas as ligações que utilizarem esse contexto irão ser gravadas. Os ramais que tem a necessidade de serem gravados, eu consegui gravar com MixMonitor, porém eu não queria gravar todas as ligações, para o restante dos ramais seria facultativo, ou seja, para gravar a ligação o usuário teria que precionar *, no caso estou utilizando *2 para testes, mas a idéia é que seja precionado * para gravar uma ligação de usuários comuns. Att, Carlos Eduardo Em 3 de setembro de 2012 17:23, Hudson Cardoso hudsoncard...@hotmail.comescreveu: Faz assim : context ramais{ _0[1234]XXX = {grava(${CALLERID(num)},${EXTEN:1}); noop(ramal=${CALLERID(num)} discado=${EXTEN}); MixMonitor(/gravados/${anomes}/${setor}/${ramal}/S_${ramal}_${dia}_${num_discado}.wav,ab); dial(dahdi/r1/${EXTEN}); HangUp;} macro grava_entrada(VDISCADO,VRAMAL){ set(ramal=${VRAMAL}); set(num_discado=${VDISCADO}); set(DB(quemchamou/${num_discado})=${ramal}); set(dia=${STRFTIME(${EPOCH},,%Y%m%d_%H%M%S)}); set(anomes=${STRFTIME(${EPOCH},,%Y%m%d_%H%M%S):0:6}); set(setor=nao_definido); if( ${ramal}=4499 )set(setor=ZOIPER); if (${ramal}=4414) set(setor=asspres); if (${ramal}=4417) set(setor=zeladoria); ... noop(dia=${dia} id=${EXTEN} anomes=${anomes} ramal=${ramal} Numero=${num_discado} setor=${setor}); return; } Hudson 048 8413 7000 Para quem nao cre, nenhuma prova converte, Para aquele que cre, nenhuma prova precisa. -- Date: Mon, 3 Sep 2012 16:51:38 -0300 From: kadu.edua...@gmail.com To: asteriskbrasil@listas.asteriskbrasil.org Subject: [AsteriskBrasil] Gravação de ligações. Boa tarde Amigos. Alterei todos os scripts aqui do asterisk da minha empresa para AEL, e ficou bem legal. Porém estou com dificuldade para realizar as gravações de uma maneira diferenciada. Ou seja, até consigo gravar com a aplicação automon, porém eu vi alguns scripts para fazer uma aplicação própia, e achei que ela ti da mais liberade, e deixa o código mais limpo, pois em todas as extensões eu tenho que setar o valor da variavél TOUCH_MONITOR: Set(TOUCH_MONITOR=${CALLERID(num)}-${DESTINO}.${STRFTIME(${EPOCH},,%d%m%y-%H%M%S)}); Eu gostaria também de gravar as ligações em pastas separadas, dessa forma me pareceu viável. Pesquisando e realizando alguns testes cheguei no script abaixo, que não consigo colocar em AEL, pois não sei porque em AEL ele não funciona: -- extensions.conf [macro-apprecord] exten = s,1,GotoIf($[${XAD} = 0 | ${XAD} = ]?startrec:stoprec) exten = s,n(startrec),Set(AUDIOHOOK_INHERIT(MixMonitor)=yes) exten = s,n,Set(XAD=1) exten = s,n,MixMonitor(/home/asterisk/gravacoes/todas/${CALLERID(num)}/${CALLERID(num)}-${DESTINO}.${STRFTIME(${EPOCH},GMT-3,%d%m%y-%H%M%S)}.wav,b); exten = s,n,MacroExit exten = s,n(stoprec),StopMixMonitor exten = s,n,Set(XAD=0) exten = s,n,MacroExit -- features.conf [applicationmap] record = *2,self/both,Macro,apprecord Esta funcionando extamente do jeito que eu queria, mas apenas do ramal que ta ligando, o que recebe quando digito *2, o asterisk não encontra as variáveis CALLERID(num) e DESTINO. Segue o log: Se no ramal que originou a ligação: -- Executing [s@macro-apprecord:4] MixMonitor(SIP/3439-00a2, /home/asterisk/gravacoes/todas/3439/3439-3539.030912-224347.wav,b) in new stack No ramal que recebeu a ligação: -- Executing [s@macro-apprecord:4] MixMonitor(SIP/3539-00a3, /home/asterisk/gravacoes/todas/~~s~~/~~s~~-.030912-224352.wav,b) in new stack *Alguém poderia mi ajudar em o porque o asterisk não ta pegando a volta da ligação?* Desde já, Obrigado. Att, Carlos Eduardo ___ KHOMP Inova��o: External Board Series M�dulos de 1/2 rack e 1U para todas as interfaces e solu��es Asterisk e FreeSWITCH. Tenha a External Series Experience na sua aplica��o. Visite�www.khomp.com ___ DIGIVOICE Fabricante de Placas de Voz e Channel Bank 20 anos de experi�ncia com E1(R2/ISDN), FXS, FXO e GSM Centro Treinamento - Curso de PABX IP - Asterisk - Site www.digivoice.com.br YEALINK: Telefones IP e V�deoPhones IP com o melhor custo/benef�cio do mercado. email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011 __ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ KHOMP Inovação: External Board Series Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH. Tenha a External Series Experience na sua aplicação. Visite
Re: [AsteriskBrasil] CADASTRAR VÀRIOS RAMAIS EM UMA VARIÁVEL GLOBAL
Acredito que no global não funcione, eu tentei uma vez, e não tive sucesso. Para trabalhar com váriaveis fixas, você poderia setar dentro do próprio do extension com algo do tipo: exten = s,n,set(CHAVE=9000). Ou então, o que eu acho melhor, seria usar a database do asterisk, o astdb, função db: -- Comandos de console do asterisk: - Apaga a database inteira database deltree RAMAL database deltree VAR - Adicionar uma variável database put VAR CHAVE 9000 database put RAMAL INTERNO 9011 database put RAMAL INTERNO 9012 database put RAMAL INTERNO 9033 Pra pegar dentro do extensão: exten = s,n,set(VARCHAVE=${DB(VAR/CHAVE) Att, Carlos Eduardo Em 15 de agosto de 2012 10:32, Mike Tesliuk m...@tesliuk.com escreveu: Porque você não faz um agi para controlar isso, ai voce declara um array e joga um switch que resolve o problema, acho que no AEL (não teho experiencia) você também pode fazer algo Em 15-08-2012 09:52, Jorge Silveira escreveu: Obrigado Amigo, mas acho que não é bem isso. O que quero mesmo é colocar uma máscara dentro de uma variável, algo como: [globals] interno = _90[1-3][0-9] Em 15 de agosto de 2012 09:43, Mazolini, Jose jose.mazol...@fisglobal.com escreveu: Como nos IPs costumamos em telefonia separar os ranges pelo inicio, mas também adicionamos o tratamento do total de digitos. Então seria mais fácil liberar tudo que começa com 90 e tem mais 2 dígitos. 90xx. *From:* asteriskbrasil-boun...@listas.asteriskbrasil.org [mailto: asteriskbrasil-boun...@listas.asteriskbrasil.org] *On Behalf Of *Jorge Silveira *Sent:* quarta-feira, 15 de agosto de 2012 09:34 *To:* asteriskbrasil@listas.asteriskbrasil.org *Subject:* [AsteriskBrasil] CADASTRAR VÀRIOS RAMAIS EM UMA VARIÁVEL GLOBAL Amigos; Estou precisando de uma ajuda mas não sei se é possível. Tenho um asterisk 1.8.15, onde é necessário jogar um range de ramais dentro de uma variável global para a execução do código. Segue exemplo: [globals] CHAVE = 9000 CALLBACK = 9010 INTERNO = Seria do 9011 ao 9033 é possível realizar este tipo de configuração? No aguardo! -- Jorge Silveira _ A informação contida nesta mensagem é confidencial e proprietária. Se você recebeu este e-mail por engano, por favor: (i) apague a mensagem e todas as suas cópias e anexos; (ii) não revele, distribua ou utilize a mensagem ou seu conteúdo de qualquer maneira; e (iii) notifique o remetente imediatamente. Adicionalmente, por favor esteja informado de que qualquer mensagem endereçada ao nosso domínio está sujeita ao arquivamento e leitura por outros membros da companhia, além do próprio destinatário da mensagem. Obrigado. The information contained in this message is proprietary and/or confidential. If you are not the intended recipient, please: (i) delete the message and all copies; (ii) do not disclose, distribute or use the message in any manner; and (iii) notify the sender immediately. In addition, please be aware that any message addressed to our domain is subject to archiving and review by persons other than the intended recipient. Thank you. ___ KHOMP Inovação: External Board Series Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH. Tenha a External Series Experience na sua aplicação. Visite www.khomp.com ___ DIGIVOICE Fabricante de Placas de Voz e Channel Bank 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro Treinamento - Curso de PABX IP - Asterisk - Site www.digivoice.com.br YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado. email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011 __ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org -- Jorge Silveira ___ KHOMP Inovação: External Board Series Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH. Tenha a External Series Experience na sua aplicação. Visite www.khomp.com ___ DIGIVOICE Fabricante de Placas de Voz e Channel Bank 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro Treinamento - Curso de PABX IP - Asterisk - Site www.digivoice.com.br YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado. email: yeal...@commlogik.com.br | www.commlogik.com.br | (11) 5503-1011 __ Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org ___ KHOMP Inovação: External Board Series Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH. Tenha a