Monitorando e gerando relatórios de impressão – PARTE 2

Want create site? Find Free WordPress Themes and plugins.
Monitorando e gerando relatórios de impressão - PARTE 2

O CUPS é um bom gerenciador de impressoras e realiza esse trabalho de forma muito eficiente, entretanto, quando se trabalha em uma empresa, repartição, etc, é comum sabermos de histórias onde um funcionário imprime documentos que nada tem a ver com o trabalho e até mesmo histórias de impressões de livros.

Lembro-me que, em uma repartição pública na qual estagiei, contaram uma história em que um dos funcionários imprimiu os livros “Nas Montanhas da Loucura” de H.P. Lovecraft e “It – A Coisa” de Stephen King, e eu fui contratado para substituir justamente o “funcionário dos livros”.
Mas o que essa história toda tem haver com o CUPS? É simples, o CUPS não gera relatórios de impressão, ele “apenas” gerencia e centraliza impressões, para saber o que é imprimido na impressora x ou y precisaremos de um outro programa, o mesmo programa que causou a saída do “funcionário dos livros”. O programa que ensinarei vocês a instalar, executar e trabalhar em conjunto, se chama JASmine.

Conhecendo o JASmine

O JASmine é software usado em conjunto com o CUPS para emissão de relatórios de impressão, com ele também é possível reduzir custos, criar limites de impressões para cada usuário e verificar se falhas ou problemas ocorrem durante a impressão.

Nesse artigo, utilizarei a distribuição Ubuntu 16.04.

Instalando os pacotes necessários
O JASmine solicita outros pacotes instalados como o PHP, MySQL e Python, então vamos instalá-los.
Copie o comando abaixo:
$ sudo apt-get install apache2 vim build-essential cups cups-pdf apparmor-utils pkpgcounter samba mysql-server-5.7 php-mbstring php7.0-mbstring php-gettext phpmyadmin libdbd-mysql-perl
Com os pacotes instalados, vamos configurar o CUPS.
$ sudo vim /etc/cups/cupsd.conf
Altere a linha com o atributo “Listen localhost:631” para “Listen 631”.
Vamos dar permissão de acesso ao CUPS, altere as linhas para o que está abaixo:
Restrict access to the server…
<Location />
Allow all
  Order allow,deny
</Location>

Restrict access to the admin pages…
<Location /admin>
Allow all
  Order allow,deny
</Location>

Restrict access to configuration files…
<Location /admin/conf>
Allow all
  AuthType Default
  Require user @SYSTEM
  Order allow,deny
</Location>

Configurando o Samba
Copie o comando para dar permissões de acesso:
$ sudo smbpasswd -a root
O comando abaixo, você deverá colocar o hostname do servidor com letra maiúscula:
$ sudo net -S localhost -U root -W HOSTNAME-DO-SERVIDOR rpc rights grant ‘root’ SePrintOperatorPrivilege
Edite o arquivo cups-pdf com o seu editor de texto favorito:
$ sudo nano /etc/cups/cups-pdf.conf
Altere a linha 45 com o atributo “Out ${HOME}/PDF” para “Out /var/spool/cups-pdf/${USER}
No mesmo arquivo, modifique as linhas conforme abaixo:
Label 1 – Linha 98
Log /var/log/cups – Linha 201
DecodeHexStrings 1 – Linha 279
Instalando o JASmine
Com todas essas modificações realizadas, vamos instalar o JASmine. Primeiramente, baixe os arquivos com os comandos abaixo:
$ sudo wget http://nayco3.free.fr/Jasmine/Releases/0.0.3/JASmine-MySQL-0.0.3.tar.bz2
$ sudo wget http://nayco3.free.fr/Jasmine/Releases/0.0.3/JASmine-Backend-0.0.3.tar.bz2
$ sudo wget http://nayco3.free.fr/Jasmine/Releases/0.0.3/JASmine-Web-0.0.3.tar.bz2
Agora criaremos o banco que armazenará os dados de impressão:
$ sudo mysql -u root -p
password: *************
mysql> CREATE DATABASE print;
mysql> exit
O arquivo JASmine-MySQL possui um script e utilizaremos agora:
$ sudo tar -jxvf JASmine-MySQL-0.0.3.tar.bz2
$ cd JASmine-MySQL-0.0.3
$ sudo mysql -u root -p print < jasmine.sql
Crie um usuário no MySQL:
$ sudo mysql -u root -p
mysql> GRANT ALL ON print.* TO jasmine@localhost identified by ‘senha’;
mysql> FLUSH PRIVILEGES;
mysql> exit
O pacote JASmine-Backend possui os programas auxiliares que monitorarão as impressões e gerarão os dados que serão salvos no banco.
$ sudo tar -jxvf JASmine-Backend-0.0.3.tar.bz2
$ cd JASmine-Backend-0.0.3
Copie o script JASmine escrito em Perl para dentro do CUPS.
$ sudo cp jasmine /usr/lib/cups/backend/
$ cd /usr/lib/cups/backend
$ sudo chmod 755 jasmine
$ sudo chown root jasmine
Vamos editar o script e colocar as informações do banco de dados.
$ sudo vim jasmine
my $DBhost=”localhost”;
my $DBlogin=”jasmine”;
my $DBpassword=”senha”;
my $Dbdatabase=”print”;
O JASmine-Web mostrará as informações de impressão em uma janela Web, volte para pasta onde você baixou os arquivos.
$ sudo mkdir /var/www/html/Impressao
$ sudo cp -r * /var/www/html/Impressao
Editaremos o arquivo com as configurações de acesso ao banco de dados.
$ cd /var/www/html/Impressao
$ sudo vim conexao.php
$DB_host=”localhost”;
$DB_login=”jasmine”;
$DB_pass=”senha”;
$DB_db=”print”;
Vamos criar um script para reinicialização.
$ sudo vim /etc/restart.sh
#!/bin/bash
#Faz uma pausa aguardando o inicio do sistema.
sleep 10
#Reinicia o samba
/etc/init.d/smbd restart && /etc/init.d/cups restart
$ sudo chmod +x /etc/restart.sh
$ sudo chmod 777 /etc/restart.sh
Edite o arquivo abaixo:
$ sudo vim /etc/rc.local
Cole o conteúdo abaixo em cima da linha exit 0
/etc/restart.sh &
Reinicie o sistema.
$ sudo shutdown -r now
Agora instalaremos a impressora no servidor.
Acesse o CUPS:
http://ip_do_servidor:631
Em “Administration”, selecione:
“Show printers shared by other systems”
“Share printers connected to this system”
“Allow printing from the Internet”
“Allow remote administration”
“Allow users to cancel any job (not just their own)”
Em “Administration”, clique em “Add Printer” faça a instalação da impressora prestando atenção em “connection”.
connection: jasmine:socket://IP-DA-IMPRESSORA

Bem, esse artigo foi um pouco mais extenso do que o anterior. Qualquer duvida ou problema, por favor, deixe nos comentários ou nos envie um e-mail para que posamos auxiliá-lo na instalação dos programas e na correta utilização do JASmine.

(adsbygoogle = window.adsbygoogle || []).push({});

Fonte

Did you find apk for android? You can find new Free Android Games and apps.

você pode gostar também Mais do autor

Comentários