Commit c13ad7c3949c1428345418f61d2b884b089f1e61

Authored by daniel@ruoso.com
1 parent 4e671faa
Exists in master

git-svn dance

git-svn-id: http://svn.softwarepublico.gov.br/svn/sistemadeatendimento/sistema/trunk@41 63db2ce5-8a6c-0410-abb9-a418dd412890
  1 +screen
  2 +postgresql-8.3
  3 +apache2-mpm-prefork
  4 +libapache2-mod-fastcgi
1 libalgorithm-c3-perl 5 libalgorithm-c3-perl
2 libaliased-perl 6 libaliased-perl
3 libalien-wxwidgets-perl 7 libalien-wxwidgets-perl
@@ -284,7 +288,6 @@ libxml-compile-cache-perl @@ -284,7 +288,6 @@ libxml-compile-cache-perl
284 libxml-compile-perl 288 libxml-compile-perl
285 libxml-compile-soap-perl 289 libxml-compile-soap-perl
286 libxml-compile-tester-perl 290 libxml-compile-tester-perl
287 -libxml-compile-tranport-soapxmpp-perl  
288 libxml-compilex-tranport-soapxmpp-perl 291 libxml-compilex-tranport-soapxmpp-perl
289 libxml-dom-perl 292 libxml-dom-perl
290 libxml-libxml-common-perl 293 libxml-libxml-common-perl
Fila-Servico/lib/Fila/Servico/DB/Guiche.pm
@@ -54,12 +54,12 @@ __PACKAGE__->add_columns @@ -54,12 +54,12 @@ __PACKAGE__->add_columns
54 timeout_chamando => 54 timeout_chamando =>
55 { 55 {
56 data_type => 'integer', 56 data_type => 'integer',
57 - default => 180, 57 + default_value => 180,
58 }, 58 },
59 timeout_concluido => 59 timeout_concluido =>
60 { 60 {
61 data_type => 'integer', 61 data_type => 'integer',
62 - default => 20, 62 + default_value => 20,
63 } 63 }
64 ); 64 );
65 __PACKAGE__->set_primary_key(qw(id_guiche)); 65 __PACKAGE__->set_primary_key(qw(id_guiche));
@@ -49,6 +49,21 @@ diretórios: @@ -49,6 +49,21 @@ diretórios:
49 documentacao: contém um conjunto diverso de documentações geradas 49 documentacao: contém um conjunto diverso de documentações geradas
50 sobre o sistema, incluindo materiais utilizados em treinamentos. 50 sobre o sistema, incluindo materiais utilizados em treinamentos.
51 51
  52 +DESCOMPACTANDO OS ARQUIVOS
  53 +================================================================================
  54 +
  55 +Uma vez que você tenha o arquivo do sistema, vc pode descompactá-lo em
  56 +qualquer lugar utilizando o comando:
  57 +
  58 +tar xzf "Sistema de Atendimento - v1.2.tar.gz"
  59 +
  60 +Depois que descompactar, como root execute:
  61 +
  62 +mv trunk /usr/share/fila
  63 +
  64 +Isso é importante porque as configurações padrão que vêm com o sistema
  65 +indicam essa localização.
  66 +
52 PREPARACAO DAS DEPENDENCIAS 67 PREPARACAO DAS DEPENDENCIAS
53 ================================================================================ 68 ================================================================================
54 69
@@ -69,7 +84,19 @@ executar o comando (como root): @@ -69,7 +84,19 @@ executar o comando (como root):
69 84
70 apt-get install `cat /tmp/Dependencias` 85 apt-get install `cat /tmp/Dependencias`
71 86
72 -Com esse comando, todos os pacotes necessários deverão ser instalados. 87 +Com esse comando, todos os pacotes necessários deverão ser
  88 +instalados. Sempre que for mencionado alguma pasta do sistema,
  89 +entende-se que é a partir do diretório /usr/share/fila.
  90 +
  91 +Existe um patch que precisa ser aplicado (foi submetido aos autores do
  92 +módulo mas ainda não foi aceito), isso é fundamental para o correto
  93 +funcionamento do sistema. Para isso execute:
  94 +
  95 +cd /usr/share/perl5
  96 +patch -p4 /usr/share/fila/patches/DBIx-Class-ResultSource.patch
  97 +
  98 +Ele deve dar uma mensagem como "Hunk xxxx succeeded", o que indica que
  99 +funcionou.
