Inter-Process Communication (IPC) for Disconnected Operation¶
This feature is still under development
In order to support situations when the gateway loses its connection with the XMPP server, we provide an Inter-Process Communication (IPC) solution that allows local agents running on the gateway to continue operating. For example a typical configuration might have an adapter that is collecting data from sensors, a storage agent that is logging data locally and a scheduler that is managing time triggered events that we would want to continue working even if the network connection fails.
Our IPC uses a lightweight XMPP server that runs on each gateway and a proxy agent that synchronizes local operations with the remote XMPP server. This has the advantage of being completely transparent to the underlying agents. For example, if an agent does not need IPC or is running on a platform that cannot run a local server it can simply contact the main server. To utilize IPC, it just needs to be configured to contact localhost instead. The IPC proxy agent needs to be configured with the username and password for all devices running on the gateway device (usually just one). The proxy agent will then login to the main XMPP server and copy all of the event nodes for that account to the local server. Any messages that are published on the remote server will go to the proxy agent which will then republish them on the local server and vice versa.
Installing Local XMPP Server¶
Configuring Proxy Agent¶
Running Proxy Agent¶