-
Notifications
You must be signed in to change notification settings - Fork 77
Installation
Dan Fisher edited this page Nov 12, 2017
·
22 revisions
These are slightly more in depth installation instructions. Before beginning the installation instructions, I would assume you have set up the following:
- Exchange Online (Office 365)
- Conference room mailboxes organized in room lists
- Exchange Web Services (EWS) enabled
- A service account with access to all conference room mailboxes and EWS
- A server to be used as a web server to host the application
- In a terminal window, type:
$ sudo apt-get update
- Check to see if the command
curl
is installed by typingcurl
.- If you receive the error:
Then you need to installThe program 'curl' is currently not installed. You can install it by typing: sudo apt-get install curl
curl
. To do this, in a terminal window, type:$ sudo apt-get install curl
- Install Node.js on your server. This will give you the two terminal commands
node
andnpm
.- To install Node.js via the terminal, in a terminal window, type:
Once the download is complete, type:$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
$ sudo apt-get install -y nodejs
- To ensure Node has installed correctly, you can type
node -v
andnpm -v
in your desired console (cmd, terminal, cmder, etc.). It should return a version number to the console.-
node -v
should returnv8.9.1
andnpm -v
should return5.5.1
-
- Install
git
. In a terminal window, type:$ sudo apt-get install git
- Create a directory where you would like to clone the repository. For this install, I will make a
Website/
folder inDocuments/
$ cd Documents/ $ mkdir Websites $ cd Websites/
- Clone the repository to your
Websites/
directory. In a terminal window, type:This will create a directory called "MeetEasier". To check, in a terminal window, simply type:$ git clone https://github.com/danxfisher/MeetEasier.git
If you see a MeetEasier folder, you're good to go.$ ls
- In a terminal window, navigate to the
MeetEasier/
folder. - We will now install the server dependencies of the application. While in the
MeetEasier/
root folder, type:$ npm install
- Now you'll need to have your Exchange credentials handy. In a terminal window, navigate to
MeetEasier/config/
. Here there is a file namedauth.js
. We can edit this file using vim. Type:$ vi auth.js
- In
MeetEasier/config/auth.js
, replace the username, password, and domain placeholders with your credentials.- If you have GUI access to the server, feel free to use any other text editor to edit this file.
- Once this is complete, our server side installation and configuration is finished.
- In a terminal window, navigate to
MeetEasier/ui-react/
- The user interface is built with React.js. We will now need to install all of our front end dependencies.
- In the terminal window within
MeetEasier/ui-react/
, type:$ npm install
- By default, this app will run on port 8080. If you would like to change the port, you'll have to change it in three locations:
server.js
ui-react/package.json
-
ui-react/src/config/flightboard.config.js
For a production web server, you would want the app to use port 80, this way you wouldn't have to include a port in the URL. For the sake of this tutorial, we will leave our app configured on port 8080.
- Once you have your port configured the way you want it, in your terminal window, navigate to
MeetEasier/ui-react/
and typenpm run build
. This will create your production ready files from your React.js source. - To get the IP of your server, in a terminal window, type:
$ ifconfig
- Finally, in your terminal window, navigate back to the root of the app,
MeetEasier/
and run the server by typingnode server.js
in a terminal window to serve your app.- In a production environment, you'd want to use a package like forever to ensure your server runs continuously.
- To use the
forever
package, first install it by navigating toMeetEasier/
in a terminal window and typing:
$ npm install forever -g
- Then, instead of typing
node server.js
in a terminal window to serve your app, instead typeforever start server.js
- In the terminal window, you should now see
now we are cooking.
This just means our server is running. - In a web browser, type the IP you got from Step 18 and the port (in our case 8080):
http://YOUR_IP:8080
- MeetEasier should now be accessible and in the terminal window on the server, you should see Exchange Web Services data being retrieved.
Coming soon