Welcome to OOCSI

What it is

A prototyping middleware for design education and research designed and developed at the Industrial Design department of Eindhoven University of Technology. OOCSI is completely open-source and published under a permissive license. Consider contributing on GitHub.

How to learn more?

We are currently preparing some more information material about OOCSI and a series of short video lectures. In the meanwhile, you can read more about OOCSI on the wiki.

What is going on right now

An OOCSI server can be busy at times; currently, this is happening:
More metrics.

no clients are currently connected

no open channels at the moment

bigger version
This is a public server that allows open connectivity. Please use it responsibly and be aware that all data is in principle visible to all other users. Do NOT send confidential, personal or secret information. Fair use applies.

The server will not store any information. Log files may contain OOCSI-specific connection meta-data, but no personally identifiable information such as IP addresses, email addresses etc.

What you can do here (on this server)

  • - Build and test prototypes that need connectivity
  • - Test and evaluate OOCSI for your use-case
  • - Try some examples

How to do that? Check out the connection options below.

How to connect

OOCSI can be used by many different platforms and has libraries or bindings for different programming languages. See below for some options:

  • Processing
    Connect to this server:
    OOCSI myOocsi = new OOCSI(this, "my_unique_handle", "ADDRESS");
    More information: setup & use.
  • Java/Android
    Connect to this server:
    OOCSICommunicator oc = new OOCSICommunicator(this, "my_unique_handle"); oc.setReconnect(true); oc.connect("ADDRESS", 4444);
    More information: setup & use.
  • Python
    Connect to this server:
    oocsi = OOCSI('my_unique_handle', 'ADDRESS')
    More information: setup & use.
  • REST
    Send message to a channel on this server:
    curl -X POST http://ADDRESS/send/testchannel -d "sender=myhandle&param1=1.6&param2=text"
  • Websocket (Javascript)
    Connect to this server:
    OOCSI.connect('my_unique_handle', 'ADDRESS')
    More information: setup & use.
  • Arduino / ESP (C/C++)
    Connect to this server:
    OOCSI oocsi = OOCSI(); oocsi.connect(OOCSIName, hostserver, ssid, password, processOOCSI);
    More information: setup & use.

With these different languages OOCSI can be accessed on most popular platforms on desktop (Windows, Mac, Linux), mobile (iOS, Android) and embedded (Raspberry Pi, ESP, ...).