{"id":1013,"date":"2017-12-20T22:38:13","date_gmt":"2017-12-21T01:38:13","guid":{"rendered":"http:\/\/blog.abratel.com.br\/?p=1013"},"modified":"2017-12-20T22:43:15","modified_gmt":"2017-12-21T01:43:15","slug":"siga-me-manipulavel-via-telefone-e-via-banco-de-dados-no-asterisk","status":"publish","type":"post","link":"https:\/\/blog.abratel.com.br\/?p=1013","title":{"rendered":"Siga-me manipul\u00e1vel via telefone e via banco de dados no Asterisk"},"content":{"rendered":"<p>Cria\u00e7\u00e3o de um sigame que pode posterior manipular via telefone ou interface web<\/p>\n<p>Criar o banco no mysql:<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncreate database asterisk;\r\n\r\nuse asterisk;\r\n\r\nCREATE TABLE IF NOT EXISTS `sigame` (\r\n  `status` int(1) NOT NULL\r\n) ENGINE=InnoDB DEFAULT CHARSET=latin1;\r\n\r\nINSERT INTO `sigame` (`status`) VALUES (1);\r\n\r\n<\/pre>\n<p>Criar no plano de discagem do asterisk:<\/p>\n<p>\/etc\/asterisk\/extensions.conf<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\n\r\n[sigame]\r\n\r\n[sigame]\r\n\r\n\r\nexten =&gt; ***,1,goto(sigame,s,1(inicio_sigame))\r\n\r\nexten =&gt; s,1(inicio_sigame),background(ativa_desativa_sigame)\r\n\t\r\nexten =&gt; 0,1,playback(fala_zero)\r\n\tsame =&gt; n,goto(sigame_desativado,1)\r\nexten =&gt; 1,1,playback(fala_um_sigame)\r\n\tsame =&gt; n,goto(sigame_ativo,1)\r\nexten =&gt; 9,1,playback(fala_nove)\r\n\tsame =&gt; n,goto(sigame_consulta,1)\r\n\r\nexten =&gt; s,2,WaitExten(3)\r\n\t\tsame =&gt; n,goto(sigame,s,1)\r\nexten =&gt; i,1,Playback(opcao_invalida_sigame)\r\n\t\tsame =&gt; n,goto(sigame,s,1)\r\nexten  =&gt; sigame_ativo,1,NooP(Siga-me esta ativado)\r\n\t\tsame =&gt; n,nocdr()\r\n\t\tsame =&gt; n,MYSQL(Connect connid localhost root zoltrix90 asterisk)\r\n\t\tsame =&gt; n,NoOp(connid = ${connid})\r\n\t\tsame =&gt; n,MYSQL(Query resultid ${connid} update sigame set status=1)\r\n\t\tsame =&gt; n,MYSQL(Disconnect ${connid})\r\n\t\tsame =&gt; n,playback(sigame_ativado)\r\n\t\tsame =&gt; n,goto(sigame,s,1)\r\nexten =&gt; sigame_desativado,1,NooP(Siga-me esta desativado)\r\n\t\tsame =&gt; n,nocdr()\r\n\t\tsame =&gt; n,MYSQL(Connect connid localhost root zoltrix90 asterisk)\r\n\t\tsame =&gt; n,NoOp(connid = ${connid})\r\n\t\tsame =&gt; n,MYSQL(Query resultid ${connid} update sigame set status=0)\r\n\t\tsame =&gt; n,MYSQL(Disconnect ${connid})\r\n\t\tsame =&gt; n,playback(sigame_desativado)\r\n\t\tsame =&gt; n,goto(sigame,s,1)\r\nexten  =&gt; sigame_consulta,1,NooP(Consulta Siga-me)\r\n\t\tsame =&gt; n,MYSQL(Connect connid localhost root zoltrix90 asterisk)\r\n\t\tsame =&gt; n,NoOp(connid = ${connid})\r\n\t\tsame =&gt; n,MYSQL(Query resultid ${connid} SELECT status FROM sigame)\r\n\t\tsame =&gt; n,NoOp(resultid = ${resultid})\r\n\t\tsame =&gt; n,MYSQL(Fetch fetchid ${resultid} status)\r\n\t\tsame =&gt; n,NoOp(Variabili = ${fetchid},${status})\r\n\t\tsame =&gt; n,MYSQL(Clear ${resultid})\r\n\t\tsame =&gt; n,MYSQL(Disconnect ${connid})\r\n\t\tsame =&gt; n,noop(Sigame esta com valor --&gt; ${status})\r\n\r\n\r\n\t\tsame =&gt; n,GotoIf($[&quot;${status}&quot; = &quot;1&quot; ]?sigame_ativo2)\r\n\t\tsame =&gt; n,GotoIf($[&quot;${status}&quot; = &quot;0&quot; ]?sigame_desativado2)\r\n\t\t\tsame =&gt; n(sigame_ativo2),NooP(Siga-me esta ativado)\r\n\t\t\tsame =&gt; n,nocdr()\r\n\t\t\tsame =&gt; n,playback(sigame_ativado2)\r\n\t\t\tsame =&gt; n,goto(sigame,s,1)\r\n\tsame =&gt; n(sigame_desativado2),NooP(Siga-me esta desativado)\r\n\t\t\tsame =&gt; n,nocdr()\r\n\t\t\tsame =&gt; n,playback(sigame_desativado2)\r\n\t\t\tsame =&gt; n,goto(sigame,s,1)\r\n\r\n[recebe_chamadas]\r\nexten =&gt; s,1,Answer(1)\r\n\tsame =&gt; n,MYSQL(Connect connid localhost root zoltrix90 asterisk)\r\n\tsame =&gt; n,NoOp(connid = ${connid})\r\n\tsame =&gt; n,MYSQL(Query resultid ${connid} SELECT status FROM sigame)\r\n\tsame =&gt; n,NoOp(resultid = ${resultid})\r\n\tsame =&gt; n,MYSQL(Fetch fetchid ${resultid} status)\r\n\tsame =&gt; n,NoOp(Variabili = ${fetchid},${status})\r\n\tsame =&gt; n,MYSQL(Clear ${resultid})\r\n\tsame =&gt; n,MYSQL(Disconnect ${connid})\r\n\tsame =&gt; n,noop(Sigame esta com valor --&gt; ${status})\r\n\r\n\t  same =&gt; n,GotoIf($[&quot;${status}&quot; = &quot;1&quot; ]?sigame_ativo)\r\n\t  same =&gt; n,GotoIf($[&quot;${status}&quot; = &quot;0&quot; ]?sigame_desativado)\r\n\t  \r\n\t  same =&gt; n(sigame_ativo),NooP(Siga-me esta ativado)\r\n\t  \r\n\t\tsame =&gt; n,Set(CDR(userfield)=SIGA-ME)\r\n\t\tsame =&gt; n,Set(CDR(original_dst)=SP VIA SIP)\r\n\t\tsame =&gt; n,nocdr()\r\n\t\tsame =&gt; n,playback(conectado)\r\n\t\tsame =&gt; n,Dial(SIP\/10600001366\/101&amp;SIP\/10600001366\/102&amp;SIP\/10600001366\/103,120,r)\r\n\t\tsame =&gt; n,Goto(${DIALSTATUS})\r\n\t\t\tsame =&gt; n(CONGESTION),Dial(dahdi\/3\/0214133529277,60,r)\r\n\t\t\t same =&gt; n,Set(CDR(original_dst)=SP VIA ANALOGICA)\r\n\t\t\t same =&gt; n,Hangup\r\n\t\t\tsame =&gt; n(busy\/congestion),Dial(dahdi\/3\/0214133529277,60,r)\r\n\t\t\t same =&gt; n,Set(CDR(original_dst)=SP VIA ANALOGICA)\r\n\t\t\t same =&gt; n,Hangup\r\n\t\t\tsame =&gt; n(CHANUNAVAIL),Dial(dahdi\/3\/0214133529277,60,r)\r\n\t\t\t same =&gt; n,Set(CDR(original_dst)=SP VIA ANALOGICA)\r\n\t\t\t same =&gt; n,Hangup\r\n\t\t\tsame =&gt; n(BUSY),Dial(dahdi\/3\/0214133529277,60,r)\r\n\t\t\t same =&gt; n,Set(CDR(original_dst)=SP VIA ANALOGICA)\r\n\t\t\t same =&gt; n,Hangup\r\n\r\n\t  same =&gt; n(sigame_desativado),NooP(Siga-me esta desativado)\r\n\t\t\tsame =&gt; n,Set(CDR(userfield)=Lig. Recebida)\r\n\t\t\t;same =&gt; n,playback(Conectado)\r\n\t\t\tsame =&gt; n,Set(CDR(original_dst)=Ramal 201)\r\n\t\t\tsame =&gt; n,Dial(SIP\/201,22,Tt)\r\n\t\t\tsame =&gt; n,Set(CDR(original_dst)=Ramal 202)\r\n\t\t\tsame =&gt; n,Dial(SIP\/202,90,Tt)\r\n\t\t\t;same =&gt; n,Queue(Fila,tT,,,600)\r\n\t\t\tsame =&gt; n,hangup()\r\n\r\n\r\n\t\r\n<\/pre>\n<p>Pode-se usar a imagina\u00e7\u00e3o para manipular via interface web<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cria\u00e7\u00e3o de um sigame que pode posterior manipular via telefone ou interface web Criar o banco no mysql: Criar no plano de discagem do asterisk: \/etc\/asterisk\/extensions.conf Pode-se usar a imagina\u00e7\u00e3o para manipular via interface web<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1013"}],"collection":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1013"}],"version-history":[{"count":2,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1013\/revisions"}],"predecessor-version":[{"id":1015,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1013\/revisions\/1015"}],"wp:attachment":[{"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.abratel.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}