IP Library Granted Patent US 9,736,130
Granted Patent B1
US 9,736,130 · App. 13/948,974 · Granted Aug 15, 2017

Communications methods and apparatus related to web initiated sessions

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,736,130
App. No.
13/948,974
Granted
Aug 15, 2017
Kind
B1
Abstract

A client device, e.g., a smartphone including a web browser, requests a call authorization token from a web server, e.g., a web page server. The web server, acting on behalf of a company, whose web page is hosted and whose phone corresponds to the called party, screens incoming requests and decides whether or not to issue an authorization token, e.g., a signed token including an encrypted portion. The web server issues a call authorization token and communicate the issued token to the client device. The client device includes the received issued call authorization token in a signal, e.g., a SIP INVITE signal, which it generates and sends to a session border controller (SBC). The session border controller processes the received authorization token and checks the authorization token to validate the received token. The SBC establishes a communications session if the received token passes the validation check.

Claims (51)

1. A method of operating a session border controller, the method comprising:

receiving, by the session border controller, a call initiation signal including a call authorization token received from a client device including a web browser application via which a caller is initiating a call to a called party, said call authorization token having been generated by a Web server and including at least one of encrypted content or a third party signature;

performing, by the session border controller, a validation operation on the call authorization token to determine if it authorizes completion of a call to the called party;

establishing, by the session border controller, a call between the calling party and called party if said validation operation determines that the call authorization token authorized completion of the call to the called party; and

wherein said session border controller does not send signals to said Web server as part of a call authorization process for said call.

2. The method of claim 1 , further comprising:

sending a signal rejecting establishment of a call to the called party to said client device when said validation operation determines that the call authorization token does not authorize completion of the call to the called party.

3. The method of claim 2 , wherein performing a validation operation on the call authorization token to determine if it authorizes completion of a call to the called party includes:

checking a signature included in said call authorization token to ensure that said call authorization token was issued by a third party device authorized to issue call authorization tokens for calls to said called party.

4. The method of claim 1 , wherein performing a validation operation on the call authorization token includes:

decrypting an encrypted portion of said call authorization token to generate a decryption result; and

comparing said decryption result to an expected decryption result to determine if the decryption result matches the expected decryption result; and

determining a validation failure if said decryption result does not match the expected decryption result.

5. The method of claim 4 , further comprising:

establishing a call voice data path between said client device and a phone device corresponding to said called party via said session border controller when said validation operation indicates that said caller is authorized to call said called party.

6. The method of claim 5 , further comprising:

generating a call record including call information; and

communicating calling record information to at least one of a web server or a web RTC server corresponding to said called party.

7. The method of claim 6 , wherein said called party is a customer representative of a company corresponding to a web page including at least some advertisements for company products or services and a Web RTC call initiation option which can be selected via a web browser on the client device to initiate a call to the called party.

8. A session border controller comprising:

a module configured to receive a call initiation signal including a call authorization token received from a client device including a web browser application configured to initiate a call from a calling party to a called party, said call authorization token having been generated by a Web server and including at least one of encrypted content or a third party signature;

a module configured to perform a validation operation on the call authorization token to determine if it authorizes completion of a call to the called party;

a module configured to establish a call between the calling party and called party if said validation operation determines that the call authorization token authorized completion of the call to the called party; and

wherein said session border controller does not send signals to said Web server as part of a call authorization process for said call.

9. The session border controller of claim 8 , further comprising:

a module configured to send a signal rejecting establishment of a call to the called party to said client device when said validation operation determines that the call authorization token does not authorize completion of the call to the called party.

10. The session border controller of claim 9 , wherein said module configured to perform a validation operation on the call authorization token to determine if it authorizes completion of a call to the called party includes:

a module configured to check a signature included in said call authorization token to ensure that said call authorization token was issued by a third party device authorized to issue call authorization tokens for calls to said called party.

11. The session border controller of claim 10 ,

wherein said called party is a customer service representative corresponding to a company having a web page including a Web RTC based call option; and

