<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>RenatoMalta.Com.Br &#187; mysql</title>
	<atom:link href="http://renatomalta.com.br/tag/mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://renatomalta.com.br</link>
	<description>Linux, Asterisk, Shell Script e muito mais!</description>
	<lastBuildDate>Thu, 01 Oct 2009 00:24:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>IVR utilizando Asterisk e MySQL</title>
		<link>http://renatomalta.com.br/ivr-utilizando-asterisk-e-mysql/</link>
		<comments>http://renatomalta.com.br/ivr-utilizando-asterisk-e-mysql/#comments</comments>
		<pubDate>Sun, 20 Sep 2009 14:51:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Asterisk]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[Voip]]></category>

		<guid isPermaLink="false">http://renatomalta.com.br/?p=4</guid>
		<description><![CDATA[Neste post vou dar um rápido exemplo de como fazer uma URA com consulta a banco de dados, neste caso o MySQL.
é um exemplo bem simples que foi meu primeiro teste com com mysql é legal para ver como funciona.. e apartir dele da pra criar várias coisas legais.
Uma atendente digital que solicita o numero [...]]]></description>
			<content:encoded><![CDATA[<p>Neste post vou dar um rápido exemplo de como fazer uma URA com consulta a banco de dados, neste caso o MySQL.<br />
é um exemplo bem simples que foi meu primeiro teste com com mysql é legal para ver como funciona.. e apartir dele da pra criar várias coisas legais.</p>
<p>Uma atendente digital que solicita o numero de contrato do cliente, caso o numero esteja no banco de dados ele é direcionado para a fila de suporte.</p>
<p>Caso não esteja no banco é solicitado que digite novamente o numero e retorna pro comeco do dialplan.</p>
<p><strong>Comecei criando um banco que no meu caso chamei de clientes:</strong></p>

<div class="wp-terminal">root@v0id:# <br/>mysql&gt; create database clientes;<br/>Query OK, 1 row affected (0.01 sec)<br/>mysql&gt; use clientes<br/>Database changed<br/><br/></div>

<p><strong>Depois criei a tabela chamada de contratos:</strong></p>

<div class="wp-terminal">root@v0id:# <br/>mysql&gt; create table contratos ( id int(10) not null auto_increment, numero varchar(20) not null, nome varchar(20) not null, primary key (id));<br/>Query OK, 0 rows affected (0.01 sec)<br/>mysql&gt;<br/></div>

<p><strong>Inseri um cliente com o numero de contrato 0000000010</strong></p>

<div class="wp-terminal">root@v0id:# <br/>mysql&gt; INSERT into contratos SET id=0, numero="0000000010" ,nome="Renato Malta";<br/>Query OK, 1 row affected (0.00 sec)<br/>mysql&gt; select * from contratos;<br/>+----+------------+--------------+<br/>| id | numero���� | nome�������� |<br/>+----+------------+--------------+<br/>|� 1 | 0000000010 | Renato Malta |<br/>+----+------------+--------------+<br/>1 row in set (0.00 sec)<br/>mysql&gt;<br/><br/></div>

<p><strong>E vamos inserir isto no seu dialplan no contexto de entrada:</strong></p>
<p>exten =&gt; s,1,Playback(bemvindo)<br />
exten =&gt; s,2,MYSQL(Connect connid localhost root senha clientes)<br />
exten =&gt; s,3,Playback(insiranumerodecontrato)<br />
exten =&gt; s,4,Read(numerodecontrato,,10)<br />
exten =&gt; s,5,MYSQL(Query resultid ${connid} SELECT\ id\ from\ contratos\ where\ numero=${numerodecontrato})<br />
exten =&gt; s,6,MYSQL(Fetch fetchid ${resultid} idcontrato)<br />
exten =&gt; s,7,GotoIf($["${idcontrato}" = ""]?9:8)<br />
exten =&gt; s,8,Queue(suporte)<br />
exten =&gt; s,9,Playback(contratonaoencontrado)<br />
exten =&gt; s,10,Goto(3)</p>
<p><strong>Segue uma breve explicação das linhas pelo número das prioridades:</strong></p>
<p>1 &#8211; Mensagem de boas vindas. **<br />
2 &#8211; Conexao com o servidor MySQL. *<br />
3 &#8211; Mensagem solicitando o numero de contrato. **<br />
4 &#8211; Parte em que o usuário digita algo para ser consultado no banco. Ex. numero do contrato.<br />
5 &#8211; Consulta no banco se existe o id digitado.<br />
6 &#8211; Armazena o resultado da consulta na variavel idcontrato.<br />
7 &#8211; Testa se existe o numero do contrato ou se o resultado voltou em branco. Caso seja em branco ele pula para a prioridade 9 caso exista ele continua na prioridade 8.<br />
8 &#8211; Direciona para a fila de atendimento do suporte por exemplo<br />
9 &#8211; Mensagem informando que o numero de contrato nao foi encontrado. **<br />
10 &#8211; Volta para a prioridade 3 onde ele escutara novamente a mensagem solicitando o numero de contrato.</p>
<p>*: É necessária a instalação do pacote de addons do Asterisk para que o comando MYSQL exista.<br />
**: Os nomes das mensagens de voz nas prioridades 1, 3 e 9 nao existem por padrão no diretório do Asterisk. Crie as suas <img src='http://renatomalta.com.br/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p><strong>Mais informações sobre o comando MYSQL do Asterisk:</strong> <a href="http://www.voip-info.org/wiki/view/Asterisk+cmd+MYSQL" target="_blank">http://www.voip-info.org/wiki/view/Asterisk+cmd+MYSQL</a></p>
<p>Então é isso!</p>
<p>Dúvidas, sugestões?</p>
]]></content:encoded>
			<wfw:commentRss>http://renatomalta.com.br/ivr-utilizando-asterisk-e-mysql/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
