IP Library Granted Patent US 7,050,563
Granted Patent B2
US 7,050,563 · App. 10/085,491 · Granted May 23, 2006

Call path reduction via correlation of call legs in a hairpin loop scenario

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 7,050,563
App. No.
10/085,491
Granted
May 23, 2006
Kind
B2
Abstract

A variety of methods and systems can be used to avoid a hairpin loop scenario. For example, in a system involving a redirecting switch and a service platform switch, correlation between calling party identities for outgoing and incoming call legs can be done to identify a potential hairpin loop scenario. Upon detection of such a scenario, appropriate call legs can be released while routing the call to its destination. Correlation information can be collected from available call setup signaling parameters. The methods and systems can be applied, for example, to systems involving directory assistance call completion, voice-activated dialing, voicemail callback, and prepaid services.

Claims (79)

1. A method for processing a call in a telecommunications system comprising at least a first and second switch, the method comprising:

storing correlation information for a first call leg related to a service request directed to the second switch by the first switch;

detecting an attempt to establish a second call leg directed back to the first switch and forming a hairpin loop in conjunction with the first leg, wherein the detecting is based at least on the stored correlation information; and

based at least on the detecting the attempt to establish the second call leg forming a hairpin loop in conjunction with the first leg, wherein the detecting is based at least on the stored correlation information for the first call leg related to the service request directed to the second switch by the first switch, releasing at least the first call leg.

2. The method of claim 1 wherein the detecting comprises comparing call setup signaling information associated with the first leg with call signaling information associated with the attempted second leg.

3. The method of claim 1 wherein the detecting comprises comparing calling party number signaling information associated with the first leg with calling party number signaling information associated with the attempted second leg.

4. The method of claim 1 wherein the detecting comprises comparing billing number signaling information associated with the first leg with billing number signaling information associated with the attempted second leg.

5. The method of claim 1 wherein

the detecting takes place during attempted routing of the call to a destination; and

the call is routed to the destination.

6. The method of claim 1 wherein the detecting comprises comparing billing number information associated with the first leg with a billing number parameter of an Initial Address Message associated with the attempted second leg.

7. The method of claim 2 wherein the call setup signaling information originates from an initial address message as part of ANSI-ISUP signaling.

8. The method of claim 7 wherein the call setup signaling information comprises a calling party identifier.

9. The method of claim 7 wherein the call setup signaling information comprises a charge number.

10. The method of claim 7 wherein the call setup signaling information comprises a charge number and a calling party number.

11. The method of claim 2 wherein the call setup signaling information originates from a setup message as part of ISDN-PRI signaling.

12. The method of claim 2 wherein the call setup signaling information originates from R1 Feature Group-D signaling comprising an Automatic Number Identification field.

13. The method of claim 2 wherein the call setup signaling information originates in a GSM network.

14. The method of claim 1 wherein the detecting comprises consulting trunk type associated with the attempted second leg.

15. The method of claim 1 wherein the detecting comprises comparing trunk membership associated with the attempted second leg against a list of trunks designated for comparison.

16. The method of claim 1 further comprising:

selecting a temporary identity from a pool of identities; and

substituting the temporary identity for an actual identity associated with the call.

17. The method of claim 1 wherein:

the service request is a request for directory assistance; and

a destination of the call is determined as a result of the directory assistance.

18. The method of claim 1 wherein:

the service request is a request for accessing voicemail messages; and

a destination of the call is determined as a result of accessing voicemail messages.

19. The method of claim 1 wherein:

the service request is a request for voice-activated dialing; and

a destination of the call is determined as a result of voice-activated dialing.

20. The method of claim 1 wherein:

the service request is a request for prepaid services.

21. A computer-readable medium comprising computer-executable instructions for performing at least the following to process a directed signal in a system comprising at least a first and second switch:

storing correlation information for a first leg related to a service request directed to the second switch by the first switch;

detecting an attempt to establish a second leg directed back to the first switch and forming a hairpin loop in conjunction with the first leg, wherein the detecting is based at least on the stored correlation information; and

based at least on the detecting the attempt to establish the second leg forming a hairpin loop in conjunction with the first leg, wherein the detecting is based at least on the stored correlation information for the first leg related to the service request directed to the second switch by the first switch, releasing at least the first leg.

22. A method for processing a call in a telecommunications network comprising at least a first and second switch, the method comprising:

for the call, establishing a first leg, the first leg resulting from a service request directed by the first switch to the second switch;

for the call, detecting a request to establish a second leg directed back to the first switch and forming a hairpin loop in conjunction with the first leg, the second leg being the call directed by the second switch to the first switch, wherein the detecting is based at least on call setup signaling information for the second leg; and

based at least on detecting the request to establish the second leg forming a hairpin loop in conjunction with the first leg, releasing at least the first leg while maintaining connectivity for the call.

23. The method of claim 22 wherein the call setup signaling information for the second leg comprises an Automatic Number Identification parameter.

