Colleagues, I’m glad to introduce the IoTEE Framework to you. As this is the first post on the subject let’s talk a little about what it is.
Literally it is IoT Events Engine Framework. In short IoTEE Framework is a middleware implementing logic of processing events from remote devices via Rules and reacting on them with Actions.
It allows to decouple communication with IoT endpoints from business logic execution. Yes, here I’m among the devotees of the Microservices concept, but in its enterprise-level interpretation.
So, IoTEE is protocol-agnostic, which is cool as it can process heterogeneous events in a common way. But how it gets events for processing? This is where we touch the Microservices architecture: we should have one guy who knows how to get events from device via specific protocol (devices connectivity layer) and one who knows what to do with them (IoTEE). Integration between two is performed via IoTEE Framework’s extension points called Events Pollers. These two guys are very loosely coupled, which helps to eliminate integration issues. It’s like you and government: you don’t know each other in person, but you know when/how/where to pay taxes and government knows where/how/when to take your money and how to spend it. Of course, IoTEE is much more flexible in these questions, than your state:)
Some IoTEE features:
- It can work with several absolutely different events sources (say, File System and In-memory database) at the same time
- Events Pollers can be implemented and deployed to the IoTEE instance in run-time
- IoTEE allows to create rules for events processing, actions to be executed and link them to each other in run time
- IoTEE provides admin Web UI
- IoTEE can run in a cluster mode for load balancing, scalability and high availability
I’ve been asked a pair of times “Why it is called a framework?” Wikipedia says: https://en.wikipedia.org/wiki/Software_framework. So, IoTEE is a framework in the sense that you can take it, extend/customise with Pollers, Rules and Actions and get a working product.
This is all for today!