IP Library Granted Patent US 12,212,628
Granted Patent B2
US 12,212,628 · App. 17/990,622 · Granted Jan 28, 2025

Domain communication system

Inventors: Rui Rodrigo Cabral Pacheco de Melo (Maia, PT); Nuno Martino do Carmo Meneses Oliveira (Maia, PT); João Henrique Martins Ferreira Guedes (Vila Nova de Gaia, PT); Alexandre Jensen Cunha Neto (Oporto, PT); Manuel Alberto Duarte Soares (Ovar, PT); Bárbara Francisco Sousa Baptista (Mafra, PT); Afonso Vieira Campos Leça Martinho (Oporto, PT)
Assignee: Namecheap, Inc.
H04L67/141H04L63/102H04L67/146
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 12,212,628
App. No.
17/990,622
Granted
Jan 28, 2025
Kind
B2
Abstract

Systems and methods for conducting direct peer-to-peer real time communications are disclosed. The system comprises a domain communication server. The system includes logic to receive a request on behalf of a first user, to initiate a direct peer-to-peer communication session specifying a domain name of a second user. The second user is a registered and authorized user having the domain name registered with a domain name server and authorized by the domain communication server to participate in the direct peer-to-peer real time communication with other users using the domain name. The system includes logic to offer to the second user based upon the domain name specified in the request, to initiate direct peer-to-peer communications with the first user. The system includes logic to, upon acceptance from the second user, initiate the direct peer-to-peer communication session between the first user and the second user.

Claims (48)

1. A method for conducting direct peer-to-peer real time communications, comprising a domain communication server performing actions including:

receiving a request on behalf of a first user, to initiate a direct peer-to-peer communication session specifying a domain name of a second user; wherein the second user is a registered and authorized user having the domain name registered with a domain name server and authorized by the domain communication server to participate in the direct peer-to-peer real time communication using the domain name to conduct the direct peer-to-peer real time communications with other users;

initiating, the direct peer-to-peer communication session between the first user and the second user;

if the domain communication server determines that the first user is unauthorized:

generating for the first user (i) an evanescent domain name, that expires after a pre-defined duration, registered on behalf of the first user with the domain name server, and (ii) an authorization by sending an authorization code that was generated with a pseudo-random number to the first user for creating an authorization record with the domain name server wherein the authorization record includes the authorization code; and

authorizing the first user based upon the evanescent domain name, when the authorization code in the authorization record of the first user with the domain name server matches the authorization code sent to the first user; otherwise, if the domain communication server determines the first user is authorized:

using the domain name of the first user to conduct the direct peer-to-peer communication session without generating an evanescent domain name for the first user;

generating a call identifier for the direct peer-to-peer communication session between the first user and the second user;

offering to the second user based upon the domain name specified in the received request, to initiate direct peer-to-peer communications with the first user; wherein the offering includes sending the call identifier to the second user for acceptance of the direct peer-to-peer communication session with the first user and upon an indication of acceptance from the second user, sending the call identifier to the first user; and

completing setup of the direct peer-to-peer communication session.

2. The method of claim 1 , wherein the domain name of the second user is an address string that identifies an Internet Protocol resource such as a server to access services provided by the server on behalf of the second user.

3. The method of claim 1 , further including: implementing customer relationship management (CRM) functionality that identifies the first user to the second user based upon the domain name registered with the domain name server and providing to the second user, user information of the first user; wherein the user information includes at least one of a username, user address, date and time of a last communication with the first user, and any products and services purchased by the first user.

4. The method of claim 1 , further including implementing a pre-call assistant that indicates to the second user an intent of the call.

5. The method of claim 1 , further including the domain communication server removing expired domain name records.

6. The method of claim 1 , wherein the received request includes a request to conduct a voice call.

7. The method of claim 1 , wherein the received request includes a request to conduct a video call.

8. The method of claim 1 , wherein the received request includes a request to conduct a data call.

9. The method of claim 1 , wherein the received request includes a request to conduct messaging.

10. The method of claim 1 , wherein authorizing, by the domain communication server, users to participate in the direct peer-to-peer real time communications using the domain name further includes authorizing users to conduct (i) initiating direct peer-to-peer real time communications; and (ii) receiving direct peer-to-peer real time communications.

11. The method of claim 1 , further including implementing a schedule function enabling the direct peer-to-peer real time communications to be scheduled.

12. The method of claim 1 , further including implementing an Out-of-office mode thereby enabling the second user to establish availability to attend calls.