24. The method of claim 22 wherein the call setup signaling information for the second leg comprises a parameter from an Initial Address Message according to an ISUP signaling protocol.

25. The method of claim 22 wherein the call setup signaling information for the second leg comprises a Calling Party Number parameter from a Setup Message according to an ISDN-PRI signaling protocol.

26. A computer-readable medium comprising computer-executable instructions for performing at least the following to process a call in a telecommunications network comprising at least a first and second switch:

for the call, establishing a first leg, the first leg resulting from a service request directed by the first switch to the second switch;

for the call, detecting a request to establish a second leg directed back to the first switch and forming a hairpin loop in conjunction with the first leg, the second leg being the call directed by the second switch to the first switch, wherein the detecting is based at least on call setup signaling information for the second leg; and

based on detecting the request to establish the second leg forming a hairpin loop in conjunction with the first leg, releasing at least the first leg while maintaining connectivity for the call.

27. A method for avoiding a hairpin loop scenario in a telecommunications system having at least a redirecting switch and a service platform switch, the method comprising:

receiving at the redirecting switch a call for which processing at the service platform switch is to be performed;

routing the call as an outgoing call leg from the redirecting switch the service platform switch over a trunk out of a trunk group designated as an outgoing hairpin loop trunk type, the routing comprising sending an Initial Address Message to the service platform switch, the Initial Address Message comprising an outgoing number;

receiving at the redirecting switch an incoming call leg on a trunk out of a trunk group designated as an incoming hairpin loop trunk type, the call comprising an Initial Address Message comprising an incoming identifier and a called party number;

correlating the outgoing call leg and the incoming call leg by determining that the outgoing number and the incoming identifier are identical;

responsive to correlating the outgoing call leg and the incoming call leg, releasing the incoming call leg; and

routing the call to the called party number.

28. A method for dynamic correlation of call legs, the method comprising:

receiving a first incoming call leg from a call source;

providing a first outgoing call leg associated with the first incoming call leg to a service platform, wherein the first outgoing call leg comprises a correlation key;

receiving a second incoming call leg from the service platform, wherein the second incoming call leg comprises the correlation key;

providing a second outgoing call leg associated with the second incoming call leg to a destination;

employing the correlation key to correlate the first outgoing call leg with the second incoming call leg; and

connecting the first incoming call leg to the second outgoing call leg.

29. A telecommunications switch software system for use in a telecommunications switch, the system comprising:

correlation information retriever logic operable to collect call set up signaling information from a call leg directed from the switch to another switch and store the information;

incoming call leg monitor logic operable to compare call set up signaling information from the call leg directed from the switch with call set up signaling information from a call leg directed to the switch; and

hairpin loop avoider logic operable to remove at least the call leg directed from the switch to another switch upon detection of a match between call set up signaling information from the call leg directed from the switch and call set up signaling information directed to the switch.

30. The system of claim 29 , wherein the signaling information from the call leg directed from the switch comprises an Automatic Number Identification.

31. The system of claim 29 further comprising:

a stored pool of identities dedicated for use by the switch software system; and

identity substituter logic for replacing an actual identity with an identity selected from the pool of identities.

32. A system for tracking call legs between a first switch and a second switch, the system comprising:

means for storing call set up signaling information for a call leg directed from the first switch to the second switch as correlation information;

means for comparing the correlation information against call set up signaling information for a call leg directed from the second switch back to the first switch; and

means operable to detect a match between the correlation information and the call set up signaling information for the call leg directed from the second switch back to the first switch and further operable for removing the call leg directed from the first switch to the second switch and the call leg directed from the second switch back to the first switch after detecting the match.

33. The system of claim 32 further comprising:

temporary identifier selection logic operable to select a temporary identifier;

substitution logic operable to substitute the temporary identifier for an identifier related with a call leg for use as the correlation information; and

restoration logic operable to restore the identifier related with the call leg after the match is detected.

Assignments (5)
CHANGE OF NAME Recorded Jun 24, 2008
From: AT&T MOBILITY II, LLC
To: AT&T MOBILITY II LLC
Reel/Frame 021143/0069 →
CHANGE OF NAME Recorded Jun 19, 2008
From: CINGULAR WIRELESS II, LLC
To: AT&T MOBILITY II, LLC
Reel/Frame 021126/0415 →
CERTIFICATE OF CONVERSION Recorded Mar 29, 2006
From: CINGULAR WIRELESS II, INC.
To: CINGULAR WIRELESS II, LLC
Reel/Frame 017696/0375 →
CERTIFICATE OF CONVERSION Recorded Apr 22, 2005
From: CINGULAR WIRELESS II, INC.
To: CINGULAR WIRLEESS II, LLC
Reel/Frame 017546/0612 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2005
From: NEW CINGULAR WIRELESS SERVICES, INC. F/K/A AT&T WIRELESS SERVICES, INC.
To: CINGULAR WIRELESS II, INC.
Reel/Frame 017555/0711 →