IP Library Granted Patent US 9,843,650
Granted Patent B2
US 9,843,650 · App. 12/553,666 · Granted Dec 12, 2017

Intelligent module sequencing

Inventors: Steve Baker (Arvada, CO); Kurt Haserodt (Westminster, CO)
Assignee: Avaya Inc.
H04L67/327G06F9/4843G06F9/546G06F2209/482H04L65/1096
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,843,650
App. No.
12/553,666
Filed
Sep 3, 2009
Granted
Dec 12, 2017
Kind
B2
Examiner
MA, WING
Art Unit
2456
USPC
709/228
Abstract

Methods, devices, and systems are provided for selecting and ordering the firing of application modules based on parameters determined during communication initialization including call type, originator of the call, etc. The module invocation sequence is determined based on criteria determined when a connection is received, which then becomes an attribute of that connection such that subsequent messages belonging to that connection have the same module sequencing applied thereto without re-determining the optimal sequence for each message by analyzing the properties of each message every time.

Claims (35)

1. A method, comprising:

receiving, at a server, a connection request associated with one of a trusted connection and an untrusted connection;

analyzing, by a processor, the connection request to determine parameters of the connection;

determining, by the processor, a preferred module sequencing to be applied to messages of the connection based on the determined parameters of the connection, wherein the preferred module sequencing is an arrangement of modules within an application, wherein the preferred module sequencing includes a first arrangement of modules for the trusted connection, wherein the preferred module sequencing includes a second arrangement of modules for the untrusted connection, and wherein the first arrangement of modules differs from the second arrangement of modules, and wherein each of the modules execute at least one operation on at least some messages of the connection; and

binding the preferred module sequencing to the communication for a predetermined amount of time such that the preferred module sequencing is applied by an application to messages of the communication during the predetermined amount of time.

2. The method of claim 1 , wherein the predetermined amount of time lasts for the entire duration of the communication and wherein the determined parameters of the connection comprise credentials exchanged at the beginning of the connection.

3. The method of claim 2 , wherein the preferred module sequencing is applied to all messages of the communication.

4. The method of claim 3 , wherein the preferred module sequencing is applied to all messages of the communication without re-determining the preferred module sequencing for each message by analyzing the properties of each message.

5. The method of claim 1 , wherein the preferred sequencing is determined based on at least one of (i) whether the communication involves an external communication device, (ii) communication type, (iii) an originator of the communication, and (iv) a target of the communication.

6. The method of claim 1 , wherein the modules used to invoke the preferred module sequencing are included in an application which provides a particular function, wherein the modules execute an operation on a message received by the application in accordance with the particular function of the application, and wherein the particular function comprises one or more of a voicemail function, a call forwarding function, a call routing function, a coverage function, a recording function, a call setup function, a blacklist function, a whitelist function, an incoming call notification function, an end call function, and a bill customer function.

7. The method of claim 6 , wherein the modules include at least of a SIP framing module, a tracer module, a SIP firewall module, and a proxy module.

8. The method of claim 1 , further comprising:

receiving a message at an application;

determining, by the application, that the message is a part of the communication; and

based on determining that the application is part of the communication, invoking the preferred module sequencing on the message.

9. The method of claim 8 , wherein the preferred module sequencing is bound to the communication prior to the application receiving the message, and wherein the preferred module sequence is set up based on criteria known at the time the connection is created as well as criteria that can only be determined after the connection is established.

10. The method of claim 8 , wherein the preferred module sequencing is dynamically altered by a sequenced module to affect future messages on the connection or to affect messages on a future connection.

11. An application server, comprising:

memory adapted to store instructions that include:

a first application including at least two modules, wherein the first application provides a particular function and each of the at least two modules executes an operation on a first message received by the first application in accordance with the particular function of the first application;

a module sequencer to determine parameters of a communication of which the first message is a part, wherein the communication is associated with one of a trusted connection and an untrusted connection; determine a preferred module sequencing of the at least two modules based on the parameters of the communication, wherein the preferred module sequencing includes a first arrangement of the at least two modules for the trusted connection, wherein the preferred module sequencing includes a second arrangement of the at least two modules for the untrusted connection, and wherein the first arrangement of modules differs from the second arrangement of modules; and bind the preferred module sequencing to the communication such that the preferred module sequencing is applied to the first message; and

a processor operable to execute at least one of the first application and the module sequencer.

