Marcelo/Patrick,


 pensei em fazer desta forma Marcelo, porem a opção que o Patrick citou me economizou dezenas de linhas em comparação se eu fosse utilizar um backgroup. Com a adição do áudio no read funcinou perfeitamente.
 
 Meu problema agora é somente capturar o número do Ramal que "pescou" a chamada para joga-lo no banco. 
 Existe alguma variável que retorna o número do ramal em questão no qual atendeu a chamada da queue?
 
 Exemplo abaixo, com EXTEN vem o número S (que eh o a letra que defini no meu contexto).
 
 
[entrada_chamada]
 exten => _X.,1,GotoifTime(08:00-18:00|mon-fri|*|*?pesquisa_satisfacao2,s,1)
 
[pesquisa_satisfacao2]
exten => s,1,Queue(fila,cft,,,600)
        same => n,waitexten(1)
        same => n,Read(sol_atendida,pesquisa/primeirapergunta,1)
        same => n,waitexten(1)
        same => n,Read(nota,pesquisa/segundapergunta,1)
        same => n,waitexten(1)
        same => n,Read(atendida,pesquisa/ultimapergunta,1)
        same => n,Set(ODBC_pesq_satisfacao()=${CALLERID(num)},${EXTEN},${sol_atendida},${nota},${atendida})
        same => n,playback(pesquisa/obrigado)
        same => n,hangup()
 
 
Veja na CLI a inserção no banco:
 
-- Executing [s@pesquisa_satisfacao2:7] Set("DAHDI/12-1", "ODBC_pesq_satisfacao()=2133221515,s,1,5,0") in new stack
 
 
mysql> select * from pesq_satisfacao;
+----+---------------------+------------+---------+-------+-------+-------+
| ID | Calldate            | Origem     | Destino | Nota1 | Nota2 | Nota3 |
+----+---------------------+------------+---------+-------+-------+-------+
| 13 | 2014-08-19 17:12:47 | 2133221515 | s       |     1 |     5 |     0 |
+----+---------------------+------------+---------+-------+-------+-------+
1 rows in set (0.00 sec)
 
 
 Obrigada pela ajuda!
 
  Vanessa.
 
 
 


De: mhter...@gmail.com
Enviada: Segunda-feira, 18 de Agosto de 2014 18:27
Para: asteriskbrasil@listas.asteriskbrasil.org
Assunto: [AsteriskBrasil] Pesquisa Satisfação - aguardar todo playback para efetuar read.

Mas pq você está usando o read?

Você pode usar diretamente o background e não usar o read, se você só
espera 1 dígito.

ex:

[ura-principal]

exten => root,1,Answer
exten => root,n,Wait(1)
exten => root,n(menu),Background(ura)
exten => root,n,WaitExten(2)
exten => root,n,Goto(principal,1)

; 1 - Opção1
exten => 1,1,Goto(opcao1,1)
exten => opcao1,1,Queue(opcao1,t)
same => n,Hangup


; 2 - Opção 2
exten => 2,1,Goto(opcao2,1)
exten => opcao2,1,Queue(opcao2,t)
same => n,Hangup


Marcelo H. Terres
mhter...@gmail.com
IM: mhter...@jabber.mundoopensource.com.br
http://www.mundoopensource.com.br
http://offtopicsandfun.blogspot.com
http://biertasters.blogspot.com
http://twitter.com/mhterres


2014-08-18 18:20 GMT-03:00 Vanessa Sather <vanessasat...@bol.com.br>:
> Salve lista.
>
> Estou criando uma pesquisa de satisfação. Esta tudo fluindo corretamente e
> inserindo no banco.
> Meu problema eh que, enquanto esta tocando o playback e o usuário apertar a
> opção antes de terminar o playback, a mesma não eh inserida no read.
> Ele deve esperar toda a mensagem para após efetuar a nota.
>
> O problema eh que o cliente nunca espera o fim do áudio para apertar de
> acordo. Ao ouvir a opção que ele quer imediatamente ele aperta...
>
> Enfim, segue:
>
> exten => s,1,Answer()
> same => n,playback(pesquisa/primeirapergunta)
> same => n,Read(sol_atendida,,1)
>
>
> -- Executing [s@pesquisa_satisfacao:1] Answer("SIP/2306-00000018", "")
> in new stack
> -- Executing [s@pesquisa_satisfacao:3] Playback("SIP/2306-00000018",
> "pesquisa/primeirapergunta") in new stack
> -- <SIP/2306-00000018> Playing 'pesquisa/primeirapergunta.slin'
> (language 'pt_BR')
> NESTE INSTANTE SE O CLIENTE APERTAR O 1, POR EXEMPLO, ELE NÃO EH ENVIADO.
> SOMENTE SE O CLIENTE ESPERAR TODO O AUDIO TOCAR E APOS APERTAR O 1.
>
> Ha alguma solução para isso semelhante a opção de um backgroud?
>
> Obrigada.
>
> Vanessa.
>
>
>
>
>
> _______________________________________________
>
> WORKOFFEE KHOMP: Eventos Khomp na sua cidade! Desenvolva seu
> conhecimento na tecnologia e portfólio Khomp. Próxima edição
> em CURITIBA, 7 de agosto. Inscrições GRATUITAS.
> Garanta a sua vaga e saiba mais em: www.workoffee.com.br
> _______________________________________________
>
> ALIGERA – Fabricante e desenvolvedor nacional de Soluções para telefonia IP
> .
> Gateway Sip, Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
> Banco de Canais Analógicos – Appliance Asterisk
> Acesse www.aligera.com.br
> _______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
_______________________________________________

WORKOFFEE KHOMP: Eventos Khomp na sua cidade! Desenvolva seu
conhecimento na tecnologia e portfólio Khomp. Próxima edição
em CURITIBA, 7 de agosto. Inscrições GRATUITAS.
Garanta a sua vaga e saiba mais em: www.workoffee.com.br
_______________________________________________

ALIGERA – Fabricante e desenvolvedor nacional de Soluções para telefonia IP .
Gateway Sip, Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Banco de Canais Analógicos – Appliance Asterisk
Acesse www.aligera.com.br
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscr...@listas.asteriskbrasil.org
_______________________________________________

WORKOFFEE KHOMP: Eventos Khomp na sua cidade! Desenvolva seu
conhecimento na tecnologia e portfólio Khomp. Próxima edição
em CURITIBA, 7 de agosto. Inscrições GRATUITAS.
Garanta a sua vaga e saiba mais em: www.workoffee.com.br
_______________________________________________

ALIGERA – Fabricante e desenvolvedor nacional de Soluções para telefonia IP .
Gateway Sip, Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Banco de Canais Analógicos  – Appliance Asterisk
 Acesse www.aligera.com.br
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para 
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org

Responder a