HiBus API Reference  v1.0.2
The data bus for device side of HybridOS.
HiBus

HiBus is the data bus for device side of HybridOS.

Introduction

In HybridOS, an important design idea is always implemented: data-driven. Regardless of whether it is a single app scenario or multiple apps scenarios, hiBus will act as the link between HybridOS app and the underlying functional modules; and even in the future, it will become the link between different device nodes in the LAN.

Some ideas of hiBus come from OpenWRT's uBus, such as passing data in JSON format. But compared to uBus, hiBus has the following important improvements:

HiBus includes the following three components:

  1. HiBus server, an executable program which runs as a daemon in the system.
  1. HiBus cmdline, an executable program which provides an interactive command line program for test and debugging.
  1. HiBus library, an library which provides some APIs for clients to use hiBus easily.

For more information, please refer to:

https://github.com/FMSoftCN/hybridos/blob/master/docs/design/hybridos-data-bus-zh.md

Dependencies

HiBus depends on the following libraries:

Current Status

Build HiBus for Standalone Use

To build hiBus for your own usage on a generic Linux box without the app management of HybridOS, use the following options for cmake:

$ cmake -DBUILD_APP_AUTH=OFF <directory_to_source_code>

If you use the -DBUILD_APP_AUTH=OFF option, hiBus will use a dummy app authentication method to avoid preparing your app authentication system.

TODO List

Copying

Copyright (C) 2020 FMSoft https://www.fmsoft.cn

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Commercial License

If you cannot accept GPLv3, you need to be licensed from FMSoft.

For more information about the commercial license, please refer to https://hybridos.fmsoft.cn/blog/hybridos-licensing-policy.

Special Statement

The above open source or free software license(s) does not apply to any entity in the Exception List published by Beijing FMSoft Technologies Co., Ltd.

If you are or the entity you represent is listed in the Exception List, the above open source or free software license does not apply to you or the entity you represent. Regardless of the purpose, you should not use the software in any way whatsoever, including but not limited to downloading, viewing, copying, distributing, compiling, and running. If you have already downloaded it, you MUST destroy all of its copies.

The Exception List is published by FMSoft and may be updated from time to time. For more information, please see https://www.fmsoft.cn/exception-list.