Skip to content
eMBee edited this page Nov 4, 2019 · 17 revisions

Frequently Asked Questions

What is sTeam?

sTeam (structuring information in a team) is an open-source environment for the structuring and maintenance of virtual knowledge spaces. It provides a wealth of different mechanisms to support communicative and cooperative learning and work processes.

sTeam

The main focus of sTeam is on techniques for distributed knowledge management and establishing of an arena for internet-based methods of cooperation. The concept of self-administration enables the creation of individual knowledge structures for single users as well as for user groups and the development of virtual communities. Mechanisms for social awareness, synchronous whiteboards and cooperative construction of knowledge also form the focus of our research.

sTeam has been developed at the University of Paderborn in Germany, lead by Prof. Dr. rer. nat. Thorsten Hampel. (Obituary)

What are the requirements to run a sTeam server?

The development of sTeam has started on solaris, but moved to linux and is now usually run on linux systems. Our recommendation is to run it on Debian or RHEL/CentOS. Apart from that, we succeeded in running sTeam on macosx.

There are no specific requirements for the processor speed: as fast as possible of course. Unfortunately, the server is not that scalable to different CPU. Therefore, a large number of CPUs does not increase speed very much and does only run the different services and our mysql (possible other databases might work here, but are not tested yet - we have a quite generic SQL interface) backend would run on a different processor (it is also possible to use mysql on a different machine).

The main memory of the machine should be at least 512k for small applications. Apart from that, it depends on the use of the sTeam server. We recommend 1 gig minimum main memory or more.

How many users does sTeam support?

There are currently sTeam servers with quite a lot of active users (a few thousand). The number of concurrent users is unknown and can't really be determined. It depends on the usage of the sTeam server, which serves as a collaborative backend for different applications. For example, there is the whiteboard, which could produce quite a lof of traffic and high load on the server (a lof of people in the same room at the same time could slow down the server).

What are the projects related to sTeam developement?

PHPsTeam

The API is used to interact with the server in php.
For web-applications the PHP/Java-Code is executed within a webserver (usually Apache).
https://github.com/open-steam/phpsteam
(Feel free to explore and contribute.)

JavaSteam

The API "JavaSteam" can be used to interact with a sTeam server using Java.
To communicate with the Server the API uses the COAL Protocol.

How to get sTeam?

Currently we are working on creating a simplified package to deploy sTeam. But it can be installed by following the steps mentioned in Installation Steps .

Is sTeam distro specific?

sTeam supports disto's like CentOs 6+ and Ubuntu 12+.

Note : the sTeam server doesn't run on Windows (it might run with WSL though). Clients may run on any OS

What are the dependency constraints?

The dependency constraints are rigid. During the installation procedure make a note that all the dependencies are resolved.

Note : Install mysql 5.6+ libraries which supports FULLTEXT Indexes for database.

Where can sTeam be implemented?

sTeam is a remarkable collaboration platform, which interacts with a web interface and command line. It is a very good platform for sharing data and collaborating work.

  • sTeam is good to build websites where people collaborate and communicate over documents.
  • sTeam Can be used as a knowledge sharing portal in schools or colleges where videos are streamed or the teacher gives a feedback on homework/assignments.
  • In offices for collaboration of files which are sent through the hierarchy to be reviewed and receive feedback.

Where is sTeam installed?

In Linux the important pathes are as follows:

/tmp - temporary files.

/root - home directory of the root user.

/var - there will be stored some valuable data (like mysql uses /var/lib/mysql/steam to store the servers database in).

/etc - contains important configuration data.

/etc/init.d - start scripts for the servers services (e.g. sTeam, mysql and much more..).

/usr/local/lib/steam - the installation directory of the sTeam server.

/var/lib/mysql/steam - the sTeam database used by the mysql daemon.

/usr/local/lib/steam/temp - the sTeam execution directory to provide sandboxed environment.

Which programming language is used for sTeam and what are the prerequisites before one can start contributing to sTeam project?

sTeam is written in Pike, a programming language similar to Java and python. Pike is not hard to learn so you will have no trouble writing Pike code within a few days. sTeam runs only on Linux and to work on this project you need to be familiar with GNU/Linux and the Linux commandline. you should also be familiar with git and vim or emacs

How to access the sTeam server?

Follow the instructions mentioned in the Installation guide. After finishing the installation go to http://localhost to access the server.

How to access the sTeam commandline?

Follow the instructions on sTeam Command Line.

What is the sTeam web-interface?

The webinterface (often called "Admin-Interface" or "classic blue") offers a lot of functionality to the user. Nearly all Features offered by the open sTeam server are accessible using the webinterface. You can see a screenshot of it's working here : Web Interface Screenshot

Some of the features are:

  • Create and manage users and groups
  • Communicate with others (using chat, email or messages. please note that it is possible to send an email to a user or a whole group sending to groupname@servername.de)
  • Working together, e.g. exchange documents, use wikis and forums
  • Use your private area to structure your own knowledge
  • Give documents to others or allow them to read yours
  • Publish documents or a whole website
  • Neverthless you are able to use other clients than a browser to access the documents you managed using the webinterface, e.g. FTP, medi@rena, WebDAV, IRC and many more

How do I get the sTeam web-interface?

The installation steps mentions the step to install the web-interface too.

Where can I learn more about the sTeam server architecture?

Refer our wiki page for sTeam server architecture

How to configure the sTeam server?

A sTeam server can be configured through the web interface or using the sTeam config file. After installation only the config file is directly available to the admin. Especially, the database connection and some basic ports are defined in the sTeam config file.

  • Configuration Directory

The sTeam configuration directory is usually /etc/steam, but can be configured to point to any directory. The server start script uses --config-dir=directory as an option to modify this directory.

  • config File

The sTeam Server configuration file can be found in the sTeam config directory. This directory is usually located in /etc/steam. The file itself is called "steam.cfg".

  • Certificate

A certificate can be generated by the create_cert.pike tool that is part of the server distribution. The server reads a cert file located in the sTeam configuration directory.

How to start and stop the sTeam server?

Firstly navigate to the sTeam's directory cd /usr/local/lib/steam/

Then to start use sudo ./start

To stop use sudo ./stop

What are the most common errors you can face during installation and how to resolve those?

See the [debugging and error section]
(https://github.com/societyserver/sTeam/wiki/Installation-steps#debugging-and-error-resolution)

What is (ˢᵒᶜⁱᵉᵗʸserver)?

(ˢᵒᶜⁱᵉᵗʸserver) which is built on sTeam is a platform for the collaborative building of websites.(ˢᵒᶜⁱᵉᵗʸserver) is not a webserver but also integrates with a number of other protocols. it features integration with communication services like email, chat and supports a programming API for rich client development. You can use (ˢᵒᶜⁱᵉᵗʸserver) to build your own sites or ask us to build them for you.

Clone this wiki locally