IP Library Granted Patent US 9,693,014
Granted Patent B2
US 9,693,014 · App. 14/561,635 · Granted Jun 27, 2017

System and method for implementing video calls

Inventors: Wuping Du (Hangzhou, CN); Wei Peng (Hangzhou, CN); Ming Zong (Hangzhou, CN)
Assignee: Alibaba Group Holdings Limited
H04N7/141H04L12/1813H04L51/046H04L51/28H04L65/00H04L65/1069H04L67/10H04N1/00334H04N7/147H04N7/152G06K7/1404H04L61/1535H04L61/2092H04L61/6022
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,693,014
App. No.
14/561,635
Granted
Jun 27, 2017
Kind
B2
Abstract

Embodiments of the present application relate to a method for implementing video calls, a system for implementing video calls, and a computer program product for implementing video calls. A method for implementing video calls is provided. The method includes maintaining persistent connections with a plurality of terminals used to make video calls, each terminal having a universally unique identifier, receiving a video call request from a calling terminal via one of the persistent connections, the video call request including the universally unique identifier of the calling terminal, equipment descriptive information of the calling terminal, and the universally unique identifier of a called terminal, notifying the called terminal via one of the persistent connections, the notification being based on the universally unique identifier of the called terminal, receiving a response from the called terminal, and establishing a video call channel based on the received response.

Claims (74)

1. A method for implementing video calls, comprising;

generating, using a server, a universally unique identifier for a first terminal based on hardware information of the first terminal and generating a universally unique identifier for a second terminal based on hardware information of the second terminal, the hardware information relating to an international mobile station equipment identity (IMEI) of a terminal, a media access control (MAC) address of a terminal, current time of a terminal, a system process number of a terminal, or any combination thereof;

issuing, using the server, a unique identifier to the first terminal corresponding to the universally unique identifier for the first terminal and a unique identifier to the second terminal corresponding to the universally unique identifier for the second terminal;

maintaining, using the server, persistent connections with the first terminal and the second terminal used to make video calls;

receiving, using the server, a video call request from a calling terminal via one of the persistent connections, the video call request including the universally unique identifier of the calling terminal, equipment descriptive information of the calling terminal, and the universally unique identifier of a called terminal, wherein the calling terminal scans a quick response (QR) code displayed on the called terminal to acquire the universally unique identifier of the called terminal, wherein the universally unique identifier of the calling terminal is sent by the calling terminal to the called terminal to be added to the called terminal as a contact in connection with the scanning of the QR code, the called terminal being one of the first and second terminals, the calling terminal being another of the first and second terminals, the QR code being generated by the called terminal based on the universally unique identifier of the called terminal and the hardware information of the called terminal;

notifying, using the server, the called terminal via another one of the persistent connections, the notification being based on the universally unique identifier of the called terminal;

receiving, using the server, a response from the called terminal; and

establishing, using the server, a video call channel based on the received response, wherein the calling terminal and the called terminal conduct a video call via the video call channel.

2. The method as described in claim 1 , wherein the establishing of the video call channel comprises:

establishing a point-to-point channel between the calling terminal and the called terminal; or

establishing a stream server relay channel.

3. The method as described in claim 1 , further comprising:

allocating a different currently unique identifier to each terminal that maintains a persistent connection and that is used for video calling.

4. The method as described in claim 1 , wherein the called terminal is a television.

5. The method as described in claim 1 , wherein the calling terminal is a mobile phone.

6. A method for implementing video calls, comprising:

maintaining a persistent connection with a server;

acquiring a first universally unique identifier from the server, wherein the first universally unique identifier is generated by the server based on local equipment descriptive information, the local equipment descriptive information including a local international mobile station equipment identity (IMEI), a local media access control (MAC) address, a local current time, a local system process number, or any combination thereof;

acquiring contact information, comprising:

scanning a quick response (QR) code displayed on a called terminal used for video calling, wherein the QR code is generated by the called terminal based on a second universally unique identifier and an equipment descriptive information of a called terminal, wherein the universally unique identifier of the calling terminal is sent by the calling terminal to the called terminal to be added to the called terminal as a contact in connection with the scanning of the QR code, the equipment descriptive information of the called terminal including a called terminal international mobile station equipment identity (IMEI), a called terminal media access control (MAC) address, a called terminal current time, a called terminal system process number, or any combination thereof;

sending a video call request to the server, the video call request including the first universally unique identifier, the local equipment descriptive information, and the second universally unique identifier of the called terminal; and

conducting a video call with the called terminal via an established video call channel.

7. The method as described in claim 6 , further comprising:

adding the called terminal as a contact; and

sending, via the persistent connection, the first universally unique identifier to the called terminal that was added as the contact.

8. The method as described in claim 7 , wherein the acquiring of the contact information comprises:

acquiring the second universally unique identifier and an equipment descriptive information of the called terminal using the persistent connection with the server;

adding the called terminal as a contact; and

sending, using the persistent connection, the first universally unique identifier to the called terminal that was added as the contact.

9. The method as described in claim 6 , wherein the acquiring of the contact information comprises:

inputting the currently allocated unique identifier to the called terminal used for video calling; and

adding the called terminal as a contact.

10. The method as described in claim 6 , wherein the acquiring of the first universally unique identifier comprises:

generating the first universally unique identifier based on local hardware information; and

sending the first universally unique identifier to the server.

11. A system for implementing video calls, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

generate a universally unique identifier for a first terminal based on hardware information of the first terminal and generate a universally unique identifier for a second terminal based on hardware information of the second terminal, the hardware information relating to an international mobile station equipment identity (IMEI) of a terminal, a media access control (MAC) address of a terminal, current time of a terminal, a system process number of a terminal, or any combination thereof;

