geek-at / Rocket.Chat.RaspberryPi

Run a private social network on your Pi for iPhone and Android devices !

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rocket.Chat on Pi Logo

  • Raspberry Pi is the tiny $30 quad-core computer that revolutionalized affordable servers
  • Rocket.Chat is the popular high performance, large capacity, open source web chat platform that rocked the server world

You can now run a private chat server on your Pi for:

  • family
  • social or hobby group
  • sports team
  • school
  • office

Picture of mobile Rocket.Chat in action

Enjoy Rocket.Chat features including:

  • Video and audio chat
  • Share photos and voice messages
  • Share streaming music and video links
  • iOS app for iPhones and iPads
  • App for Android phones and tablets
  • Desktop app for Windows, MacOSX and Linux
  • Operate in 22 different languages
  • Multiple Rooms
  • Direct Messages
  • Private Groups
  • Off the record encrypted messages
  • Avatars
  • Emojis
  • Media Embeds
  • Link Previews
  • Many more ...

Background

This project adapts the Rocket.Chat server to run on a Raspberry Pi 2

Learn about Rocket.Chat.

This project is currently work in progress and is undergoing rapid changes.

Running Rocket.Chat on Pi Server Quick Start

VERY IMPORTANT

Make sure you start with a CLEAN INSTALL of Raspbian JESSIE -- NOT Wheezy

Make sure you are using a Pi 3 (or Pi 2) with these instructions.

Pi Zero, Pi Model B, Pi Model B+, or even Pi Model A can all run Rocket.Chat; but have different CPU, memory configurations and instruction sets that may require some additional work - see FAQ to work with these Pi s.

Our community members are running Rocket.Chat on EVERY MODEL of Pi ever manufactured - so come over to our friendly community hangout if you get stuck.

And YES, Rocket.Chat even runs on the $5 Pi Zero! Making it the first-ever $5 private social network that EVERYONE can afford !

A $5 private social network that EVERYONE can afford

The shortest path to get Rocket.Chat running on your Pi is to watch this excellent YouTube tutorial by RockOnPi community member @rdagger - just click on picture to watch:

From your phone, controll anything connected to your Pi

Installation via DPlatform

Easiest way to install a ready-to-run Rocket.Chat server on a Linux machine, VM, or VPS - @j8r's DPlatform, now in Alpha!

deploy

If you prefer step-by-step written instructions:

Get latest Raspian for your Pi

Find download here (this instruction assumes Raspbian Jessie):

https://www.raspberrypi.org/downloads/raspbian/

Use the shell (you do not need the GUI), get the latest fix and updates:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git

Get required node and npm

The version of node distributed with Raspian is too old. npm is not included.

The easiest way to get both is to clone from the Meteor universal project.

cd $HOME
git clone --depth 1 https://github.com/4commerce-technologies-AG/meteor.git

then

$HOME/meteor/meteor -v

At this point, you may encounter a curl execption with ca problem. This is confirmed to be a bug with the latest Debian/Raspbian, and will be fixed in time. Meanwhile, please see FAQ question #1 for a bypass / temporary fix.

Retry the above command after the curl fix.

Download the Rocket.Chat binary for Raspberry Pi

cd $HOME
mkdir rocketchat
cd rocketchat
curl https://cdn-download.rocket.chat/build/rocket.chat-pi-develop.tgz -o rocket.chat.tgz
tar zxvf rocket.chat.tgz

This will download and untar the app in $HOME/rocketchat

Get a compatible MongoDB instance

Current available mongodb versions on Raspbian are too old for Rocket.Chat. Hopefully the situation will change shortly.

Meanwhile, you can use a MongoDB service provider on the Internet. MongoLab offers free sandbox databases that can be used with Rocket.Chat. Create a free account and database here:

https://mongolab.com/

Create a user and give it write access to the database. Note the Mongo URL, you will need it next.

Install dependencies and start Rocket.Chat

cd $HOME/rocketchat/bundle/programs/server
$HOME/meteor/dev_bundle/bin/npm install

Next,

cd $HOME/rocketchat/bundle

Type the following ALL on one single line, with spaces to separate the environment variables:

PORT=3000  ROOT_URL=http://localhost:3000   MONGO_URL=mongodb://<user>:<password>@<host>:<port>/dataurlfrommongolabs    $HOME/meteor/dev_bundle/bin/node main.js

Wait until the server fully starts. About a minute.

Access your Rocket.Chat server and create the Administrative user

Point a browser on your PC to your Raspberry Pi:

http://rasp pi host IP:3000/

Put your chat server on the Internet for global access

With your Rocket.Chat server up and running, start another shell - typically (Ctrl-Alt-F2) or (Ctl-Alt-F3).

Login, download and start ngrok (see ngrok.com if you need more information):

curl  https://dl.ngrok.com/ngrok_2.0.19_linux_arm.zip -o ngrok.zip
unzip ngrok.zip
cd ngrok
./ngrok http 3000

Now follow the instruction and give the ngrok link to your friends and family anywhere in the world.

They can access your server via the ngrok link.

HINT: if you want to use the voice and video chat features, make sure you give them the link starting with https://

Mobile messaging on phones and tablets

Ask your friends to download the Rocket.Chat mobile app on Android PlayStore or the Apple Appstore for their phone and tablets!

Add your server's ngrok link to the app, and start mobile messaging one another!

More fun with community contributions

Try the following optional enchacements for your RocketOnPi, contributed by your friendly fellow community members:

Auto re-start Rocket.Chat if Pi Reboots or Crashes, by @elpatron68 and @j8r

Hubot

Monitor or control anything connected to your Pi, from anywhere - hubot style!, by @sing-li

Stuck? Need help?

First, check our list of Frequently Asked Questions to see if your question is already included.

If not, create an issue here: https://github.com/RocketChat/Rocket.Chat.RaspberryPi/issues/new

OR

Come join us at https://demo.rocket.chat/ to get help from friendly RockOnPi community members and Rocket.Chat dev team.

RockOnPi Community meetup 24 x 7

The RockOnPi community gathers at https://demo.rocket.chat/channel/raspberrypi - and talk Pi !!

Makers Ahoy!

Your imagination is your only limit.

Both Raspberry Pi and Rocket.Chat are open source, 100% programmable, 100% Makers-ready!

  • get the Raspberry Pi Camera into a Rocket.Chat room
  • hook up your home control project to Rocket.Chat
  • manage your fleet of drones remotely on the web via RC on Pi

Tell us about your innovative project, or find other collaborators at:

https://demo.rocket.chat/channel/raspberrypi

Support this project

Help us spread the word about this project!

Tell all your Pi and Maker friends! Show off Rocket.Chat at your next meetup!

Tweet about us, or show off Pi with Rocket.Chat on Facebook!

Order a Rocket.Chat sticker for your Mac, tablet, or Pi case!

Where to get the Raspberry Pi server

Where to get Rocket.Chat

Apps for iPhone, iPad, Android, Windows, MacOSX:

https://Rocket.Chat/

Server source code (open source MIT Licensed):

https://github.com/rocketchat/Rocket.Chat

About

Run a private social network on your Pi for iPhone and Android devices !

License:MIT License


Languages

Language:Shell 100.0%