1. A call router comprising: a memory storing program instructions and a rule set; a telephone interface configured to receive a speech signal representing words spoken by a caller; a processor coupled to the memory and the telephone interface, wherein the processor is configured to perform functions in response to executing the programming instructions stored in the memory, including functions of: in response to the received speech signal, produce recognized text having words representative of the spoken words; detect a class of the words in the recognized text, wherein the class is a group of words having a common attribute and each class of words is assigned a weight; in response to detection of a combination of classes in the recognized text, identify rules that contain matches to the combination of classes detected in the recognized text from among multiple rules defining destinations for different combinations of classes; select a rule from the identified rules based on a number of detected classes and a corresponding sum of the weights assigned to the classes in the combination of classes in the recognized text; interpret the selected rule to identify a destination for routing the call; and route the call to the identified destination.
1. A call router comprising: a memory storing program instructions and a rule set; a telephone interface configured to receive a speech signal representing words spoken by a caller; a processor coupled to the memory and the telephone interface, wherein the processor is configured to perform functions in response to executing the programming instructions stored in the memory, including functions of: in response to the received speech signal, produce recognized text having words representative of the spoken words; detect a class of the words in the recognized text, wherein the class is a group of words having a common attribute and each class of words is assigned a weight; in response to detection of a combination of classes in the recognized text, identify rules that contain matches to the combination of classes detected in the recognized text from among multiple rules defining destinations for different combinations of classes; select a rule from the identified rules based on a number of detected classes and a corresponding sum of the weights assigned to the classes in the combination of classes in the recognized text; interpret the selected rule to identify a destination for routing the call; and route the call to the identified destination. 18. The call router of claim 1 , wherein, when selecting a rule from the identified rules, the processor performs additional functions, including functions to: compare a number of classes in the identified rules to the number of detected classes in the combination to a corresponding sum of the weights assigned to the classes in the combination of classes in the recognized text; and based on the number of classes being less than the sum of the weights, select a rule that has the highest sum of the weights.