[AsteriskBrasil] RES: Jogos Passatempo
Fernando, Segue algumas preocupações que você tem que ter: Ao chamar uma AGI pelo Asterisk é aberto um fork no sistema, onde o Asterisk deixa de processar as instruções e passa a enviar os dados para esta AGI, por sua vez a AGI é processada por um interpretador externo e após esse processamento deve retornar as informações ao Asterisk. Diante da explicação acima, temos os seguintes problemas: · Cada chamada de AGI abre um fork individual no sistema, cada fork consome processamento e memória RAM conforme sua programação e finalidade de uso. · O Asterisk sempre esperará uma resposta do AGI, caso essa resposta não ocorra ou ocorra com erros, seu sistema esta fardado a travar (core dump). · O uso do AGI é muito útil e abre muito o seu leque para N funcionalidades desde que saiba programar. (me refiro a AGI) Mas tome muito cuidado · Minha sugestão é você programas em AEL, para cada chamada entrante faça um insert na base de dados e em seguida um count de acordo com o valor recebido pelo count você reproduz sua mensagem. Seu risco de travar a aplicação é zero. abs Sylvio Carlos Jollenbeck www.IPBOX.com.br De: asteriskbrasil-boun...@listas.asteriskbrasil.org [mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] Em nome de Asterisk Addict Guy Enviada em: segunda-feira, 21 de setembro de 2009 13:08 Para: asteriskbrasil@listas.asteriskbrasil.org Assunto: Re: [AsteriskBrasil] Jogos Passatempo Geraldo, Obrigado pelo feedback. Terias algum exemplo deste PHP tratando desta forma? Não conheço muito bem esta interação do PHP com o Asterisk. Valeu. Fernando Geraldo Fco. do Espírito Santo Jr. wrote: Boa ideia, parabéns pela iniciativa. Na minha opinião eu não usaria Queues para fazer este processo, pode ser feita exclusivamente com plano de discagem! O item mais importante seria uma pequena aplicação em PHP para tratar as chamadas, verificando qual o # de chegada usando a função CURL do asterisk, assim esta página em PHP retornaria um # de 1 a 4, onde estaria sendo devolvido o PLAYBACK adequado. A página só tem que tratar os # em Banco de Dados (tipo Mysql) com travamento de registro para evitar qualquer duplicidade. Acho que é isto, outro tipo de implementação! [ ]s Geraldo 2009/9/21 Asterisk Addict Guy asteriskadd...@gmail.com Bom dia, Queria trocar uma idéia com a lista de como implementar um passatempo digital. Todas as ligações recebidas em um determinado DID, serão encaminhadas para um contexto [passatempo-001] A idéia seria mais ou menos assim: O passatempo terá somente um único prêmio, que a cada 100 ligações, será atribuído este prêmio. O passatempo tem que ter 3 fases (ou momentos): * Da ligação nº0 até a ligação número 30 - vai tocar uma mensagem previamente gravada. * Da ligação nº 31 até 75 - vai tocar outra mensagem previamente gravada. * Da ligação nº 76 até a 99 - vair tocar outra mensagem previamente gravada. * Na ligação nº 100, toca a mensagem de vencedor do prêmio. As regras de participação no passatempo são: * Todas as ligações que chegarem ao DID do passatempo, devem ter o CallerID. Ligações que não tiverem CallerID são descartadas (para a atribuição do prêmio) mas continua a contagem das ligações. * As ligações que forem desligadas antes do execução completa da mensagem (quem ligou deverá ouvir a mensagem até o fim) serão descartadas (para a atribuição do prêmio) mas continua a contagem das ligações. * Cada ligação recebida no DID, ocupa uma posição na fila de chegada das chamadas concorrentes. Basicamente é isto o passatempo. A minha idéia para implementar isto, passa por usar uma QUEUE. Criar um inbound route do DID e mandar para a fila. Para simular o atendimento, teria que ser criado agentes estaticos (talvez até ramais mesmo) que direcionam (follow-me) para announcements. No contexto [passatempo-001] é que teria toda esta lógica. Bom acho que seria mais ou menos isto, aguardo os comentários de todos. Grande abraço. ___ Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. VoIP, Asterisk e Convergência de Redes. http://www.encontrovoipcenter.com.br Compre uma camiseta da AsteriskBrasil.org! http://www.voipmania.com.br Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br ___ Lista de discussões AsteriskBrasil.org AsteriskBrasil@listas.asteriskbrasil.org http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil -- Geraldo Joan Crawford http://www.brainyquote.com/quotes/authors/j/joan_crawford.html - I, Joan Crawford, I believe in the dollar. Everything I earn, I spend. _ ___ Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. VoIP, Asterisk
Re: [AsteriskBrasil] RES: Jogos Passatempo
Sylvio, Valeu pela dica. Quando falas AEL, ests falando das proprias macros on Dialplan, certo? E armarzenar a informao no database do Asterisk (database add ) Sylvio Carlos Jollenbeck wrote: Fernando, Segue algumas preocupaes que voc tem que ter: Ao chamar uma AGI pelo Asterisk aberto um fork no sistema, onde o Asterisk deixa de processar as instrues e passa a enviar os dados para esta AGI, por sua vez a AGI processada por um interpretador externo e aps esse processamento deve retornar as informaes ao Asterisk. Diante da explicao acima, temos os seguintes problemas: Cada chamada de AGI abre um fork individual no sistema, cada fork consome processamento e memria RAM conforme sua programao e finalidade de uso. O Asterisk sempre esperar uma resposta do AGI, caso essa resposta no ocorra ou ocorra com erros, seu sistema esta fardado a travar (core dump). O uso do AGI muito til e abre muito o seu leque para N funcionalidades desde que saiba programar. (me refiro a AGI) Mas tome muito cuidado Minha sugesto voc programas em AEL, para cada chamada entrante faa um insert na base de dados e em seguida um count de acordo com o valor recebido pelo count voc reproduz sua mensagem. Seu risco de travar a aplicao zero. abs Sylvio Carlos Jollenbeck www.IPBOX.com.br De: asteriskbrasil-boun...@listas.asteriskbrasil.org [mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] Em nome de Asterisk Addict Guy Enviada em: segunda-feira, 21 de setembro de 2009 13:08 Para: asteriskbrasil@listas.asteriskbrasil.org Assunto: Re: [AsteriskBrasil] Jogos Passatempo Geraldo, Obrigado pelo feedback. Terias algum exemplo deste PHP tratando desta forma? No conheo muito bem esta interao do PHP com o Asterisk. Valeu. Fernando Geraldo Fco. do Esprito Santo Jr. wrote: Boa ideia, parabns pela iniciativa. Na minha opinio eu no usaria Queues para fazer este processo, pode ser feita exclusivamente com plano de discagem! O item mais importante seria uma pequena aplicao em PHP para tratar as chamadas, verificando qual o # de chegada usando a funo CURL do asterisk, assim esta pgina em PHP retornaria um # de 1 a 4, onde estaria sendo devolvido o PLAYBACK adequado. A pgina s tem que tratar os # em Banco de Dados (tipo Mysql) com travamento de registro para evitar qualquer duplicidade. Acho que isto, outro tipo de implementao! [ ]s Geraldo 2009/9/21 Asterisk Addict Guy asteriskadd...@gmail.com Bom dia, Queria trocar uma idia com a lista de como implementar um passatempo digital. Todas as ligaes recebidas em um determinado DID, sero encaminhadas para um contexto [passatempo-001] A idia seria mais ou menos assim: O passatempo ter somente um nico prmio, que a cada 100 ligaes, ser atribudo este prmio. O passatempo tem que ter 3 fases (ou momentos): Da ligao n0 at a ligao nmero 30 - vai tocar uma mensagem previamente gravada. Da ligao n 31 at 75 - vai tocar outra mensagem previamente gravada. Da ligao n 76 at a 99 - vair tocar outra mensagem previamente gravada. Na ligao n 100, toca a mensagem de vencedor do prmio. As regras de participao no passatempo so: Todas as ligaes que chegarem ao DID do passatempo, devem ter o CallerID. Ligaes que no tiverem CallerID so descartadas (para a atribuio do prmio) mas continua a contagem das ligaes. As ligaes que forem desligadas antes do execuo completa da mensagem (quem ligou dever ouvir a mensagem at o fim) sero descartadas (para a atribuio do prmio) mas continua a contagem das ligaes. Cada ligao recebida no DID, ocupa uma posio na "fila" de chegada das chamadas concorrentes. Basicamente isto o passatempo. A minha idia para implementar isto, passa por usar uma QUEUE. Criar um inbound route do DID e mandar para a fila. Para simular o atendimento, teria que ser criado agentes estaticos (talvez at ramais mesmo) que direcionam (follow-me) para announcements. No contexto [passatempo-001] que teria toda esta lgica. Bom acho que seria mais ou menos isto, aguardo os comentrios de todos. Grande abrao. ___ Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - So Paulo. VoIP, Asterisk e Convergncia de Redes. http://www.encontrovoipcenter.com.br Compre uma camiseta da AsteriskBrasil.org! http://www.voipmania.com.br Acesse o canal IRC de discusso sobre Asterisk em Portugus Brasileiro na rede Freenode.net: #asterisk-br ___ Lista de discusses AsteriskBrasil.org AsteriskBrasil@listas.asteriskbrasil.org http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil -- Geraldo Joan Crawford - "I, Joan Crawford, I believe in the dollar. Everything I earn,