PABX da Simples IP
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

461 lines
15 KiB

<?php
/*
* Definição das constantes utilizadas no site
*/
define('OPERACAO_RECEPTIVO', 1);
define('OPERACAO_ATIVO', 2);
define('SS_OPERACAO_SUPERVISOR', "SSoperacaoSupervisor");
define("VERSAO_API", '1.0');
//
//Define status de atendimento para o agente
//
define("MAX_QUEBRA", 70); //Usada para formatar url em GetMetodos
define("AGENTE_EM_ATENDIMENTO", 'OCUPADO');
define("AGENTE_LIVRE", 'LIVRE');
define("AGENTE_EM_PAUSA", 'PAUSA');
define("AGENTE_LOGOFF", 'LOGOFF');
define("AGENTE_DISCANDO", 'ORIGINANDO');
define("MAX_TENTATIVA_RETORNO", 50);
//combo meses
$meses = array('Todos', 'Janeiro', 'Fevereiro', 'Mar&ccedil;o', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro');
$mesesAbr = array('Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez');
$diasDaSemana = array('dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sab');
//constantes para interagir com asterisk
define("AST_LOGIN_AGENTE", 1);
define("AST_LOGOFF_AGENTE", 2);
define("AST_ADD_FILA", 3); //Adiciona agente agente a fila
define("AST_REM_FILA", 4); //remove agente da fila
define("AST_ADD_PAUSA", 5); //colaca agente em pausa
define("AST_REM_PAUSA", 6); //retira o agente de pausa
define("AST_DISCAR", 7);
define("AST_TRANSFERIR", 8);
define("AST_INCLUI_AGENTE", 9);
define("AST_TESTE_URL", 10);
define("MONITOR_AGENTS", 11);
define("AST_INTERCALAR", 12);
define("AST_MONITORAR", 13);
define("AST_INICIA_GRAVACAO", 14);
define("AST_FINALISA_GRAVACAO", 15);
define("AST_INICIA_PAUSA_GRAVACAO", 16);
define("AST_FINALISA_PAUSA_GRAVACAO", 17);
define("AST_DESLIGAR_LIGACAO", 18);
define("AST_RELOAD_URA", 19);
define("AST_RELOAD_FILA", 20);
define("AST_MUTE_SET_VAR", 21);
define("AST_MUTE_ADD_CANAIS", 22);
define("AST_MUTE_GET_SALA_CONFERENCIA", 23);
define("AST_MUTE_ADD_AGENTE", 24);
define("AST_MUTE_REM_AGENTE", 25);
define("AST_PENDULO_SET_VAR", 26);
define("AST_PENDULO_ADD_CANAIS", 27);
define("AST_PENDULO_GET_SALA", 28);
define("AST_PENDULO_ADD_MUTE", 29);
define("AST_PENDULO_REM_MUTE", 30);
define("AST_TRCONSULTA_SET_VAR", 31);
define("AST_TRCONSULTA_ESPERA", 32);
define("AST_TRCONSULTA_TRANSFERE", 33);
define("AST_TRCONSULTA_TRANSFERE_ABORTA", 34);
define("AST_TRCONSULTA_LIBERA_AGENTE", 35);
define("AST_TRCONSULTA_CONFERENCIA", 36);
define("AST_DISCAR_DIRETO", 37);
define("AST_TRANSF_PESQUISA", 38);
define("AST_PENDULO_REM_CANAIS", 39);
define("AST_MUTE_CLIENTE", 40);
define("AST_MUTE_ATENDENTE", 41);
define("AST_REM_MUTE", 42);
define("AST_ALARME", 43);
define("AST_SET_VAR", 44);
define("AST_EXEC_AMI", 45);
define("AST_CALLBACK", 46);
define("AST_ALERTA_AGENTE", 47);
define("AST_SMS_SEND", 48);
define("AST_DESLIGAR_TODOS", 49);
define("AST_LIGUE_GRATIS", 50);
//Sess<EFBFBD>o para mute
define("SS_mute_num_sala", 'SalaMuteConf');
define("SS_INICIA_TRANSFERENCIA", 'sessao_trconsulta');
define("SS_AGT_CHANNEL_AGENTE", 'SSChannelAgente');
define("AGT_LOGIN", "SSloginAgnete");
//constantes para controle do modulo de agente
define("AGT_CONF_RAMAL", 1);
define("AGT_SEL_DAC", 2);
define("AGT_PRINCIPAL", 3);
define("AGT_PAUSA", 4);
define("AGT_CALL", 5);
//indica o subid corrente no modulo de agente
define("AGT_SUBID", "subIdCorrente");
//id login/logof
define("AGT_ID_LOGIN", "idTabLogin");
define("AGT_ID_PAUSA", "idTabPausa");
//constates para secao do modulo de agente
//ramal do atendente
//conexao do agente com asterisk
define("AGT_CONECT", "AgenteOnLine");
define("AGT_ULT_EVENTO", "AgenteUltimoEvento");
define("AGT_DESCONECTA_SUPER", "AgenteDesconectaSuper");
//mode de atendimento
define("AGT_TP_ATEND", "TipoAtend");
define("AGT_TP_ATEND_COD", "ModoAtendimento");
define("AGT_MODU_MANUAL", '**50');
define("AGT_MODU_AUTOMATICO", '**60');
define("AGT_DAC_CONECT", "AgenteConctDac");
define("AGT_DAC_CONECT_DESC", "AgenteConctDacNome");
define("SS_NOME_DAC", "AgenteConctDacNome");
define("SS_AUT", "SSaut");
define("SS_USER_AUT", "SSuserAut");
define("AGT_MATRICULA", "SSmatriculaAgente");
/*
* Usados na fun<EFBFBD><EFBFBD>o alarme e CallbackSite.
*/
define("AGT_RAMAL_CONF", "SSramalConf");
/*
* Usados na fun<EFBFBD><EFBFBD>o CallbackSite.
*/
define("AGT_RECEPTIVO_CALLBACK", "SSorigemCallback");
//pausa do agente
define("AGT_EM_PAUSA", "AgenteEmPausa");
define("AGT_PAUSA_MOTIVO", "MotivoPausa");
define("AGT_RELACIONA_EVENTO", "RelacionaEvento");
//Tempo de atuliza<EFBFBD><EFBFBD>o da tela de agente, se nao informado nos parametros
define("AGT_TEMPO_ATUALIZA", 5);
//CALL
define("AGT_NUM_DISC", "discTrans");
//TEMPO DE ATUALIZA<EFBFBD><EFBFBD>O DA PAGINA DE SUPERVISOR
define("AGT_SUPERVISOR_ATUALIZA", 10);
//Contem informacoes sobre a gravacao do agente
define("AGT_AUDIO_FILE", "fileGravacaoAgente");
define("AGT_AUDIO_TIPO", "fileGravacaoAgenteTipo");
define("AGT_ID_GRAVACAO", "uniqueIdGravacao");
//PostBack
define("SS_POST_BACK", "postBack");
//Ramal
define("RAMAL_DESTINO", "ramalDestino");
define("AGT_CHANNEL_TRANSF", "channelTransf");
define("AGT_CHANNEL_TRCONSULTA", "channelTrConsulta");
//ARQUIVOS DE CONFIGURACAO
define("DB_CONFIG_FILE", 'configBd.php');
define("DB_CONFIG_USUARIOS", '/etc/asterisk/agents_usuarios.conf');
define("DB_CONFIG_AGENTE", '/mnt/asterisk/agents.conf');
define("SS_DAC_TEMP", "SSdacTemp");
define("SS_DAC_PADRAO", "SSdacPadraoAgente");
define("SS_OPER_PADRAO", "SSOperacaoPadrao");
define("SS_DAC_PADRAO_ID", "SSdacPadraoAgenteId");
define("API_CANAL_DISCAL", "APICanalDiscarApi");
//parametors
define("SS_PRM_SLOGAN", "prm_slogan");
define("SS_PRM_PATH_AUDIO", "prm_path_audio");
define("SS_PRM_PATH_ARQ_AGENTE", "prm_path_arq_agente");
define("SS_PRM_LOGO_RELATORIO", "prm_logo_relatorio");
define("SS_PRM_RELATORIO_HEAD", "prm_relatorio_head");
define("SS_PRM_RELATORIO_LINHA1", "prm_relatorio_linha1");
define("SS_PRM_RELATORIO_LINHA2", "prm_relatorio_linha2");
define("SS_PRM_AGENTE_ATUALIZA", "prm_agente_atualiza");
define("SS_PRM_SUPER_ATUALIZA", "prm_super_atualiza");
define("SS_PRM_AGENTE_CLASSIFICA", "prm_agente_classifica");
define("SS_PRM_CLASSIFICA_MUNICIPIO", "prm_classifica_municipio");
define("SS_PRM_AGENTE_PROTO", "prm_agente_proto");
define("SS_PRM_AGENTE_CONTRIBUINTE", "prm_agente_contribuinte");
define("SS_CONFIG_DB", "Db_conf_ok");
define("SS_SENHA_DEF", "def_senha");
define("SS_EXPIRA_SENHA", "senha_expira");
define("SS_PRM_MSG_SENHA_DEF", "prm_msg_senha_def");
define("SS_PRM_MSG_SENHA_EXP", "prm_msg_senha_exp");
define("SS_PRM_SENHA_EXPIRADA", "prm_senha_expirada");
define("SS_PRM_SENHA_DT_EXP", "senha_dt_expira");
define("SS_PRM_SENHA_ULT_ATU", "senha_ult_atualiza");
define("SS_PRM_SENHA_DIAS_EXP", "senha_dias_expira");
define("SS_PRM_URL_ASTERISK", "prm_url_asterisk");
define("SSdacDesc", "dacDesc");
define("SS_DESTINO_INTERCALAR", "SSdestinoIntercalar");
define("SS_TIPO_FILA", "SS_tipoFilaLogin"); //
/*
* Valore usados para registrar ramais usados em monitoria e intercala<EFBFBD><EFBFBD>o de <EFBFBD>udios.
*/
define("SS_MONITOR_ALVO", "SSramalMonitorAlvo");
define("SS_MONITOR_ALVO_SIP", "SSramalMonitorAlvoSip");
define("RAMAL_MONITOR_AGENTE", "ramalMonitorAgente");
define("CANAL_MONITOR_AGENTE", "canalMonitorAgente");
define("RAMAL_MONITOR_AUDIO", "ramalMonitorAudio");
define("CANAL_MONITOR_AUDIO", "canalMonitorAudio");
define("RAMAL_MONITOR_SUPERVISOR", "ramalMonitorSupervisor");
define("CANAL_MONITOR_SUPERVISOR", "canalMonitorSupervisor");
//RELATORIO
define("REL_HEAD_NIVEL1", 1);
define("REL_HEAD_NIVEL2", 2);
define("REL_HEAD_NIVEL3", 3);
//base do c<EFBFBD>lculo para o desvio padr<EFBFBD>o
define("NUMERO_SEMANAS", 52);
define("SS_DESVIO_PADRAO", "desvioPadrao");
//PERFIL DE USUARIO
define("PRF_MENU_HEAD", "menuHead");
define("PRF_FUNC_USER", "menuUser");
//Acoes para formularios
define("FORM_UNDEF", 0);
define("FORM_SELECT", 1);
define("FORM_NEW", 2);
define("FORM_INSERT", 3);
define("FORM_UPDATE", 4);
define("FORM_SAVE", 5);
define("FORM_DELETE", 6);
define("FORM_DOWNLOAD", 7);
define("FORM_UPLOAD", 8);
//define tipos de dados
define("TYPE_INTEGER", 1);
define("TYPE_STRING", 2);
define("TYPE_DATE", 3);
define("TYPE_DETETIME", 4);
define("TYPE_FLOAT", 5);
define("TYPE_BLOB", 6);
define("TYPE_EMAIL", 7);
define("TYPE_CPFCGC", 8);
define("TYPE_IE", 9);
define("TYPE_FONE", 10);
define("TYPE_IDENTIFICA", 11);
define("TYPE_TIME", 12);
define("TIPO_IDENTIFICA_CPF", 'CPF');
define("TIPO_IDENTIFICA_CRC", 'CRC');
define("TIPO_IDENTIFICA_IE", 'IE');
define("TIPO_IDENTIFICA_CNPJ", 'CNPJ');
define("TIPO_IDENTIFICA_OUTRO", 'OUTRO');
//Usuado na verifica<EFBFBD><EFBFBD>o do perfil do usuario
define("SEG_SUPERVISOR", "mnSupervisor"); //supervisor.php
define("SEG_CONFIGURACOES", "mnConfiguracao"); //Configuracao de banco, etc;
define("SEG_AGENTE", "mnAgente"); //;1;"Agente"
define("SEG_AUDIO", "mnAudio"); //;1;"<EFBFBD>udio"
define("SEG_TROCA_SENHA", "mnTrocaSenha"); //;1;"Trocar Senha"
define("SEG_USUARIOS", "mnUsuario"); //;1;"Usu<EFBFBD>rios"
define("SEG_CLASSIFICACAO", "mnClassificacao"); //;1;"Classifica<EFBFBD><EFBFBD>o"
define("SEG_REL_PROD_AGENTE", "mnRelProdAgente"); //;1;"Produ<EFBFBD><EFBFBD>o/Agente"
define("SEG_REL_TRANS_AGENTE", "mnRelTransAgente"); //;1;"Transf<EFBFBD>rencia/Agente"
define("SEG_META_MENSAL", "mnMetaMensal"); //;1;"Meta Mensal"
define("SEG_META_MENSAL_ANEEL", "mnMetaMensaAneel"); //;1;"Meta Mensal(ANEEL)"
define("SEG_META_DIARIA", "mnMetaDiaria"); //;1;"Meta Di<EFBFBD>ria"
define("SEG_META_DIARIA_ANEEL", "mnMetaDiariaAneel"); //;1;"Meta Di<EFBFBD>ria(ANEEL)"
define("SEG_TRANSFERENCIA", "mnTransferencia"); //;1;"Transfer<EFBFBD>ncia"
define("SEG_RESUMO_FONE", "mnResumoFone"); //;1;"Resumo/Fone"
define("SEG_GRUPO_USUARIO", "mnGrupoUsuario"); //;0;"Grupo/Usu<EFBFBD>rios"
define("SEG_REL_CHAM_SAINTES_RAMAL", "mnRelChamSaintesRamal"); //;1;"Chamadas Saintes/Ramal"
define("SEG_REL_CHAM_SAINTES_CONTA", "mnRelChamSaintesConta"); //;1;"Chamadas Saintes/Conta"
define("SEG_REL_TOTAL_SAINTES_RAMAL", "mnRelTotalSaintesRamal"); //;1;"Totalizador Chamadas Saintes/Ramal"
define("SEG_REL_RAMAL_RAMAL", "mnRelRmalRamal"); //;1;"Chamadas Ramal/Ramal"
define("SEG_CONTRIBUINTE", "mnContribuinte"); //;1;"Contribuinte"
define("SEG_INDISPONIBILIDADE", "mnIndisponibilidade"); //;1;"Indisponibilidade"
define("SEG_RAMAL_RAMAL", "mnRamlRamal"); //;1;"Ramal/Ramal"
define("SEG_CHAM_FORA_HORARIO", "mnChamForaHorario"); //;1;"Chamadas Fora do Hor<EFBFBD>rio"
define("SEG_REL_CLASSIFICA", "mnRelClassifica"); //;1;"Classifica<EFBFBD><EFBFBD>o de Atendimento"
define("SEG_REL_CONTRIBUINTE", "mnRelContribuinte"); //;1;"Relat<EFBFBD>rio de Contribuinte"
define("SEG_URA", "mnUra"); //;1;"Ura"
define("HOSTS_INFO", 'hostInfo');
/*
* N<EFBFBD>mero maximo de tentavivas para autenticar um usuario no
* asterisk via socket
*/
define("MAX_CONECT_SOCKET", 10);
define("DDD_EMPRESA", 65);
//path absoluto do sistem
define("PATH_ABSOLUTO", 'SSabsPath');
define("PATH_BAR", 'SSbarPath');
//Relatorios
define("REL_TITULO_PAGE", "SSrelTituloPage");
define("REL_TITULO_HEAD", "SSrelTituloHead");
define("REL_COMPLEMENTO_FILTRO", "SSrelComplFiltro");
define("REL_HEAD", "SSrelHead");
define("REL_LINHAS_IMPRIME", "SSrelLinhasImprime");
define("TEMPO_TENTATIVA_URL", 300000);
define("MAX_TENTATIVA_URL", 5);
//Config gerais
define("CONF_PADRAO_CAMINHO_BACK", 'caminho_backup');
define("CONF_PADRAO_CAMINHO_PRODUCAO", 'caminho_producao');
define("CONF_PADRAO_CAMINHO_MUSICAS", 'caminho_musicas');
define("CONF_PADRAO_URL_MUSICAS", 'url_musicas');
define("CONF_PADRAO_URL_ASTERISK", 'url_asterisk');
define("COMP_SVN", 1);
//Define um codigo de acordo com o status do agente
define("AGT_STATUS_OFF", 0);
define("AGT_STATUS_PAUSA", 1);
define("AGT_STATUS_LIVRE", 2);
define("AGT_STATUS_CHAMANDO", 3);
define("AGT_STATUS_ORIGNANDO", 4);
define("AGT_STATUS_OCUPADO", 5);
//Indentificadores de formulario
define("REL_TOTALIZADOR_CENTRO_CUSTO", 159);
define("REL_SAINTES_RAMAL", 37);
define("REL_TOTALIZADOR_CHAMADAS", 41);
define("REL_SAINTES_CENTRO_CUSTO", 67);
define("REL_SAINTES_TIPO_LIGACAO", 70);
define("REL_SAINTES_MAIS_DISCADOS", 74);
define("REL_TOTALIZADOR_TIPO_LA", 87);
define("REL_CHAMADAS_ENCAMINHADAS_CAIXAPOSTAL", 76);
define("REL_ENTRANTES_NAO_ATENDIDA", 78);
define("REL_ENTRANTES_RAMAL", 59);
define("REL_ENTRANTES_TIPO_LIGACAO", 72);
define("REL_TOTALIZADOR_CHAMADAS_ENTRANTES", 63);
define("REL_CHAMADAS_RAMAL_RAMAL", 43);
define("REL_LISTA_SIGAME_EXTERNO", 80);
define("REL_LISTA_USUARIO", 65);
//AgenteRT
define("SS_DAC_CODIGO", "AgenteConctDac"); //Id do Dac conectado
define("SS_DAC_DESCRICAO", "AgenteConctDacNome"); //Descri<EFBFBD><EFBFBD>o do Dac conectado
define("SS_MODO_ATENDIMENTO", "SSmodoAtendimento"); //Descricao do mode de atendimento escolhido Manual ou Autom<EFBFBD>tico
define("SS_MODO_ATENDIMENTO_COD", "ModoAtendimento"); //Codigo do modo de atendimento: Manual -> **50" Automatico -> **60
define("SS_ID_RELACIONA_EVENTO", "RelacionaEvento"); //Relaciona o login com as pausa referentes na tabela pbx_eventos_agentes
define("SS_AGENTE_CONECTADO", "AgenteOnLine"); //Status do agente 1 -> conectado ao dac 0 -> inativo
define("SS_PAUSA_AGENTE", "AgenteEmPausa"); //Indica que o agente esta em pausa
define("SS_PAUSA_AGENTE_MOTIVO", "MotivoPausa"); //Indica o motivo da pausa
define("SS_PAUSA_AGENTE_MOTIVO_DESCRICAO", "MotivoPausaDescricao");
define("SS_STATUS_AGENTE", "SSstatusAgente");
define("ATENDIMENTO_MANUAL", "**50");
define("ATENDIMENTO_AUTOMATICO", "**60");
define("SS_AGT_CONTEXTO_RAMAL", 'SSContextoRamal');
define("SS_EXIGE_CLASSIFICACAO", 'exige_classificacao');
define("SS_JUSTIFICATIVA_PAUSA", 'justificativa_pausa');
define("SS_EXECUTA_AMI", 'executa_comanandos_ami');
define("DEFAULT_MASC_PASSWORD", '****');
define("CONF_CRYPT_IV", '4928e5d91dea39d0755b110cad0abe45');
define("CONF_CRYPT_KEY", 'b4adfe9e896ad2791967382a55532148');
/*
* Tipos de ramal
*/
define("RAMAL_SIP", 'SIP');
define("RAMAL_IAX", 'IAX');
define("RAMAL_IAX2", 'IAX2');
define("RAMAL_PBX", 'PBX');
define("RAMAL_DGV", 'DGV');
define("RAMAL_KHOMP", 'KHOMP');
define("RAMAL_DAHDI", 'DAHDI');
define("ROTA_ENTRADA", 'E');
define("ROTA_SAIDA", 'S');
/*
* Perfil do sistema.
*/
define("PERFIL_DEFAULT", '1');
define("PERFIL_GRAVADOR", '2');
/*
* IdProg de paginas
*/
define("PAGINA_SUPERVISOR", '6');
define("PAGINA_AGENTE", '14');
define("PAGINA_AGENTE_INI", '15');
define("PAGINA_GRAVADOR_PAINEL", '253');
define("MAX_LINHAS_FILE_CAMPANHA", 10000);
/*
* Paginacao de dados.
*/
define("PAGINACAO_TAMANHO_BLOCO", 10);
/*
* Caso haja erro na geracao do protocolo, define
* o numero de rechamadas a funcao GetProto.
*/
define("NUM_TENTATIVAS_GERA_PROTO", 5);
/*
* Controle de impress<EFBFBD>o
*/
define("MEDIA_PRINT_GRID", 1);
define("MEDIA_PRINT_HTML", 2);
define("MEDIA_PRINT_PDF", 3);
define("MEDIA_PRINT_EXCEL", 4);
define("MEDIA_PRINT_CSV", 5);
/*
* Conversao de arquivos, CNVRTD
*/
define("CNVRT_CONVERT_AUDIO", '/var/lib/asterisk/scripts/cnvrtd/cnvrtAudio.php'); // milhonesimo of second.
define("CNVRT_FILE", '/var/lib/asterisk/scripts/cnvrtd/cnvrtFile.php');
define("CNVRT_BASE", '/var/www/html/aplicativo/audio/');
define("CNVRT_TEMPO_CICLO", 100000); // milhonesimo of second.
define("CNVRT_TIMEOUT", 10); // Scond.
define("CNVRT_WAV_MP3", 1);
define("CNVRT_WAV_ULAW", 2);
define("CNVRT_MP3_ULAW", 3);
define("CNVRT_FILE_EXISTS", 4);
define("CNVRT_FILE_MV", 5);
define("CNVRT_FILE_RM", 6);
define("CNVRT_FILE_CP", 7);
define("CNVRT_FILE_TAR_GZ", 8);
define("CNVRT_FILE_TAR_BZ2", 9);
define("CNVRT_FILE_CMD", 10);
define("CNVRT_FILE_SIZE", 11);
define("CNVRT_EXEC", 12);
/*
* Servidor de central de Atualizacoes
*/
define('IP_CENTRAL_ATUALIZACAO', '192.168.115.12');
/*
* Mascara a ser mostrada nos campos de senha.
*/
define('MASCARA_PASSWORD', '*******');
/*
* Define o comportamento dos relatorios de servico.
*/
define("RELATORIO_SERVICOS_DESABILITA", 0);
define("RELATORIO_SERVICOS_HABILITA", 1);
define("RELATORIO_SERVICOS_FILTROS", 2);