A method for communicating an event from one of a plurality of event devices to an action device to take one or more actions based on the event, the method comprising: receiving, by a hub device, a first event message from one of the plurality of event devices that are communicatively coupled with the hub device through a respective first communication protocol, wherein the first event message describes the event on the event device, the plurality of event devices are located remotely from the hub device and different communication protocols are used as the first communication protocol by different event devices; converting, by the hub device, the first event message to a second event message that is in a format understandable to the action device that is communicatively coupled with the hub device through a second communication protocol different from the first communication protocol; dividing, by the hub device, the second event message into a first plurality of chunks, wherein each chunk of the first plurality of chunks is of a size within an update size limit of the second communication protocol, the update size limit being a size limit for an update of a piece of data that describes an event, wherein the action device is subscribed to receive updates from the hub device; and transmitting, by the hub device to the action device, each respective chunk of the first plurality of chunks over the second communication protocol; receiving, by the action device, the respective chunks of the first plurality of chunks from the hub device; rebuilding, by the action device, the second event message, by deserializing the received first plurality of chunks; taking, by the action device, one or more actions in response to the second event message. receiving, by a hub device, a first event message from one of the plurality of event devices that are communicatively coupled with the hub device through a respective first communication protocol, wherein the first event message describes the event on the event device, the plurality of event devices are located remotely from the hub device and different communication protocols are used as the first communication protocol by different event devices; converting, by the hub device, the first event message to a second event message that is in a format understandable to the action device that is communicatively coupled with the hub device through a second communication protocol different from the first communication protocol; dividing, by the hub device, the second event message into a first plurality of chunks, wherein each chunk of the first plurality of chunks is of a size within an update size limit of the second communication protocol, the update size limit being a size limit for an update of a piece of data that describes an event, wherein the action device is subscribed to receive updates from the hub device; and transmitting, by the hub device to the action device, each respective chunk of the first plurality of chunks over the second communication protocol; receiving, by the action device, the respective chunks of the first plurality of chunks from the hub device; rebuilding, by the action device, the second event message, by deserializing the received first plurality of chunks; taking, by the action device, one or more actions in response to the second event message.