<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
outra coisa, a fila possui posições, você pode listar as posições
das pessoas que estão na fila na tela (seguido dos numeros) e também
pode se for o caso , no asterisk 1.6 e 1.4 ele permite você
especificar uma AGI para a queue, você pode gerar algum parametro
la, mas não usei isso, em todo caso.<br>
<br>
<ul>
<li>In Asterisk 1.4, the optional AGI parameter will setup an AGI
script to be executed on the calling party's channel once they
are connected to a queue member.</li>
</ul>
<p><br>
No asterisk 1.4 , a opção AGI irá executar um script AGI para o
usuário uma vez que ele esteja conectado a um membro da fila, ou
seja, na hora que alguém atender, ele roda o agi, este agi pode
ser utilizado para alimentar alguma infromação na interface.<br>
</p>
<br>
<br>
Em 06-06-2012 16:51, Ribeiro escreveu:
<blockquote
cite="mid:029701cd441d$bd764ec0$3862ec40$@aquidolado.com.br"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<meta name="Generator" content="Microsoft Word 14 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
span.EstiloDeEmail18
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EstiloDeEmail19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1114517961;
        mso-list-type:hybrid;
        mso-list-template-ids:1513883480 68550657 68550659 68550661 68550657 68550659 68550661 68550657 68550659 68550661;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal"><span style="color:#1F497D">Pessoal<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Ninguém? Nada?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Nem link nem
