GB2347579A - Feature interaction arbitration - Google Patents

Feature interaction arbitration Download PDF

Info

Publication number
GB2347579A
GB2347579A GB9905156A GB9905156A GB2347579A GB 2347579 A GB2347579 A GB 2347579A GB 9905156 A GB9905156 A GB 9905156A GB 9905156 A GB9905156 A GB 9905156A GB 2347579 A GB2347579 A GB 2347579A
Authority
GB
United Kingdom
Prior art keywords
features
conflicting
feature
indeterminate
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB9905156A
Other versions
GB9905156D0 (en
GB2347579B (en
Inventor
Michael Weiss
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsemi Semiconductor ULC
Original Assignee
Mitel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitel Corp filed Critical Mitel Corp
Priority to GB9905156A priority Critical patent/GB2347579B/en
Publication of GB9905156D0 publication Critical patent/GB9905156D0/en
Priority to CA002299639A priority patent/CA2299639C/en
Priority to US09/518,555 priority patent/US6639980B1/en
Priority to DE10010870.9A priority patent/DE10010870B4/en
Publication of GB2347579A publication Critical patent/GB2347579A/en
Application granted granted Critical
Publication of GB2347579B publication Critical patent/GB2347579B/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0029Provisions for intelligent networking
    • H04Q3/0041Provisions for intelligent networking involving techniques for avoiding interaction of call service features
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42136Administration or customisation of services
    • H04M3/4217Managing service interactions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)

Abstract

An adaptive rule-based mechanism and method to resolve conflicting feature interactions includes the steps of determining conflicting features available for execution in response to an event; examining the conflicting features to determine whether one of the conflicting features takes priority over the other conflicting features; if one of the conflicting features takes priority, selecting that conflicting feature for execution; and if one conflicting feature does not take priority, prompting the user to make a selection to resolve the conflicting feature interaction.

Description

ADAPTIVE RULE-BASED MECHANISM AND METHOD FOR FEATURE INTERACTION RESOLUTION Field Of The Invention The present invention relates to an adaptive rule-based mechanism and method for resolving conflicting feature interactions.
Background Of The Invention Current communications systems provide users with a significant number of features, such as for example call forwarding, call waiting, call hold, speed dialing etc. New features are continually being offered by telephone companies and private branch exchange (PBX) suppliers. With the availability of technology to allow features to be customized for each user, the number of actual features available to users can be nearly arbitrary. This of course makes the task of managing conflicts between features very difficult.
Indeterminacy conflicts between features occur when two or more nonmutually compatible features available to a user are to be invoked simultaneously in response to an event. For example, consider call forwarding busy (CFB) and call waiting (CW) features. Both of these features are an extension of a terminating call (TC) feature. During normal execution of the TC feature, an incoming call is rejected if an existing call is in progress. The CFB and CW features however define deviations to this incoming call handling procedure. During execution of the CFB feature, an incoming call is forwarded to another extension if an existing call is in progress. During execution of the CW feature, a warble is generated when an incoming call is received and an existing call is in progress. If a user subscribes to both the CFB and CW features and an incoming call is received when an existing call is in progress, a conflict occurs since the incoming call cannot be forwarded to another extension and answered by the called party at the same time.
The problems associated with feature interactions have been considered. See for example: N. Griffeth, and Y. Lin,"Extending Telecommunications Systems: The Feature-Interaction Problem", Computer, 14-18, August 1993.
E. Cameron et al.,"A Feature Interaction Benchmark for IN and Beyond", Feature Interactions in Telecommunications Systems, 1-23, IOS Press, 1994 D. Keck, and P. Kuehn,"The Feature and Service Interaction Problem in Telecommunications Systems: A Survey", IEEE Transactions of Software Engineering, 779-796, October 1998 To deal with the feature interaction conflicts, in some state of the art communication systems, features are assigned priorities a priori by the communication system developer. In most cases, these priorities are hardcoded into software programs. As a result, each feature must explicitly account in some part of its code, for each possible interaction with another feature. This of course requires complete knowledge of other features with which an interaction may occur. Writing code for features to account for all other features is not only a highly a complex task but virtually impossible to achieve especially in the presence of features developed by third parties that are added to an existing communication system. This problem is exemplified by the trend towards open, component-based communication systems that allow users to develop and add their own features.
In some communication systems, precedence has been used to specify feature selection in the event of a conflicting feature interaction based on the feature with the highest priority. For example, U. S. Patent No. 4,695,977 to Hansen et al. discloses a telecommunication system for the switching of voice and data controlled by a computer executing a nonprocedural language that allows for the explicit control of interaction between features by the program scripts executing the programs.
During run time of the system, a script whose triples implement a particular feature can control whether or not features of lower precedence are allowed to be implemented. However, this approach does not take into account features that specialize other features. This approach also does not allow precedence lists to be established for each user reflecting that user's preferences for resolving conflicting feature interactions.
It is therefore an object of the present invention to provide a novel adaptive rule-based mechanism and method for resolving conflicting feature interactions.
Summary Of The Invention According to one aspect of the present invention there is provided in a system where two or more indeterminate features can be executed in response to an event resulting in a conflicting feature interaction, an adaptive rule-based method for resolving said conflicting feature interaction comprising the steps of : determining indeterminate features available for execution in response to an event; examining said indeterminate features to determine whether one of said indeterminate features takes priority over the other indeterminate features; if one of said indeterminate features takes priority, selecting said one indeterminate feature for execution; and if one indeterminate feature does not take priority, prompting a user to make a selection to resolve said conflicting feature interaction.
According to yet another aspect of the present invention there is provided in a telephony communication system wherein a service is to be performed in response to an event, said service including a plurality of executable conflicting features representing available options which can be performed to complete said service, an adaptive rule-based method to resolve feature conflicts during performance of said service comprising the steps of : determining the conflicting features available for execution; examining said conflicting features to determine whether one of said indeterminate features takes priority over the other conflicting features; if one of said conflicting features takes priority, executing said one conflicting feature thereby to complete said service; and if one conflicting feature does not take priority, prompting a user to make a selection to resolve said conflicting feature interaction and executing conflicting feature (s) in accordance with said selection thereby to complete said service.
According to still yet another aspect of the present invention there is provided an adaptive rule-based mechanism to resolve conflicting feature interactions when a plurality of conflicting features can be executed simultaneously in response to an event, said mechanism comprising: means for determining conflicting features available for execution in response to said event; means for examining said conflicting features to determine whether one of said conflicting features takes priority over the other conflicting features; means for selecting the conflicting feature that takes priority, for execution if it exists; and means for prompting a user to make a selection to resolve said conflicting feature interaction if a conflicting feature taking priority does not exist.
The present invention provides advantages in that after the adaptive rule-based mechanism is invoked, feature interactions are resolved allowing services to be performed. If desired, rules can be established to govern feature selection when the same services are to be performed in the future. Since feature interactions are resolved in an adaptive manner, different users can establish their own preferences.
Brief Description Of The Drawings An embodiment of the present invention will now be described more fully with reference to the accompanying drawings in which: Figure 1 is a schematic diagram of a communication system including a plurality of user locations; Figure 2 shows user level priorities in the communication system of Figure 1; Figure 3 is a use case diagram showing a terminating call feature extended by call forwarding busy and call waiting features; Figure 4 illustrates the steps performed during a handle incoming call service for terminating call, call forwarding busy and call waiting features; and Figures 5a to 5c are flow charts illustrating the steps performed during execution of an adaptive rule-based mechanism for resolving conflicting feature interactions in accordance with the present invention.
Detailed Description Of The Preferred Embodiment The present invention relates to an adaptive rule-based mechanism and method for resolving feature interactions in environments where two or more available indeterminate features can be invoked simultaneously in response to an event resulting in a conflict. The present invention is based on a separation between the policy and mechanism of feature execution. The policy provided by the feature execution environment detects and resolves known or potential feature interactions.
The policy is generic inasmuch as it requires no internal knowledge of the mechanisms. It only requires that features implement a common set of methods or functions by which the policy can ask a feature, for example, whether it is applicable in a given situation, and which features extend it. A system with policy-mechanism separation can accordingly deal with the requirements of an open evolving system.
For the sake of clarity, an embodiment of the adaptive rule-based mechanism in accordance with the present invention implemented in a telephony communication system will now be described.
Referring to Figure 1, a communication system is shown and is generally indicated to by reference numeral 10. In this example, communication system 10 includes four user locations 12 to 18, although virtually any number of user locations is possible. Each user location includes a communications device such as a personal computer 20 equipped with the necessary communication hardware and software to allow telephone calls with other communication devices to be established over a telephone network such as a public switched telephone network (PSTN) 22.
The hardware and software resources of the personal computers 20, which allow them to function as desktop telephone devices, provide users with telephone features offering enhanced functionality. These features may be programmed by users of the personal computers 20 or established by the administrator or developer of the communication system 10. The features available to each personal computer 20 are listed in precedence and compatibility matrices stored in memory therein. These matrices define rules governing the selection of features to deal with conflicting and compatible features thereby to allow services to be performed in response to events. Specifically, entries in the precedence matrix determine a user's preference when two or more conflicting features are available to the user that can be executed at the same time in response to an event. Entries in the compatibility matrix determine mutually compatible features, which are to be executed simultaneously in response to an event.
Different levels of rules corresponding to different levels of users in the communication system 10 can exist as shown in Figure 2. In this case, rules created by a user of a higher priority cannot be overridden by a user of lower priority.
Rules use an if-then representation and may include simple arithmetic operators.
Variables are indicated by the" ?" prefix and every other symbol is a terminal. The execution model for rules follows that of a typical forward chaining expert system such as OPS-5. The only extension made is that rules are to be executed in phases where indicated. The rules in phase 1 are applied before those in phase 2, etc., until no more rules can be found. The execution then proceeds to the next phase. In this way, the result of the application of the set of rules from one phase is"piped"into the set of rules from the subsequent phase.
The personal computers 20 allow features to be plugged into the communication software framework at design time and run time. Since users can plug new features into the communication software framework, new features can be added, which conflict with existing features. A conflicting feature interaction is flagged when more than one feature can be executed in response to an event and the feature execution outcome is potentially indeterminate. Usually, the precedence and compatibility matrices will not have entries defining rules to resolve conflicts arising as a result of features added by end users. If the feature interaction cannot be resolved by the defined rules, the user of the personal computer 20 is prompted to make a selection.
In the present embodiment, the feature extension concept is based on a representation of features as condition-action rules. In a condition-action rule, each condition defines a precondition for applying a feature. Extensions are similar to specializations in object-oriented programming where a subclass extends the behavior of a superclass by adding attributes and operations. In the present invention, an extension defines an alternative flow of execution of a feature.
Extensions are defined by assertions having a syntax similar to Prolog and generally take the form: assertion (argl, arg2,..., argN) Assertions defining extensions take the form: extends (feature2, feature 1) where feature 2 extends featurel and is executed instead of feature 1.
Assertions defining mutually compatible features take the form: compatible (feature3, featurel) where feature 3 and feature 1 are compatible and are executed in conjunction in response to an event.
For example, consider the terminating call (TC), call forwarding busy (CFB) and call waiting (CW) features. Each of these features can be invoked in response to an incoming call event and triggers on the same precondition, namely"no connection available". The CFB and CW features are both extensions of the TC feature and define alternative actions to be taken when an incoming call event occurs and no connection is available instead of performing the typical reject call procedure.
The CFB and CW features take the form : extends (CFB, TC) extends (CW, TC) Figure 3 illustrates the concept of"extension"between use cases. Each feature is represented by a use case, shown as an ellipse. Both CW and CFB features are shown to extend the TC feature (the"extends"arrow points at the feature being extended). The TC use case describes the normal flow of behavior for processing an incoming call. The CW and CFB use cases describe exceptional flows to pursue when certain preconditions are satisfied in the TC use case.
Each extension applies at a specific point (or checkpoint) in the extended use case. At this point, a precondition associated with the extension is tested and, when satisfied, the corresponding exceptional flow is followed. When an exceptional flow is completed, it resumes the normal flow of the extended use case from the checkpoint. At this stage, a check for a postcondition is made to ensure successful completion of the exceptional flow. The unsuccessful completion of an exceptional flow may trigger another exceptional flow, in turn. As extensions to use cases can themselves be extended, features can further extend other features that themselves extend features. The last feature in the extension chain receives relative priority over the others.
Figure 4 illustrates the situation where all three actions prescribed by the TC, CFB and CW features can be pursued. The normal action in response to receiving an incoming call when no connection is available is to reject the call following execution of the TC feature (action 4). If the CFB and the CW features are active, the incoming call can be handled either by forwarding the call (action 6) or announcing the call to the user through a warble (action 8). Only one of these actions should be pursued since their effects conflict with each other. The incoming call cannot both be forwarded and announced at the same time.
As mentioned above, typically entries in the preference and compatibility matrices define the rules, which determine the feature or features to be executed in the event of a feature conflict. An example of a precedence matrix is shown below for the CFB and CW features. In this preference matrix, a"1"entry signifies that a feature precedes another feature while a"0"entry signifies a feature that is preceded by another feature. Thus, in this example, the CFB feature precedes the CW feature.
CFB CW CFB l... 1 CW ...0 Accordingly, this precedence matrix defines the precedence rule: precedes (CFB, CW) Also as mentioned above, features may be mutually compatible in which case they are expected to be executed in conjunction. Although not shown, the compatibility matrix is of a form similar to the precedence matrix. Entries therein define rules establishing features that can be executed in conjunction. For example, a billing feature can be executed in conjunction with the TC, CFB and CW features since the billing feature executes in a service different than the handle incoming call service. In this example, the compatibility matrix defines the compatibility rule: compatible ( ? any, billing) As will be appreciated, the rules defined by the precedence and compatibility matrices governing how features are to be handled, can be different for different users depending on their preferences.
When an event occurs and two or more conflicting features can be executed in response to an event, the adaptive rule-based mechanism is invoked to resolve the conflict. Turning now to Figures 5a to 5c, the steps performed by the adaptive rule-based mechanism to resolve conflicts are shown. As can be seen, the adaptive rule-based mechanism implements a three-phase process to resolve conflicting feature interactions. At phase 1 (see Figure 5 a), conflicts between features are determined. Initially, a conflict set and an executable set are opened (block 100).
The features associated with the service to be performed in response to the event are then examined to determine if they are applicable to the service to be performed (block 102). If the feature is applicable to the service, the feature is added to the conflict set (block 104). This process is performed until all of the of the features have been examined (block 106).
Once execution of phase 1 has been completed, phase 2 of the adaptive rule-based mechanism is executed (see Figure Sb). At phase 2, the conflict set is examined to determine if more than one feature is in the conflict set (block 110). If more than one feature is in the conflict set, each feature in the conflict set is examined to determine if it extends other features in the conflict set (block 112). If a feature extends other features, the extended features are removed from the conflict set (block 114). If features in the conflict set exist that are not extended by another feature, the precedence rules are examined to determine if any feature precedes other features in the conflict set (block 116). Features preceded by a feature are removed from the conflict set (block 118). If features in the conflict set exist that are not extended or preceded by another feature, the compatibility rules are examined to determine if features in the conflict set are compatible with other features in the conflict set (block 120). If features are compatible with other features, they are removed from the conflict set (block 122) and are added to the executable set (block 124).
Once the above steps have been performed for all of the features in the conflict set, phase 2 is complete and phase 3 of the adaptive rule-based mechanism is commence (see Figure 5c). At phase 3, the conflict set is examined to determine if more than one feature exists (block 130). If only one feature exists, the feature is added to the executable set (block 132). The adaptive rule-based mechanism is then exited and the feature or features in the executable set are executed to complete the service to be performed. If more than one feature exists in the conflict set, the user is prompted to decide which feature in the conflict set is to precede the other feature (s) in the conflict set or to indicate that the features are compatible (blocks 134a, 134b and 134c). If the user selects a feature to precede the other feature (s), the selected feature is added to the executable set (block 136) and the user is prompted to decide if a precedence rule is to be added to the precedence matrix corresponding to the selected feature (block 138). If a precedence rule is to be added, the precedence matrix is updated (block 140) and the adaptive rule-based mechanism is exited. The feature or features in the executable set are then executed to complete the service to be performed. If the user decides not to add a precedence rule to the precedence matrix, the adaptive rule-based mechanism is exited. The feature or features in the executable set are then executed to complete the service to be performed.
If the user indicates that the features are compatible, the conflict set is added to the executable set (block 146). The user is then prompted to decide if a compatibility rule is to be added to the compatibility matrix corresponding to the selection (block 148). If a compatibility rule is to be added, the compatibility matrix is updated (block 150) and the adaptive rule-based mechanism is exited. The features in the executable set are then executed to complete the service to be performed. If the user decides not to add a compatibility rule to the compatibility matrix, the adaptive rule-based mechanism is exited. The features in the executable set are then executed to complete the service to be performed.
The feature interaction resolution process described above with reference to Figures 5a to 5c is also shown in Appendix A.
As will be appreciated, if the user adds precedence and compatibility rules to the precedence and compatibility matrices, the next time a conflict is encountered between these features, the new rule will be applied and it will not be necessary to ask the user for assistance. The adaptive rule-based mechanism will have "remembered"the user's preference without requiring explicit programming by the end user.
An example of the above-described process to resolve conflicts will now be described for a handle incoming call service where the TC, CFB and CW features are all part of the service and where the billing feature is compatible with t] features in the service. The assertions set forth below define the above: service (handle-incoming-call, {TC, CFB, CW, billing}) extends (CFB, TC) extends (CW, TC) compatible ( ? any, billing) The assertions below describe the situation when an incoming call is placed by a user Joanne to a user Michael and there is no connection available: user (Michael) user (Joanne) terminal (terminal-1) terminal (terminal-2) attached (terminal-l, michael) busy (terminal-1) attached (terminal-2, joanne) busy (terminal-2) incoming-call (joanne, michael) The following rules describe the features of the handle incoming cal service that are activated by a busy condition: ; ; Terminating Call if busy ( ? terminal) and incoming-call ( ? source, ? destination) and terminal ( ? terminal) and user ( ? source) and user ( ? destination) and attached ( ? terminal, ? destination) then reject-incoming-call ( ? source, ? destination) ; ; Call Forwarding Busy if busy ( ? terminal) and incoming-call ( ? source, ? destination) and terminal (? terminal) and user ( ? source) and user ( ? destination) and attached (? terminal, ? destination) then forward-incoming-call ( ? source, ? destination) ; ; Call Waiting if busy ( ? terminal) and incoming-call ( ? source, ? destination) and terminal ( ? terminal) and user ( ? source) and user ( ? destination) and attached(? terminal, ? destination) then announce-incoming-call ( ? source, ? destination, warble) Since the CFB and CW features conflict, the adaptive rule-based mechanism is invoked to resolve the conflict. During the conflict resolution process, the following intermediary results will be observed after the completion of each phase: Phase 1: After applying the"applicable"rule (block 102): ? conflict-set= {TC, CFB, CW, billing} ? executable-set = {} Phase 2: After applying the"extends"rule (blocks 112 and 114) : ? conflict-set= {CFB, CW, billing} ? executable-set = {} After applying the"precedes"rule (blocks 116 and 118): ? conflict-set = {CFB, CW, billing} ? executable-set = {} After applying the"compatible"rule (blocks 120 and 122): ? conflict-set = {CFB, CW} Sexecutable-set= {billing} Phase 3: After applying the"size"rule (block 130), the user is then asked to select the feature in the conflict set {CFB, CW} which precedes the other (there could of course be more than one other feature) or to indicate that the features are mutually compatible.
If the user selects the CFB feature at block 134b and the learn option at block 138 to signify that the feature selection should be remembered, the following assertion is generated: user-selection ( {CFB, CW}, precedes, CFB, learn) After applying the"user-selection"assertion: ? conflict-set = {} ? executable-set = {billing, CFB} The following rule is then generated and added to the precedence matrix: precedes (CFB, CW) As will be appreciated, after the adaptive rule-based mechanism is invoked, feature interactions are resolved allowing services to be performed. If desired, rules can be established to govern feature selection when the same services are to be performed in the future. Since feature interactions are resolved in an adaptive manner, different users can establish their own preferences.
Although the present invention has been described with particular reference to the resolution of conflicting feature interactions in a telephony communication system, those of skill in the art will appreciate that the adaptive rulesbased mechanism is not limited to this domain. The present adaptive rule-based mechanism can be extended to virtually any kind of software system where features conflict. For example, the adaptive rule-based mechanism can be incorporated into a word processing application including multiple services such as spell-checking, formatting etc, or a World Wide Web browser.
Those of skill in the art will also appreciate that variations and modifications may be made to the present invention without departing from the spirit and scope thereof as defined by the appended claims.
APPENDIX A ; ; Phase 1 if applicable ( ? feature) then add-to-conflict-set ( ? conflict-set, ? feature) Phase 2a if extends ( ? featureA, ? featureB) then remove-from-conflict-set ( ? conflict-set, ? featureB) Phase 2b if precedes (? featureA, ? featureB) then remove-from-conflict-set (? conflict-set, ? featureB) Phase 2c if compatible ( ? featureA, ? featureB) then remove-from-conflict-set (? conflict-set, ? featureB) and add-to-executable-set ( ? executable-set, ? featureB) Phase 3 if size ( ? conflict-set) =1 then merge ( ? executable-set, ? conflict-set) and clear ( ? conflict-set) if size ( ? conflict-set) > 1 then ask-user-to-select ( ? conflict-set, ? feature) if user-selection ( ? conflict-set, precedes, ? feature, learn) then add-to-executable-set ( ? executable-set, ? feature) and for all ? x o ? feature in ? conflict-set : add-rule (precedes ( ? feature,? x)) and APPENDIX A (Con't) clear ( ? conflict-set) if user-selection ( ? conflict-set, precedes, ? feature, only-once) then add-to-executable-set ( ? executable-set, ? feature) clear( ? conflict-set) if user-selection ( ? conflict-set, compatible,? feature, learn) then merge ( ? executable-set, ? conflict-set) for all ? x o ? feature in ? conflict-set : add-rule (compatible ( ? feature, ? x)) and clear ( ? conflict-set) if user-selection ( ? conflict-set, compatible, ? feature, only-once) then merge ( ? executable-set,? conflict-set) clear( ? conflict-set)

Claims (23)

  1. We Claim: 1. In a system where two or more indeterminate features can be executed in response to an event resulting in a conflicting feature interaction, an adaptive rulebased method for resolving said conflicting feature interaction comprising the steps of : determining indeterminate features available for execution in response to an event; examining said indeterminate features to determine whether one of said indeterminate features takes priority over the other indeterminate features; if one of said indeterminate features takes priority, selecting said one indeterminate feature for execution; and if one indeterminate features does not take priority, prompting a user to make a selection to resolve said conflicting feature interaction.
  2. 2. The method of claim 2 wherein during said examining step, rules are examined to determine if one of said indeterminate features takes priority over said other indeterminate features,
  3. 3. The method of claim 2 wherein said rules are user programmable.
  4. 4. The method of claim 3 wherein during said prompting step, said user is prompted either to select one indeterminate feature for execution or indicate that the indeterminate features are compatible, if said indeterminate features are indicated as compatible, said indeterminate features being executed in conjunction.
  5. 5. The method of claim 4 further comprising the step of prompting step said user to decide if a rule is to be established in accordance with said selected one indeterminate feature or feature compatibility indication.
  6. 6. The method of claim 5 wherein during said determining step, said indeterminate features are placed in a conflict set, when one of said indeterminate features is determined to take priority over the other indeterminate features, the other indeterminate features are removed from said conflict set.
  7. 7. The method of claim 6 wherein during said examining step, said conflict set is examined to determine: whether any of the indeterminate features extend other indeterminate features; whether any of the indeterminate features take precedence over other indeterminate features in accordance with a set of precedence rules; and whether any indeterminate features are compatible with other indeterminate features in accordance with a set of compatibility rules, indeterminate features extended and preceded by other indeterminate features being removed from said conflict set and indeterminate features compatible with other indeterminate features being removed from said conflict set and placed in an executable set.
  8. 8. The method of claim 1 wherein said indeterminate features represent executable options to be performed to complete a service.
  9. 9. The method of claim 8 wherein said service relates to a procedure performed during a telephone communication session.
  10. 10. In a telephony communication system wherein a service is to be performed in response to an event, said service including a plurality of executable conflicting features representing available options which can be performed to complete said service, an adaptive rule-based method to resolve feature conflicts during performance of said service comprising the steps of : determining the conflicting features available for execution; examining said conflicting features to determine whether one of said indeterminate features takes priority over the other conflicting features; if one of said conflicting features takes priority, executing said one conflicting feature thereby to complete said service; and if one conflicting feature does not take priority, prompting a user to make a selection to resolve said conflicting feature interaction and executing conflicting feature (s) in accordance with said selection thereby to complete said service.
  11. 11. The method of claim 10 wherein during said examining step, rules are examined to determine if one of said conflicting features takes priority over said other conflicting features.
  12. 12. The method of claim 11 wherein said rules are user programmable.
  13. 13. The method of claim 12 wherein during said prompting step, said user is prompted either to select one conflicting feature for execution or indicate that the conflicting features are compatible, if said conflicting features are indicated as compatible, said conflicting features being executed in conjunction.
  14. 14. The method of claim 13 further comprising the step of prompting step said user to decide if a rule is to be established in accordance with said selected one conflicting feature or feature compatibility indication.
  15. 15. The method of claim 14 wherein during said determining step, said conflicting features are placed in a conflict set, when one of said conflicting features is determined to take priority over the other conflicting features, the other conflicting features are removed from said conflict set.
  16. 16. The method of claim 15 wherein during said examining step, said conflict set is examined to determine : whether any of the conflicting features extend other conflicting features; whether any of the conflicting features take precedence over other conflicting features in accordance with a set of precedence rules; and whether any conflicting features are compatible with other conflicting features in accordance with a set of compatibility rules, conflicting features extended and preceded by other conflicting features being removed from said conflict set and conflicting features compatible with other conflicting features being removed from said conflict set and placed in an executable set.
  17. 17. An adaptive rule-based mechanism to resolve conflicting feature interactions when a plurality of conflicting features can be executed simultaneously in response to an event, said mechanism comprising: means for determining conflicting features available for execution in response to said event; means for examining said conflicting features to determine whether one of said conflicting features takes priority over the other conflicting features; means for selecting the conflicting feature that takes priority, for execution if it exists; and means for prompting a user to make a selection to resolve said conflicting feature interaction if a conflicting feature taking priority does not exist.
  18. 18. The mechanism as defined in claim 17 wherein said examining means examines rules to determine if one of said conflicting features takes priority over said other conflicting features.
  19. 19. The mechanism as defined in claim 18 wherein said rules are user programmable.
  20. 20. The mechanism as defined in claim 19 wherein said prompting means prompts said user either to select one conflicting feature for execution or indicate that the conflicting features are compatible, if said conflicting features are indicated as compatible, said conflicting features being executed in conjunction.
  21. 21. The mechanism as defined in claim 20 wherein said prompting means further prompts said user to decide if a rule is to be established in accordance with said selected one conflicting feature or feature compatibility indication.
  22. 22. The mechanism as defined in claim 21 wherein said determining means places said conflicting features in a conflict set, when one of said conflicting features is determined to take priority over the other conflicting features, said examining means removing the other conflicting features from said conflict set.
  23. 23. The mechanism as defined in claim 22 wherein examining means determines whether any of the conflicting features extend other conflicting features; whether any of the conflicting features take precedence over other conflicting features in accordance with a set of precedence rules; and whether any conflicting features are compatible with other conflicting features in accordance with a set of compatibility rules, conflicting features extended and preceded by other conflicting features being removed from said conflict set and conflicting features compatible with other conflicting features being removed from said conflict set and placed in an executable set.
GB9905156A 1999-03-05 1999-03-05 Adaptive rule-based mechanism and method for feature interaction resolution Expired - Lifetime GB2347579B (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
GB9905156A GB2347579B (en) 1999-03-05 1999-03-05 Adaptive rule-based mechanism and method for feature interaction resolution
CA002299639A CA2299639C (en) 1999-03-05 2000-02-28 Adaptive rule-based mechanism and method for feature interaction resolution
US09/518,555 US6639980B1 (en) 1999-03-05 2000-03-03 Adaptive rule-based mechanism and method for feature interaction resolution
DE10010870.9A DE10010870B4 (en) 1999-03-05 2000-03-06 Adaptive rule-based mechanism and method to address each other's performance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB9905156A GB2347579B (en) 1999-03-05 1999-03-05 Adaptive rule-based mechanism and method for feature interaction resolution

Publications (3)

Publication Number Publication Date
GB9905156D0 GB9905156D0 (en) 1999-04-28
GB2347579A true GB2347579A (en) 2000-09-06
GB2347579B GB2347579B (en) 2003-12-24

Family

ID=10849085

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9905156A Expired - Lifetime GB2347579B (en) 1999-03-05 1999-03-05 Adaptive rule-based mechanism and method for feature interaction resolution

Country Status (1)

Country Link
GB (1) GB2347579B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2353916B (en) * 1999-08-23 2003-12-24 Mitel Corp Adaptive rule-based mechanism and method for feature interaction resolution

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2299730A (en) * 1995-01-28 1996-10-09 Plessey Telecomm Interaction of special services in a telecommunications system
EP0833526A1 (en) * 1996-09-26 1998-04-01 BRITISH TELECOMMUNICATIONS public limited company Detecting service interactions in a telecommunications network
US5742673A (en) * 1994-01-24 1998-04-21 Telefonaktiebolaget Lm Ericsson Generic service coordination mechanism for solving supplementary service interaction problems in communication system
WO1998023098A1 (en) * 1996-11-19 1998-05-28 British Telecommunications Public Limited Company A service management system for use in communications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742673A (en) * 1994-01-24 1998-04-21 Telefonaktiebolaget Lm Ericsson Generic service coordination mechanism for solving supplementary service interaction problems in communication system
GB2299730A (en) * 1995-01-28 1996-10-09 Plessey Telecomm Interaction of special services in a telecommunications system
EP0833526A1 (en) * 1996-09-26 1998-04-01 BRITISH TELECOMMUNICATIONS public limited company Detecting service interactions in a telecommunications network
WO1998023098A1 (en) * 1996-11-19 1998-05-28 British Telecommunications Public Limited Company A service management system for use in communications

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2353916B (en) * 1999-08-23 2003-12-24 Mitel Corp Adaptive rule-based mechanism and method for feature interaction resolution

Also Published As

Publication number Publication date
GB9905156D0 (en) 1999-04-28
GB2347579B (en) 2003-12-24

Similar Documents

Publication Publication Date Title
CA2299639C (en) Adaptive rule-based mechanism and method for feature interaction resolution
US6411697B1 (en) System and method for providing customer personalized and modifiable subscriber services
US10127020B2 (en) Paradigm in multimedia services creation methodology, and new service creation and service execution environments
JP4143129B2 (en) Methods and apparatus in communication networks
EP1808004B1 (en) Providing a service framework at an endpoint
JPH09509023A (en) Generic service coordination mechanism
KR100253911B1 (en) Handling of interaction between supplementary system
KR100230213B1 (en) A method of avoiding non-desired interference between services
JPH08503824A (en) How to divide the function of the device into several sub-functions
GB2353916A (en) Feature interaction arbitration
GB2347579A (en) Feature interaction arbitration
Buhr et al. Applying Use Case Maps to multi-agent systems: A feature interaction example
EP1026871B1 (en) Interactive voice response system with general-purpose blocks
US8448159B2 (en) Method and system for policy enabled programming
EP2382763A1 (en) Expression conflict resolution in communication network tailoring
EP0940047B1 (en) A service management system for use in communications
Chentouf et al. Service interaction management in SIP user device using Feature Interaction Management Language
Fife Feature interaction-how it works in telecommunication software
Elammari et al. Applying use case maps to multi-agent systems: a featureinteraction example
Rizzo et al. A Negotiating agents model for the provision of flexible telephony services
Chentouf et al. New management methods for feature and preference interactions

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)
PE20 Patent expired after termination of 20 years

Expiry date: 20190304