73 100
74 INSTALACAO DO BANCO DE DADOS 101 INSTALACAO DO BANCO DE DADOS
75 ================================================================================ 102 ================================================================================
@@ -79,43 +106,52 @@ PostgreSql devido ao uso extensivo de cálculos temporais, @@ -79,43 +106,52 @@ PostgreSql devido ao uso extensivo de cálculos temporais,
79 funcionalidade essa que é uma das características fortes desse banco 106 funcionalidade essa que é uma das características fortes desse banco
80 de dados. 107 de dados.
81 108
82 -A configuração do banco de dados é feita nos arquivos: 109 +O sistema de atendimento está homologado apenas com o Postgresql 8.3
  110 +(versão disponível no Debian Lenny). O servidor de banco de dados já
  111 +foi instalado com as dependências.
  112 +
  113 +O sistema de atendimento está configurado por padrão para utilizar o
  114 +usuário "fila" com a senha "senha" no banco de dados, conectando-se ao
  115 +banco "fila". Para configurar o servidor de banco de dados execute
  116 +(como root):
  117 +
  118 +su -c 'su postgres'
83 119
84 - Fila-Servico/fila_servico.yml  
85 - Fila-Administracao/fila_administracao.yml. 120 +O comando acima vai abrir um novo prompt de comando, agora com o
  121 +usuário administrador do postgres, então poderemos criar o usuário
  122 +"fila" no banco de dados utilizando o comando.
86 123
87 -Esses arquivos contém a configuração dos endereços para conexão e do  
88 -nome do banco de dados. A configuração padrão presente no código como  
89 -distribuído utiliza o banco de dados em "localhost", no banco de dados  
90 -"fila" utilizando o usuário "fila" com a senha "senha". Você deve  
91 -personalizar esses arquivos de acordo com a situação real no seu  
92 -ambiente. 124 +createuser -P fila
93 125
94 -Adicionalmente, o sistema de agendamento tem a configuração presente  
95 -no arquivo: 126 +Primeiro ele vai pedir a senha para o novo usuário. Digite "senha" e
  127 +depois dê enter. Ele vai perguntar se o usuário deve ser um
  128 +superusuário, você pode responder que não. Ele vai perguntar se ele
  129 +pode criar outras "roles" (como o postgres chama os usuários), você
  130 +pode responder que não, e finalmente ele vai perguntar também se ele
  131 +pode criar bancos de dados, aí você responde que sim.
96 132
97 - Fila-Agendamento/fila_agendamento.yml 133 +Depois disso você pode digitar "exit" e dar enter, para sair do prompt
  134 +do usuário postgres.
98 135
99 -O sistema de Agendamento usa um banco de dados diferente, para  
100 -permitir que o agendamento seja feito em uma máquina diferente ou até  
101 -mesmo em uma rede diferente, uma vez que o sistema de agendamento deve  
102 -ser visível para a internet, enquanto o sistema de agendamento deve  
103 -ser preservado dentro de uma rede privada. 136 +Para criar o banco de dados execute o seguinte comando (pode ser como
  137 +usuário normal):
104 138
105 -Para popular os bancos de dados, você pode usar os scripts: 139 +createdb -Ufila -h127.0.0.1 fila
106 140
107 - Fila-Servico/script/fila_servico_db.pl 141 +Ele vai pedir a senha do usuário "fila", então é só digitar
  142 +"senha". Então ele terá o banco de dados criado.
108 143
109 -e 144 +Para popular os bancos de dados, você pode usar o script, (pode ser
  145 +como usuário comum). De dentro do diretório Fila-Serviço, execute:
110 146
111 - Fila-Agendamento/script/fila_agendamento_db.pl 147 +./script/fila_servico_db.pl | psql -Ufila -h127.0.0.1 fila
112 148
  149 +Ele irá pedir a senha do banco de dados novamente, digite "senha",
  150 +depois "enter"