issue a unique identifier to the first terminal corresponding to the universally unique identifier for the first terminal and a unique identifier to the second terminal corresponding to the universally unique identifier for the second terminal;

maintain persistent connections with the first terminal and the second terminal used to make video calls;

receive a video call request from a calling terminal via one of the persistent connections, wherein the calling terminal scans a quick response (QR) code displayed on the called terminal to acquire the universally unique identifier of the called terminal, wherein the universally unique identifier of the calling terminal is sent by the calling terminal to the called terminal to be added to the called terminal as a contact in connection with the scanning of the QR code, the called terminal being one of the first and second terminals, the calling terminal being another of the first and second terminals, the QR code being generated by the called terminal based on the universally unique identifier of the called terminal and the hardware information of the called terminal;

notify a called terminal via another one of the persistent connections, the notification being based on the universally unique identifier of the called terminal;

receive a response from the called terminal; and

establish a video call channel, wherein the calling terminal and the called terminal conduct a video call via the video call channel.

12. The system as described in claim 11 , wherein the memory is further configured to provide the processor with instructions which when executed cause the processor to:

establish a point-to-point channel between the calling terminal and the called terminal; or

establish a stream server relay channel.

13. The system as described in claim 11 , wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

allocate a different currently unique identifier to each terminal that maintains a persistent connection and that is used for video calling.

14. A computer program product for implementing video calls, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

generating, using a server, a universally unique identifier for a first terminal based on hardware information of the first terminal and generating a universally unique identifier for a second terminal based on hardware information of the second terminal, the hardware information relating to an international mobile station equipment identity (IMEI) of a terminal, a media access control (MAC) address of a terminal, current time of a terminal, a system process number of a terminal, or any combination thereof;

issuing, using the server, a unique identifier to the first terminal corresponding to the universally unique identifier for the first terminal and a unique identifier to the second terminal corresponding to the universally unique identifier for the second terminal;

maintaining, using the server, persistent connections with the first terminal and the second terminal used to make video calls;

receiving, using the server, a video call request from a calling terminal via another one of the persistent connections, the video call request including the universally unique identifier of the calling terminal, equipment descriptive information of the calling terminal, and the universally unique identifier of a called terminal, wherein the calling terminal scans a quick response (QR) code displayed on the called terminal to acquire the universally unique identifier of the called terminal, wherein the universally unique identifier of the calling terminal is sent by the calling terminal to the called terminal to be added to the called terminal as a contact in connection with the scanning of the QR code, the called terminal being one of the first and second terminals, the calling terminal being another of the first and second terminals, the QR code being generated by the called terminal based on the universally unique identifier of the called terminal and the hardware information of the called terminal;

notifying, using the server, the called terminal via one of the persistent connections, the notification being based on the universally unique identifier of the called terminal;

receiving, using the server, a response from the called terminal; and

establishing, using the server, a video call channel based on the received response, wherein the calling terminal and the called terminal conduct a video call via the video call channel.

15. A computer program product for implementing video calls, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

maintaining a persistent connection with a server;

acquiring a first universally unique identifier from the server, wherein the first universally unique identifier is generated by the server based on local equipment descriptive information, the local equipment descriptive information including a local international mobile station equipment identity (IMEI), a local media access control (MAC) address, a local current time, a local system process number, or any combination thereof;

acquiring contact information, comprising:

scanning a quick response (QR) code displayed on a called terminal used for video calling, wherein the QR code is generated by the called terminal based on a second universally unique identifier and an equipment descriptive information of a called terminal, wherein the universally unique identifier of the calling terminal is sent by the calling terminal to the called terminal to be added to the called terminal as a contact in connection with the scanning of the QR code, the equipment descriptive information of the called terminal including a called terminal international mobile station equipment identity (IMEI), a called terminal media access control (MAC) address, a called terminal current time, a called terminal system process number, or any combination thereof;

sending a video call request to the server, the video call request including the first universally unique identifier, the local equipment descriptive information, and a second universally unique identifier of a called terminal; and

conducting a video call with the called terminal via an established video call channel.

16. A system for implementing video calls, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

maintain a persistent connection with a server;

acquire a first universally unique identifier from the server, wherein the first universally unique identifier is generated by the server based on local equipment descriptive information, the local equipment descriptive information including a local international mobile station equipment identity (IMEI), a local media access control (MAC) address, a local current time, a local system process number, or any combination thereof;

acquire contact information, comprising to:

scan a quick response (QR) code displayed on a called terminal used for video calling, wherein the QR code is generated by the called terminal based on a second universally unique identifier and an equipment descriptive information of a called terminal, wherein the universally unique identifier of the calling terminal is sent by the calling terminal to the called terminal to be added to the called terminal as a contact in connection with the scanning of the QR code, the equipment descriptive information of the called terminal including a called terminal international mobile station equipment identity (IMEI), a called terminal media access control (MAC) address, a called terminal current time, a called terminal system process number, or any combination thereof;

send a video call request to the server, the video call request including the first universally unique identifier, the local equipment descriptive information, and a second universally unique identifier of a called terminal; and

conduct a video call with the called terminal via an established video call channel.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 11, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: BANMA ZHIXING NETWORK (HONGKONG) CO., LIMITED
Reel/Frame 054384/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2014
From: DU, WUPING; PENG, WEI; ZONG, MING
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 034394/0751 →
Priority Claims (1)
CN 2013 1 0746516 · Dec 30, 2013 · national
Continuity (1)
Related Publication 20150189227A1 · Jul 2, 2015