IP Library Granted Patent US 6,977,933
Granted Patent B2
US 6,977,933 · App. 10/679,808 · Granted Dec 20, 2005

Methods and systems for providing session initiation protocol (SIP) trunk groups

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 6,977,933
App. No.
10/679,808
Granted
Dec 20, 2005
Kind
B2
Abstract

Methods and systems for providing SIP trunk groups are disclosed. A SIP call processor identifies an incoming SIP trunk group based on one or more parameters associated with an incoming SIP message. The SIP call processor selects per-trunk-group call processing data based on the incoming SIP trunk group. The SIP call processor selectively processes the call based on the per-trunk-group call processing data selected for the incoming SIP trunk group.

Claims (47)

1. A method for implementing session initiation protocol (SIP) trunk groups on a per call basis, the method comprising:

(a) receiving a first SIP signaling message associated with a new call;

(b) identifying an incoming SIP trunk group for the new call;

(c) selecting, based on the incoming SIP trunk group, a first set of per-trunk-group call processing data from a plurality of sets of different call processing data associated with different incoming SIP trunk groups; and

(d) processing the new call using the first set of per-trunk-group call processing data.

2. The method of claim 1 wherein receiving a first SIP signaling message includes receiving a SIP INVITE message.

3. The method of claim 1 wherein identifying an incoming SIP trunk group for the new call includes examining a via header in the first SIP signaling message and selecting the incoming SIP trunk group based on the via header.

4. The method of claim 1 wherein identifying an incoming SIP trunk group for the new call includes decoding a predetermined extension from the SIP message and selecting the incoming SIP trunk group based on the extension.

5. The method of claim 1 wherein identifying an incoming SIP trunk group for the new call includes determining a source IP address of the first SIP signaling message and selecting the incoming SIP trunk group based on the source IP address.

6. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes routing the new call to a SIP peer in a SIP logical peer group associated with the incoming trunk group by the first set of per-trunk-group call processing data.

7. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes routing the new call to a peer of a redundant set of peers associated with the incoming trunk group by the first set of per-trunk-group call processing data.

8. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes routing the new call to a SIP peer based on operational status information regarding SIP peers associated with the incoming trunk group by the first set of the per-trunk-group call processing data.

9. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes processing the new call based on profiles associated with the incoming trunk group by the first set of per-trunk-group call processing data.

10. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes processing the new call based on protocol variant information and vendor-specific information regarding a SIP peer associated with the incoming trunk group by the first set of per-trunk-group call processing data.

11. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes screening the new call using call screening parameters associated with the incoming SIP trunk group by the first set of per-trunk-group call processing data.

12. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes processing the new call based on a privacy policy associated with the incoming trunk group by the first set of per-trunk-group call processing data.

13. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes selecting an outgoing trunk group from a plurality of outgoing trunk groups associated with the incoming trunk group by the first set of per-trunk-group call processing data.

14. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes applying quality of service routing to the call using QoS parameters specified for the incoming trunk group in the first set of per-trunk-group call processing data.

15. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes processing the new call based on bearer capability routing defined for the incoming trunk group in the first set of per-trunk-group call processing data.

16. The method of claim 1 wherein processing the new call using the first set of per-trunk-group call processing data includes processing the new call based on carrier routing defined for the incoming trunk group in the first set of per-trunk-group call processing data.

17. The method of claim 1 wherein processing the new call using the per-trunk-group call processing data includes processing the new call based on an advanced intelligent network function associated with the incoming trunk group by the first set of per-trunk-group call processing data.

18. The method of claim 1 wherein processing the new call using the per-trunk-group call processing data includes processing the new call based on routing policies defined for the incoming trunk group in the first set of per-trunk-group call processing data.

19. The method of claim 1 wherein processing the new call using the first set of per-trunk group call processing data includes generating customized billing information specified for the incoming trunk group in the first set of per-trunk-group call processing data.

20. The method of claim 1 comprising receiving a second SIP signaling message associated with a second new call, identifying a different incoming SIP trunk group for the second signaling message, selecting a second set of per-trunk-group call processing data using the incoming trunk group identified for the second SIP signaling message, and processing the second new call using the second set of per-trunk-group call processing data.

21. A session initiation protocol (SIP) call processor comprising:

(a) an incoming trunk group identifier for identifying an incoming SIP trunk group associated with a first SIP call based on one or more parameters in a first SIP signaling message received for the first call;

(b) a per-trunk-group call processor operatively associated with the incoming trunk group identifier for implementing per-incoming-trunk-group call processing based on the incoming SIP trunk group identified for each received call; and

