A method for an application server with an application server protocol stack defined by a protocol for routing a call from a customer to a destination , the method comprising: intercepting, using the application server protocol stack , a call setup message sent from a customer switch to a switch intended to signal the switch to perform a call routing function or request a call routing function be performed, the call routing function determines from a set of routes a route for the switch to use to carry the call to the destination, the route so determined is a switch-determined route, the application server protocol stack of the application server including a protocol layer above lower protocol layers of a signal transfer point, STP, protocol stack , the protocol layer enabling the application server to read and modify Integrated Services Digital Network, ISDN, User Part, ISUP, messages or Session Initiation Protocol, SIP, messages; intercepting, using the application server protocol stack , a call release message sent from the switch to the customer switch intended to signal the customer switch of network congestion; in response to either the call setup message or the call release message being intercepted, querying a routing engine with the destination of the call for a specific route over which to carry the call to the destination, the specific route is queried from a set of routes that is different from the set of routes from which the call routing function determines the switch-determined route; modifying the call setup message to include the specific route, the call setup message so modified is a modified call setup message ; responding to the call release message with a re-route call message that includes the specific route; directing the switch with either the modified call setup message or re-route call message to use the specific route to carry the call from the customer to the destination, wherein the call setup, call release, modified call setup, and re-route call messages are ISUP or SIP messages. intercepting, using the application server protocol stack , a call setup message sent from a customer switch to a switch intended to signal the switch to perform a call routing function or request a call routing function be performed, the call routing function determines from a set of routes a route for the switch to use to carry the call to the destination, the route so determined is a switch-determined route, the application server protocol stack of the application server including a protocol layer above lower protocol layers of a signal transfer point, STP, protocol stack , the protocol layer enabling the application server to read and modify Integrated Services Digital Network, ISDN, User Part, ISUP, messages or Session Initiation Protocol, SIP, messages; intercepting, using the application server protocol stack , a call release message sent from the switch to the customer switch intended to signal the customer switch of network congestion; in response to either the call setup message or the call release message being intercepted, querying a routing engine with the destination of the call for a specific route over which to carry the call to the destination, the specific route is queried from a set of routes that is different from the set of routes from which the call routing function determines the switch-determined route; modifying the call setup message to include the specific route, the call setup message so modified is a modified call setup message ; responding to the call release message with a re-route call message that includes the specific route; directing the switch with either the modified call setup message or re-route call message to use the specific route to carry the call from the customer to the destination, wherein the call setup, call release, modified call setup, and re-route call messages are ISUP or SIP messages. <EOS>