wherein said call authorization token is issued by a web server corresponding to said company in response to a signal from said client device.

12. The session border controller of claim 11 , wherein said module configured to perform a validation operation on the call authorization token includes:

a module configured to decrypt an encrypted portion of said call authorization token to generate a decryption result;

a module configured to compare said decryption result to an expected decryption result to determine if the decryption result matches the expected decryption result; and

a module configured to determine a validation failure if said decryption result does not match the expected decryption result.

13. The session border controller of claim 12 , further comprising:

a module configured to generate a call record including call information; and

a module configured to communicate calling record information to at least one of a web server or a web RTC server corresponding to said called party.

14. The session border controller of claim 13 , wherein said called party is a customer representative of a company corresponding to a web page including at least some advertisements for company products or services and a Web RTC call initiation option which can be selected via a web browser on the client device to initiate a call to the called party.

15. A computer program product for use in a session border controller (SBC), the computer program product comprising:

a non-transitory computer readable medium comprising:

code for controlling at least one computer to receive a call initiation signal including a call authorization token received from a client device including a web browser application configured to initiate a call from a calling party to a called party, said call authorization token having been generated by a Web server and including at least one of encrypted content or a third party signature;

code for controlling said at least one computer to perform a validation operation on the call authorization token to determine if it authorizes completion of a call to the called party; and

code for controlling said at least one computer to establish a call between the calling party and called party if said validation operation determines that the call authorization token authorized completion of the call to the called party; and

wherein said session border controller does not send signals to said Web server as part of a call authorization process for said call.

16. The method of claim 1 , wherein the call authorization token includes only encrypted information.

17. The method of claim 1 , wherein the call authorization token includes unencrypted information and encrypted information, said unencrypted information including information used to generate the encrypted information.

18. The method of claim 17 , wherein said unencrypted information is information which was used as an input to an encryption process to generate the encrypted information included in said call authorization token; and

wherein said unencrypted information includes a random number supplied by the client device.

19. The method of claim 1 , wherein said call authorization token includes a signature of the web server which generated the call authorization token, web server identification information, calling party identification information, an unencrypted portion, and an encrypted portion.

20. The method of claim 1 wherein performing, by the session border controller, a validation operation on the call authorization token to determine if it authorizes completion of a call to the called party is performed without contacting a Web server to seek authorization for the call.

Assignments (10)
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 →
CHANGE OF NAME Recorded Jan 16, 2019
From: SONUS NETWORKS, INC.
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
Reel/Frame 048078/0036 →
SECURITY INTEREST Recorded Jan 2, 2018
From: GENBAND US LLC; SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 044978/0801 →
CHANGE OF NAME Recorded Dec 24, 2017
From: SONUS, INC.
To: SONUS NETWORKS, INC.
Reel/Frame 044957/0213 →
MERGER AND CHANGE OF NAME Recorded Dec 24, 2017
From: SOLSTICE SAPPHIRE, INC.; SONUS NETWORKS, INC.; SONUS NETWORKS, INC.
To: SONUS, INC.
Reel/Frame 044957/0243 →
RELEASE OF SECURITY INTEREST Recorded Oct 24, 2017
From: BANK OF AMERICA, N.A.
To: SONUS NETWORKS, INC.; SONUS FEDERAL, INC.; NETWORK EQUIPMENT TECHNOLOGIES, INC.; PERFORMANCE TECHNOLOGIES, INCORPORATED; SONUS INTERNATIONAL, INC.; TAQUA, INC.
Reel/Frame 044283/0361 →
SECURITY INTEREST Recorded Sep 12, 2014
From: SONUS NETWORKS, INC.; SONUS FEDERAL, INC.; NETWORK EQUIPMENT TECHNOLOGIES, INC.; PERFORMANCE TECHNOLOGIES, INCORPORATED; SONUS INTERNATIONAL, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 033728/0409 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2014
From: ASVEREN, TOLGA
To: SONUS NETWORKS, INC.
Reel/Frame 032955/0442 →