nada? Caminho? Já procurei e não sei o que estes valores
dizem.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Um abraço<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Ribeiro<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF
1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";mso-fareast-language:PT-BR">De:</span></b><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";mso-fareast-language:PT-BR">
<a class="moz-txt-link-abbreviated" href="mailto:asteriskbrasil-bounces@listas.asteriskbrasil.org">asteriskbrasil-bounces@listas.asteriskbrasil.org</a>
[<a class="moz-txt-link-freetext" href="mailto:asteriskbrasil-bounces@listas.asteriskbrasil.org">mailto:asteriskbrasil-bounces@listas.asteriskbrasil.org</a>]
<b>Em nome de </b>Ribeiro<br>
<b>Enviada em:</b> quarta-feira, 6 de junho de 2012
00:22<br>
<b>Para:</b> <a class="moz-txt-link-abbreviated" href="mailto:asteriskbrasil@listas.asteriskbrasil.org">asteriskbrasil@listas.asteriskbrasil.org</a><br>
<b>Assunto:</b> [AsteriskBrasil] AMI - Queue Status<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Pessoal<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Acabei a primeira parte de minha integração
Asterisk/Aplicação.<o:p></o:p></p>
<p class="MsoNormal">Perguntei a um tempo atrás o caminho e já
cheguei no primeiro hotel.. <span
style="font-family:Wingdings">J</span><o:p></o:p></p>
<p class="MsoNormal">Mas vamos lá... Documentação extremamente
superficial.<o:p></o:p></p>
<p class="MsoNormal">Funcionando está, mas não consegui ainda
entender algumas informações que eu estou recebendo.<o:p></o:p></p>
<p class="MsoNormal">Aconselho aos que usam fila, pois tem
alguns dados bem interessantes, mesmo que não façam uso de AMI
ou sejam desenvolvedores.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Estou utilizando AJAM (AMI Web).<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Solicitação de status da fila:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:"Courier
New";color:green" lang="EN-US"><response
type='object' id='unknown'><generic response='Success'
message='Queue status will follow' /></response><o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
lang="EN-US">Beleza! Sucesso na carga. </span>Recebi 3
eventos diferentes: QueueParams (Dados da fila), QueueMember
(Membros da fila) e QueueEntry (Ligações na fila e ainda não
atendidas).<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none"><o:p> </o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:"Courier
New";color:green" lang="EN-US"><generic
event='QueueParams' queue='50' max='0' strategy='ringall'
calls='1' holdtime='11' talktime='122' completed='23'
abandoned='6' servicelevel='60' servicelevelperf='95.7'
weight='0' /><o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none">Estes são os
dados da fila:<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Queue=’50’ –
Numero da fila – O número que disco para entrar na fila<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Max=’0’ –
Quantidade máxima de pessoas que podem ficar na fila – Está
ilimitada.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Strategy=’ringall’
– Estratégia... Sem problema... Bem documentado isso.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Calls=’1’ –
Ligações na fila e ainda não atendidas. Me parece perfeito.
Testado e não encontrei problemas.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">HoldTime=’11’ –
Aqui começa meu problema... Pelo que entendi são 11 segundos
“em média” que uma pessoa espera. Fiz o diversos testes com
diversos tempos altos e o valor não altera. Esta média é de
quantas ligações? Todas as feitas até hoje? Não é, pois o
valor já mudou sem muita lógica... Me iluminem aqui...<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">TalkTime=’122’
– Este é irmão do HoldTime pelo que eu entendi. É a média não
explicada do tempo de ligação, ou seja, 00:02:02 de média do
telefone falando. Também preciso de ajuda.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Completed=’23’
– Outro... Este não tem nada a ver com os dois de cima. É a
quantidade de ligações que foram atendidas. Mas quando que
iniciou? Alguém para me ajudar aqui?<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Abandoned=’6’ –
Abandonadas pelo cliente antes de serem atendidas. Tem tudo a
ver com o completed. Mas a mesma pergunta. Abandonadas na
última hora? No último dia? Ajuda aqui também.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">ServiceLevel=’60’
– Haaaa.... Este é o cara? Não. Eu achava que era ele, mas não
é. No Elastix está escrito assim: “Used for service level
statistics (calls answered within service level time frame)”.
Como está 60 segundos, não vou nem tentar explicar os números
de cima. Pensando e pesquisando, acho que entendi.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">ServiceLevelPerf=’95.7’
– Este número e o nome das tags me levaram a entender uma
coisa legal... Este não é o TMA e sim o percentual de ligações
atendidas em 60 segundos. É isso mesmo?<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Weight=’0’ –
Pelo que entendi é o peso desta fila em relação a outros
“canais”, ou seja, quanto maior o número, sua prioridade será
maior para atendimento. Alguém poderia me explicar o que seria
este “canal”? Não entendo como duas filas se cruzariam.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none"><o:p> </o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:"Courier
New";color:green" lang="EN-US"><response
type='object' id='unknown'><generic
event='QueueMember' queue='50' name='Fixo'
location='Local/10@from-queue/n' membership='dynamic'
penalty='0' callstaken='11' lastcall='1338677447' status='2'
paused='0' /></response><o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none">Estes são os
dados dos membros da fila:<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Queue=’50’ –
Mesmo do de cima. Usado para vincular um ao outro.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Name=’Fixo’ –
Nome do ramal (Extensão) informado na criação do mesmo.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Location=’Local/10@from-queue/n’
– Nome interno do ramal. Coisa do Arterisk. Usei ele depois
para duas coisas, sendo uma na gambiarra e outra correta. Digo
mais abaixo e se alguém quiser explicar melhor, seja com link,
agradeço.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Membership=’dynamic’
– Se o ramal é estático ou dinâmico. Um dinâmico entra na fila
com ‘<Numero da fila>*’, que neste caso seria ‘50*’ e
sai com ‘50**’. Pelo que eu entendi um estático faz parte da
fila e pronto e um dinâmico pode entrar e sair. Porém a
mensagem diz que meu ramal estático saiu da fila com ‘50**’ e
na verdade não saiu. Uso Elastix e entendo que é falta de
carinho com o código de quem o fez.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Penalty=’0’ – O
nome é estranho, mas eu entendi que quanto maior, menor a
prioridade de tocar. Por exemplo um estagiário. Se tem alguém
com Penalty menor, a ligação é enviada para ele antes. Só
quando não tem ninguém menor disponível é que o estagiário
atende. Entendo que dependa da estratégia, mas não sei qual.
Seria bom saber.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">CallsTaken=’11’
– Ligações atendidas por este membro. Entendo que ele atendeu
11 ligações. Porém a soma dos membros não é igual ao completed
da parte de cima. Muito estranho isso... Alguém poderia me
explicar?<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">LastCall=’1338677447’
– No primeiro momento me pareceu ser o número do telefone de
quem fez a última ligação, mas não é. Me parece ser o
“UniqueID”, sem o “.” e os 3 números no final. Não me pareceu
útil mesmo e não tenho certeza se é isso mesmo. Alguém me
confirma?<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Status=’2’ –
Diz se o ramal está ocupado, tocando, em uso, etc. Peguei a
tabela completa no código fonte do Asterisk. Sem problemas.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none">Paused=’0’ – Se
o ramal está em pausa. Em pausa, ele não faz parte da fila.
Seria igual a um membro dinâmico pressionar ‘50**’ e sair, mas
neste caso ele permanece na fila e você consegue visualizar.<o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none"><o:p> </o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:"Courier
New";color:green" lang="EN-US"><response
type='object' id='unknown'><generic event='QueueEntry'
queue='50' position='1' channel='SIP/10-000000a6'
uniqueid='1338791132.268' calleridnum='10'
calleridname='Pedido:Fixo' connectedlinenum='unknown'
connectedlinename='unknown' wait='10' /></response><o:p></o:p></span></p>
<p class="MsoNormal">Estes estão na fila ainda sem atendimento:<o:p></o:p></p>
<p class="MsoNormal">Queue=’50’ – Mesma coisa. Eles estão na
fila ‘50’ neste caso. O mesmo dos de cima.<o:p></o:p></p>
<p class="MsoNormal">Position=’1’ – Posição na fila. Perfeito e
entendido. Este é o próximo a ser atendido. Atendido este, o
‘2’ vira ‘1’ e os demais descem.<o:p></o:p></p>
<p class="MsoNormal">Channel=’SIP/10-000000a6’ – O canal que a
ligação está passando para chegar a fila. Coisas de Asterisk.
Entendo que seja este canal que está relacionado ao Weight.<o:p></o:p></p>
<p class="MsoNormal">UniqueID='1338791132.268' – Identificação
única deste canal. Eu conseguiria achar esta ligação entre
outras por este número. É isso mesmo?<o:p></o:p></p>
<p class="MsoNormal">CallerIDNum=’10’ – Este é o cara que eu
procurava... O número de telefone do ligador.<o:p></o:p></p>
<p class="MsoNormal">CallerIDName=’Fixo’ – Este é o nome do
ligador. Nos EUA e outros países, a operadora envia o numero
do telefone e o nome da pessoa. Aqui no Brasil, o sistema
inovador e proprietário envia somente o número do telefone. De
qualquer forma, tem como colocar um nome aqui por AGI ou
outras formas até mais fáceis. No Elastix (FreePBX) chama-se
“CallerID Lookup Sources”.<o:p></o:p></p>
<p class="MsoNormal">ConnectedLineNum=’unknown’ – Ramal de quem
atendeu.<o:p></o:p></p>
<p class="MsoNormal">ConnectedLineName=’unknown’ – Nome do ramal
de quem atendeu. O mesmo que o Name do members acima.<o:p></o:p></p>
<p class="MsoNormal">Wait=’10’ – Tempo de espera na fila: 10
segundos.<o:p></o:p></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:"Courier
New";color:green"><o:p> </o:p></span></p>
<p class="MsoNormal">Isso foi o que eu descobri e não descobri.
Ajuda outros o que eu descobri e me ajudem a entender o que eu
não entendi. Detalhado, vou editar e colocar no Wiki, mas
preciso da ajuda de vocês.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Problemas: Não estou usando evento. Os
eventos são disparados quando alguma coisa acontece e se nada
acontecer, não recebo nada. Isso eu entendi.<o:p></o:p></p>
<p class="MsoNormal">Mas não estou usando por uns motivos
técnicos. Meu servidor com a aplicação está “nas nuvens” e na
DMZ. Meu servidor Asterisk está protegido com um Firewall e
não é acessível da “rua”. Desta forma, estou com um serviço
interno rodando, pegando os dados do Arterisk e replicando
para o outro servidor “nas nuvens” por um protocolo
proprietário e mesmo invadido, não ajuda muito a ninguém. Não
se tem controle de nada.<o:p></o:p></p>
<p class="MsoNormal">E este mesmo programa já é usado para
trafegar dados e se fosse usar eventos, teria que duplicar o
canal de comunicação ou fazer uma coisa bem mais complexa.
Segui sem o evento.<o:p></o:p></p>
<p class="MsoNormal">Vou explicar o que eu já tenho: Pausar e
Despausar membros. Funciona perfeitamente. Tenho todos os
dados nesta resposta. Preciso do Location citado aqui, que lá
chama-se Interface (Isso é horrível, pois o cada hora o nome
muda), o Queue e se é para Pausar ou Despausar. Perfeito!<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Mas como nem tudo na vida são flores... Eu
preciso do CallerID de quem liga DEPOIS que o membro da fila
atendeu. Isso não rola. A informação fica por 1 segundo e
depois some... É preenchido o ConnectedLineNum e o
ConnectedLineName, se mantém por 1 segundo e depois some e eu
preciso disso. O que eu fiz?<o:p></o:p></p>
<p class="MsoNormal">Recupei pelo Status, que retona todas as
ligações em andamento. Mas não tem como vincular uma coisa na
outra, ou seja, o ramal do membro com a ligação. Eu teria que
carregar outros dados, como os ramais para poder vincular e
não estava a fim. Não sei onde. Seria procurar uma agulha em
um palheiro. Então fiz o seguinte:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoListParagraph"
style="text-indent:-18.0pt;mso-list:l0 level1 lfo2"><!--[if !supportLists]--><span
style="font-family:Symbol"><span style="mso-list:Ignore">·<span
style="font:7.0pt "Times New Roman"">
</span></span></span><!--[endif]-->Retirei o “/n” do final
do Location e armazenei em uma variável.<o:p></o:p></p>
<p class="MsoListParagraph"
style="text-indent:-18.0pt;mso-list:l0 level1 lfo2"><!--[if !supportLists]--><span
style="font-family:Symbol"><span style="mso-list:Ignore">·<span
style="font:7.0pt "Times New Roman"">
</span></span></span><!--[endif]-->Comparei se o começo do
Channel do Status é igual a variável que eu criei.<o:p></o:p></p>
<p class="MsoListParagraph"><o:p> </o:p></p>
<p class="MsoListParagraph">Isso me retorna duas linhas.
Aparentemente uma do telefone do ligador para a fila e outro
da fila para o ramal. Pelo menos foi o que me pareceu.<o:p></o:p></p>
<p class="MsoListParagraph"><o:p> </o:p></p>
<p class="MsoListParagraph"
style="text-indent:-18.0pt;mso-list:l0 level1 lfo2"><!--[if !supportLists]--><span
style="font-family:Symbol"><span style="mso-list:Ignore">·<span
style="font:7.0pt "Times New Roman"">
</span></span></span><!--[endif]-->Então eu fico com a
linha que tem ‘ChannelState=6’ e ‘Extension=s’. Não sei o que
estes dois significam, mas funcionou.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Se alguém tiver uma forma melhor de fazer
isso ou mais correta, me informe. Seria de boa ajuda.<o:p></o:p></p>
<p class="MsoNormal">Conto com a ajuda de todos.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Um abraço<o:p></o:p></p>
<p class="MsoNormal">Ribeiro<o:p></o:p></p>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
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 <a class="moz-txt-link-abbreviated" href="http://www.khomp.com">www.khomp.com</a>
_______________________________________________
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 <a class="moz-txt-link-abbreviated" href="http://www.digivoice.com.br">www.digivoice.com.br</a>
________
YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.
email: <a class="moz-txt-link-abbreviated" href="mailto:yealink@commlogik.com.br">yealink@commlogik.com.br</a> | <a class="moz-txt-link-abbreviated" href="http://www.commlogik.com.br">www.commlogik.com.br</a> | (11) 5503-1011
______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para <a class="moz-txt-link-abbreviated" href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a></pre>
</blockquote>
<br>
</body>
</html>