Hello developpers !
Today, we are going to discuss about how our project will be a great oportunity for you developpers.
Let me remind you how are project works.
Here is a short diagram of the communication between the different parts of the solution. At the lowest part, you can see the controllers. These are the peripherals like the Kinect or the microphone. At the highest part, there is the Web Server. It is the link between the Connect’Home solution and the domotic box of your house. It also contains the web pages constituing the interface of the project. It finally hosts the Database of the users, the controllers, the scenarios and so on (more informations are available on the attached document about the database).
Between these two parts, you can see the Communication Modules. These modules are the link between the Web Server and the Controllers. Let us show how our communication module is a great oportunity for you, developpers, to add as many controllers as you like to the Connect’Home solution.
A communication module is a standalone computer running a Linux OS. Each communication module has its own communication server, that manages the communications between the transmissions of the actions sent by the controllers to the Web Server hosting the database.
The main feature that we wanted to implement was to allow you to add easily new controllers. We are creating a unified communication protocol that makes every controller speak with the same « language » with the web server. We provide you an API that explains how you must send the informations to the communication server. It will then send for you the message to the web server, that will handle the request from the controller.
To do that, you will only have to implement a client socket in your controller and connect it to the server socket launched in the communication module. This way, each controller is able to speak to the same destinator, that will forward all the messages.
As you can see, if you want to change the design of the web interface, you will only have to make changes in the web server. The solution will continue to work like before. If you want to add a new controller, you just have to follow our requirements for the messages, and again, you will take no risk for the rest of the solution.
We hope that these functionnalities are interesting for you, and that you will add new controllers, like a wiimote or a playstation move
Thank you for reading !