12. The server of claim 11 , wherein the module sequencer is provided as part of the first application.

13. The server of claim 11 , wherein the preferred module sequencing is bound to the communication prior to the first application receiving the first message and wherein the determined parameters of the connection comprise credentials exchanged at the beginning of the connection.

14. The server of claim 11 , wherein the preferred sequencing is applied to all messages of the communication.

15. The server of claim 14 , wherein the preferred module sequencing is applied to all messages of the communication without re-determining the preferred module sequencing for each message by analyzing the properties of each message.

16. The server of claim 11 , wherein the preferred module sequencing is determined based on at least one of (i) whether the communication involves an external communication device, (ii) communication type, (iii) an originator of the communication, and (iv) a target of the communication.

17. The server of claim 11 , wherein the particular function comprises one or more of a voicemail function, a call forwarding function, a call routing function, a coverage function, a recording function, a call setup function, a blacklist function, a whitelist function, an incoming call notification function, an end call function, and a bill customer function.

18. The server of claim 17 , wherein each of the two or more modules include at least one instance of a SIP framing module, a tracer module, a SIP firewall module, and a proxy module.

19. A non-transitory computer readable information storage medium having stored thereon computer executable instructions that, when executed by a processor, cause the processor to execute a method comprising:

receiving a message at an application, the application including at least two modules, wherein the application provides a particular function and each of the at least two modules executes an operation on messages received by the application in accordance with the particular function of the application;

determining that the message is a part of a communication associated with one of a trusted connection and an untrusted connection, the communication having a preferred module sequencing bound thereto, wherein the preferred module sequencing includes a first arrangement of the at least two modules for the trusted connection, wherein the preferred module sequencing includes a second arrangement of the at least two modules for the untrusted connection, wherein the first arrangement of modules differs from the second arrangement of modules, and wherein the preferred module sequencing defines at least one of (i) an order in which the at least two modules are to execute an operation on the message and (ii) whether one or both of the at least two modules are to execute an operation on the message; and

applying the preferred module sequencing to the message.

20. The computer readable information storage medium of claim 19 , wherein the preferred module sequencing is bound to the communication prior to the application receiving the message, and wherein the preferred module sequence is set up based on criteria known at the time the connection is created as well as criteria that can only be determined after the connection is established.

21. The computer readable information storage medium of claim 20 , wherein the preferred module sequencing is determined based on at least one of (i) whether the communication involves an external communication device, (ii) communication type, (iii) an originator of the communication, and (iv) a target of the communication.

Assignments (23)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2024
From: AVAYA LLC
To: ARLINGTON TECHNOLOGIES, LLC
Reel/Frame 067022/0780 →
INTELLECTUAL PROPERTY RELEASE AND REASSIGNMENT Recorded Mar 25, 2024
From: CITIBANK, N.A.
To: AVAYA LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 066894/0117 →
INTELLECTUAL PROPERTY RELEASE AND REASSIGNMENT Recorded Mar 25, 2024
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: AVAYA LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 066894/0227 →
(SECURITY INTEREST) GRANTOR'S NAME CHANGE Recorded Sep 21, 2023
From: AVAYA INC.
To: AVAYA LLC
Reel/Frame 065019/0231 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063779/0622 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063457/0001 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Jan 23, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 045124/0026 →
SECURITY INTEREST Recorded Jan 10, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045034/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION); VPNET TECHNOLOGIES, INC.
Reel/Frame 044893/0531 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 029608/0256 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 044891/0801 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST, NA
To: AVAYA INC.
Reel/Frame 044892/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 045012/0666 →
SECURITY INTEREST Recorded Jan 27, 2017
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS CORPORATION; VPNET TECHNOLOGIES, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041576/0001 →
SECURITY AGREEMENT Recorded Mar 13, 2013
From: AVAYA, INC.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE
Reel/Frame 030083/0639 →
SECURITY AGREEMENT Recorded Jan 10, 2013
From: AVAYA, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 029608/0256 →
SECURITY AGREEMENT Recorded Feb 22, 2011
From: AVAYA INC., A DELAWARE CORPORATION
To: BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THE
Reel/Frame 025863/0535 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2009
From: BAKER, STEVE; HASERODT, KURT
To: AVAYA INC.
Reel/Frame 023286/0031 →
Continuity (1)
Related Publication 20110055408A1 · Mar 3, 2011