I'm working on a hub for homes. It will most definitely be reading energy use data, but it can also turn lights on and off. That hub will be redistributed to many homes, and hence, why I believe that I, the developer, will never have any control over it (but I might be wrong about that).
That hub doesn't have that many inputs, other than ethernet, bluetooth, and USB, and a few buttons. Even though it has an ethernet port, it is not guaranteed that it will have Internet, and so I'm not ruling out that possibility. But regardless, a typical use case would be that a mobile device will be talk…