13. The method of claim 1 , further including implementing a reward system for users that compensates for waiting in picking up calls, by: tracking wait times using a timer started upon receipt of an incoming call and stopped upon initiating the direct peer-to-peer communication session; determining a reward; and providing the reward to a waiting user.

14. The method of claim 1 , wherein the request is received via a first instance of a web page.

15. The method of claim 14 , wherein offering to initiate direct peer-to-peer communications with the first user is offered via at least one of (i) a second instance of a web page and (ii) a first instance of a mobile application.

16. The method of claim 1 , wherein the request is received via a first instance of a mobile application.

17. The method of claim 16 , wherein offering to initiate direct peer-to-peer communications with the first user is offered via at least one of: (i) a second instance of a mobile application and (ii) a first instance of a web page.

18. A non-transitory computer-readable storage medium storing instructions for conducting direct peer-to-peer real time communications, which instructions when executed by at least one processor, implement a domain communication server that performs actions of:

receiving a request on behalf of a first user, to initiate a direct peer-to-peer communication session specifying a domain name of a second user; wherein the second user is a registered and authorized user having the domain name registered with a domain name server and authorized by the domain communication server to participate in the direct peer-to-peer real time communication using the domain name to conduct the direct peer-to-peer real time communications with other users;

initiating, the direct peer-to-peer communication session between the first user and the second user;

if the domain communication server determines that the first user is unauthorized:

generating for the first user (i) an evanescent domain name, that expires after a pre-defined duration, registered on behalf of the first user with the domain name server, and (ii) an authorization by sending an authorization code that was generated with a pseudo-random number to the first user for creating an authorization record with the domain name server wherein the authorization record includes the authorization code; and

authorizing the first user based upon the evanescent domain name, when the authorization code in the authorization record of the first user with the domain name server matches the authorization code sent to the first user; otherwise,

if the domain communication server determines the first user is authorized:

using the domain name of the first user to conduct the direct peer-to-peer communication session without generating an evanescent domain name for the first user;

generating a call identifier for the direct peer-to-peer communication session between the first user and the second user;

offering to the second user based upon the domain name specified in the request, to initiate direct peer-to-peer communications with the first user; wherein the offering includes sending the call identifier to the second user for acceptance of the direct peer-to-peer communication session with the first user and upon an indication of acceptance from the second user, sending the call identifier to the first user; and

completing setup the direct peer-to-peer communication session.

19. A data processing system comprising a domain communication server including at least one processor coupled with a computer-readable storage medium storing instructions for conducting direct peer-to-peer real time communications, which instructions when executed by the at least one processor perform:

receiving a request on behalf of a first user, to initiate a direct peer-to-peer communication session specifying a domain name of a second user; wherein the second user is a registered and authorized user having the domain name registered with a domain name server and authorized by the domain communication server to participate in the direct peer-to-peer real time communication using the domain name to conduct the direct peer-to-peer real time communications with other users;

initiating, the direct peer-to-peer communication session between the first user and the second user;

if the domain communication server determines that the first user is unauthorized:

generating for the first user (i) an evanescent domain name, that expires after a pre-defined duration, registered on behalf of the first user with the domain name server, and (ii) an authorization by sending an authorization code that was generated with a pseudo-random number to the first user for creating an authorization record with the domain name server wherein the authorization record includes the authorization code, and;

authorizing the first user based upon the evanescent domain name, when the authorization code in the authorization record of the first user with the domain name server matches the authorization code sent to the first user; otherwise,

if the domain communication server determines the first user is authorized:

using the domain name of the first user to conduct the direct peer-to-peer communication session without generating an evanescent domain name for the first user;

generating a call identifier for the direct peer-to-peer communication session between the first user and the second user;

offering to the second user based upon the domain name specified in the request, to initiate direct peer-to-peer communications with the first user; wherein the offering includes sending the call identifier to the second user for acceptance of the direct peer-to-peer communication session with the first user and upon an indication of acceptance from the second user, sending the call identifier to the first user; and

completing setup of the direct peer-to-peer communication session.

