OcoMon – criando um sistema de chamados gratuito
Nesse artigo sobre o sistema OcoMon, você vai aprender tudo sobre ele, o que é, para que server, além de montar, instalar e configurar seu próprio servidor seguindo o passo a passo bem detalhado e com todos os comandos que eu utilizei.
OcoMon – História
O OcoMon surgiu em Março de 2002 como projeto pessoal do programador Franque Custódio, tendo como características iniciais o cadastro, acompanhamento, controle e consulta de ocorrências de suporte e tendo como primeiro usuário o Centro Universitário La Salle (UNILASALLE). A partir de então, o sistema foi assumido pelo Analista de Suporte Flávio Ribeiro que adotou a ferramenta e desde então a tem aperfeiçoado e implementado diversas características buscando atender a questões de ordem prática, operacional e gerencial de áreas de suporte técnico como Help Desk e Service Desk.
Em Maio de 2003 surgiu a primeira versão do módulo de inventário (Invmon), e a partir daí e todas as informações de atendimentos começaram as estar vinculadas ao respectivo equipamento, acrescentando grande praticidade e valor ao sistema de atendimento. Com a percepção da necessidade crescente de informações mais relacionadas com à questão de qualidade no suporte, no início de 2004 foram adicionadas características de gerenciamento de SLAs, mudando de forma sensível a maneira como o gerenciamento de chamados vinha acontecendo e obtendo crescente melhoria da qualidade final de acordo com os indicadores fixados para os serviços realizados.
Hoje é possível responder questões como:
- Volume de chamados por período;
- Tempo médio de resposta e solução para os chamados;
- Percentual de chamados atendidos e resolvidos dentro do SLA;
- Tempo dos chamados decomposto em cada status de atendimento;
- Usuários mais ativos;
- Principais problemas;
- Reincidência de chamados por equipamento;
- Estado real do parque de equipamentos;
- Como e onde estão distribuídos os equipamentos;
- Vencimento das garantias dos equipamentos;
- Além de uma série outras questões pertinentes à gerência pró- ativa do setor de suporte.
No início de 2005, os dois sistemas: OcoMon e Invmon foram finalmente 100% integrados ganhando um novo layout e permanecendo com o nome único de OCOMON. Tendo então sua utilização baseada em dois módulos principais:
- Módulo de Ocorrências;
- Módulo de Inventário;
Principais funções do módulo de ocorrências:
- Abertura de chamados de suporte por área de competência;
- Vínculo do chamado com a etiqueta de patrimônio do equipamento;
- Busca rápida de informações referentes ao equipamento (configuração, localização, histórico de chamados, garantia..) no momento da abertura do chamado;
- Envio automático de e-mail para as áreas de competência;
- Acompanhamento do andamento do processo de atendimento das ocorrências;
- Encerramento das ocorrências;
- Controle de horas válidas;
- Definições de níveis de prioridades para os setores da empresa;
- Gerenciamento de tempo de resposta baseado nas definições de prioridades dos setores;
- Gerenciamento de tempo de solução baseado nas definições de categorias de problemas;
- Controle de dependências para o andamento do chamado;
- Base de conhecimento;
- Consultas personalizadas;
- Relatórios gerenciais;
- Controle de SLAs;
Principais funções do módulo de inventário:
- Cadastro detalhado das informações (configuração) de hardware do equipamento;
- Cadastro de informações contábeis do equipamento (valor, centro de custo ,localização, reitoria, fornecedor..)
- Cadastro de modelos de configuração para carga rápida de informações de novos equipamentos;
- Cadastro de documentações relacionadas aos equipamentos (manuais, termos de garantia, mídias..);
- Controle de garantias dos equipamentos;
- Histórico de mudanças (de localidades) dos equipamentos;
- Controle de licenças de softwares;
- Busca rápida das informações de chamados de suporte para o equipamento;
- Busca rápida de informações dos equipamentos;
- Buscas por histórico de mudanças (localização);
- Consultas personalizadas;
- Estatísticas técnicas e gerenciais do parque de equipamentos;
- Relatórios gerenciais;
Perfil Técnico
O OcoMon foi concebido sob a visão de software Open Source sob o modelo GPL3 de licenciamento, utilizando tecnologias e ferramentas livres para o seu desenvolvimento e manutenção.
- Linguagem: PHP versão: a partir da 4.3x até a 5x , HTML, CSS, JavaScript;
- Banco de dados: MySQL versão: A partir da 4.1x;
- Autenticação de usuários: a autenticação de usuários pode ser feita tanto na própria base do sistema quanto através de uma base LDAP em algum ponto da rede.
Mãos a obra para realizar a Instalação e configuração do servidor OcoMon.
Para esta instalação, eu fiz uma instalação do Linux na distribuição CentOS, utilizando a versão 6.4 com 64 bits. Como foi feito uma instalação mínima, é interessante instalar alguns pacotes essenciais para trabalhar com o sistema, que são os pacotes básicos:
# yum groupinstall base
Além disso, antes de continuar eu realizei uma atualização de todos os pacotes do Linux CentOS instalado executando o comando:
# yum update -y
Também prefiro desabilitar o SELinux, para isso faça o seguinte:
Edite o arquivo /etc/selinux/config
Onde estiver escrito
SELINUX=enforcing
Troque por
SELINUX=disabled
Isso vai desabilitar o SELinux no próximo reboot. Para desabilitar imediatamente, execute o seguinte comando:
# setenforce 0
Eu também preferi desabilitar o Firewall no Linux CentOS, para isso é necessário executar os seguintes comandos:
# service iptables stop
# chkconfig iptables off
# service ip6tables stop
# chkconfig ip6tables off
Caso prefira manter o firewall habilitado, vamos liberar a porta 80 do servidor Web, acesse o IPtables e adicione a porta citada:
# vim /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
Reinicie o IPtables:
# iptables-restore /etc/sysconfig/iptables
Agora realmente vamos aos pacotes necessários para instalação do OcoMon:
# yum install httpd httpd-manual
# yum install php php-common php-devel php-gd php-mysql
# yum install mysql mysql-devel mysql-server
Inicie os serviços do Apache e do MySQL e coloque para iniciar automaticamente com o sistema:
Apache
# service httpd start
# chkconfig httpd on
MySQL
# mysql_install_db
# service mysqld start
# chkconfig mysqld on
Crie uma senha para o usuário "root" do MySQL:
# mysqladmin -u root password "senha"
Agora acesse o MySQL e dê todas as permissões para o usuário "root":
# mysql -u root -p
mysql> grant all on *.* to 'root'@'%' identified by 'senha';
mysql> flush privileges;
mysql> exit;
Agora, vamos baixar o OcoMon e o patch que corrige o bug para encerramento de chamados, quando a barra de formatação está ativa para as ocorrências. Para descarregar os downloads, escolha uma pasta e se preferir, crie uma. Eu sempre uso o diretório "/opt".
Então, entre no diretório "/opt" e realize o download:
# cd /opt
# wget –no-check-certificate https://sourceforge.net/projects/ocomonphp/files/ocomon_2.0-RC6.tar.gz
# wget http://ocomonphp.sourceforge.net/files/ocomon_2.0-RC6-patch-01.tar.gz
Descompacte o OcoMon:
# tar zxvf ocomon_2.0-RC6.tar.gz
Mova o OcoMon para a pasta raiz do Apache:
# mv ocomon_2.0-RC6 /var/www/html/ocomon
Agora vamos descompactar o patch e aplicá-lo:
# tar zxvf ocomon_2.0-RC6-patch-01.tar.g
# cp includes/versao.php /var/www/html/ocomon/includes/
# cp ocomon/geral/encerramento.php /var/www/html/ocomon/ocomon/geral/
Observação: nesta cópia, será substituído os arquivos em suas respectivas pastas, então será interrogado sobre a substituição, confirme com a letra "Y"
Acesse o diretório do OcoMon e importe a base de dados para o MySQL:
# cd /var/www/html/ocomon
# mysql -u root -p < install/2.0RC6/DB_OCOMON_2.0RC6_FULL.SQL
Nessa importação, pedirá a senha do usuário "root" que cadastramos há pouco!
Agora vamos acertar as configurações para a comunicação com o MySQL.
Primeiro renomeie o arquivo contido na pasta "includes":
Observação: Lembrando que estamos dentro do diretório do OcoMon!
# mv includes/config.inc.php-dist includes/config.inc.php
Entre no arquivo renomeado e deixe-o assim:
# vim incluides/config.inc.php
define ( "SQL_USER", "root"); // Usuário do MySQL
define ( "SQL_PASSWD", "senha"); // Senha do usuário que cadastramos
define ( "SQL_SERVER", "localhost"); // Acesso será local
define ( "SQL_DB", "ocomon_rc6"); // Nome do banco de dados
Após importação da base do OcoMon, é recomendado remover a pasta "install". Então, vamos removê-la:
# rm -Rf /var/www/html/ocomon/install
Pronto! Agora vamos fazer alguns ajustes no Apache para não termos problemas com acentuações. Para isso, acesse o arquivo de configuração do Apache e deixe-o assim:
# vim /etc/httpd/conf/httpd.conf
Linha 743:
LanguagePriority pt-BR pt en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl ru sv zh-CN zh-TW
Na linha 759:
Troque:
AddDefaultCharset UTF-8
Por:
AddDefaultCharset iso8859-1
Observação: no navegado Google Chrome, o OcoMon não se ajusta, ficando com uma imagem desalinhada. Vamos aplicar a correção.
Acesse o arquivo "ocomon/includes/css/estilos.css.php" e adicione essas linhas:
# vim var/www/html/ocomon/includes/css/estilos.css.php
Procure por:
print "body {
font-family: tahoma;
color:black;
font-size:11px;
background-color:".$row[‘tm_color_body’].";
} ";/*#cde5ff background-color:#d9d8da; 5E515B font-size: 11px; */
Logo após esta linha, adicione:
print "
#centro {
min-width: 140px;
width: 140px;
}";
Já estamos quase finalizando!
Abra seu navegador e digite o IP do servidor onde está instalado o OcoMon, seguido do nome do OcoMon.
Por exemplo: http://192.168.0.1/ocomon
Aparecerá a tela de login do OcoMon:
- Usuário: admin
- Senha: admin
Se tiver um domínio, é interessante criar um subdomínio. Observação: essa parte eu não testei, mas se desejar usar fica a dica.
Se for o caso, segue o exemplo de Virtualhost:
# vim /etc/httpd/conf.d/ocomon.conf
<VirtualHost *:80>
ServerAdmin admin@seudominio.com.br
ServerName ocomon.seudominio.com.br
DocumentRoot /var/www/html/ocomon
ErrorLog /var/log/htthd/ocomon-error.log
CustomLog /var/log/httpd/ocomon-access.log common
</VirtualHost>
Pronto, agora é só digitar o subdomínio no seu navegador:
- http://ocomon.seudominio.com.br
Se você gostou desse artigo, deixe seu comentário abaixo, assim poderemos interagir e saber sua opinião. Você também pode compartilhar esse artigo, além de seguir nossas páginas nas redes sociais para acompanhar os novos artigos.