A system for recommending a communication medium for interacting with a customer of a contact center, the system comprising: a processor; a memory, wherein the memory has stored therein instructions that, when executed by the processor, cause the processor to: detect a first interaction via a first medium with the customer, wherein the customer is placed in a queue for the first medium and the wait time for the queue exceeds a threshold wait time; identify a plurality of communication mediums based on constraints for determining one or more candidate communication mediums that are different from the first medium for a second interaction with the customer; for each communication medium of the candidate communication mediums, estimate an expected value to be obtained by utilizing the communication medium for the second interaction, wherein the expected value is the estimated wait time of the communication medium; select a particular communication medium of the candidate communication mediums based on the estimates for establishing the second interaction via the selected communication medium, wherein the expected value of the waiting time of the selected communication medium satisfies the threshold waiting time; and offer to switch the customer to the selected communication medium. a processor; a memory, wherein the memory has stored therein instructions that, when executed by the processor, cause the processor to: detect a first interaction via a first medium with the customer, wherein the customer is placed in a queue for the first medium and the wait time for the queue exceeds a threshold wait time; identify a plurality of communication mediums based on constraints for determining one or more candidate communication mediums that are different from the first medium for a second interaction with the customer; for each communication medium of the candidate communication mediums, estimate an expected value to be obtained by utilizing the communication medium for the second interaction, wherein the expected value is the estimated wait time of the communication medium; select a particular communication medium of the candidate communication mediums based on the estimates for establishing the second interaction via the selected communication medium, wherein the expected value of the waiting time of the selected communication medium satisfies the threshold waiting time; and identify a plurality of communication mediums based on constraints for determining one or more candidate communication mediums that are different from the first medium for a second interaction with the customer; for each communication medium of the candidate communication mediums, estimate an expected value to be obtained by utilizing the communication medium for the second interaction, wherein the expected value is the estimated wait time of the communication medium; select a particular communication medium of the candidate communication mediums based on the estimates for establishing the second interaction via the selected communication medium, wherein the expected value of the waiting time of the selected communication medium satisfies the threshold waiting time; and offer to switch the customer to the selected communication medium.