A computer-implemented method comprising: receiving a plurality of activity data streams at an Internet of things, IοT, integration platform from multiple data sources, wherein the IoT integration platform is implemented in a computer system and connected to the multiple data sources from different IoT solutions, wherein the multiple data sources include one or more IoT devices, general purpose mobile devices, solution-specific computer server systems, third-party computer server systems, IoT-solution specific Web server systems, or any combination thereof; iteratively updating a plurality of evolving context indicators associated with one or more entities in trackable by the IoT integration platform based on the plurality of activity data streams until a stable pattern of the plurality of evolving context indicators is reached, wherein at least one of the plurality of evolving context indicators changes as a function of another one of the plurality of evolving context indicators; training one or more machine learning models based on a historical log of the plurality of evolving context indicators, activity data from the plurality of activity data streams, or a combination thereof; and forecasting a contextual situation associated with a target entity among the one or more entities by testing a subset of the plurality of evolving context indicators within a timeframe against the one or more machine learning models; generating, by the IoT integration platform, a recommended action based on the forecasted contextual situation; and executing, by the IoT integration platform via at least one of the multiple data sources, the recommended action to affect an activity of the target entity in anticipation of the forecasted contextual situation associated with the target entity. receiving a plurality of activity data streams at an Internet of things, IοT, integration platform from multiple data sources, wherein the IoT integration platform is implemented in a computer system and connected to the multiple data sources from different IoT solutions, wherein the multiple data sources include one or more IoT devices, general purpose mobile devices, solution-specific computer server systems, third-party computer server systems, IoT-solution specific Web server systems, or any combination thereof; iteratively updating a plurality of evolving context indicators associated with one or more entities in trackable by the IoT integration platform based on the plurality of activity data streams until a stable pattern of the plurality of evolving context indicators is reached, wherein at least one of the plurality of evolving context indicators changes as a function of another one of the plurality of evolving context indicators; training one or more machine learning models based on a historical log of the plurality of evolving context indicators, activity data from the plurality of activity data streams, or a combination thereof; and forecasting a contextual situation associated with a target entity among the one or more entities by testing a subset of the plurality of evolving context indicators within a timeframe against the one or more machine learning models; generating, by the IoT integration platform, a recommended action based on the forecasted contextual situation; and executing, by the IoT integration platform via at least one of the multiple data sources, the recommended action to affect an activity of the target entity in anticipation of the forecasted contextual situation associated with the target entity.