113 151
114 -para executar cada um desses scripts você deve entrar nos diretórios  
115 -Fila-Servico e Fila-Agendamento respectivamente. Esses scripts geram  
116 -um conjunto de instruções sql que podem ser utilizadas como entrada  
117 -para o psql para a criação das estruturas de dados, incluindo alguns  
118 -dados de exemplo. 152 +Esse script gera um conjunto de instruções sql que podem
  153 +ser utilizadas como entrada para o psql para a criação das estruturas
  154 +de dados, incluindo alguns dados de exemplo.
119 155
120 156
121 EXECUTANDO O SISTEMA 157 EXECUTANDO O SISTEMA
@@ -128,18 +164,58 @@ plugin DJabberd::Plugin::Balancer, a implementação de um balanceamento @@ -128,18 +164,58 @@ plugin DJabberd::Plugin::Balancer, a implementação de um balanceamento
128 de carga para os serviços. Desta forma, em primeiro lugar é necessário 164 de carga para os serviços. Desta forma, em primeiro lugar é necessário
129 iniciar o servidor DJabberd. Para fazer isso, pode-se executar: 165 iniciar o servidor DJabberd. Para fazer isso, pode-se executar:
130 166
131 - djabberd -conf DJabberd/djabberd.conf 167 +LOGLEVEL=DEBUG screen -dmS djabberd djabberd -conf DJabberd/djabberd.conf
132 168
133 Uma vez o servidor Jabber rodando, é possível iniciar o módulo de 169 Uma vez o servidor Jabber rodando, é possível iniciar o módulo de
134 regras de negócio. Para isso, pode-se executar: 170 regras de negócio. Para isso, pode-se executar:
135 171
136 - # dentro do diretório Fila-Servico  
137 - ./script/fila_servico_xmpp.pl 172 +cd /usr/share/fila/Fila-Servico
  173 +FILA_SERVICO_HOME=. screen -dmS servico ./script/fila_servico_xmpp.pl
138 174
139 Neste momento, pode-se então iniciar o Apache2, utilizando a 175 Neste momento, pode-se então iniciar o Apache2, utilizando a
140 configuração de exemplo, que presume a cópia desse diretório para o 176 configuração de exemplo, que presume a cópia desse diretório para o
141 diretório /usr/share/fila. 177 diretório /usr/share/fila.
142 178
  179 +INSTALACAO DO AMBIENTE WEB
  180 +================================================================================
  181 +
  182 +Para configurar o ambiente web, execute (como root):
  183 +
  184 +cp /usr/share/fila/Apache2/fila-vhost.conf /etc/apache2/sites-available
  185 +a2ensite fila-vhost.conf
  186 +
  187 +Depois disso é só reiniciar o apache:
  188 +
  189 +apache2ctl stop
  190 +apache2ctl start
  191 +
  192 +A tela do gerente e do atendente é acessível através do endereço:
  193 +
  194 +http://localhost/
  195 +
  196 +Todos os usuários vem com senha "password" por padrão. Vem o usuário
  197 +"gerente" e os usuários "atendente01" até "atendente10" para você
  198 +testar.
  199 +
  200 +A tela do emissor de senhas manual é acessível através do endereço:
  201 +
  202 +http://localhost/emissor
  203 +
  204 +Usuário "emissor", senha "password".
  205 +
  206 +Para habilitar a interface de administração modifique o arquivo
  207 +/etc/apache2/ports.conf e adicione a linha
  208 +
  209 +Listen 8081
  210 +
  211 +logo depois de "Listen 80". Reinicie o apache novamente. A interface
  212 +fica então disponível no endereço:
  213 +
  214 +http://localhost:8081/
  215 +
  216 +É recomendável implantar um mecanismo de autenticação para essa
  217 +interface, que deve ser acessível apenas para manutenção.
  218 +
143 219
144 DOCUMENTACOES 220 DOCUMENTACOES
145 ================================================================================ 221 ================================================================================