
Rocket Chat é um serviço de conversação online, mais uma fantástica pérola do mundo open-source.
Destaco (entre muitos) os seguintes serviços:
- Conversação online
- Video-chamada
- Envio de ficheiros
- Mensagens de voz
Ao nível de cliente é suportado pelos principais sistemas operativos Linux, Windows e OSX. Também tem cliente nativo para Android e IOS. Podem ver uma demonstração aqui.
Ao nível de servidor, obviamente pode ser instalado num Linux. Vamos usar o nosso Raspberry? 🙂
Para o efeito vou usar um Raspberry Pi 2, com um cartão SD 8GB classe 10.
O sistema operativo é o Ubuntu server, instalado de fresco e actualizado.
Primeiro actualizamos e instalamos algum software adicional:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install git curl graphicsmagick python build-essential
Vamos agora instalar e configurar a nossa base de dados, usando para o efeito o Mongo:
sudo apt-get install mongodb
Iniciamos a configuração do nosso Mongo:
mongo admin
Configuramos o administrador (alterem o “admin” e “1234“) :
db.createUser({ user: “admin”, pwd: “1234”, roles: [“userAdminAnyDatabase”] })
auth = true
setParameter = enableLocalhostAuthBypass=0
Configuramos a base de dados e o seu administrador para o nosso chat:
use chat_db
db.createUser({ user: “user”, pwd: “1234”, roles: [“readWrite”] })
exit
Em seguida obtemos o METEOR para o ARM:
cd /tmp
git clone –depth 1 https://github.com/4commerce-technologies-AG/meteor.git
meteor/meteor -v
Hora para tomar um café 🙂
No fim do processo vamos então criar uma pasta onde o nosso Rocket chat vai ser instalado:
sudo mkdir /opt/chat
cd /opt/chat
sudo curl https://cdn-download.rocket.chat/build/rocket.chat-pi-develop.tgz -o rocket.chat.tgz
sudo tar zxvf rocket.chat.tgz
Movemos para a nossa nova pasta o Meteor:
sudo mv /tmp/meteor /opt/chat/
E agora instalamos as dependências e finalmente o nosso chat:
cd bundle/programs/server
/opt/chat/meteor/dev_bundle/bin/npm install
cd /opt/chat/bundle
Agora, numa só linha:
PORT=3000 ROOT_URL=http://raspberry_IP:3000 MONGO_URL=mongodb://user:1234@localhost:27017/chat_db /opt/chat/meteor/dev_bundle/bin/node main.js
Após o processo entramos na página do nosso chat:
http://ip_do_raspberry:3000 (Podem alterar o numero da porta caso desejem)
Registem um utilizador que será automaticamente Admin do sistema.
Vão a Administration -> Email -> SMTP e configurem uma conta para envio de email.
E pronto! Temos o nosso Rochet.Chat a postos para a conversa. Podem instalar o cliente da Rocket.Chat ou usar a plataforma WEB.
Vamos agora arranjar um scrit para arrancar com o nosso chat server de uma forma mais fácil. Há várias maneiras de fazer isto pelo que fica aqui uma bastante fácil. Vamos criar um ficheiro com o nome server.conf
cd /opt/chat/bundle
nano server.conf
Vamos inserir a seguinte informação:
#!/bin/bash
export PORT=3000
export ROOT_URL=http://raspberry_IP
export MONGO_URL=mongodb://user:1234@localhost:27017/chat_db
/opt/chat/meteor/dev_bundle/bin/node main.js
Guardamos e damos permissões de executável:
chmod +x server.conf
Agora arrancamos com o nosso script com a ajuda do screen:
screen
cd /opt/chat/bundle
./server.conf
Após uns minutos temos o nosso servidor novamente no ar.
Para sair da sessão do screen carreguem as teclas Ctrl+a+d
Para voltar à sessão escrevam na consola:
screen -r
Mais informações do screen podem ver aqui.
Não esqueçam que esta instalação é básica e há questões relacionadas com segurança que deverão ser levadas em conta. Passwords fortes e uma firewall é o primeiro caminho a percorrer antes de abrir o nosso chat ao mundo. Outras opções serão apresentadas em futuros artigos.
Cumprimentos!