Assignments (2)
PATENT SECURITY AGREEMENT Recorded May 21, 2026
From: NAMECHEAP, INC.
To: WILMINGTON TRUST (LONDON) LIMITED, AS COLLATERAL AGENT
Reel/Frame 075621/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2022
From: DE MELO, RUI RODRIGO CABRAL PACHECO; OLIVEIRA, NUNO MARTINO DO CARMO MENESES; GUEDES, JOÃO HENRIQUE MARTINS FERREIRA; NETO, ALEXANDRE JENSEN CUNHA; SOARES, MANUEL ALBERTO DUARTE; BAPTISTA, BÁRBARA FRANCISCO SOUSA; MARTINHO, AFONSO VIEIRA CAMPOS LEÇA
To: NAMECHEAP, INC.
Reel/Frame 061838/0586 →
Continuity (2)
Provisional Application 63282054 · Nov 22, 2021
Related Publication 20230164226A1 · May 25, 2023
References Cited (29)
US 8683043B1 · Peters et al. · 2014 [cited by applicant]
US 9391949B1 · Richardson et al. · 2016 [cited by applicant]
US 9813303B1 · Guigli · 2017 [cited by applicant]
US 20080235778A1 · Fratti · 2008 [cited by examiner]
US 20100070569A1 · Turakhia · 2010 [cited by applicant]
US 20110044184A1 · Balasaygun · 2011 [cited by examiner]
US 20120324113A1 · Prince et al. · 2012 [cited by applicant]
US 20130326599A1 · Bray et al. · 2013 [cited by applicant]
US 20140181312A1 · Rutten · 2014 [cited by examiner]
US 20150067114A1 · Ruggeri · 2015 [cited by applicant]
US 20160182441A1 · Gupta et al. · 2016 [cited by applicant]
US 20160294768A1 · Khan · 2016 [cited by examiner]
US 20170093793A1 · Waldron et al. · 2017 [cited by applicant]
US 20170195285A1 · Kakhki et al. · 2017 [cited by applicant]
WO 2009047784A2 · 2009 [cited by applicant]
PCT/US2022/050638—International Search Report and Written Opinion dated Mar. 16, 2023, 12 pages. [cited by applicant]
Rescorla, E.: “WebRTC Security 1-22 Architecture; rfc8827. txt”, Webrtc Security Architecture; rfc8827.txt, Internet Engineering Task Force, IETF; Standard, Internet Society (ISOC) 4, Rue Des Falaises Ch—1205 Geneva, Sw… [cited by applicant]
Anonymous: “A Study of WebRTC Security”, Sep. 7, 2021 (Sep. 7, 2021), pp. 1-34, XP093029603, Retrieved from the Internet: URL:https://web.archive.org/web/2021090723 4756/https://webrtc-security.github.io/. [cited by applicant]
Friese Ingo et al: “Cross-domain discovery of communication peers: Identity Mapping and Discovery Services (IMaDS)”, 2017 European Conference On Networks and Communications (EUCNC), IEEE, Jun. 12, 2017 (Jun. 12, 2017), … [cited by applicant]
Fette, I., et al: “The WebSocket Protocol; rfc6455.txt”, The Websocket Protocol; rfc6455.txt, Internet Engineering Task Force, IETF; Standard, Internet Society (ISOC) 4, Rue Des Falaises Ch—1205 Geneva, Switzerland, Dec… [cited by applicant]
Anonymous: “Domain verification with a TXT Record (alternative method)—Squarespace Help”, Jul. 8, 2021 (Jul. 8, 2021), pp. 1-7, XP093029629, Retrieved from the Internet: URL:https://web.archive.org/web/20210708173731/ht… [cited by applicant]
PCT/US2022/050638—Second Written Opinion dated Nov. 15, 2023, 9 pages. [cited by applicant]
Anonymous: “Renewing your domain name”, Mar. 1, 2010, pp. 1-4, XP093100027, Retrieved from the Internet: URL:https://web.archive.org/web/20100301125901/https://manage.whois.com/kb/servlet/KBServlet/faq943.html. [cited by applicant]
PCT/US2022/050638—International Preliminary Report on Patentability dated Feb. 7, 2024, 9 pages. [cited by applicant]
PCT/US2022/050638—Response to International Search Report and Written Opinion filed Sep. 22, 2023, 18 pages. [cited by applicant]
GITHUB—Domain-Connect-2.1, v 2.1, revision 57, Mar. 7, 2019, 43pages, [retrieved on Jan. 8, 2021]. Retrieved from the Internet <URL: https://github.com/Domain- Connect/spec/blob/83363c4b4a700d6dae55cdd32bf8d8fd953d79aa/… [cited by applicant]
PCT/US2021/022866—Invitation to Pay Additional Fees and, Where Applicable, Protest Fee, dated Jun. 17, 2021, 9 pages. [cited by applicant]
EP 21718321.9—First Examination Report dated Sep. 13, 2023, 6 pages. [cited by applicant]
PCT/US22/50638, Nov. 22, 2022, WO/2023/091770, May 25, 2023. [cited by applicant]