日本語

Concept of a messaging system

The SINETStream is a messaging system that adopts a topic-based publish/subscribe model. It provides an abstraction layer of Broker, which in turn employs Kafka or MQTT as its backend.

The SINETStream calls the publisher as “Writer”, and the subscriber as “Reader”, respectively.

Conceptual diagram of the messaging system

Broker’s configuration and communication parameters are abstracted as “service” in the SINETStream. Writers and Readers can communicate with any Broker just by specifying a “service”.

A logical channel in Broker is called as “topic”. Writers and Readers send/receive a message specifying a topic, allowing different types of messages to be transferred through a Broker.

Directory structure

Operating environment

Python/Java version

The Python/Java SINETStream API is implemented with following programing languages.

The Python/Java SINETStream API supports the following messaging systems.

The Python/Java SINETStream runs on following operating systems.

Android version

The Android SINETStream API is implemented with following programing languages.

The Android SINETStream API supports the following messaging systems.

The Android SINETStream runs on following operating system.

Preparation

Python/Java version

The Python/Java SINETStream uses Kafka or MQTT as a backend messaging system of Broker. Therefore, you need to install one of these messaging systems along with SINETStream. The tutorial package utilizes some Docker containers to install the required software components, i.e., SINETStream, Kafka, and MQTT.

  1. Kafka broker settings
  2. MQTT broker settings
  3. Installing SINETStream
    • Python: pip3 install --user sinetstream-kafka sinetstream-mqtt
    • Java: Please refer to the Java version of README.

Please refer to Quick Start Guide (Python/Java) using Docker containers.

Android version

The Android SINETStream API provides client functionality (Writer, Reader), with the support of MQTT messaging system. Therefore, the peer Broker with an Android SINETStream client must use MQTT only.

Note that you can use the MQTT broker part as is, which has installed for the Python/Java SINETStream backend system.

Please refer to Quick Start Guide (Android) using a Docker container.

License

Apache License, Version 2.0.