Commit 1dad4a6b authored by IASpace's avatar IASpace
Browse files

updated readme with new diagrams

parent ad91ff4d
# Telemersive Gateway 0.1.0
# Telemersive Gateway 1.0.0
Telemersive Gateway is a peer application implementing the telemersive-bus protocol. It communicates with the telemersive-router to connect all peers inside a telemersive room.
Telemersive Gateway is a peer application based on MaxMSP. It allows to converse with multiple peers in different networks. A central server (called the telemersive-router) allows to create virtual rooms inside which all peers can share their available resources.
## Problem
Here a short explanation of the problem the temersiveGateway tries to solve.
![Diagram](media/ConnectionDiagramProblem.svg "Dependencies")
Lets assume you have three locations with three indivdual networks (LAN), each sitting behind a firewall whose administrators have no intention to make any changes whatsowever (for example inside a university).
You are challenged to share different data streams between these locations with as little latency as possible without messing up networking between the individual machines inside the individual LAN's.
## Overview
The telemersive network tools solve this with two components.
A server on which a telemersive-router is running, and for each location and machine a telemersive-gateway to help bridging the firewall.
![Diagram](media/ConnectionDiagramSolution.svg "Solution")
At the core of the system lies the telemersive-bus, a nodejs library that helps to connect the individual peers. It allows to create individual rooms into which peers can enter if they know the correct password. Inside each room the telemersive-router opens an array of proxy-scripts, each handling an individual port, for lowlatency connection of UDP data streams.
This MaxMSP package allows to use the temersive-bus protocol in two differnt flavours:
### The Telemersive Gateway
### The Telemersive busClient
![Diagram](media/ConnectionDiagramSimpleRouter.svg "Solution")
## Installation
### Requirements
You need to have [MaxMSP]( installed. There is no need for a license.
You need to have [MaxMSP]( installed. There is no need for a license if you just want to work with telemersive-gateway.
Additionaly you need the following packages:
* Sadam Objects
* Zero
* Spout / Syphon
* shell
### Download
To install the Telemersive Gateway: clone the gitlab repository into a directory called 'telemersive-gateway'. It is important, that the directory is called this way, otherwise the MaxProject will not work:
......@@ -21,23 +55,23 @@ git clone
3. Inside the new Project Window locate 'TelemersiveGateway.maxpat' and double click it
4. You might be confronted with different popup windows mentioning missing dependencies:
* Missing MaxPackages like
![Dependencies](/media/GUI_Dependencies.png "Dependencies")
![Dependencies](media/GUI_Dependencies.png "Dependencies")
* Spout (on Windows) or Syphon (on OSX)
* Sadam Libraries
-> simply follow the 'install' button.
* Missing NodeJS Libraries -> the [config] window should be already open > go to tab 'debug' and press 'script npm install'. Once the debug tool turns from blue to green, you are good to go.
![Debug](/media/GUI_Debug.png "Debug")
![Debug](media/GUI_Debug.png "Debug")
5. If you want to get videostreams or synchronize your files: set paths to externals > tab 'externals'.
* For enabling videostreams you need to download Ultragrid and point the app to the ultragrid app.
* **Windows only:** For synching files on windows you need to have cygwin installed. During the installation process, make sure you install 'rsync', which is not installed by default. On OSX this is installed by default.
* **Windows only:** If you want to send Mocap data from Motive (Optitrack), you need the NatNet2OSC apps. Motive 2.x will work with NatNet3. If you only want to receive data, there is no need for this external.
![Externals](/media/GUI_Externals.png "Externals")
![Externals](media/GUI_Externals.png "Externals")
### Login
![Login](/media/GUI_Login.png "Login")
![Login](media/GUI_Login.png "Login")
1. Enter your credentials under the tab 'login'. This infos are confidential and are only provided on a need to know basis.
* Router URL: e.g. ''
......@@ -68,7 +102,7 @@ press 'close' to close the [config]-window.
### Closing the app
press the 'quit' button in the upper right corner
![Login](/media/GUI_Quit.png "Login")
![Login](media/GUI_Quit.png "Login")
You will be presented with a choice:
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment