-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Ciro, Esta solução não é exatamente boa, imagine só, esta shell extension que faz a discagem para você não é nativa do windows, é uma feature do softphone que você está usando. E quem não usa softphone? E quem não usa Windows?
Ciro wrote: > Pessoal, > > Consegui ontem fazer funcionar de uma forma um pouco diferente, mas > acredito que vcs já fizeram assim também. > > A idéia é que vc esteja em qualquer página da web, e marque um número de > telefone (como que fosse copiá-lo) > Então vc clica no número marcado com o botão direito, e aparece em sua > máquina uma opção "Discar para o número" > O seu telefone voip irá tocar, e ao atender, o * discará para o número > selecionado. > > Vantagens: vc pode usar qq aplicativo web sem alteração do codigo. > Desvantagem: para cada fone voip, vc alterará o registro do windows para > adicionar a extenção voip correta da pessoa. > > Estarei usando o Vtiger CRM para controlar as ligações saintes, portanto > para mim o conjunto micro-softfone, são inseparáveis, então fica > tranquilo alterar o registro em definitivo. > > Ciro A. Toscano > > -----Mensagem original----- > De: asteriskbrasil-bounces em listas.asteriskbrasil.org > [mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de > Bernardo Vieira > Enviada em: quarta-feira, 12 de julho de 2006 15:43 > Para: asteriskbrasil em listas.asteriskbrasil.org > Assunto: Re: [AsteriskBrasil] Discando pela WEB > > > Não, ele não é um cliente SIP ele é só um proxy para a interface manager > do asterisk. > > > Pablo Weyne wrote: >>> Não dá p/ usar esse script sem que necessite depender do Asterisk? Por > >>> exemplo, eu coloco os dados de uma conta SIP, e ele faz a discagem. >>> >>> >>> ----- Original Message ----- >>> *From:* Diogo Cosito <mailto:diogocosito66 em hotmail.com> >>> *To:* asteriskbrasil em listas.asteriskbrasil.org >>> <mailto:asteriskbrasil em listas.asteriskbrasil.org> >>> *Sent:* Tuesday, July 11, 2006 10:43 PM >>> *Subject:* Re: [AsteriskBrasil] Discando pela WEB >>> >>> Bernardo, tudo bem? >>> Obrigado pela sua aula, hehehe eu estou iniciando agora e vejo que >>> pessoas >>> como você são bem atenciosas, muito obrigado. >>> Na realidade eu estou usando o asterisk-1.0.9 e gostaria de >>> implementar isso >>> no site de minha empresa, na intranet para hep-desk, mas acho que > no >>> meu >>> caso seria interessante o php, né? O que acha? >>> Não entendi muito bem o código pearl que você fez, tipo posso >>> utilizar ele >>> no asterisk-1.0.9? Precisarei de pearl instalado no server, né? >>> Mas é que ainda não estou conseguindo visualizar o código >>> funcionando... >>> desculpe a ignorância, mas espero um dia poder colaborar com vocês >>> no que >>> puder. >>> >>> Muito obrigado e um abraço >>> >>> Att >>> >>> Diogo. >>> >>> >>> >From: Bernardo Vieira <bernardo.vieira em terra.com.br >>> <mailto:bernardo.vieira em terra.com.br>> >>> >Reply-To: asteriskbrasil em listas.asteriskbrasil.org >>> <mailto:asteriskbrasil em listas.asteriskbrasil.org> >>> >To: asteriskbrasil em listas.asteriskbrasil.org >>> <mailto:asteriskbrasil em listas.asteriskbrasil.org> >>> >Subject: Re: [AsteriskBrasil] Discando pela WEB >>> >Date: Mon, 10 Jul 2006 11:14:13 -0300 >>> > >>> Diogo, >>> Acho que o que está acontecendo é que o script de php está tentando >>> inicializar a ligação no contexto 'default' e se eu não me engano o >>> AAH não permite muita coisa nesse contexto. Tente alterar o contexto >>> para 'from-internal'. Outra coisa que você pode fazer é, ao invés de >>> acompanhar a ligação via CLI, conecte via telnet na porta do manager, >>> ele é muito mais detalhado. >>> >>> Bom, de toda forma, depois que você mandou sua primeira pergunta, eu >>> resolvi dar uma olhada no script perl que eu tinha te passado e gostei > >>> do negócio. Então resolvi brincar com o script e acabei fazendo as >>> seguintes alterações: >>> 1) O script original desenhava o form com os campos para fazer a >>>> ligação >>> e passava os parâmetros por POST, ou seja, você não poderia colocar a >>> linha de discagem em um link <a href> por exemplo. O script que eu fiz > >>> funciona com o método GET para que você usar uma url simples para >>>> discar. >>> 2) O script original produzia html, ou seja, para alterar sua >>> aparência você teria que modificar o script. A minha versão não produz > >>> html nenhum, você simplesmente coloca a url em um link e o script te >>> redireciona de volta para a mesma página com o status da chamada, ou >>> seja, você põe a cara que você quiser na página. >>> >>> Bom, é isso aí, o script ainda está meio toscão, mas dá para usar, se >>> você, ou qualquer um quiser me ajudar no desenvolvimento dele, eu >>> ficaria feliz. >>> >>> >>> Diogo Cosito wrote: >>> > Bernando, boa noite. >>> > Eu baixei o código php, para discagem pela web, mas não entendi >>>> muito >>> bem o >>> > que devo fazer, tipo instalei o código dentro de um servidor web, >>> externo ao > asterisk e liberei no manager.conf para acesso externo, >>> mas não >>>> inicia a >>> > discagem.. >>> > Fiz desta maneira: >>> > specify the channel (extension) you want to receive the call >>>> requests >>> with >>> > #e.g. SIP/XXX, IAX2/XXXX, ZAP/XXXX, etc >>> > $strChannel = "sip/1000"; >>> >>> > #specify the context to make the outgoing call from. By >>>> default, AAH >>> uses >>> > from-internal >>> > #Using from-internal will make you outgoing dialing rules apply > >>> $strContext = "default"; >>> >>> > #specify the amount of time you want to try calling the specified >>> channel > before hangin up >>> > $strWaitTime = "30"; >>> >>> > #specify the priority you wish to place on making this call > >>> $strPriority = "1"; >>> >>> > #specify the maximum amount of retries >>> > $strMaxRetry = "2" >>> >>> > Mas na CLI do asterisk, não reporta nada. >>> > Poderia me ajudar? >>> >>> > Muito obrigado >>> >>> > Att >>> >>> > Diogo >>> >> From: Bernardo Vieira <bernardo.vieira em terra.com.br >>>> <mailto:bernardo.vieira em terra.com.br>> >>> >> Reply-To: asteriskbrasil em listas.asteriskbrasil.org >>>> <mailto:asteriskbrasil em listas.asteriskbrasil.org> >>> >> To: wellingtoncs em gmail.com <mailto:wellingtoncs em gmail.com>, >>>> asteriskbrasil em listas.asteriskbrasil.org >>>> <mailto:asteriskbrasil em listas.asteriskbrasil.org> >>> >> Subject: Re: [AsteriskBrasil] Discando pela WEB >>> >> Date: Fri, 07 Jul 2006 19:18:57 -0300 >>> >> >>> > Solução em php (você vai ter que mexer no código para alocar > >>> dinamicamente os dois lados da ligação): >>> >>> http://www.voipjots.com/2006/02/click-to-call-with-your-asteriskhome.h >>> tml >>> >>> > Solução em perl (não mexi com esse aí porque eu prefiro php que >>>> perl, >>> > sim eu sou preguiçoso :P): >>> > http://www.azxws.com/asterisk/ >>> >>> > Wellington Sampaio wrote: >>> >>>> Olá Pessoa, >>> >>>> >>> >>>> Gostaria de saber se você sabem, já configuraram uma >>> regra >>> >>>> como esta: >>> >>>> >>> >>>> Eu acesso uma página, digamos que >>>> www.asterisk.com.br <http://www.asterisk.com.br> >>> >>>> <http://www.asterisk.com.br/>, lá eu entro com o número >>>> destinatário >>> e >>> >>>> número destino. O sistema faz uma ligação para o número >>>> destinatário >>> e >>> >>>> em seguida liga para o destino. Ele gera uma chamada para os >>> dois >>>> números, assim colocando eles ativos. >>>> >>> >>>> Se alguém tiver alguma idéia de como faço isso, por >>> favor, >>> >>>> me ajudem. >>> >>>> >>> >>>> Att >>> >>>> >>> >>>> >>> >>>> >>> >>>> Wellington Sampaio >>> >>>> >>> >>>> wellingtoncs em gmail.com <mailto:wellingtoncs em gmail.com> >>> >>>> >>> >>>> >>> >>>> >>> > ------------------------------------------------------------------------ >>> >>>> >>> >>>> _______________________________________________ >>> >>>> LIsta de discussões AsteriskBrasil.org >>> >>>> AsteriskBrasil em listas.asteriskbrasil.org >>>> <mailto:AsteriskBrasil em listas.asteriskbrasil.org> >>> >>>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >>> >>>> >>> >>>> _______________________________________________ >>> >>>> Acesse o wiki AsteriskBrasil.org: >>> >>>> http://www.asteriskbrasil.org >>> _______________________________________________ >>> LIsta de discussões AsteriskBrasil.org >>> AsteriskBrasil em listas.asteriskbrasil.org >>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >>> >> >>> _______________________________________________ >>> Acesse o wiki AsteriskBrasil.org: http://www.asteriskbrasil.org >>> >>> > _________________________________________________________________ >>> > DOWNLOAD: Emoticons animados 'Copa 2006' para usar no MSN > >>> http://copa.br.msn.com/extra/emoticons/ >>> >>> > _______________________________________________ >>> > LIsta de discussões AsteriskBrasil.org >>> > AsteriskBrasil em listas.asteriskbrasil.org >>>> <mailto:AsteriskBrasil em listas.asteriskbrasil.org> >>> > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >>> >>> > _______________________________________________ >>> > Acesse o wiki AsteriskBrasil.org: >>> > http://www.asteriskbrasil.org >>> >>> > > #!/usr/bin/perl -w > # getdial.pl > # Copyright (C) 2006 Bernardo Vieira bernardo.vieira em terra.com.br >>> <mailto:bernardo.vieira em terra.com.br> > # > # Script para iniciar uma chamda no Asterisk através de uma > # URL. Recebe parâmetros atraves do metodo get, permitindo > # que seja utilizado em uma tag <a href...>Discar</a>. > # > # Baseado no script TACI - Trivial Asterisk Call Interface v.02 # de > Tony Wasson wasson em azxws.com <mailto:wasson em azxws.com> # # Certifique-se > que ha um handler para extensões inválidas no # contexto [default] do > extensions.conf: > # exten => s,1,Playback(invalid) > use Net::Telnet (); > use Net::Netmask(); > use CGI qw(:standard); > use CGI::Carp qw(warningsToBrowser fatalsToBrowser); > > # > # Configuracoes: > # > > $managerHost='127.0.0.1'; # endereco do servidor rodando o Asterisk > $managerPort=5038; # porta da interface de gerenciamento do Asterisk > > $managerUser='ususario'; # nome do usuario manager do Asterisk > > # TODO: proteger esta senha > $managerSecret='senha'; # senha do manager > > $defaultContext='from-internal'; # contexto padrao para a ligacao, >>> pode > ser especificado > # na query string, senao este valor e utilizado > > $defaultCID='callerid'; # Caller Id padrao pode ser especificado na >>> query > string > > @allowedNetworks= ('192.168.1.0/24'); # lista de redes (clientes) >>> que podem > usar este script > > @allwedReferers=('http://192.168.1.1/teste/teste.html'); # lista de >>> paginas > que podem usar este script > > > # > # Prototipos > # > sub isInNetwork; > sub testIp; > sub testReferer; > > # verifica se o cliente esta na lista de clientes autorizados > &testReferer($ENV{HTTP_REFERER}, em allwedReferers) or die "Pagina nao > autorizada a user este script: ", $ENV{HTTP_REFERER}; > &testIp($ENV{REMOTE_ADDR}, em allowedNetworks) or die "Cliente nao >>> autorizado > a usar este script: ", $ENV{REMOTE_ADDR}; > > # > # Parametros > # > my $phonetype = param('type') || "" ; > my $account = param('account') || ""; > my $callerid = param('callerid') || $defaultCID; > my $context = param('context') || $defaultContext; > my $exten = param('exten') || ""; > my $callid = param('callid') || 0; > > > # Limpar parametros > if ($exten) {$exten =~ s/([^A-Z0-9a-z\/@\.])//g;} > else {$exten="";} > > if ($context) {$context =~ s/([^A-Z0-9a-z\-])//g;} > else {$context="";} > > if ($account) {$account =~ s/([^A-Z0-9a-z])//g;} > else {$account="";} > > # Testa se a extensao e valida (mais de dois digitos) > # TODO: melhorar o teste > > if (not $exten =~ /[0-9][0-9]/) { die "Destino invalido, deve >>> conter pelo > menos 2 numeros!"; }; > > #print header; > > # Abre a conexao ao asterisk... > $tn = new Net::Telnet ( Port => $managerPort, > Prompt => '/.*[\$%#>] $/', > Output_record_separator => '', > Errmode => 'return' > ); > > $tn->open("$managerHost"); > $tn->waitfor('/0\n$/'); > $tn->print("ACTION: LOGIN\nUSERNAME: $managerUser\nSECRET: > $managerSecret\n\n"); $tn->waitfor('/Authentication accept*/') > or die "Nao foi possivel conectar ao asterisk: ", $tn->lastline; > > # Abre a chamada > $tn->print("ACTION: ORIGINATE\nExten: $exten\nContext: >>> $context\nChannel: > $phonetype/$account\nPriority: 1\nCallerid: $callerid\n\n"); > $tn->waitfor('/Event: Newchannel.*/') or die "Nao foi possivel >>> deteminar o > status da chamada: ", $tn>lastline; > $tn->print("Action: LOGOFF\n\n"); > > # Chamada aceita > # TODO: monitorar melhor a ligacao, mesmo que o numero for invalido o > programa chega aqui. print "Location: > $ENV{HTTP_REFERER}?callid=$callid&status=0\n\n"; > exit 0; > > > > sub isInNetwork { > my ($cidr,$ipaddress) = @_; > local $network = new Net::Netmask($cidr); > return $network->match($ipaddress); > } > > sub testIp { > my($ip, em allowedNetworks) = @_; > my($matchFound) = 0; > foreach my $network (@allowedNetworks) { > $matchFound = isInNetwork($network,$ip); > if ($matchFound) { > last; > } > } > return $matchFound; > } > > sub testReferer{ > my($referer, em allowedReferers) = @_; > return scalar(grep(/$referrer/, em allowedReferers)); > } > > > > > > > teste > > > > _______________________________________________ > LIsta de discussões AsteriskBrasil.org > AsteriskBrasil em listas.asteriskbrasil.org > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > > _______________________________________________ > Acesse o wiki AsteriskBrasil.org: http://www.asteriskbrasil.org > >>> _________________________________________________________________ >>> Descubra aqui como mandar Torpedos Messenger! >>> http://www.msn.com.br/artigos/maguire/default.asp >>> http://www.msn.com.br/artigos/maguire/default.asp > >>> _______________________________________________ >>> LIsta de discussões AsteriskBrasil.org >>> AsteriskBrasil em listas.asteriskbrasil.org >>> <mailto:AsteriskBrasil em listas.asteriskbrasil.org> >>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > >>> _______________________________________________ >>> Acesse o wiki AsteriskBrasil.org: >>> http://www.asteriskbrasil.org > > >>> __________ NOD32 1.1655 (20060712) Information __________ > >>> This message was checked by NOD32 antivirus system. >>> http://www.eset.com > > >>> ---------------------------------------------------------------------- >>> -- > >>> _______________________________________________ >>> LIsta de discussões AsteriskBrasil.org >>> AsteriskBrasil em listas.asteriskbrasil.org >>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > >>> _______________________________________________ >>> Acesse o wiki AsteriskBrasil.org: http://www.asteriskbrasil.org _______________________________________________ LIsta de discussões AsteriskBrasil.org AsteriskBrasil em listas.asteriskbrasil.org http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil _______________________________________________ Acesse o wiki AsteriskBrasil.org: http://www.asteriskbrasil.org -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFEt7GJ2QVs8jsa1mQRAp2rAJ9Zf8Yzt2dJZj9BSjCn5XSFG/5/cQCfRLK0 C1WDmO8Y09tSlgQnHVb9YlA= =wStl -----END PGP SIGNATURE-----

