Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Apache Camel Doing IoT to Help Measure Air Quality in the Streets of France

DZone's Guide to

Apache Camel Doing IoT to Help Measure Air Quality in the Streets of France

A look at an IoT device to gather air quality metrics, use MQTT protocols and ActiveMQ for message brokering, and process the data using Apache Camel.

· IoT Zone
Free Resource

Discover why Bluetooth mesh is the next evolution of IoT solutions. Download the mesh overview.

Today I read a very interesting blog post from Abdellatif Bouchama, about a system he developed in less than a day, that gathers air quality metrics from IoT devices from the cities of France, and then using MQTT protocol gathers the data using ActiveMQ message broker, and then process the data using Apache Camel, inserting the data into an Elasticsearch database.

IoT devises sending air quality data over MQTT to A-MQ broker for further processing by Apache Camel - Using JBoss Fuse product.

When data are in Elasticsearch there is lovely web consoles such as Kibana that can present the data in geo graphical displays.

Geo graphical display using Kibana to highligh the cities with air quality data

I encourage you to continue reading this blog from the original posting at bushhorn. The post is here.
The source code of this is posted on github as well.

PS: Yes the Camel route is only 3 lines of code (4 if you add the log statement) ;)

Well done Abdellatif.


PS: If you are interested in more about IoT and Apache Camel, then there is the new community project called camel-labs that provides a number of Camel components and tooling around this very topic.


Take a deep dive into Bluetooth mesh. Read the tech overview and discover new IoT innovations.

Topics:
iot ,frameworks ,integration ,apache camel ,mqtt ,internet of things

Published at DZone with permission of Claus Ibsen, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}