In simple terms OOCSI is built around a server (or broker) that receives messages with data from clients and dispatches these messages to other clients. Like post station. This basic architecture is not surprising or something extraordinary; many systems on the Internet or elsewhere are built in this way, simply because it easy to understand and operate, and it’s usually fast.
So, there are two basic types of components in an OOCSI network: several clients and one server. The OOCSI server can either be running on your own computer (that’s called “local”) or it runs on a server in the cloud. There is more information about the OOCSI server. OOCSI clients are the active components of an OOCSI system; they send and receive data, subscribe to channels, and synchronize their data with each other. Clients can come in many forms and sizes. Some of them are connecting to OOCSI from embedded platforms like Arduinos and ESPs, some others are connecting from a website, a desktop application, or a Python script. Therefore, we have prepared several different client libraries that you can include in your code and connect to OOCSI to send and receive data in a very simple way. You can find a simple example on the Getting Started page.