Browse Source

Extension tirar as macros do extensions

1.9
bruno 3 months ago
parent
commit
a844e9591e
  1. 58
      admin/funcoes.php
  2. 271
      asterisk/etc_asterisk/extensions_padrao.conf
  3. 6
      asterisk/etc_asterisk/extensions_padrao_customizado.conf
  4. 2
      asterisk/var_lib_asterisk/agi-bin/agente_fila.php
  5. 2
      asterisk/var_lib_asterisk/agi-bin/pbx_complemento.php
  6. 2
      contacteFunc.php

58
admin/funcoes.php

@ -777,7 +777,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$escreve = fopen($arq, 'w'); $escreve = fopen($arq, 'w');
fwrite($escreve, '[ext-fila]' . "\n"); fwrite($escreve, '[ext-fila]' . "\n");
fwrite($escreve, 'exten => h,1,Macro(hangup)' . "\n"); fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n");
/* fwrite($escreve,'exten => h,1,Noop(MATRICULA = ${MATRICULA} e IDORIGEM = ${IDORIGEM})'. "\n"); /* fwrite($escreve,'exten => h,1,Noop(MATRICULA = ${MATRICULA} e IDORIGEM = ${IDORIGEM})'. "\n");
fwrite($escreve,'exten => h,n,GotoIf($["X${MATRICULA}" = "X"]?desliga)'. "\n"); fwrite($escreve,'exten => h,n,GotoIf($["X${MATRICULA}" = "X"]?desliga)'. "\n");
fwrite($escreve,'exten => h,n,GotoIf($["${CONTEXT:0:3}" = "psq"]?desliga)'. "\n"); fwrite($escreve,'exten => h,n,GotoIf($["${CONTEXT:0:3}" = "psq"]?desliga)'. "\n");
@ -839,7 +839,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
} }
if ($dados['id_pesquisa_liberacao']) { if ($dados['id_pesquisa_liberacao']) {
fwrite($escreve, "exten => _{$numero},n,Macro(hangup,PESQUISA) \n"); fwrite($escreve, "exten => _{$numero},n,GoSub(macro-hangup,s,1,(PESQUISA,\${CONTEXT},\${EXTEN})) \n");
fwrite($escreve, "exten => _{$numero},n,Goto(psq-{$dados['id_pesquisa_liberacao']}-ini,s,1) \n"); fwrite($escreve, "exten => _{$numero},n,Goto(psq-{$dados['id_pesquisa_liberacao']}-ini,s,1) \n");
} }
@ -1354,7 +1354,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, '[ext-testes]' . "\n"); fwrite($escreve, '[ext-testes]' . "\n");
fwrite($escreve, 'include => ext-testes-custom' . "\n"); fwrite($escreve, 'include => ext-testes-custom' . "\n");
fwrite($escreve, 'exten => h,1,Macro(hangup)' . "\n"); fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n");
$query = "SELECT id,permite_ligacao,tempo_espera,som_ura,teste FROM pbx_ura where teste <> '' order by id asc"; $query = "SELECT id,permite_ligacao,tempo_espera,som_ura,teste FROM pbx_ura where teste <> '' order by id asc";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
@ -1405,7 +1405,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, '[ext-horarios]' . "\n"); fwrite($escreve, '[ext-horarios]' . "\n");
fwrite($escreve, 'include => ext-horarios-custom' . "\n"); fwrite($escreve, 'include => ext-horarios-custom' . "\n");
fwrite($escreve, 'exten => h,1,Macro(hangup)' . "\n"); fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n");
$query = "SELECT distinct a.id, a.nome, a.discar, a.opcao_nao, a.acao_nao $query = "SELECT distinct a.id, a.nome, a.discar, a.opcao_nao, a.acao_nao
FROM pbx_horarios a, pbx_horarios_itens b FROM pbx_horarios a, pbx_horarios_itens b
@ -2060,7 +2060,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$comando = $dados2['conferencia_dinamica']; $comando = $dados2['conferencia_dinamica'];
fwrite($escreve, '[app-conferencia-dinamica]' . "\n"); fwrite($escreve, '[app-conferencia-dinamica]' . "\n");
fwrite($escreve, 'exten => ' . $comando . ',1,Macro(inicia-conferencia)' . "\n"); fwrite($escreve, 'exten => ' . $comando . ',1,GoSub(macro-inicia-conferencia,s,1,())' . "\n");
fwrite($escreve, 'exten => ' . $comando . ',n,Hangup()' . "\n"); fwrite($escreve, 'exten => ' . $comando . ',n,Hangup()' . "\n");
if ($reload) if ($reload)
@ -2108,7 +2108,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, '[ext-anuncios]' . "\n"); fwrite($escreve, '[ext-anuncios]' . "\n");
fwrite($escreve, 'include => ext-anuncios-custom' . "\n"); fwrite($escreve, 'include => ext-anuncios-custom' . "\n");
fwrite($escreve, 'exten => h,1,Macro(hangup)' . "\n"); fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n");
$query = "select * from pbx_anuncios "; $query = "select * from pbx_anuncios ";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
@ -2239,7 +2239,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
} }
if (trim($dados['grava']) != '') { if (trim($dados['grava']) != '') {
fwrite($escreve, 'exten => ' . $dados['numero'] . ',n,Macro(gravacao-conferencia,${EXTEN})' . "\n"); fwrite($escreve, 'exten => ' . $dados['numero'] . ',n,GoSub(macro-gravacao-conferencia,s,1,(${EXTEN}))' . "\n");
} }
if ($dados['senha_admin'] != '') { if ($dados['senha_admin'] != '') {
@ -2326,11 +2326,11 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, 'exten => ' . $modelo . ',n,Set(__TIPO=EXTERNA)' . chr(10)); fwrite($escreve, 'exten => ' . $modelo . ',n,Set(__TIPO=EXTERNA)' . chr(10));
fwrite($escreve, 'exten => ' . $modelo . ',n,AGI(pbx_complemento.php,' . $dados['context'] . ')' . chr(10)); fwrite($escreve, 'exten => ' . $modelo . ',n,AGI(pbx_complemento.php,' . $dados['context'] . ')' . chr(10));
if ($bloq) if ($bloq)
fwrite($escreve, 'exten => ' . $modelo . ',n,Macro(chamada-a-cobrar)' . chr(10)); fwrite($escreve, 'exten => ' . $modelo . ',n,GoSub(macro-chamada-a-cobrar,s,1,())' . chr(10));
if ($limite_ligacao) { if ($limite_ligacao) {
$opcaoRota = GetAcaoOpcaoRotas($dados['limite_ligacao_pos_opcao'], $dados['limite_ligacao_pos_acao']); $opcaoRota = GetAcaoOpcaoRotas($dados['limite_ligacao_pos_opcao'], $dados['limite_ligacao_pos_acao']);
fwrite($escreve, 'exten => ' . $modelo . ",n,Macro(limite-ligacao-entrante,$idRota,$limite_ligacao,$opcaoRota)" . chr(10)); fwrite($escreve, 'exten => ' . $modelo . ",n,GoSub(macro-limite-ligacao-entrante,s,1,($idRota,$limite_ligacao,$opcaoRota))" . chr(10));
} }
if ($identificador) if ($identificador)
@ -2460,7 +2460,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,AGI(lista_negra.php,${EXTEN},' . $dados['id'] . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,AGI(lista_negra.php,${EXTEN},' . $dados['id'] . ')' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Set(_TIPO=EXTERNO)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Set(_TIPO=EXTERNO)' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,AGI(pbx_complemento.php,saida-pstn)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,AGI(pbx_complemento.php,saida-pstn)' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Macro(verifica-rota,${CALLERID(NUM)},${EXTEN})' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GoSub(macro-verifica-rota,s,1,(${CALLERID(NUM)},${EXTEN}))' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Gosub(rota-${ID_ROTA},${EXTEN},1)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Gosub(rota-${ID_ROTA},${EXTEN},1)' . "\n");
$query3 = "select * $query3 = "select *
@ -2494,7 +2494,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$portabilidade = $dados['portabilidade']; $portabilidade = $dados['portabilidade'];
fwrite($escreve, '[rota-' . $dados['id'] . ']' . "\n"); fwrite($escreve, '[rota-' . $dados['id'] . ']' . "\n");
//fwrite($escreve, 'exten => h,1,ExecIf($["${DIALSTATUS}" = "ANSWER"]?Set(CDR_PROP(disable)=1))' . "\n"); //fwrite($escreve, 'exten => h,1,ExecIf($["${DIALSTATUS}" = "ANSWER"]?Set(CDR_PROP(disable)=1))' . "\n");
fwrite($escreve, 'exten => h,1,Macro(hangup)' . "\n"); fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n");
$query2 = "select * FROM pbx_rotas_saida_modelos where id_rota=" . $dados['id'] . " order by length(modelo), modelo asc"; $query2 = "select * FROM pbx_rotas_saida_modelos where id_rota=" . $dados['id'] . " order by length(modelo), modelo asc";
$result2 = pg_query($dbcon, $query2); $result2 = pg_query($dbcon, $query2);
@ -2506,7 +2506,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, sprintf('exten => _%s,n,Set(_TIPO=EXTERNO)%s', $dados2['modelo'], "\n")); fwrite($escreve, sprintf('exten => _%s,n,Set(_TIPO=EXTERNO)%s', $dados2['modelo'], "\n"));
//fwrite($escreve, sprintf('exten => _%s,n,Set(CHANNEL(accountcode)=${TRANSFER})%s', $dados2['modelo'], "\n")); //fwrite($escreve, sprintf('exten => _%s,n,Set(CHANNEL(accountcode)=${TRANSFER})%s', $dados2['modelo'], "\n"));
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n(inicio),Macro(gravacao,OUT,${CALLERID(NUM)})' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n(inicio),GoSub(macro-gravacao,s,1,(OUT,${CALLERID(NUM)}))' . "\n");
if ($portabilidade) { if ($portabilidade) {
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,AGI(portabilidade.php,${EXTEN:-11})' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,AGI(portabilidade.php,${EXTEN:-11})' . "\n");
@ -2539,7 +2539,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Set(RECORTA_TRONCO=' . $recortetronco . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Set(RECORTA_TRONCO=' . $recortetronco . ')' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Set(ACRECENTA_TRONCO=' . $acrescentatronco . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Set(ACRECENTA_TRONCO=' . $acrescentatronco . ')' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Macro(dial-saida-pstn,' . $dados3['nome_canal'] . '/' . $acrescenta . '${EXTEN' . $recorte . '}' . ((($dados3['tipo_tronco'] == 'KHOMP') && $dados3['callerid']) ? ('/orig=' . $dados3['callerid']) : '') . ',r,' . $dados3['id_tronco'] . ',' . $dados3['max_ligacoes'] . ',' . sprintf('tarifa,%s,%s,${UNIQUEID},${CALLERID(NUM)},%s${EXTEN%s},${TIPO_ACESSO},${CONTA},${SENHA},${RECORTA_TRONCO},${ACRECENTA_TRONCO}', $dados3['id_tronco'], $dados['id'], $acrescenta, $recorte) . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GoSub(macro-dial-saida-pstn,s,1,(' . $dados3['nome_canal'] . '/' . $acrescenta . '${EXTEN' . $recorte . '}' . ((($dados3['tipo_tronco'] == 'KHOMP') && $dados3['callerid']) ? ('/orig=' . $dados3['callerid']) : '') . ',r,' . $dados3['id_tronco'] . ',' . $dados3['max_ligacoes'] . ',' . sprintf('tarifa,%s,%s,${UNIQUEID},${CALLERID(NUM)},%s${EXTEN%s},${TIPO_ACESSO},${CONTA},${SENHA},${RECORTA_TRONCO},${ACRECENTA_TRONCO}', $dados3['id_tronco'], $dados['id'], $acrescenta, $recorte) . '))' . "\n");
} }
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GotoIf($["${LIMITE}" = "OK"]?limite)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GotoIf($["${LIMITE}" = "OK"]?limite)' . "\n");
@ -2548,7 +2548,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Return()' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Return()' . "\n");
if ($portabilidade) { if ($portabilidade) {
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n(portabilidade),Macro(dial-saida-pstn,${TRONCO}/' . $acrescenta . '${DESTINO},r,${ID_TRONCO}, ${MAX_LIG},' . sprintf('tarifa,${ID_TRONCO},%s,${UNIQUEID},${CALLERID(NUM)},' . $acrescenta . '${DESTINO},${TIPO_ACESSO},${CONTA},${SENHA}', $dados['id']) . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n(portabilidade),GoSub(macro-dial-saida-pstn,s,1,(${TRONCO}/' . $acrescenta . '${DESTINO},r,${ID_TRONCO}, ${MAX_LIG},' . sprintf('tarifa,${ID_TRONCO},%s,${UNIQUEID},${CALLERID(NUM)},' . $acrescenta . '${DESTINO},${TIPO_ACESSO},${CONTA},${SENHA}', $dados['id']) . '))' . "\n");
$result3 = pg_query($dbcon, $query3); $result3 = pg_query($dbcon, $query3);
while ($dados3 = pg_fetch_array($result3)) { while ($dados3 = pg_fetch_array($result3)) {
@ -2557,7 +2557,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$recorte = !trim($dados['recorte']) ? '' : (':' . trim($dados['recorte'])); $recorte = !trim($dados['recorte']) ? '' : (':' . trim($dados['recorte']));
$acrescenta = trim($dados['acrescenta']) !== '' ? '' : trim($dados['acrescenta']); $acrescenta = trim($dados['acrescenta']) !== '' ? '' : trim($dados['acrescenta']);
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Macro(dial-saida-pstn,' . $dados3['nome_canal'] . '/' . $acrescenta . '${EXTEN' . $recorte . '}' . ((($dados3['tipo_tronco'] == 'KHOMP') && $dados3['callerid']) ? ('/orig=' . $dados3['callerid']) : '') . ',r,' . $dados3['id_tronco'] . ',' . $dados3['max_ligacoes'] . ',' . sprintf('tarifa,%s,%s,${UNIQUEID},${CALLERID(NUM)},%s${EXTEN%s},${TIPO_ACESSO},${CONTA},${SENHA}', $dados3['id_tronco'], $dados['id'], $acrescenta, $recorte) . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Gosub(macro-dial-saida-pstn,s,1,(' . $dados3['nome_canal'] . '/' . $acrescenta . '${EXTEN' . $recorte . '}' . ((($dados3['tipo_tronco'] == 'KHOMP') && $dados3['callerid']) ? ('/orig=' . $dados3['callerid']) : '') . ',r,' . $dados3['id_tronco'] . ',' . $dados3['max_ligacoes'] . ',' . sprintf('tarifa,%s,%s,${UNIQUEID},${CALLERID(NUM)},%s${EXTEN%s},${TIPO_ACESSO},${CONTA},${SENHA}', $dados3['id_tronco'], $dados['id'], $acrescenta, $recorte) . '))' . "\n");
} }
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GotoIf($["${LIMITE}" = "OK"]?limite)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GotoIf($["${LIMITE}" = "OK"]?limite)' . "\n");
@ -2578,7 +2578,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, '[ext-rotasinternas]' . "\n"); fwrite($escreve, '[ext-rotasinternas]' . "\n");
fwrite($escreve, 'include => ext-rotasinternas-custom' . "\n"); fwrite($escreve, 'include => ext-rotasinternas-custom' . "\n");
//fwrite($escreve,'exten => h,1,Macro(hangup)'. "\n"); //fwrite($escreve,'exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))'. "\n");
$query = "select * FROM pbx_rotas_saida where tipo='I' and portabilidade = 0 order by id asc"; $query = "select * FROM pbx_rotas_saida where tipo='I' and portabilidade = 0 order by id asc";
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
@ -2606,7 +2606,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
order by b.id asc"; order by b.id asc";
$result3 = pg_query($dbcon, $query3); $result3 = pg_query($dbcon, $query3);
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Macro(gravacao,OUT,${CALLERID(NUM)})' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Gosub(macro-gravacao,s,1,(OUT,${CALLERID(NUM)}))' . "\n");
while ($dados3 = pg_fetch_array($result3)) { while ($dados3 = pg_fetch_array($result3)) {
$acrescentaCanal = soNumero($dados3['acrescenta']); $acrescentaCanal = soNumero($dados3['acrescenta']);
@ -2620,12 +2620,12 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$complKhomp = (($dados3['tipo_tronco'] == 'KHOMP') && $dados3['callerid']) ? ('/orig=' . $dados3['callerid']) : ''; $complKhomp = (($dados3['tipo_tronco'] == 'KHOMP') && $dados3['callerid']) ? ('/orig=' . $dados3['callerid']) : '';
$complTronco = sprintf(",%s,%s", $dados3['id_tronco'], $dados3['max_ligacoes']); $complTronco = sprintf(",%s,%s", $dados3['id_tronco'], $dados3['max_ligacoes']);
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Macro(dial-saida-pstn,' . $dados3['nome_canal'] . '/' . $acrescenta . '${EXTEN' . $recorte . '}' . $complKhomp . ',r' . $complTronco . ')' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Gosub(macro-dial-saida-pstn,s,1,(' . $dados3['nome_canal'] . '/' . $acrescenta . '${EXTEN' . $recorte . '}' . $complKhomp . ',r' . $complTronco . '))' . "\n");
} }
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GotoIf($["${LIMITE}" = "OK"]?limite)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GotoIf($["${LIMITE}" = "OK"]?limite)' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Hangup()' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n(limite),Playback(appsounds/linhas_ocupadas)' . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n(limite),Playback(appsounds/linhas_ocupadas)' . "\n");
fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,Hangup()' . "\n" . "\n"); fwrite($escreve, 'exten => _' . $dados2['modelo'] . ',n,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))' . "\n" . "\n");
} }
} }
fclose($escreve); fclose($escreve);
@ -2672,7 +2672,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$linha = "include => $nomeContexto" . "_custom\n"; $linha = "include => $nomeContexto" . "_custom\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
fwrite($escreve, "include => aplicacoes" . "\n"); fwrite($escreve, "include => aplicacoes" . "\n");
fwrite($escreve, "exten => h,1,Macro(hangup)" . "\n"); fwrite($escreve, "exten => h,1,GoSub(macro-hangup,s,1,(\${CONTEXT},\${EXTEN}))" . "\n");
if ($dados['inclui_padrao'] == 'S') { if ($dados['inclui_padrao'] == 'S') {
$linha = "include => padrao\n"; $linha = "include => padrao\n";
@ -2724,7 +2724,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = "exten => _$modelo,n,Set(_TIPO=INTERNO)\n"; $linha = "exten => _$modelo,n,Set(_TIPO=INTERNO)\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = sprintf('exten => _%s,n,Macro(gravacao,OUT,${CALLERID(NUM)})%s', $modelo, "\n"); $linha = sprintf('exten => _%s,n,Gosub(macro-gravacao,s,1,(OUT,${CALLERID(NUM)}))%s', $modelo, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
if ($portabilidade) { if ($portabilidade) {
$linha = sprintf('exten => _%s,n,AGI(portabilidade.php,${EXTEN:-11})%s', $modelo, "\n"); $linha = sprintf('exten => _%s,n,AGI(portabilidade.php,${EXTEN:-11})%s', $modelo, "\n");
@ -2750,25 +2750,25 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$maxLigacoes = $dadosTronco["max_ligacoes"]; $maxLigacoes = $dadosTronco["max_ligacoes"];
$tipoTronco = $dadosTronco["tipo"] . "/" . $dadosTronco["username"]; $tipoTronco = $dadosTronco["tipo"] . "/" . $dadosTronco["username"];
$linha = sprintf('exten => _%s,n,Macro(dial-saida-pstn,%s/%s${EXTEN%s}%s,r,%s,%s)%s', $modelo, $tipoTronco, $acrescenta, $recorte, ((($dadosTronco['tipo'] == 'KHOMP') && $dadosTronco['callerid']) ? ('/orig=' . $dadosTronco['callerid']) : ''), $idTronco, $maxLigacoes, "\n"); $linha = sprintf('exten => _%s,n,Gosub(macro-dial-saida-pstn,s,1,(%s/%s${EXTEN%s}%s,r,%s,%s,%s))', $modelo, $tipoTronco, $acrescenta, $recorte, ((($dadosTronco['tipo'] == 'KHOMP') && $dadosTronco['callerid']) ? ('/orig=' . $dadosTronco['callerid']) : ''), $idTronco, $maxLigacoes, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
} }
if ($existeTronco) { if ($existeTronco) {
$linha = sprintf('exten => _%s,n,GotoIf($["${LIMITE}" = "OK"]?limite)%s', $modelo, "\n"); $linha = sprintf('exten => _%s,n,GotoIf($["${LIMITE}" = "OK"]?limite)%s', $modelo, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = "exten => _$modelo,n,Hangup()\n"; $linha = "exten => _$modelo,n,GoSub(macro-hangup,s,1,(\${CONTEXT},\${EXTEN}))\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = "exten => _$modelo,n(limite),Playback(appsounds/linhas_ocupadas)\n"; $linha = "exten => _$modelo,n(limite),Playback(appsounds/linhas_ocupadas)\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = "exten => _$modelo,n,Hangup()\n"; $linha = "exten => _$modelo,n,GoSub(macro-hangup,s,1,(\${CONTEXT},\${EXTEN}))\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
if ($portabilidade) { if ($portabilidade) {
$linha = "exten => _$modelo,n(portabilidade),Macro(dial-saida-pstn,\${TRONCO}/\${DESTINO},r,\${ID_TRONCO},\${MAX_LIG})\n"; $linha = "exten => _$modelo,n(portabilidade),Gosub(macro-dial-saida-pstn,s,1,(\${TRONCO}/\${DESTINO},r,\${ID_TRONCO},\${MAX_LIG}))\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
} }
$linha = sprintf('exten => _%s,n,GotoIf($["${LIMITE}" = "OK"]?limite)%s', $modelo, "\n"); $linha = sprintf('exten => _%s,n,GotoIf($["${LIMITE}" = "OK"]?limite)%s', $modelo, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = "exten => _$modelo,n,Hangup()\n"; $linha = "exten => _$modelo,n,GoSub(macro-hangup,s,1,(\${CONTEXT},\${EXTEN}))\n";
fwrite($escreve, $linha); fwrite($escreve, $linha);
} }
/* /*
@ -2998,10 +2998,10 @@ function GeraExtRamais($dbcon) {
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,AGI(chefe-secretaria.php,${EXTEN},${CALLERID(num)})' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,AGI(chefe-secretaria.php,${EXTEN},${CALLERID(num)})' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,GotoIf($["${TIPO}" = "EXTERNA"]?externa:interna)' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,GotoIf($["${TIPO}" = "EXTERNA"]?externa:interna)' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n(interna),AGI(pbx_complemento.php,ext-ramais,interna)' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n(interna),AGI(pbx_complemento.php,ext-ramais,interna)' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,Macro(dial-interno,${EXTEN})' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,GoSub(macro-dial-interno,s,1,(${EXTEN},,,${CONTEXT},${EXTEN}))' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,Hangup()' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,Hangup()' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n(externa),AGI(pbx_complemento.php,ext-ramais)' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n(externa),AGI(pbx_complemento.php,ext-ramais)' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,Macro(dial-externo,${EXTEN})' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,GoSub(macro-dial-externo,s,1,(${EXTEN}))' . "\n");
fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,Hangup()' . "\n"); fwrite($escreve, 'exten => _' . $dados['org_id'] . $dados['nome'] . ',n,Hangup()' . "\n");
fwrite($escreveHint, 'exten => ' . $dados['org_id'] . $dados['nome'] . ',hint,' . $dados['dispositivo'] . "\n"); fwrite($escreveHint, 'exten => ' . $dados['org_id'] . $dados['nome'] . ',hint,' . $dados['dispositivo'] . "\n");

271
asterisk/etc_asterisk/extensions_padrao.conf

@ -118,7 +118,7 @@ exten => _X.,n,Hangup()
exten => _X.,n(MANUAL),Wait(1) exten => _X.,n(MANUAL),Wait(1)
exten => _X.,n,Set(RINGPADRAO=${TEMPODERING}) exten => _X.,n,Set(RINGPADRAO=${TEMPODERING})
exten => _X.,n,Set(RING=${IF($[ "X${DB(RING/${EXTEN})}" = "X" ]? ${RINGPADRAO}: ${DB(RING/${EXTEN})} )}) exten => _X.,n,Set(RING=${IF($[ "X${DB(RING/${EXTEN})}" = "X" ]? ${RINGPADRAO}: ${DB(RING/${EXTEN})} )})
exten => _X.,n,Dial(${DB(DIAL/${EXTEN})},${RING},tkrTM(info-agente,${EXTEN})) exten => _X.,n,Dial(${DB(DIAL/${EXTEN})},${RING},tkrTU(macro-info-agente,s,1,(${EXTEN})))
exten => _X.,n,Noop(status-${DIALSTATUS}) exten => _X.,n,Noop(status-${DIALSTATUS})
exten => _X.,n,Goto(status-${DIALSTATUS}) exten => _X.,n,Goto(status-${DIALSTATUS})
@ -322,39 +322,42 @@ exten => _7XX,1,Set(CHANNEL(dtmf_features)=K)
exten => _7XX,n,Goto(parkedcalls,${EXTEN},1) exten => _7XX,n,Goto(parkedcalls,${EXTEN},1)
exten => _7XX,n,Hangup() exten => _7XX,n,Hangup()
exten => _X.,1,Macro(planodediscagem,${EXTEN},${DAC},${CONTEXT:0:3}) exten => _X.,1,GoSub(macro-planodediscagem,s,1,(${EXTEN},${DAC},${CONTEXT:0:3}))
exten => _X.,n,Hangup() exten => _X.,n,Hangup()
[macro-planodediscagem] [macro-planodediscagem]
; ARG1 EXTEN
; ARG2 DAC
; ARG3 CONTEXT
exten => s,1,AGI(ramal_empresa.php,${CALLERID(num)}) exten => s,1,AGI(ramal_empresa.php,${CALLERID(num)})
exten => s,n,ExecIf($["${ISNULL(${ID_EMPRESA})}" = "0"]?Set(CDR(org_id)=${ID_EMPRESA})) exten => s,n,ExecIf($["${ISNULL(${ID_EMPRESA})}" = "0"]?Set(CDR(org_id)=${ID_EMPRESA}))
exten => s,n,ExecIf($["${ISNULL(${ID_EMPRESA})}" = "0"]?Set(EXTENDESTINO=${ID_EMPRESA}${ARG1})) exten => s,n,ExecIf($["${ISNULL(${ID_EMPRESA})}" = "0"]?Set(EXTENDESTINO=${ID_EMPRESA}${ARG1}))
exten => s,n,Macro(callerid,INTERNO) exten => s,n,GoSub(macro-callerid,s,1,(INTERNO))
exten => s,n,GotoIf($["${ARG3}" = "ura"]?discadireto) exten => s,n,GotoIf($["${ARG3}" = "ura"]?discadireto)
exten => s,n,GotoIf($["${ISNULL(${ARG2})}" = "0"]?chamadadac) exten => s,n,GotoIf($["${ISNULL(${ARG2})}" = "0"]?chamadadac)
;exten => s,n,Set(CDR(direcao)=S) ;exten => s,n,Set(CDR(direcao)=S)
exten => s,n,ExecIf($["${CDR(direcao)}" != "E" && "${ISNULL(${CDR(ramal_origem)})}" = "1"]?Set(CDR(ramal_origem)=${CALLERID(num)})) exten => s,n,ExecIf($["${CDR(direcao)}" != "E" && "${ISNULL(${CDR(ramal_origem)})}" = "1"]?Set(CDR(ramal_origem)=${CALLERID(num)}))
exten => s,n,Macro(verifica-rota,${CALLERID(NUM)},${EXTENDESTINO}) exten => s,n,GoSub(macro-verifica-rota,s,1,(${CALLERID(NUM)},${EXTENDESTINO}))
exten => s,n(chamadadac),ExecIf($["${ISNULL(${ARG2})}" = "0"]?Macro(verifica-rota,${EXTENDESTINO},${EXTENDESTINO}) exten => s,n(chamadadac),ExecIf($["${ISNULL(${ARG2})}" = "0"]?GoSub(macro-verifica-rota,s,1,(${EXTENDESTINO},${EXTENDESTINO}))
exten => s,n(discadireto),ExecIf($["${DIALPLAN_EXISTS(app-padrao,${EXTENDESTINO},1)}" = "1"]?Goto(app-padrao,${EXTENDESTINO},1)) exten => s,n(discadireto),ExecIf($["${DIALPLAN_EXISTS(app-padrao,${EXTENDESTINO},1)}" = "1"]?Goto(app-padrao,${EXTENDESTINO},1))
exten => s,n,ExecIf($["${DIALPLAN_EXISTS(rota-${ID_ROTA},${EXTENDESTINO},1)}" = "1"]?Gosub(rota-${ID_ROTA},${EXTENDESTINO},1)) exten => s,n,ExecIf($["${DIALPLAN_EXISTS(rota-${ID_ROTA},${EXTENDESTINO},1)}" = "1"]?Gosub(rota-${ID_ROTA},s,1,(${EXTENDESTINO},1)))
exten => s,n,GotoIf($["${DIALPLAN_EXISTS(rota-${ID_ROTA},${EXTENDESTINO},1)}" = "0"]?invalido) exten => s,n,GotoIf($["${DIALPLAN_EXISTS(rota-${ID_ROTA},${EXTENDESTINO},1)}" = "0"]?invalido)
;exten => s,n,MacroExit() ;exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(containvalida),Playback(appsounds/conta-invalida) exten => s,n(containvalida),Playback(appsounds/conta-invalida)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(alterasenha),Playback(appsounds/altere-senha) exten => s,n(alterasenha),Playback(appsounds/altere-senha)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sempermissao),Playback(appsounds/nao-tem-permissao) exten => s,n(sempermissao),Playback(appsounds/nao-tem-permissao)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(limite),Playback(appsounds/linhas_ocupadas) exten => s,n(limite),Playback(appsounds/linhas_ocupadas)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(senha),Playback(appsounds/utilize_senha) exten => s,n(senha),Playback(appsounds/utilize_senha)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(invalido),Playback(invalid) exten => s,n(invalido),Playback(invalid)
exten => s,n,MacroExit() exten => s,n,Return()
exten => h,1,Macro(hangup) exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
[app-consulta] [app-consulta]
exten => _X.,1,ExecIf($["${ISNULL(${MATRICULA-ORIGEM})}" = "0"]?Set(MATRICULA-ORIGEM=)) exten => _X.,1,ExecIf($["${ISNULL(${MATRICULA-ORIGEM})}" = "0"]?Set(MATRICULA-ORIGEM=))
@ -370,7 +373,7 @@ exten => _X.,n,Hangup()
; 3 => Agente/Grupo ; 3 => Agente/Grupo
exten => _X.,1,GotoIf($["${AGD_TIPO}" = "1"]?grupo) exten => _X.,1,GotoIf($["${AGD_TIPO}" = "1"]?grupo)
exten => _X.,n,AGI(status_agendamento_agentes.php,${AGENTE},${EXTEN},${TIPOLIGACAO},${ID_CLI}) exten => _X.,n,AGI(status_agendamento_agentes.php,${AGENTE},${EXTEN},${TIPOLIGACAO},${ID_CLI})
exten => _X.,n,Dial(Agent/${AGENTE},30,TtM(info-agente,AGENDAMENTO,${AGENTE},${CHANNEL},${CMP_ID})) exten => _X.,n,Dial(Agent/${AGENTE},30,TtU(macro-info-agente,s,1,(AGENDAMENTO,${AGENTE},${CHANNEL},${CMP_ID})))
exten => _X.,n(grupo),GotoIf($["${AGD_TIPO}" = "2"]?sair) exten => _X.,n(grupo),GotoIf($["${AGD_TIPO}" = "2"]?sair)
exten => _X.,n,Goto(ext-campanha,${CMP_ID},1) exten => _X.,n,Goto(ext-campanha,${CMP_ID},1)
exten => _X.,n(sair),Hangup() exten => _X.,n(sair),Hangup()
@ -438,7 +441,7 @@ exten => _X.,n,Set(__DAC="")
exten => _X.,n,Set(DB(TRANSFER/${EXTEN:0:4})=F) exten => _X.,n,Set(DB(TRANSFER/${EXTEN:0:4})=F)
exten => _X.,n,Set(DB(CONFERENCIA/${EXTEN:0:4})=F) exten => _X.,n,Set(DB(CONFERENCIA/${EXTEN:0:4})=F)
exten => _X.,n,AGI(resolve_callerid.php,${CHANNEL}) exten => _X.,n,AGI(resolve_callerid.php,${CHANNEL})
exten => _X.,n,Dial(Local/${DESTINO}@${CONTEXTORAMAL}/n,,rgM(get-canal-transfer,${EXTEN:0:4})) exten => _X.,n,Dial(Local/${DESTINO}@${CONTEXTORAMAL}/n,,rgU(macro-get-canal-transfer,s,1,(${EXTEN:0:4})))
exten => _X.,n,Noop(sair => ${SAIR}) exten => _X.,n,Noop(sair => ${SAIR})
exten => _X.,n,Set(__ESPERA_AGENTE=) exten => _X.,n,Set(__ESPERA_AGENTE=)
exten => _X.,n,GotoIf($["${SAIR}" = "OK"]?sair) exten => _X.,n,GotoIf($["${SAIR}" = "OK"]?sair)
@ -451,14 +454,14 @@ exten => _X.,n,ChannelRedirect(${CHANNEL},app-estaciona,${EXTEN:0:4},1)
;exten => _X.,n(sair),System(${ATUALIZAR} LIVRE ${MATRICULA}) ;exten => _X.,n(sair),System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => _X.,n(sair),Hangup() exten => _X.,n(sair),Hangup()
exten => h,1,Macro(hangup) exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
[app-estaciona] [app-estaciona]
exten => _X.,1,ResetCDR(w) exten => _X.,1,ResetCDR(w)
exten => _X.,n,ParkedCall(,${DB(ESTACIONA/${EXTEN})}) exten => _X.,n,ParkedCall(,${DB(ESTACIONA/${EXTEN})})
exten => _X.,n,Hangup() exten => _X.,n,Hangup()
exten => h,1,Macro(hangup) exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
[app-conferencia] [app-conferencia]
exten => _X.,1,NoCDR() exten => _X.,1,NoCDR()
@ -670,7 +673,7 @@ exten => _X.,7(silencio),AGI(pbx_complemento.php,ext-voicemail)
exten => _X.,8,Voicemail(${DB(VM/${EXTEN})}@default,s) exten => _X.,8,Voicemail(${DB(VM/${EXTEN})}@default,s)
exten => _X.,9,Hangup() exten => _X.,9,Hangup()
exten => h,1,Macro(hangup) exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
[disa] [disa]
include => disa_custom include => disa_custom
@ -742,7 +745,7 @@ exten => _X.,n,Hangup()
;exten => h,n(limpa),DBdeltree(AGUARDANDO/${DEST}) ;exten => h,n(limpa),DBdeltree(AGUARDANDO/${DEST})
;exten => h,n,DBdeltree(POSICAO/${DEST}) ;exten => h,n,DBdeltree(POSICAO/${DEST})
;;exten => h,n,Goto(macro-dial-interno,h,1) ;;exten => h,n,Goto(macro-dial-interno,h,1)
exten => h,1,Macro(hangup) exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
;Controle das ligacoes recebidas pelos agentes quando logados ;Controle das ligacoes recebidas pelos agentes quando logados
[app-dial-agente] [app-dial-agente]
@ -755,7 +758,7 @@ exten => _X.,n,Noop(matricula = ${MATRICULA-DESTINO}, fila = ${FILA-DESTINO}, di
;exten => _X.,n,AGI(info_agente.php,DIAL_AGENTE,${MATRICULA-DESTINO},${UNIQUEID}) ;exten => _X.,n,AGI(info_agente.php,DIAL_AGENTE,${MATRICULA-DESTINO},${UNIQUEID})
;exten => _X.,n,Set(INICIO_DIAL=$[${EPOCH}]) ;exten => _X.,n,Set(INICIO_DIAL=$[${EPOCH}])
;exten => _X.,n,Set(__DIRECAO=${DIRECAO}) ;exten => _X.,n,Set(__DIRECAO=${DIRECAO})
;exten => _X.,n,Dial(Agent/${EXTEN},,gtM(eventos-conecta-agente,${FILA},${UNIQUEID},${MATRICULA},${INICIO_DIAL},${CHANNEL})) ;exten => _X.,n,Dial(Agent/${EXTEN},,gtM(macro-eventos-conecta-agente,${FILA},${UNIQUEID},${MATRICULA},${INICIO_DIAL},${CHANNEL}))
exten => _X.,n,QueueLog(${FILA-DESTINO},${UNIQUEID},Agent/${MATRICULA-DESTINO},CHAMANDO,ENTRADA,${TIPO},${CALLERID(NUM)}) exten => _X.,n,QueueLog(${FILA-DESTINO},${UNIQUEID},Agent/${MATRICULA-DESTINO},CHAMANDO,ENTRADA,${TIPO},${CALLERID(NUM)})
exten => _X.,n,Set(TRANSFERENCIA=${IF($[ "${TIPO}" = "INTERNA" ]? TK:)}) exten => _X.,n,Set(TRANSFERENCIA=${IF($[ "${TIPO}" = "INTERNA" ]? TK:)})
@ -765,7 +768,7 @@ exten => _X.,n,Set(RING=${IF($[ "X${DB(RING/${RAMALAGENTE})}" = "X" ]? ${RINGPAD
exten => _X.,n,Set(DIALAGENTE=${IF($[ "${MODOATENDIMENTO}" = "AUTO" ]? Local/${RAMALAGENTE}@app-callcenter/n: ${DB(DIAL/${RAMALAGENTE})} )}) exten => _X.,n,Set(DIALAGENTE=${IF($[ "${MODOATENDIMENTO}" = "AUTO" ]? Local/${RAMALAGENTE}@app-callcenter/n: ${DB(DIAL/${RAMALAGENTE})} )})
exten => _X.,n,Dial(${DIALAGENTE},${RING},${TRANSFERENCIA}gtkM(eventos-conecta-agente,${FILA-DESTINO},${UNIQUEID},${MATRICULA-DESTINO},${INICIO_DIAL},${CHANNEL})) exten => _X.,n,Dial(${DIALAGENTE},${RING},${TRANSFERENCIA}gtkU(macro-eventos-conecta-agente,s,1,(${FILA-DESTINO},${UNIQUEID},${MATRICULA-DESTINO},${INICIO_DIAL},${CHANNEL})))
exten => _X.,n,Set(FIM_DIAL=$[${EPOCH}]) exten => _X.,n,Set(FIM_DIAL=$[${EPOCH}])
;exten => _X.,n,Set(EVENTO=$[COMPLETAAGENT]) ;exten => _X.,n,Set(EVENTO=$[COMPLETAAGENT])
;Alterado para COMPLETEAGENT para identificar as ligacoes de entrada (relatorios e audio) ;Alterado para COMPLETEAGENT para identificar as ligacoes de entrada (relatorios e audio)
@ -879,7 +882,7 @@ exten => s,n,Hangup()
;Macros do Sistema ;Macros do Sistema
[macro-verifica-dial-agente] [macro-verifica-dial-agente]
exten => s,1,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "1"]?MacroExit()) exten => s,1,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "1"]?Return())
exten => s,n,Set(FIM_DIAL=$[${EPOCH}]) exten => s,n,Set(FIM_DIAL=$[${EPOCH}])
exten => s,n,Set(EVENTO=$[COMPLETEAGENTRAMAL]) exten => s,n,Set(EVENTO=$[COMPLETEAGENTRAMAL])
exten => s,n,Set(INICIO_ATENDIMENTO=${DB(INICIO_ATENDIMENTO/${UNIQUEID})}) exten => s,n,Set(INICIO_ATENDIMENTO=${DB(INICIO_ATENDIMENTO/${UNIQUEID})})
@ -898,15 +901,15 @@ exten => s,n,QueueLog(${FILA-DESTINO},${UNIQUEID},Agent/${MATRICULA-DESTINO},${E
exten => s,n,Set(DB(CANAL/${MATRICULA-DESTINO}/${IDORIGEM})=DESLIGADO) exten => s,n,Set(DB(CANAL/${MATRICULA-DESTINO}/${IDORIGEM})=DESLIGADO)
exten => s,n,System(${ATUALIZAR} LIVRE ${MATRICULA-DESTINO}) exten => s,n,System(${ATUALIZAR} LIVRE ${MATRICULA-DESTINO})
exten => s,n,AGI(agente_pausa.php,${MATRICULA-DESTINO}) exten => s,n,AGI(agente_pausa.php,${MATRICULA-DESTINO})
exten => s,n,MacroExit() exten => s,n,Return()
;Macro para ligações originadas por agentes ;Macro para ligações originadas por agentes
[macro-origina-agente] [macro-origina-agente]
exten => s,1,Set(__TIPO=${IF($[ "X${TIPO}" = "X" ]?INTERNA:${TIPO})}) ;VERIFICAR O POR QUE ?? exten => s,1,Set(__TIPO=${IF($[ "X${TIPO}" = "X" ]?INTERNA:${TIPO})}) ;VERIFICAR O POR QUE ??
exten => s,n,Noop(matricula = ${MATRICULA-ORIGEM}, fila = ${FILA}, direcao = ${DIRECAO}, tipo = ${TIPO}, uniqueid = ${UNIQUEID}) exten => s,n,Noop(matricula = ${MATRICULA-ORIGEM}, fila = ${FILA}, direcao = ${DIRECAO}, tipo = ${TIPO}, uniqueid = ${UNIQUEID})
exten => s,n,QueueLog(${FILA-ORIGEM},${UNIQUEID},Agent/${MATRICULA-ORIGEM},CHAMANDO,SAIDA,${TIPO},${RAMAL}) exten => s,n,QueueLog(${FILA-ORIGEM},${UNIQUEID},Agent/${MATRICULA-ORIGEM},CHAMANDO,SAIDA,${TIPO},${RAMAL})
exten => s,n,Macro(gravacao,OUT,${RAMAL}) exten => s,n,GoSub(macro-gravacao,s,1,(OUT,${RAMAL}))
exten => s,n,MacroExit() exten => s,n,Return()
;exten => s,1,PauseQueueMember(,Agent/${ARG4}) ;exten => s,1,PauseQueueMember(,Agent/${ARG4})
;exten => s,n,Set(ORIGEM=${ARG1}) ;exten => s,n,Set(ORIGEM=${ARG1})
@ -930,8 +933,7 @@ exten => s,1,ExecIf($["${ISNULL(${ARG5})}" = "0"]?Set(CHANNEL(parkinglot)=${CALL
exten => s,n,ExecIf($["${ISNULL(${ARG5})}" = "0"]?Set(PARKINGDYNPOS=${CALLERID(num)}1-${CALLERID(num)}2)) exten => s,n,ExecIf($["${ISNULL(${ARG5})}" = "0"]?Set(PARKINGDYNPOS=${CALLERID(num)}1-${CALLERID(num)}2))
exten => s,n,ExecIf($["${ISNULL(${ARG5})}" = "0"]?Set(PARKINGDYNEXTEN=${CALLERID(num)})) exten => s,n,ExecIf($["${ISNULL(${ARG5})}" = "0"]?Set(PARKINGDYNEXTEN=${CALLERID(num)}))
exten => s,n,ExecIf($["X${ARG1}" = "X"]?Return())
exten => s,n,ExecIf($["X${ARG1}" = "X"]?MacroExit())
exten => s,n,Set(ARG2=${IF($[${ISNULL(${ARG2})}]?${IDORIGEM}:${ARG2})}) exten => s,n,Set(ARG2=${IF($[${ISNULL(${ARG2})}]?${IDORIGEM}:${ARG2})})
exten => s,n,Set(INICIO_ATENDIMENTO=${EPOCH}) exten => s,n,Set(INICIO_ATENDIMENTO=${EPOCH})
exten => s,n,Set(ATENDIDA_FILA=SIM) exten => s,n,Set(ATENDIDA_FILA=SIM)
@ -941,8 +943,7 @@ exten => s,n,ExecIf($["${ISNULL(${MATRICULA-ORIGEM})}" = "0"]?AGI(agente_dial.ph
exten => s,n,ExecIf($["${ISNULL(${MATRICULA-ORIGEM})}" = "0"]?QueueLog(${FILA-ORIGEM},${ARG2},Agent/${MATRICULA-ORIGEM},ATENDIDA,${TEMPO_CHAMANDO})) exten => s,n,ExecIf($["${ISNULL(${MATRICULA-ORIGEM})}" = "0"]?QueueLog(${FILA-ORIGEM},${ARG2},Agent/${MATRICULA-ORIGEM},ATENDIDA,${TEMPO_CHAMANDO}))
exten => s,n,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "0"]?AGI(agente_dial.php,DESTINO,${CHANNEL},${MATRICULA-DESTINO},${ARG2},${FILA-DESTINO},${CANALORIGEM},${RAMAL})) exten => s,n,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "0"]?AGI(agente_dial.php,DESTINO,${CHANNEL},${MATRICULA-DESTINO},${ARG2},${FILA-DESTINO},${CANALORIGEM},${RAMAL}))
exten => s,n,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "0"]?QueueLog(${FILA-DESTINO},${ARG2},Agent/${MATRICULA-DESTINO},ATENDIDA,${TEMPO_CHAMANDO})) exten => s,n,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "0"]?QueueLog(${FILA-DESTINO},${ARG2},Agent/${MATRICULA-DESTINO},ATENDIDA,${TEMPO_CHAMANDO}))
exten => s,n,MacroExit() exten => s,n,Return()
;exten => s,n,Set(FILA=${ARG1}) ;exten => s,n,Set(FILA=${ARG1})
@ -963,20 +964,22 @@ exten => s,n,MacroExit()
;ARG1 -> Recebe o numero do ramal de destino (geralmente a variavel ${EXTEN} ;ARG1 -> Recebe o numero do ramal de destino (geralmente a variavel ${EXTEN}
;TEMPODERING -> Variavel definida no contexto globals ;TEMPODERING -> Variavel definida no contexto globals
;OPCOESDIAL -> Variavel definida no contexto globals ;OPCOESDIAL -> Variavel definida no contexto globals
;CONTEXT - MACRO_CONTEXT
;EXTEN - MACRO_EXTEN
;exten => s,1,SIPAddHeader(Alert-Info:Bellcore-r7) ;exten => s,1,SIPAddHeader(Alert-Info:Bellcore-r7)
;exten => s,1,GotoIf($["${CHANNEL:0:5}" != "Local"]?inicio) ;exten => s,1,GotoIf($["${CHANNEL:0:5}" != "Local"]?inicio)
;exten => s,1,ResetCDR(w) ;exten => s,1,ResetCDR(w)
exten => s,1,Set(_PICKUPMARK=${MACRO_EXTEN}) exten => s,1,Set(_PICKUPMARK=${ARG5})
exten => s,n,Set(_TIPO=INTERNA) exten => s,n,Set(_TIPO=INTERNA)
exten => s,n,Set(DB(ULTIMO-DISCADO/${CALLERID(NUM)})=${DB(DIAL/${ARG1})}) exten => s,n,Set(DB(ULTIMO-DISCADO/${CALLERID(NUM)})=${DB(DIAL/${ARG1})})
exten => s,n,GotoIf($["${DB(NAOPERTUBE/${ARG1})}" = "V"]?naopertube) exten => s,n,GotoIf($["${DB(NAOPERTUBE/${ARG1})}" = "V"]?naopertube)
exten => s,n,GotoIf($["${DB(SIGAME-INTERNO/${ARG1})}" != "F"]?sigameinterno) exten => s,n,GotoIf($["${DB(SIGAME-INTERNO/${ARG1})}" != "F"]?sigameinterno)
exten => s,n,GotoIf($["${DB(SIGAME-EXTERNO/${ARG1})}" != "F"]?sigameexterno) exten => s,n,GotoIf($["${DB(SIGAME-EXTERNO/${ARG1})}" != "F"]?sigameexterno)
exten => s,n,Set(CHANNEL(musicclass)=${DB(MUSICA-ESPERA/${ARG1})}) exten => s,n,Set(CHANNEL(musicclass)=${DB(MUSICA-ESPERA/${ARG1})})
exten => s,n,Macro(gravacao,IN,${ARG1}) exten => s,n,GoSub(macro-gravacao,s,1,(IN,${ARG1}))
exten => s,n,Macro(gravacao,OUT,${CALLERID(num)}) exten => s,n,GoSub(macro-gravacao,s,1,(OUT,${CALLERID(num)}))
exten => s,n,Set(DB(ULTIMO-RECEBIDO/${ARG1})=${CALLERID(NUM)}) exten => s,n,Set(DB(ULTIMO-RECEBIDO/${ARG1})=${CALLERID(NUM)})
exten => s,n,Macro(callerid,INTERNO) exten => s,n,GoSub(macro-callerid,s,1,(INTERNO))
exten => s,n,GotoIf($["X${ARG2}" = "X"]?ramal) exten => s,n,GotoIf($["X${ARG2}" = "X"]?ramal)
exten => s,n,Set(TEMPODERING=${ARG2}) exten => s,n,Set(TEMPODERING=${ARG2})
exten => s,n,Set(OPCOESDIAL=${ARG3}) exten => s,n,Set(OPCOESDIAL=${ARG3})
@ -1006,60 +1009,60 @@ exten => s,n,Set(__PARKINGDYNEXTEN=${CALLERID(NUM)})
;exten => s,n,Dial(${DB(DIAL/${ARG1})},${RING},TtKkg${OPCOESDIAL}rM(eventos-conecta-agente,${FILA-ORIGEM},${IDORIGEM},${MATRICULA-ORIGEM},${INICIO_DIAL},${IF($["${ISNULL(${DB(DIAL/${CALLERID(NUM)})})}" = "0"]?${CALLERID(NUM)})})) ;exten => s,n,Dial(${DB(DIAL/${ARG1})},${RING},TtKkg${OPCOESDIAL}rM(eventos-conecta-agente,${FILA-ORIGEM},${IDORIGEM},${MATRICULA-ORIGEM},${INICIO_DIAL},${IF($["${ISNULL(${DB(DIAL/${CALLERID(NUM)})})}" = "0"]?${CALLERID(NUM)})}))
exten => s,n,Dial(${DB(DIAL/${ARG1})},${RING},TtKkg${OPCOESDIAL}rM(eventos-conecta-agente,${FILA-ORIGEM},${IDORIGEM},${MATRICULA-ORIGEM},${INICIO_DIAL},1)) exten => s,n,Dial(${DB(DIAL/${ARG1})},${RING},TtKkg${OPCOESDIAL}rU(macro-eventos-conecta-agente,s,1,(${FILA-ORIGEM},${IDORIGEM},${MATRICULA-ORIGEM},${INICIO_DIAL},1)))
exten => s,n,ExecIf($["${DIALSTATUS}" = "ANSWER"]?Set(CDR_PROP(disable)=1)) exten => s,n,ExecIf($["${DIALSTATUS}" = "ANSWER"]?Set(CDR_PROP(disable)=1))
exten => s,n,ExecIf($["${DIALSTATUS}" = "BUSY"]?Set(CDR_PROP(disable)=1)) exten => s,n,ExecIf($["${DIALSTATUS}" = "BUSY"]?Set(CDR_PROP(disable)=1))
exten => s,n,GotoIf($["${CALLCENTER}" = "SIM"]?callcenter) exten => s,n,GotoIf($["${CALLCENTER}" = "SIM"]?callcenter)
exten => s,n,Noop(DAC = ${DAC}) exten => s,n,Noop(DAC = ${DAC})
exten => s,n,ExecIf($["${ISNULL(${DAC})}" = "0"]?MacroExit()) exten => s,n,ExecIf($["${ISNULL(${DAC})}" = "0"]?Return())
exten => s,n,Goto(status-${DIALSTATUS}) exten => s,n,Goto(status-${DIALSTATUS})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-ANSWER),AGI(${INTEGRACAO_ABD},${IDORIGEM},,${CALLERID(num)},${ARG1}) exten => s,n(status-ANSWER),AGI(${INTEGRACAO_ABD},${IDORIGEM},,${CALLERID(num)},${ARG1})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-BUSY),Set(_OCUPADO=) exten => s,n(status-BUSY),Set(_OCUPADO=)
exten => s,n,GotoIf($["${DB(SIGAME-OCUPADO/${ARG1})}" != "F"]?sigameocupado) exten => s,n,GotoIf($["${DB(SIGAME-OCUPADO/${ARG1})}" != "F"]?sigameocupado)
exten => s,n,GotoIf($["${DB(CHAMADA-ESPERA/${ARG1})}" = "V"]?chamada-espera,${ARG1},1) exten => s,n,GotoIf($["${DB(CHAMADA-ESPERA/${ARG1})}" = "V"]?chamada-espera,${ARG1},1)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ocupado) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ocupado)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-NOANSWER),AGI(${INTEGRACAO_ABD},${IDORIGEM},CHAMADARAMAL,${CALLERID(NUM)},${ARG1}) exten => s,n(status-NOANSWER),AGI(${INTEGRACAO_ABD},${IDORIGEM},CHAMADARAMAL,${CALLERID(NUM)},${ARG1})
exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-CHANUNAVAIL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n(status-CHANUNAVAIL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-CANCEL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n(status-CANCEL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-CONGESTION),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n(status-CONGESTION),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(naopertube),Noop(NAO PERTUBE ATIVADO) exten => s,n(naopertube),Noop(NAO PERTUBE ATIVADO)
exten => s,n,Playback(do-not-disturb) exten => s,n,Playback(do-not-disturb)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigameinterno),Noop(SIGAME INTERNO ATIVADO PARA ${DB(SIGAME-INTERNO/${ARG1})}) exten => s,n(sigameinterno),Noop(SIGAME INTERNO ATIVADO PARA ${DB(SIGAME-INTERNO/${ARG1})})
exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-interno,${DB(SIGAME-INTERNO/${ARG1})}) exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-interno,${DB(SIGAME-INTERNO/${ARG1})})
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-INTERNO/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-INTERNO/${ARG1})},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigameocupado),Noop(SIGAME OCUPADO ATIVADO PARA ${DB(SIGAME-OCUPADO/${ARG1})}) exten => s,n(sigameocupado),Noop(SIGAME OCUPADO ATIVADO PARA ${DB(SIGAME-OCUPADO/${ARG1})})
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
;exten => s,n,Set(CALLERID(num)=${ARG1}) ;exten => s,n,Set(CALLERID(num)=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-OCUPADO/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-OCUPADO/${ARG1})},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigamenaoatende),Noop(SIGAME NAO ATENDE ATIVADO PARA ${DB(SIGAME-NAOATENDE/${ARG1})}) exten => s,n(sigamenaoatende),Noop(SIGAME NAO ATENDE ATIVADO PARA ${DB(SIGAME-NAOATENDE/${ARG1})})
;exten => s,n,Set(__PERMISSAO=OK) ;exten => s,n,Set(__PERMISSAO=OK)
@ -1067,7 +1070,7 @@ exten => s,n(sigamenaoatende),Noop(SIGAME NAO ATENDE ATIVADO PARA ${DB(SIGAME-NA
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-NAOATENDE/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-NAOATENDE/${ARG1})},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigameexterno),Noop(SIGAME EXTERNO ATIVADO PARA ${DB(SIGAME-EXTERNO/${ARG1})}) exten => s,n(sigameexterno),Noop(SIGAME EXTERNO ATIVADO PARA ${DB(SIGAME-EXTERNO/${ARG1})})
exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-externo,${DB(SIGAME-EXTERNO/${ARG1})}) exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-externo,${DB(SIGAME-EXTERNO/${ARG1})})
@ -1075,35 +1078,35 @@ exten => s,n,Set(__RAMAL=${ARG1})
exten => s,n,Set(CALLERID(num)=${ARG1}) exten => s,n,Set(CALLERID(num)=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-EXTERNO/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-EXTERNO/${ARG1})},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(chamada-espera),Goto(chamada-espera,${ARG1},1) exten => s,n(chamada-espera),Goto(chamada-espera,${ARG1},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
;exten => s,n(pausa),Busy() ;exten => s,n(pausa),Busy()
;exten => s,n,MacroExit() ;exten => s,n,Return()
exten => s,n(pausa),Set(_PAUSA=) exten => s,n(pausa),Set(_PAUSA=)
exten => s,n,ExecIf($["X${DAC}" != "X"]?MacroExit()) exten => s,n,ExecIf($["X${DAC}" != "X"]?Return())
exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(naoclassificada),Set(_CLASSIFICADA=) exten => s,n(naoclassificada),Set(_CLASSIFICADA=)
exten => s,n,ExecIf($["X${DAC}" != "X"]?MacroExit()) exten => s,n,ExecIf($["X${DAC}" != "X"]?Return())
exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,Playback(appsounds/ocupado) exten => s,n,Playback(appsounds/ocupado)
exten => s,n,MacroExit() exten => s,n,Return()
;exten => s,n(callcenter),GotoIf($["${CONSULTANDO}" = "SIM"]?h,sair) ;exten => s,n(callcenter),GotoIf($["${CONSULTANDO}" = "SIM"]?h,sair)
exten => s,n(callcenter),GotoIf($["${CONSULTANDO}" = "SIM"]?sair) exten => s,n(callcenter),GotoIf($["${CONSULTANDO}" = "SIM"]?sair)
exten => s,n,Set(FIM_DIAL=$[${EPOCH}]) exten => s,n,Set(FIM_DIAL=$[${EPOCH}])
exten => s,n,Set(EVENTO=$[COMPLETACALLER]) exten => s,n,Set(EVENTO=$[COMPLETACALLER])
exten => s,n(sair),MacroExit() exten => s,n(sair),Return()
;exten => s,n(sair),Hangup() ;exten => s,n(sair),Hangup()
;exten => h,1,Macro(hangup) ;exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
[macro-dial-externo] [macro-dial-externo]
;ARG1 -> Recebe o numero do ramal (geralmente a variavel ${CALLERID(NUM)} ;ARG1 -> Recebe o numero do ramal (geralmente a variavel ${CALLERID(NUM)}
@ -1115,8 +1118,8 @@ exten => s,n,GotoIf($["${DB(NAOPERTUBE/${ARG1})}" = "V"]?naopertube)
exten => s,n,GotoIf($["${DB(SIGAME-INTERNO/${ARG1})}" != "F"]?sigameinterno) exten => s,n,GotoIf($["${DB(SIGAME-INTERNO/${ARG1})}" != "F"]?sigameinterno)
exten => s,n,GotoIf($["${DB(SIGAME-EXTERNO/${ARG1})}" != "F"]?sigameexterno) exten => s,n,GotoIf($["${DB(SIGAME-EXTERNO/${ARG1})}" != "F"]?sigameexterno)
exten => s,n,Set(CHANNEL(musicclass)=${DB(MUSICA-ESPERA/${ARG1})}) exten => s,n,Set(CHANNEL(musicclass)=${DB(MUSICA-ESPERA/${ARG1})})
exten => s,n,Macro(gravacao,IN,${ARG1}) exten => s,n,GoSub(macro-gravacao,s,1,(IN,${ARG1}))
exten => s,n,Macro(gravacao,OUT,${CALLERID(num)}) exten => s,n,GoSub(macro-gravacao,s,1,(OUT,${CALLERID(num)}))
exten => s,n,Set(DB(ULTIMO-RECEBIDO/${ARG1})=${CALLERID(NUM)}) exten => s,n,Set(DB(ULTIMO-RECEBIDO/${ARG1})=${CALLERID(NUM)})
;exten => s,n,GotoIf($["${CALLCENTER}" = "SIM"]?app-dial-agente,${MATRICULA},1) ;exten => s,n,GotoIf($["${CALLCENTER}" = "SIM"]?app-dial-agente,${MATRICULA},1)
exten => s,n,GotoIf($["${PAUSA}" = "SIM"]?pausa) exten => s,n,GotoIf($["${PAUSA}" = "SIM"]?pausa)
@ -1132,39 +1135,39 @@ exten => s,n,Set(CHANNEL(musicclass)=${IF($["X${CHANNEL(musicclass)}" = "X"]?def
;exten => s,n,Set(__PARKINGDYNPOS=${ARG1}1-${ARG1}2) ;exten => s,n,Set(__PARKINGDYNPOS=${ARG1}1-${ARG1}2)
;exten => s,n,Set(__PARKINGDYNEXTEN=${ARG1}) ;exten => s,n,Set(__PARKINGDYNEXTEN=${ARG1})
exten => s,n,Dial(${DB(DIAL/${ARG1})},${RING},tk${OPCOESDIAL}rM(eventos-conecta-agente,,,,,1)) exten => s,n,Dial(${DB(DIAL/${ARG1})},${RING},tk${OPCOESDIAL}rU(macro-eventos-conecta-agente,s,1,(,,,,,1)))
exten => s,n,ExecIf($["X${DAC}" != "X"]?MacroExit()) exten => s,n,ExecIf($["X${DAC}" != "X"]?Return())
exten => s,n,Goto(status-${DIALSTATUS}) exten => s,n,Goto(status-${DIALSTATUS})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-ANSWER),MacroExit() exten => s,n(status-ANSWER),Return()
exten => s,n(status-BUSY),Set(_OCUPADO=) exten => s,n(status-BUSY),Set(_OCUPADO=)
exten => s,n,GotoIf($["${DB(SIGAME-OCUPADO/${ARG1})}" != "F"]?sigameocupado) exten => s,n,GotoIf($["${DB(SIGAME-OCUPADO/${ARG1})}" != "F"]?sigameocupado)
exten => s,n,GotoIf($["${DB(CHAMADA-ESPERA/${ARG1})}" = "V"]?chamada-espera,${ARG1},1) exten => s,n,GotoIf($["${DB(CHAMADA-ESPERA/${ARG1})}" = "V"]?chamada-espera,${ARG1},1)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ocupado) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ocupado)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-NOANSWER),AGI(${INTEGRACAO_ABD},${IDORIGEM},CHAMADARAMAL,${CALLERID(NUM)},${ARG1}) exten => s,n(status-NOANSWER),AGI(${INTEGRACAO_ABD},${IDORIGEM},CHAMADARAMAL,${CALLERID(NUM)},${ARG1})
exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-CHANUNAVAIL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n(status-CHANUNAVAIL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-CANCEL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n(status-CANCEL),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-CONGESTION),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n(status-CONGESTION),GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(naopertube),Noop(NAO PERTUBE ATIVADO) exten => s,n(naopertube),Noop(NAO PERTUBE ATIVADO)
exten => s,n,Playback(do-not-disturb) exten => s,n,Playback(do-not-disturb)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigameinterno),Noop(SIGAME INTERNO ATIVADO PARA ${DB(SIGAME-INTERNO/${ARG1})}) exten => s,n(sigameinterno),Noop(SIGAME INTERNO ATIVADO PARA ${DB(SIGAME-INTERNO/${ARG1})})
exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-interno,${DB(SIGAME-INTERNO/${ARG1})}) exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-interno,${DB(SIGAME-INTERNO/${ARG1})})
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-INTERNO/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-INTERNO/${ARG1})},1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigameocupado),Noop(SIGAME OCUPADO ATIVADO PARA ${DB(SIGAME-OCUPADO/${ARG1})}) exten => s,n(sigameocupado),Noop(SIGAME OCUPADO ATIVADO PARA ${DB(SIGAME-OCUPADO/${ARG1})})
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
@ -1172,13 +1175,13 @@ exten => s,n,Set(__PERMISSAO=OK)
;exten => s,n,Set(CALLERID(num)=${ARG1}) ;exten => s,n,Set(CALLERID(num)=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-OCUPADO/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-OCUPADO/${ARG1})},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigamenaoatende),Noop(SIGAME NAO ATENDE ATIVADO PARA ${DB(SIGAME-NAOATENDE/${ARG1})})exten => s,n,Set(__PERMISSAO=OK) exten => s,n(sigamenaoatende),Noop(SIGAME NAO ATENDE ATIVADO PARA ${DB(SIGAME-NAOATENDE/${ARG1})})exten => s,n,Set(__PERMISSAO=OK)
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-NAOATENDE/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-NAOATENDE/${ARG1})},1)
;exten => s,n,Busy(1) ;exten => s,n,Busy(1)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(sigameexterno),Noop(SIGAME EXTERNO ATIVADO PARA ${DB(SIGAME-EXTERNO/${ARG1})}) exten => s,n(sigameexterno),Noop(SIGAME EXTERNO ATIVADO PARA ${DB(SIGAME-EXTERNO/${ARG1})})
;exten => s,n,Set(CALLERID(ALL)=${ARG1}) ;exten => s,n,Set(CALLERID(ALL)=${ARG1})
@ -1186,7 +1189,7 @@ exten => s,n,Agi(pbx_complemento.php,macro-dial-interno,sigame-externo,${DB(SIGA
exten => s,n,Set(__RAMAL=${ARG1}) exten => s,n,Set(__RAMAL=${ARG1})
exten => s,n,Set(CALLERID(num)=${ARG1}) exten => s,n,Set(CALLERID(num)=${ARG1})
exten => s,n,Goto(padrao,${DB(SIGAME-EXTERNO/${ARG1})},1) exten => s,n,Goto(padrao,${DB(SIGAME-EXTERNO/${ARG1})},1)
exten => s,n,MacroExit() exten => s,n,Return()
;exten => s,n(sigameinterno),Noop(SIGAME INTERNO ATIVADO PARA ${DB(SIGAME-INTERNO/${ARG1})}) ;exten => s,n(sigameinterno),Noop(SIGAME INTERNO ATIVADO PARA ${DB(SIGAME-INTERNO/${ARG1})})
;exten => s,n,Goto(padrao,${DB(SIGAME-INTERNO/${ARG1})},1) ;exten => s,n,Goto(padrao,${DB(SIGAME-INTERNO/${ARG1})},1)
@ -1200,21 +1203,21 @@ exten => s,n(chamada-espera),Goto(chamada-espera,${ARG1},1)
exten => s,n,Hangup() exten => s,n,Hangup()
;exten => s,n(pausa),Busy() ;exten => s,n(pausa),Busy()
;exten => s,n,MacroExit() ;exten => s,n,Return()
exten => s,n(pausa),Set(_PAUSA=) exten => s,n(pausa),Set(_PAUSA=)
exten => s,n,ExecIf($["X${DAC}" != "X"]?MacroExit()) exten => s,n,ExecIf($["X${DAC}" != "X"]?Return())
exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(naoclassificada),Set(_CLASSIFICADA=) exten => s,n(naoclassificada),Set(_CLASSIFICADA=)
exten => s,n,ExecIf($["X${DAC}" != "X"]?MacroExit()) exten => s,n,ExecIf($["X${DAC}" != "X"]?Return())
exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende) exten => s,n,GotoIf($["${DB(SIGAME-NAOATENDE/${ARG1})}" != "F"]?sigamenaoatende)
exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente) exten => s,n,GotoIf($["F${DB(VM/${ARG1})}" != "F"]?ext-voicemail,${ARG1},ausente)
exten => s,n,Playback(appsounds/ocupado) exten => s,n,Playback(appsounds/ocupado)
exten => s,n,MacroExit() exten => s,n,Return()
exten => h,1,Macro(hangup) exten => h,1,GoSub(macro-hangup,s,1,(${CONTEXT},${EXTEN}))
[macro-hangup] [macro-hangup]
exten => s,1,Set(FIM_DIAL=${IF($[ "X${FIM_DIAL}" = "X" ]?${EPOCH}:${FIM_DIAL})}) exten => s,1,Set(FIM_DIAL=${IF($[ "X${FIM_DIAL}" = "X" ]?${EPOCH}:${FIM_DIAL})})
@ -1293,7 +1296,7 @@ exten => s,n(desliga),AGI(tarifaFinaliza.php,${UNIQUEID})
exten => s,n,ExecIf($["${ISNULL(${CUT(TRANSFERERNAME,@,1)})}" = "0"]?System(${ATUALIZAR} CANALTRANSFER ${CUT(TRANSFERERNAME,@,1)})) exten => s,n,ExecIf($["${ISNULL(${CUT(TRANSFERERNAME,@,1)})}" = "0"]?System(${ATUALIZAR} CANALTRANSFER ${CUT(TRANSFERERNAME,@,1)}))
exten => s,n,ExecIf($["${ISNULL(${DAC})}" = "0" | "${ISNULL(${FILA-ORIGEM})}" = "0"]?AGI(${INTEGRACAO_ABD},${UNIQUEID},${IF($[${ISNULL(${DAC})}]?${FILA-ORIGEM}:${DAC})},${IF($[${ISNULL(${DESTINO-ORIGEM})}]?${BINA_RETORNO}:${DESTINO-ORIGEM})},${MATRICULA_RETORNO})) exten => s,n,ExecIf($["${ISNULL(${DAC})}" = "0" | "${ISNULL(${FILA-ORIGEM})}" = "0"]?AGI(${INTEGRACAO_ABD},${UNIQUEID},${IF($[${ISNULL(${DAC})}]?${FILA-ORIGEM}:${DAC})},${IF($[${ISNULL(${DESTINO-ORIGEM})}]?${BINA_RETORNO}:${DESTINO-ORIGEM})},${MATRICULA_RETORNO}))
exten => s,n,ExecIf($["${ARG1}" = "PESQUISA"]?MacroExit()) exten => s,n,ExecIf($["${ARG1}" = "PESQUISA"]?Return())
;;ATUALIZACAO ABANDONADAS SEM RETORNO PBX ;;ATUALIZACAO ABANDONADAS SEM RETORNO PBX
;exten => s,n,AGI(${INTEGRACAO_ABD},${IDORIGEM},,${CALLERID(num)},${PICKUPMARK}) ;exten => s,n,AGI(${INTEGRACAO_ABD},${IDORIGEM},,${CALLERID(num)},${PICKUPMARK})
exten => s,n,AGI(intercala_lgpd.php,FIM,${IF($[ "X${RAMALAGENTE}" = "X" ]?${RAMAL}:${RAMALAGENTE})}) exten => s,n,AGI(intercala_lgpd.php,FIM,${IF($[ "X${RAMALAGENTE}" = "X" ]?${RAMAL}:${RAMALAGENTE})})
@ -1305,7 +1308,7 @@ exten => s,n,Set(DB(CANAL/${MATRICULA}/${IDORIGEM})=DESLIGADO)
exten => s,n,System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => s,n,System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => s,n,AGI(agente_pausa.php,${MATRICULA}) exten => s,n,AGI(agente_pausa.php,${MATRICULA})
exten => s,n,AGI(${INTEGRACAO_ABD},${UNIQUEID},${IF($[${ISNULL(${DAC})}]?${FILA-ORIGEM}:${DAC})},${IF($[${ISNULL(${DESTINO-ORIGEM})}]?${BINA_RETORNO}:${DESTINO-ORIGEM})},${MATRICULA_RETORNO}) exten => s,n,AGI(${INTEGRACAO_ABD},${UNIQUEID},${IF($[${ISNULL(${DAC})}]?${FILA-ORIGEM}:${DAC})},${IF($[${ISNULL(${DESTINO-ORIGEM})}]?${BINA_RETORNO}:${DESTINO-ORIGEM})},${MATRICULA_RETORNO})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(consulta-agente),Set(EVENTO=$["COMPLETEAGENTRAMAL"]) exten => s,n(consulta-agente),Set(EVENTO=$["COMPLETEAGENTRAMAL"])
exten => s,n,Set(FIM_DIAL=$[${EPOCH}]) exten => s,n,Set(FIM_DIAL=$[${EPOCH}])
@ -1350,60 +1353,60 @@ exten => sw-3-BUSY,n,Goto(s,atualiza)
exten => s,1,Noop(TIPO-DISCAGEM == ${TIPO-DISCAGEM}) exten => s,1,Noop(TIPO-DISCAGEM == ${TIPO-DISCAGEM})
exten => s,n,GotoIf($["${TIPO-DISCAGEM}" = "APLICACAO"]?aplicacao) exten => s,n,GotoIf($["${TIPO-DISCAGEM}" = "APLICACAO"]?aplicacao)
exten => s,n,Set(CALLERID(NUM)=6533174650) exten => s,n,Set(CALLERID(NUM)=6533174650)
exten => s,n,Dial(${ARG1},20,${ARG2}hgM(analisa-chamada,${CHANNEL},${ARG3},${ARG5},${ARG6},${ARG7})) exten => s,n,Dial(${ARG1},20,${ARG2}hgU(macro-analisa-chamada,s,1,(${CHANNEL},${ARG3},${ARG5},${ARG6},${ARG7})))
exten => s,n,Goto(status-${DIALSTATUS}) exten => s,n,Goto(status-${DIALSTATUS})
exten => s,n,AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n,AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-ANSWER),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n(status-ANSWER),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-BUSY),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n(status-BUSY),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,Busy() exten => s,n,Busy()
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-NOANSWER),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n(status-NOANSWER),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,Busy() exten => s,n,Busy()
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-CHANUNAVAIL),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n(status-CHANUNAVAIL),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,Busy() exten => s,n,Busy()
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-CANCEL),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n(status-CANCEL),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,Busy() exten => s,n,Busy()
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-CONGESTION),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7}) exten => s,n(status-CONGESTION),AGI(status_discador.php,${DIALSTATUS},${ARG3},${ARG5},${ARG6},${ARG7})
exten => s,n,Busy() exten => s,n,Busy()
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(aplicacao),Macro(gravacao,OUT,${CALLERID(NUM)}) exten => s,n(aplicacao),GoSub(macro-gravacao,s,1,(OUT,${CALLERID(NUM)}))
exten => s,n,Set(DB(ATUALIZA/${MATRICULA})=V) exten => s,n,Set(DB(ATUALIZA/${MATRICULA})=V)
exten => s,n,Set(DB(DISCAGEM/${MATRICULA})=MANUAL) exten => s,n,Set(DB(DISCAGEM/${MATRICULA})=MANUAL)
exten => s,n,Dial(${ARG1},20,${ARG2}M(info-agente,APLICACAO,${MATRICULA})) exten => s,n,Dial(${ARG1},20,${ARG2}M(macro-info-agente,s,1,(APLICACAO,${MATRICULA})))
exten => s,n,Goto(aplicacao-${DIALSTATUS}) exten => s,n,Goto(aplicacao-${DIALSTATUS})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(aplicacao-BUSY),System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => s,n(aplicacao-BUSY),System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(aplicacao-NOANSWER),System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => s,n(aplicacao-NOANSWER),System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(aplicacao-CHANUNAVAIL),System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => s,n(aplicacao-CHANUNAVAIL),System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(aplicacao-CANCEL),System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => s,n(aplicacao-CANCEL),System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(aplicacao-CONGESTION),System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => s,n(aplicacao-CONGESTION),System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => s,n,MacroExit() exten => s,n,Return()
exten => h,1,Wait(0.5) exten => h,1,Wait(0.5)
exten => h,n,GotoIf($["${DB(ATUALIZA/${MATRICULA})}" = "F"]?sair) exten => h,n,GotoIf($["${DB(ATUALIZA/${MATRICULA})}" = "F"]?sair)
exten => h,n,System(${ATUALIZAR} LIVRE ${MATRICULA}) exten => h,n,System(${ATUALIZAR} LIVRE ${MATRICULA})
exten => h,n(sair),MacroExit() exten => h,n(sair),Return()
[macro-info-agente] [macro-info-agente]
exten => s,1,Set(DB(AGENTE/${ARG1})=${CHANNEL}) exten => s,1,Set(DB(AGENTE/${ARG1})=${CHANNEL})
exten => s,n,AGI(info_agente.php,FILA,${CHANNEL},${ARG1}) exten => s,n,AGI(info_agente.php,FILA,${CHANNEL},${ARG1})
exten => s,n,MacroExit() exten => s,n,Return()
[macro-verifica-rota] [macro-verifica-rota]
;ARG1 = Callerid do Ramal ;ARG1 = Callerid do Ramal
@ -1411,11 +1414,11 @@ exten => s,n,MacroExit()
exten => s,1,Set(__RAMAL=${IF($[ "X${RAMAL}" = "X" ]?${ARG1}:${RAMAL})}) exten => s,1,Set(__RAMAL=${IF($[ "X${RAMAL}" = "X" ]?${ARG1}:${RAMAL})})
exten => s,n,AGI(verifica_rota.php,${RAMAL},${ARG2}) exten => s,n,AGI(verifica_rota.php,${RAMAL},${ARG2})
exten => s,n,Noop(DEBUG: ID_ROTA: ${ID_ROTA} - TIPO_ACESSO: ${TIPO_ACESSO} - RAMAL: ${NUMERO-RAMAL} - MODELO: ${MODELO}) exten => s,n,Noop(DEBUG: ID_ROTA: ${ID_ROTA} - TIPO_ACESSO: ${TIPO_ACESSO} - RAMAL: ${NUMERO-RAMAL} - MODELO: ${MODELO})
exten => s,n,ExecIf($["${TIPO_ACESSO}" = "1"]?MacroExit()) exten => s,n,ExecIf($["${TIPO_ACESSO}" = "1"]?Return())
exten => s,n,ExecIf($["${TIPO_ACESSO}" = "3"]?MacroExit()) exten => s,n,ExecIf($["${TIPO_ACESSO}" = "3"]?Return())
exten => s,n,GotoIf($["${TIPO_ACESSO}" = "2"]?conta-senha) exten => s,n,GotoIf($["${TIPO_ACESSO}" = "2"]?conta-senha)
exten => s,n,Goto(s,semrota) exten => s,n,Goto(s,semrota)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(conta-senha),Read(CONTASENHA,appsounds/conta-e-senha,n,,20) exten => s,n(conta-senha),Read(CONTASENHA,appsounds/conta-e-senha,n,,20)
exten => s,n,ResetCDR() exten => s,n,ResetCDR()
exten => s,n,Noop(CONTASENHA: ${CONTASENHA}) exten => s,n,Noop(CONTASENHA: ${CONTASENHA})
@ -1460,12 +1463,12 @@ exten => s,n,GotoIf($["${RESULT}" = "0"]?sem-permissao:liberado)
exten => s,n(nao-geografico),Set(RESULT=V${DESTINO:0:4}) exten => s,n(nao-geografico),Set(RESULT=V${DESTINO:0:4})
exten => s,n,GotoIf($["${${RESULT}}" = "f"]?sem-permissao:liberado) exten => s,n,GotoIf($["${${RESULT}}" = "f"]?sem-permissao:liberado)
exten => s,n(internacional),GotoIf($["${INTERNACIONAL}" = "f"]?sem-permissao:liberado) exten => s,n(internacional),GotoIf($["${INTERNACIONAL}" = "f"]?sem-permissao:liberado)
exten => s,n(liberado),Macro(gravacao-conta-senha) exten => s,n(liberado),GoSub(macro-gravacao-conta-senha,s,1,(${CONTEXT},${EXTEN})))
exten => s,n,AGI(pbx_complemento.php,app-conta-senha,${CONTA},${DESTINO}) exten => s,n,AGI(pbx_complemento.php,app-conta-senha,${CONTA},${DESTINO})
exten => s,n,GotoIf($["${TEMPO}" = "0"]?disca) exten => s,n,GotoIf($["${TEMPO}" = "0"]?disca)
exten => s,n,Set(TIMEOUT(absolute)=${TEMPO} + 5) exten => s,n,Set(TIMEOUT(absolute)=${TEMPO} + 5)
exten => s,n(disca),Set(_PERMISSAO=OK) exten => s,n(disca),Set(_PERMISSAO=OK)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(semrota),Playback(appsounds/no-rights) exten => s,n(semrota),Playback(appsounds/no-rights)
exten => s,n,Hangup() exten => s,n,Hangup()
@ -1507,13 +1510,13 @@ exten => s,n,Hangup()
[macro-chamada-a-cobrar] [macro-chamada-a-cobrar]
exten => s,1,GotoIF($["${CHANNEL:0:3}" = "DGV"]?dgv) exten => s,1,GotoIF($["${CHANNEL:0:3}" = "DGV"]?dgv)
exten => s,n,GotoIF($["${CHANNEL:0:5}" = "Khomp"]?khomp) exten => s,n,GotoIF($["${CHANNEL:0:5}" = "Khomp"]?khomp)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(dgv),Answer() exten => s,n(dgv),Answer()
exten => s,n,Set(CDR(userfield)=chamada-a-cobrar) exten => s,n,Set(CDR(userfield)=chamada-a-cobrar)
exten => s,n,DgCollectCallBlock() exten => s,n,DgCollectCallBlock()
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(khomp),Set(KDropCollectCall=yes) exten => s,n(khomp),Set(KDropCollectCall=yes)
exten => s,n,MacroExit() exten => s,n,Return()
[macro-dial-saida-pstn] [macro-dial-saida-pstn]
;ARG1=STRING DE DISCAGEM => TRONCO/DESTINO - EX: KHOMP/G1/99893984 ;ARG1=STRING DE DISCAGEM => TRONCO/DESTINO - EX: KHOMP/G1/99893984
@ -1537,9 +1540,9 @@ exten => s,1,ExecIf($["${ISNULL(${CDR(direcao)})}" = "1"]?Set(CDR(direcao)=S))
exten => s,n,Answer() exten => s,n,Answer()
exten => s,n,GotoIf($["${ARG1:0:17}" = "SIP/PORTABILIDADE" & "X${LIMITE}" != "X"]?limite) exten => s,n,GotoIf($["${ARG1:0:17}" = "SIP/PORTABILIDADE" & "X${LIMITE}" != "X"]?limite)
exten => s,n,GotoIf($["${ARG1:0:17}" = "SIP/PORTABILIDADE" & "X${FRANQUIA}" != "X"]?franquia) exten => s,n,GotoIf($["${ARG1:0:17}" = "SIP/PORTABILIDADE" & "X${FRANQUIA}" != "X"]?franquia)
exten => s,n,ExecIf($["${ARG1:0:17}" = "SIP/PORTABILIDADE" & "X${DIALSTATUS}" != "X"]?MacroExit()) exten => s,n,ExecIf($["${ARG1:0:17}" = "SIP/PORTABILIDADE" & "X${DIALSTATUS}" != "X"]?Return())
exten => s,n,ExecIf($["X${OPERDDD}" = "X"]?AGI(verifica_operadora.php,${ARG1},${ARG3},${ARG10})) exten => s,n,ExecIf($["X${OPERDDD}" = "X"]?AGI(verifica_operadora.php,${ARG1},${ARG3},${ARG10}))
exten => s,n,Macro(recorta-acrescenta-tronco,${ARG1},${ARG14},${ARG15}) exten => s,n,GoSub(macro-recorta-acrescenta-tronco,s,1,(${ARG1},${ARG14},${ARG15}))
exten => s,n,ExecIf($["X${NOVOARG1}" != "X"]?Set(ARG1=${NOVOARG1})) exten => s,n,ExecIf($["X${NOVOARG1}" != "X"]?Set(ARG1=${NOVOARG1}))
exten => s,n,ExecIf($["X${NOVOARG10}" != "X"]?Set(ARG10=${NOVOARG10})) exten => s,n,ExecIf($["X${NOVOARG10}" != "X"]?Set(ARG10=${NOVOARG10}))
exten => s,n,Set(__RAMAL=${IF($[ "X${RAMAL}" = "X" ]?${CALLERID(NUM)}:${RAMAL})}) exten => s,n,Set(__RAMAL=${IF($[ "X${RAMAL}" = "X" ]?${CALLERID(NUM)}:${RAMAL})})
@ -1557,8 +1560,8 @@ exten => s,n,GotoIf($[${GROUP_COUNT(${ARG3})} > ${ARG4}]?limite)
exten => s,n,Set(__LIMITE=) exten => s,n,Set(__LIMITE=)
exten => s,n,GotoIf($["${DB(CADEADO/${RAMAL})}" != "V"]?grava) exten => s,n,GotoIf($["${DB(CADEADO/${RAMAL})}" != "V"]?grava)
exten => s,n,Authenticate(${DB(SENHA/${RAMAL})},d,) exten => s,n,Authenticate(${DB(SENHA/${RAMAL})},d,)
exten => s,n(grava),Macro(gravacao,OUT,${RAMAL}) exten => s,n(grava),GoSub(macro-gravacao,s,1,(OUT,${RAMAL}))
exten => s,n,Macro(callerid,${TIPO},${ARG3},${RAMAL},${ARG1}) exten => s,n,GoSub(macro-callerid,s,1,(${TIPO},${ARG3},${RAMAL},${ARG1}))
exten => s,n,ExecIf($["X${BINA_KHOMP}" != "X"]?Set(ARG1=${BINA_KHOMP})) exten => s,n,ExecIf($["X${BINA_KHOMP}" != "X"]?Set(ARG1=${BINA_KHOMP}))
exten => s,n,AGI(verifica_franquia.php,${ARG3},${ARG10}) exten => s,n,AGI(verifica_franquia.php,${ARG3},${ARG10})
exten => s,n,Set(__FRANQUIA=) exten => s,n,Set(__FRANQUIA=)
@ -1573,28 +1576,28 @@ exten => s,n,ExecIf($["${DIALSTATUS}" = "BUSY"]?Set(CDR_PROP(disable)=1))
;exten => s,n,AGI(tarifaFinaliza.php,${UNIQUEID}) ;exten => s,n,AGI(tarifaFinaliza.php,${UNIQUEID})
exten => s,n,Goto(status-${DIALSTATUS}) exten => s,n,Goto(status-${DIALSTATUS})
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(status-ANSWER),ExecIf($["${CALLCENTER}" = "SIM"]?Set(FIM_DIAL=$[${EPOCH}])) exten => s,n(status-ANSWER),ExecIf($["${CALLCENTER}" = "SIM"]?Set(FIM_DIAL=$[${EPOCH}]))
exten => s,n,ExecIf($["${CALLCENTER}" = "SIM"]?Set(FIM_DIAL=$[${EPOCH}])) exten => s,n,ExecIf($["${CALLCENTER}" = "SIM"]?Set(FIM_DIAL=$[${EPOCH}]))
exten => s,n,ExecIf($["${CALLCENTER}" = "SIM"]?Set(EVENTO=$[COMPLETACALLER])) exten => s,n,ExecIf($["${CALLCENTER}" = "SIM"]?Set(EVENTO=$[COMPLETACALLER]))
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-BUSY),MacroExit() exten => s,n(status-BUSY),Return()
exten => s,n(status-NOANSWER),Set(CDR_PROP(disable)=1) exten => s,n(status-NOANSWER),Set(CDR_PROP(disable)=1)
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(status-CHANUNAVAIL),MacroExit() exten => s,n(status-CHANUNAVAIL),Return()
exten => s,n(status-CANCEL),MacroExit() exten => s,n(status-CANCEL),Return()
exten => s,n(status-CONGESTION),MacroExit() exten => s,n(status-CONGESTION),Return()
exten => s,n(limite),Set(__LIMITE=OK) exten => s,n(limite),Set(__LIMITE=OK)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(franquia),Set(__FRANQUIA=OK) exten => s,n(franquia),Set(__FRANQUIA=OK)
exten => s,n,MacroExit() exten => s,n,Return()
;exten => s,n(callcenter),GotoIf($["${CONSULTANDO}" = "SIM"]?sair) ;exten => s,n(callcenter),GotoIf($["${CONSULTANDO}" = "SIM"]?sair)
;exten => s,n,Set(FIM_DIAL=$[${EPOCH}]) ;exten => s,n,Set(FIM_DIAL=$[${EPOCH}])
;exten => s,n,Set(EVENTO=$[COMPLETACALLER]) ;exten => s,n,Set(EVENTO=$[COMPLETACALLER])
;exten => s,n(sair),Hangup() ;exten => s,n(sair),Hangup()
;exten => s,n(sair),MacroExit() ;exten => s,n(sair),Return()
[macro-verifica-senha] [macro-verifica-senha]
;ARG1 -> Recebe o numero do ramal (geralmente a variavel ${CALLERID(NUM)} ;ARG1 -> Recebe o numero do ramal (geralmente a variavel ${CALLERID(NUM)}
@ -1606,7 +1609,7 @@ exten => s,n,Wait(1)
exten => s,n,Playback(incorrect-password) exten => s,n,Playback(incorrect-password)
exten => s,n,Playback(vm-goodbye) exten => s,n,Playback(vm-goodbye)
exten => s,n,Hangup() exten => s,n,Hangup()
exten => s,n(ok),MacroExit() exten => s,n(ok),Return()
[macro-gravacao-conta-senha] [macro-gravacao-conta-senha]
exten => s,1,GotoIf($["${GRAVAR}" = "f"]?fim) exten => s,1,GotoIf($["${GRAVAR}" = "f"]?fim)
@ -1616,7 +1619,7 @@ exten => s,n,Set(UNICO=${RAND(0000000000,9999999999)})
exten => s,n,Set(MONITOR_FILENAME=${UNICO}-${UNIQUEID}.WAV) exten => s,n,Set(MONITOR_FILENAME=${UNICO}-${UNIQUEID}.WAV)
exten => s,n,Set(CDR(userfield)=${UNICO}-${UNIQUEID}.WAV) exten => s,n,Set(CDR(userfield)=${UNICO}-${UNIQUEID}.WAV)
exten => s,n,MixMonitor(${MONITOR_FILENAME},b) exten => s,n,MixMonitor(${MONITOR_FILENAME},b)
exten => s,n(fim),MacroExit() exten => s,n(fim),Return()
[macro-callerid] [macro-callerid]
;ARG1 = TIPO = EXTERNO OU INTERNO ;ARG1 = TIPO = EXTERNO OU INTERNO
@ -1631,11 +1634,11 @@ exten => s,n,Set(CALLERID(num)=${DB(BINA-EXTERNO/${CALLERID(NUM)})})
exten => s,n(binatronco),AGI(bina_tronco.php,${ARG2},${ARG3},${ARG4}) exten => s,n(binatronco),AGI(bina_tronco.php,${ARG2},${ARG3},${ARG4})
exten => s,n,Noop(BINA_TRONCO = ${BINA_TRONCO}) exten => s,n,Noop(BINA_TRONCO = ${BINA_TRONCO})
exten => s,n,ExecIf($["X${BINA_TRONCO}" != "X"]?Set(CALLERID(num)=${BINA_TRONCO})) exten => s,n,ExecIf($["X${BINA_TRONCO}" != "X"]?Set(CALLERID(num)=${BINA_TRONCO}))
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(interno),GotoIf($["X${DB(BINA-NOME/${CALLERID(NUM)})}" = "X"]?fim) exten => s,n(interno),GotoIf($["X${DB(BINA-NOME/${CALLERID(NUM)})}" = "X"]?fim)
exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})}) exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})})
exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)}) exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)})
exten => s,n(fim),MacroExit() exten => s,n(fim),Return()
;exten => s,n,GotoIf($["${ARG1}" = "EXTERNO"]?externo) ;exten => s,n,GotoIf($["${ARG1}" = "EXTERNO"]?externo)
@ -1643,14 +1646,14 @@ exten => s,n(fim),MacroExit()
;exten => s,n,GotoIf($["${CALLERID(NUM)}" >= "8"]?fim) ;exten => s,n,GotoIf($["${CALLERID(NUM)}" >= "8"]?fim)
;exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})}) ;exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})})
;exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)}) ;exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)})
;exten => s,n,MacroExit() ;exten => s,n,Return()
;exten => s,n(externo),GotoIf($["X${DB(BINA-EXTERNO/${CALLERID(NUM)})}" = "X"]?fim) ;exten => s,n(externo),GotoIf($["X${DB(BINA-EXTERNO/${CALLERID(NUM)})}" = "X"]?fim)
;exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})}) ;exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})})
;exten => s,n,Set(CALLERID(num)=${DB(BINA-EXTERNO/${CALLERID(NUM)})}) ;exten => s,n,Set(CALLERID(num)=${DB(BINA-EXTERNO/${CALLERID(NUM)})})
;exten => s,n(fim),AGI(bina_tronco.php,${ARG2},${ARG3}) ;exten => s,n(fim),AGI(bina_tronco.php,${ARG2},${ARG3})
;exten => s,n,Noop(BINA_TRONCO = ${BINA_TRONCO}) ;exten => s,n,Noop(BINA_TRONCO = ${BINA_TRONCO})
;exten => s,n,ExecIf($["X${BINA_TRONCO}" != "X"]?Set(CALLERID(NUM)=${BINA_TRONCO})) ;exten => s,n,ExecIf($["X${BINA_TRONCO}" != "X"]?Set(CALLERID(NUM)=${BINA_TRONCO}))
;exten => s,n,MacroExit() ;exten => s,n,Return()
;exten => s,n(interno),GotoIf($["X${DB(BINA-NOME/${CALLERID(NUM)})}" = "X"]?fim) ;exten => s,n(interno),GotoIf($["X${DB(BINA-NOME/${CALLERID(NUM)})}" = "X"]?fim)
;exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})}) ;exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CALLERID(NUM)})})
;exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)}) ;exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)})
@ -1668,7 +1671,7 @@ exten => s,n,Set(CDR(userfield)=${MONITOR_FILENAME})
exten => s,n,MixMonitor(${MONITOR_FILENAME},b) exten => s,n,MixMonitor(${MONITOR_FILENAME},b)
;exten => s,n,GotoIf($["X${MATRICULA}" = "X"]?fim) ;exten => s,n,GotoIf($["X${MATRICULA}" = "X"]?fim)
;exten => s,n,Set(_GRAVACAO=V) ;exten => s,n,Set(_GRAVACAO=V)
exten => s,n(fim),MacroExit() exten => s,n(fim),Return()
[macro-gravacao-conferencia] [macro-gravacao-conferencia]
exten => s,1,GotoIf($["X${MONITOR_FILENAME}" != "X"]?fim) exten => s,1,GotoIf($["X${MONITOR_FILENAME}" != "X"]?fim)
@ -1676,11 +1679,11 @@ exten => s,n,Set(UNICO=${RAND(0000000000,9999999999)})
exten => s,n,Set(MONITOR_FILENAME=${ARG1}-${UNICO}-${UNIQUEID}.WAV) exten => s,n,Set(MONITOR_FILENAME=${ARG1}-${UNICO}-${UNIQUEID}.WAV)
exten => s,n,Set(CDR(userfield)=${MONITOR_FILENAME}) exten => s,n,Set(CDR(userfield)=${MONITOR_FILENAME})
exten => s,n,MixMonitor(${MONITOR_FILENAME},b) exten => s,n,MixMonitor(${MONITOR_FILENAME},b)
exten => s,n(fim),MacroExit() exten => s,n(fim),Return()
[macro-tarifa] [macro-tarifa]
exten => s,1,ExecIf($["X${ARG1}" != "X"]?AGI(tarifa.php,${ARG1},${ARG2},${ARG3},${ARG4},${ARG5},${ARG6},${ARG7},${ARG8})) exten => s,1,ExecIf($["X${ARG1}" != "X"]?AGI(tarifa.php,${ARG1},${ARG2},${ARG3},${ARG4},${ARG5},${ARG6},${ARG7},${ARG8}))
exten => s,n,ExecIf($["${CALLCENTER}" = "SIM"]?Macro(eventos-conecta-agente,${FILA-ORIGEM},${ARG3},${MATRICULA-ORIGEM},${ARG9})) exten => s,n,ExecIf($["${CALLCENTER}" = "SIM"]?GoSub(macro-eventos-conecta-agente,s,1,(${FILA-ORIGEM},${ARG3},${MATRICULA-ORIGEM},${ARG9})))
[macro-tarifa-transferencia] [macro-tarifa-transferencia]
@ -1689,7 +1692,7 @@ exten => s,1,AGI(tarifaTransfere.php,${ARG1},${ARG2},${ARG4},${ARG3})
[macro-limite-ligacao-entrante] [macro-limite-ligacao-entrante]
exten => s,1,Set(GROUP()=${ARG1}) exten => s,1,Set(GROUP()=${ARG1})
exten => s,n,GotoIf($[${GROUP_COUNT(${ARG1})} > ${ARG2}]?limite) exten => s,n,GotoIf($[${GROUP_COUNT(${ARG1})} > ${ARG2}]?limite)
exten => s,n,MacroExit() exten => s,n,Return()
exten => s,n(limite),Playback(appsounds/linhas_ocupadas) exten => s,n(limite),Playback(appsounds/linhas_ocupadas)
exten => s,n,Hangup() exten => s,n,Hangup()
@ -1737,19 +1740,19 @@ exten => s,n,Set(NOVOARG10=${ACRESCENTA}${NOVODESTINO})
exten => s,n,Noop(Atualizado para ${NOVOARG1} - ${NOVOARG10}) exten => s,n,Noop(Atualizado para ${NOVOARG1} - ${NOVOARG10})
exten => s,n,Set(RECORTA=) exten => s,n,Set(RECORTA=)
exten => s,n,Set(ACRESCENTA=) exten => s,n,Set(ACRESCENTA=)
exten => s,n(sair),MacroExit() exten => s,n(sair),Return()
[macro-importa-variaveis] [macro-importa-variaveis]
exten => s,1,Set(MATRICULA=${IMPORT(${ARG1},MATRICULA)}) exten => s,1,Set(MATRICULA=${IMPORT(${ARG1},MATRICULA)})
exten => s,n,Set(MATRICULA-ORIGEM=${IMPORT(${ARG1},MATRICULA-ORIGEM)}) exten => s,n,Set(MATRICULA-ORIGEM=${IMPORT(${ARG1},MATRICULA-ORIGEM)})
exten => s,n,Set(MATRICULA-DESTINO=${IMPORT(${ARG1},MATRICULA-DESTINO)}) exten => s,n,Set(MATRICULA-DESTINO=${IMPORT(${ARG1},MATRICULA-DESTINO)})
exten => s,n,Set(DAC=${IMPORT(${ARG1},DAC)}) exten => s,n,Set(DAC=${IMPORT(${ARG1},DAC)})
exten => s,n,MacroExit() exten => s,n,Return()
[macro-inicia-conferencia] [macro-inicia-conferencia]
exten => s,1,Set(__SALA=${RAND(9001,9999)}) exten => s,1,Set(__SALA=${RAND(9001,9999)})
;exten => s,n,Macro(gravacao-conferencia,${SALA}) ;exten => s,n,GoSub(macro-gravacao-conferencia,s,1,(${SALA}))
exten => s,n,Macro(gravacao,OUT,${CALLERID(num)}) exten => s,n,GoSub(macro-gravacao,s,1,(OUT,${CALLERID(num)}))
exten => s,n,Answer() exten => s,n,Answer()
exten => s,n,Set(CONFBRIDGE(user,template)=default_user_simplesip) exten => s,n,Set(CONFBRIDGE(user,template)=default_user_simplesip)
exten => s,n,Set(CONFBRIDGE(user,admin)=yes) exten => s,n,Set(CONFBRIDGE(user,admin)=yes)
@ -1768,7 +1771,7 @@ exten => s,n,Set(CONFBRIDGE(user,end_marked)=yes)
exten => s,n,ConfBridge(${SALA}) exten => s,n,ConfBridge(${SALA})
[macro-verifica-eventos-dacs] [macro-verifica-eventos-dacs]
exten => s,1,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "1"]?MacroExit()) exten => s,1,ExecIf($["${ISNULL(${MATRICULA-DESTINO})}" = "1"]?Return())
exten => s,n,Set(FIM_DIAL=$[${EPOCH}]) exten => s,n,Set(FIM_DIAL=$[${EPOCH}])
exten => s,n,Set(EVENTO=$[COMPLETEAGENTRAMAL]) exten => s,n,Set(EVENTO=$[COMPLETEAGENTRAMAL])
exten => s,n,Set(INICIO_ATENDIMENTO=${DB(INICIO_ATENDIMENTO/${UNIQUEID})}) exten => s,n,Set(INICIO_ATENDIMENTO=${DB(INICIO_ATENDIMENTO/${UNIQUEID})})
@ -1787,7 +1790,7 @@ exten => s,n,QueueLog(${FILA-DESTINO},${UNIQUEID},Agent/${MATRICULA-DESTINO},${E
exten => s,n,Set(DB(CANAL/${MATRICULA-DESTINO}/${IDORIGEM})=DESLIGADO) exten => s,n,Set(DB(CANAL/${MATRICULA-DESTINO}/${IDORIGEM})=DESLIGADO)
exten => s,n,System(${ATUALIZAR} LIVRE ${MATRICULA-DESTINO}) exten => s,n,System(${ATUALIZAR} LIVRE ${MATRICULA-DESTINO})
exten => s,n,AGI(agente_pausa.php,${MATRICULA-DESTINO}) exten => s,n,AGI(agente_pausa.php,${MATRICULA-DESTINO})
exten => s,n,MacroExit() exten => s,n,Return()
;Aplicacoes auxiliares ;Aplicacoes auxiliares

6
asterisk/etc_asterisk/extensions_padrao_customizado.conf

@ -3,7 +3,7 @@ exten => **,1,Hangup()
exten => _X.,1(pbx),ResetCDR() exten => _X.,1(pbx),ResetCDR()
exten => _X.,n,Noop(CONSULTANDO = ${CONSULTANDO} - MATRICULA = ${MATRICULA} - MATRICULA-ORIGEM = ${MATRICULA-ORIGEM} - MATRICULA-DESTINO = ${MATRICULA-DESTINO}) exten => _X.,n,Noop(CONSULTANDO = ${CONSULTANDO} - MATRICULA = ${MATRICULA} - MATRICULA-ORIGEM = ${MATRICULA-ORIGEM} - MATRICULA-DESTINO = ${MATRICULA-DESTINO})
exten => _X.,n,ExecIf($["${CONSULTANDO}" = "SIM" && "X${MATRICULA-ORIGEM}" = "X"]?Macro(hangup)) exten => _X.,n,ExecIf($["${CONSULTANDO}" = "SIM" && "X${MATRICULA-ORIGEM}" = "X"]?Gosub(macro-hangup,s,1,()))
exten => _X.,n,Set(CHANNEL(accountcode)=${IDORIGEM}) exten => _X.,n,Set(CHANNEL(accountcode)=${IDORIGEM})
exten => _X.,n,Set(TIPO="") exten => _X.,n,Set(TIPO="")
exten => _X.,n,Set(CALLCENTER="") exten => _X.,n,Set(CALLCENTER="")
@ -22,8 +22,8 @@ exten => _X.,n,Set(__TRANSFER=${IDORIGEM})
;exten => _X.,n,Set(__FILA-ORIGEM="") ;exten => _X.,n,Set(__FILA-ORIGEM="")
;exten => _X.,n,Set(__MATRICULA-DESTINO=${MATRICULA-DESTINO}) ;exten => _X.,n,Set(__MATRICULA-DESTINO=${MATRICULA-DESTINO})
;exten => _X.,n,Set(__FILA-DESTINO=${FILA-DESTINO}) ;exten => _X.,n,Set(__FILA-DESTINO=${FILA-DESTINO})
exten => _X.,n,Macro(importa-variaveis,${TCHANNEL}) exten => _X.,n,Gosub(macro-importa-variaveis,s,1,(${TCHANNEL}))
exten => _X.,n,Dial(Local/${EXTEN}@padrao/n,,gHM(tarifa-transferencia,${IDORIGEM},${UNIQUEID},${EXTEN},${CALLERID(NUM)})) exten => _X.,n,Dial(Local/${EXTEN}@padrao/n,,gHM(macro-tarifa-transferencia,${IDORIGEM},${UNIQUEID},${EXTEN},${CALLERID(NUM)}))
exten => _X.,n,Noop(Acabou a transferencia - idorigem = ${IDORIGEM}) exten => _X.,n,Noop(Acabou a transferencia - idorigem = ${IDORIGEM})
exten => _X.,n,Hangup() exten => _X.,n,Hangup()

2
asterisk/var_lib_asterisk/agi-bin/agente_fila.php

@ -184,7 +184,7 @@ if ($MATRICULAORIGEM) {
// write("GET VARIABLE FILA-ORIGEM"); // write("GET VARIABLE FILA-ORIGEM");
// $FILAORIGEM = substr(strrchr(read(), "("), 1, -1); // $FILAORIGEM = substr(strrchr(read(), "("), 1, -1);
write("EXEC Macro eventos-conecta-agente,$canalAgente,$UNIQUEID"); write("EXEC Gosub macro-eventos-conecta-agente,s,1,($canalAgente,$UNIQUEID)");
read(); read();
// $query = "update pbx_supervisor_agentes set status = 'OCUPADO', canal = (select canal_agente from pbx_supervisor_agentes where matricula = '$MATRICULA') where matricula = '$MATRICULAORIGEM' and dac = '$FILAORIGEM'"; // $query = "update pbx_supervisor_agentes set status = 'OCUPADO', canal = (select canal_agente from pbx_supervisor_agentes where matricula = '$MATRICULA') where matricula = '$MATRICULAORIGEM' and dac = '$FILAORIGEM'";

2
asterisk/var_lib_asterisk/agi-bin/pbx_complemento.php

@ -143,7 +143,7 @@ if (!$consulta) {
write("SET VARIABLE __CANALORIGEM $canal_agente"); write("SET VARIABLE __CANALORIGEM $canal_agente");
read(); read();
write("EXEC Macro origina-agente"); write("EXEC Gosub origina-agente,s,1,()");
read(); read();
mostra_parametro("SAIU_DO_AGENTE_LOGADO"); mostra_parametro("SAIU_DO_AGENTE_LOGADO");

2
contacteFunc.php

@ -2209,7 +2209,7 @@ function GravaCampanha($dbcon)
*/ */
// $str = sprintf('exten => _%s,n,Set(_TIPO=EXTERNO)%s', $dadosModelo["cpmd_modelo"], "\n" ); // $str = sprintf('exten => _%s,n,Set(_TIPO=EXTERNO)%s', $dadosModelo["cpmd_modelo"], "\n" );
// fwrite($escreve,$str); // fwrite($escreve,$str);
// $str = sprintf('exten => _%s,n,Macro(gravacao|OUT|${CALLERID(NUM)})%s', $dadosModelo["cpmd_modelo"], "\n" ); // $str = sprintf('exten => _%s,n,Macro(macro-gravacao|OUT|${CALLERID(NUM)})%s', $dadosModelo["cpmd_modelo"], "\n" );
// fwrite($escreve,$str); // fwrite($escreve,$str);
$recortar = $dadosModelo["cpmd_recorte"] ? sprintf(':%s', $dadosModelo["cpmd_recorte"]) : ''; $recortar = $dadosModelo["cpmd_recorte"] ? sprintf(':%s', $dadosModelo["cpmd_recorte"]) : '';
$acrescentar = $dadosModelo["cpmd_acrescenta"] ? $dadosModelo["cpmd_acrescenta"] : ''; $acrescentar = $dadosModelo["cpmd_acrescenta"] ? $dadosModelo["cpmd_acrescenta"] : '';

Loading…
Cancel
Save