Here is an example of using obniz to build an IoT system (service system).
Example of service building using obniz
The following diagram shows an example of a CO2 concentration monitoring system using a BLE CO2 sensor.
The system displays the CO2 concentration acquired by the sensor in real-time on the end-user's smartphone or tablet.
Actor
- CO2 measurement service providers(referred to below as service provider)
- obniz Inc.(referred to below as obniz)
- End-users using the service(referred to below as end-users)
Service requirements
- End-users view the value of CO2 concentration detected by the sensor on the device.
- End-users can view the changes and the histories of the values.
- The system gives alerts when the value exceeds the threshold.
- As long as end-users have a CO2 sensor, obniz device, and portable device, they can use the service.
- The service will be widespread and the number of end-users will grow in the future.
How end-users use the service
- [service provider] Develop a CO2 measurement system (service system)
- [service provider] Develop a system to get CO2 concentration data acquired by obniz devices from obniz Cloud (Hosted App)
- [service provider] Procure CO2 concentration sensors and obniz devices
- [end-users] Apply for the service
- [end-users] Receive the sensor and obniz device, register an account in the app, and start using the service
Finished system
System
① Linking the devices to an account
The service provider will create an account in obniz Cloud. All obniz devices used in the service will be tied to this account.
Register the devices to obniz Cloud through the service provider's system. By "register," we mean to link the devices to an account.
Registration flow through the system
- End-user scans the QR code of the obniz device with the system's app.
- The system app sends the URL to the service system.
- Service system sends a device registration request to obniz Cloud using Graphql API.
- obniz device and obniz Cloud are connected, and the Hosted App (see below) is ready to acquire data.
obniz Cloud
Connect the obniz devices to the service provider's account, and link it to the Hosted App (see below).
Graphql API
By calling this API, you can make "requests for registering device" and "requests for linking devices to the Hosted App (see below)" to obniz Cloud.
To use this service, please issue an API key on obniz Cloud and include it in your request in the specified format. The API published by obniz uses Graphql.
For details, please refer to obniz Cloud API.
②Data acquisition by Hosted App
- Send the CO2 concentration acquired by the sensor to the obniz Cloud through the network
- POST data from obniz Cloud to the specified DB by Hosted App
The service provider develop a system called "Hosted App (Node.js App)" to use the data sent to obniz Cloud. Hosted App is like a clay pipe into which pours the data you want to use in the service system from the obniz Cloud.
For more details, please refer to What is a Hosted App (Node.js App).
③ Processing using the acquired data
Process the CO2 concentration data acquired from obniz Cloud into a data format that can be used in portable devices, such as a graph display.
④⑤ End-user use
Receive the data from the server and draw it on the portable devices.