(c) a plurality of per-trunk-group call processing data sets usable by the per-trunk-group call processor for applying differentiated processing for calls on different incoming SIP trunk groups, each of the per-trunk-group call processing data sets being assigned to an incoming SIP trunk group and containing instructions for processing calls from the assigned incoming SIP trunk group, wherein the per-trunk group call processor is adapted to select a first per-trunk-group call processing data set for processing the first call and to process the first call using data in the first per-trunk-group call processing data set.

22. The SIP call processor of claim 21 wherein the incoming trunk group identifier is adapted to identify the incoming SIP trunk group for the first call based on a predetermined parameter in a via header of the first SIP signaling message.

23. The SIP call processor of claim 21 wherein the incoming trunk group identifier is adapted to identify the incoming SIP trunk group for the first call based on a SIP extension in the first SIP signaling message.

24. The SIP call processor of claim 21 wherein the incoming trunk group identifier is adapted to identify the incoming SIP trunk group for the first call based on a source IP address associated with the first SIP signaling message.

25. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to route the first call to a peer SIP entity based on peer entities defined for the incoming SIP trunk group for the first call in the first per-trunk-group call processing data set.

26. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to route the first call to a peer among a set of redundant peers defined for the incoming SIP trunk group for the first call in the first per-trunk-group call processing data set.

27. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to route the first call to an available peer associated with the incoming SIP trunk group identified for the first call based on peer entity status maintained in the first per-trunk-group call processing data set.

28. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to perform call screening for the first call based on call screening parameters in the first per-trunk-group call processing data set.

29. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to apply a privacy policy to the first call based on a privacy policy defined in the first per-trunk-group call processing data set.

30. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to identify trusted peers associated with an originator of the first call based on the first per-trunk-group call processing data set.

31. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to apply a quality of service (QoS) or a cost of service (CoS) routing policy based on data specified for the incoming trunk group in the first per-trunk-group call processing data set.

32. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to apply bearer capability routing based on bearer capabilities defined for outgoing trunk groups associated with the incoming trunk group for the first call in the first per-trunk-group call processing data set.

33. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to apply a carrier routing policy based on carrier routing parameters defined for the incoming trunk group identified for the first call in the first per-trunk-group call processing data set.

34. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to perform predetermined advanced intelligent network (AIN) functions for the first call based on AIN functions defined for the incoming trunk group identified for the first call in the first per-trunk-group call processing data set.

35. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to apply a routing policy to the first call using the first per-trunk-group call processing data set.

36. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to collect accounting information for the first call specified for the incoming trunk group in the first per-trunk-group call processing data set.

37. The SIP call processor of claim 21 wherein the per-trunk-group call processor is adapted to route the first call to an interactive voice response (IVR) server for digit collection and announcements based on the first per-trunk-group call processing data set.

38. The SIP call processor of claim 21 wherein the incoming trunk group identifier is adapted to identify an incoming trunk group for a second call based on a second received SIP signaling message, and wherein the per-trunk-group call processor is adapted to select a second per-trunk-group call processing data set for processing the second call based on the incoming SIP trunk group identified for the second call and to process the second call differently from the first call using the second per-trunk-group call processing data set.

39. The method of claim 1 comprising maintaining operational status of SIP peers based on heartbeat messages sent to and received from each peer.

40. The method of claim 39 wherein processing the new call includes selecting an outgoing trunk group for the new call based on the operational status maintained for each peer.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2024
From: CITIZENS BANK, N.A.
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 067822/0433 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 044978/0801 Recorded Dec 6, 2021
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 058949/0497 →
SECURITY INTEREST Recorded Mar 3, 2020
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 052076/0905 →
SECURITY INTEREST Recorded Jan 2, 2018
From: GENBAND US LLC; SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 044978/0801 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT Recorded Dec 29, 2017
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: GENBAND US LLC
Reel/Frame 044986/0303 →
CORRECTIVE ASSIGNMENT TO CORRECT PATENT NO. 6381239 PREVIOUSLY RECORDED AT REEL: 039269 FRAME: 0234. ASSIGNOR(S) HEREBY CONFIRMS THE PATENT SECURITY AGREEMENT. Recorded Jan 3, 2017
From: GENBAND US LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 041422/0080 →
RELEASE AND REASSIGNMENT OF PATENTS Recorded Jul 7, 2016
From: COMERICA BANK, AS AGENT
To: GENBAND US LLC
Reel/Frame 039280/0467 →
PATENT SECURITY AGREEMENT Recorded Jul 6, 2016
From: GENBAND US LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 039269/0234 →
RELEASE OF SECURITY INTEREST Recorded Jan 10, 2014
From: ONE EQUITY PARTNERS III, L.P., AS COLLATERAL AGENT
To: GENBAND US LLC
Reel/Frame 031968/0955 →