A computer-implemented method comprising: determining capacities associated with a plurality of terminal devices, wherein the capacities are based on workloads for agents associated with the plurality of terminal devices; accessing historical acceptance data for past interaction invitations to user devices (1115, 1120) associated with one or more criteria; accessing current data for current user devices in a network, wherein the current data includes associations between the current user devices and the one or more criteria; determining a current number of available interactions based on the historical acceptance data and the current data for the current user devices, using a trained machine learning system, by: using a first machine learning model to analyze the current data for the current user devices to generate predictions of expected interaction types, and group the plurality of user devices into a plurality of groups according to their expected interaction type; and then using a plurality of different specialized machine learning models adapted to the expected interaction types to process the groups of user devices separately; facilitating interactions between the agents and one or more devices of the current user devices using predictive interaction invitations generated in accordance with the current number of available interactions and the historical acceptance data; and retraining the trained machine learning system based on received interaction data for the interactions between the agents and the one or more devices, wherein the trained machine learning system is retrained such that, if the received interaction data indicates that an interaction invitation was accepted by a user device, future invitations are sent to one or more user devices associated with one or more criteria at least similar to the one or more criteria associated with that user device, wherein the criteria comprises a length of time a current user device has been on a webpage and/or the number of times the current user device has accessed the webpage. determining capacities associated with a plurality of terminal devices, wherein the capacities are based on workloads for agents associated with the plurality of terminal devices; accessing historical acceptance data for past interaction invitations to user devices (1115, 1120) associated with one or more criteria; accessing current data for current user devices in a network, wherein the current data includes associations between the current user devices and the one or more criteria; determining a current number of available interactions based on the historical acceptance data and the current data for the current user devices, using a trained machine learning system, by: using a first machine learning model to analyze the current data for the current user devices to generate predictions of expected interaction types, and group the plurality of user devices into a plurality of groups according to their expected interaction type; and then using a plurality of different specialized machine learning models adapted to the expected interaction types to process the groups of user devices separately; using a first machine learning model to analyze the current data for the current user devices to generate predictions of expected interaction types, and group the plurality of user devices into a plurality of groups according to their expected interaction type; and then using a plurality of different specialized machine learning models adapted to the expected interaction types to process the groups of user devices separately; facilitating interactions between the agents and one or more devices of the current user devices using predictive interaction invitations generated in accordance with the current number of available interactions and the historical acceptance data; and retraining the trained machine learning system based on received interaction data for the interactions between the agents and the one or more devices, wherein the trained machine learning system is retrained such that, if the received interaction data indicates that an interaction invitation was accepted by a user device, future invitations are sent to one or more user devices associated with one or more criteria at least similar to the one or more criteria associated with that user device, wherein the criteria comprises a length of time a current user device has been on a webpage and/or the number of times the current user device has accessed the webpage.