WO2020108378A1 - 一种基于频道的语音通话方法及装置 - Google Patents

一种基于频道的语音通话方法及装置 Download PDF

Info

Publication number
WO2020108378A1
WO2020108378A1 PCT/CN2019/119965 CN2019119965W WO2020108378A1 WO 2020108378 A1 WO2020108378 A1 WO 2020108378A1 CN 2019119965 W CN2019119965 W CN 2019119965W WO 2020108378 A1 WO2020108378 A1 WO 2020108378A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
channel
matching
call
temporary
Prior art date
Application number
PCT/CN2019/119965
Other languages
English (en)
French (fr)
Inventor
曾衍
Original Assignee
广州华多网络科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 广州华多网络科技有限公司 filed Critical 广州华多网络科技有限公司
Priority to SG11202105653QA priority Critical patent/SG11202105653QA/en
Priority to US17/309,477 priority patent/US11272053B2/en
Publication of WO2020108378A1 publication Critical patent/WO2020108378A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/4228Systems providing special services or facilities to subscribers in networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42025Calling or Called party identification service
    • H04M3/42034Calling party identification service
    • H04M3/42059Making use of the calling party identifier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/38Graded-service arrangements, i.e. some subscribers prevented from establishing certain connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/2209Arrangements for supervision, monitoring or testing for lines also used for data transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/2254Arrangements for supervision, monitoring or testing in networks
    • H04M3/2263Network management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0081Network operation, administration, maintenance, or provisioning
    • H04M7/0084Network monitoring; Error detection; Error recovery; Network testing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/60Aspects of automatic or semi-automatic exchanges related to security aspects in telephonic communication systems
    • H04M2203/6072Authentication using challenger response

Definitions

  • the present application relates to the field of voice call technology, and in particular to a channel-based voice call method and device.
  • Voice calling is one of the indispensable technologies in modern society. People can control client A (which can be a client on a mobile phone, tablet, or computer) to make a voice call with people on another client B, compared to traditional calling. More convenient.
  • client A which can be a client on a mobile phone, tablet, or computer
  • voice calls were mainly realized through the VOIP protocol.
  • This method has relatively low bit rate and relatively poor sound quality, and the transmission protocol is mainly transmitted through the RTP protocol, which is easy to lose packets.
  • the present application provides a channel-based voice call method and device, used to solve the technical problems of low bit rate of traditional voice call, relatively poor sound quality and easy packet loss.
  • the first aspect of the present application provides a channel-based voice call method, including:
  • Obtain the client's acceptance call matching instruction assign a temporary channel and lock the temporary channel, send a successful acceptance matching message, temporary channel number and channel password to the client, so that the client enters according to the successful acceptance of the matching message, temporary channel number and channel password Talk to the temporary channel.
  • the acquiring the matching result of the client from the matching pool specifically includes:
  • the matching rule is the difference between the client characteristics.
  • the returning the matching result to the client includes:
  • the matched client ID and corresponding client information are sent to the client, so that the client displays the matched client information.
  • the method further includes:
  • the client ID in the matching result is removed from the matching pool.
  • the method further includes:
  • the method further includes:
  • the method further includes:
  • the method further includes:
  • a second aspect of the present application provides a channel-based voice call device.
  • the device includes a processor and a memory:
  • the memory is used to store program code and transmit the program code to the processor
  • the processor is configured to execute a channel-based voice call method of the first aspect according to the instructions in the program code.
  • a third aspect of the present application provides a computer-readable storage medium for storing program code, where the program code is used to perform a channel-based voice call method of the first aspect.
  • the present application provides a channel-based voice call method and device.
  • the method includes: accepting a client's matching request, obtaining the client's matching result from the matching pool, and returning the matching result to the client; obtaining the client's call acceptance matching instruction , Assign a temporary channel and lock the temporary channel, and send a successful acceptance matching message, temporary channel number and channel password to the client, so that the client enters the temporary channel to make a call according to the successful acceptance of the matching message, temporary channel number and channel password.
  • the call is made through the temporary channel. Compared with the traditional VOIP protocol, the call rate is higher and the sound quality is better.
  • the application through the temporary channel can recycle and reuse the temporary channel, and the temporary channel can be locked to prevent the channel
  • the call content was eavesdropped.
  • FIG. 1 is a schematic diagram of a system for applying a channel-based voice call method provided by this application
  • FIG. 2 is a schematic diagram of an embodiment of a channel-based voice call method provided by this application.
  • FIG. 3 is a schematic diagram of another embodiment of a channel-based voice call method provided by this application.
  • FIG. 4 is an interactive sequence diagram of a channel-based voice call method provided by this application.
  • the present application provides a channel-based voice call method and device, used to solve the technical problems of low bit rate of traditional voice call, relatively poor sound quality and easy packet loss.
  • FIG. 1 is a system architecture diagram in an embodiment of the present application.
  • FIG. 1 is a system architecture diagram in an embodiment of the present application.
  • FIG. 1 is a system architecture diagram in an embodiment of the present application.
  • FIG. 1 FIG. Client 11, service terminal 2, business service background, channel server.
  • the client 11 is a computer program product containing instructions, which is installed on the user terminal 1.
  • the user terminal 1 may be a product such as a mobile phone, a tablet, or a PC.
  • the business service background is a computer program product containing instructions, which is installed on the service terminal 2.
  • the service terminal 2 may be a product such as a server or a PC.
  • the channel server may be a server that provides temporary channels for calling, such as a voice channel server and a live channel continuous microphone server.
  • the temporary channel refers to the temporarily established channel, which does not bind the UID of the client, and can be recycled and reused.
  • the same channel number may be reused by different users at different times, and the channel of the temporary channel
  • the number is not open to the public; and fixed channels different from temporary channels will be bound to the anchor UID or a guild ID, and there will be no recycling process, once bound, permanently bound, when the user starts broadcasting Fixed broadcast with this channel number.
  • the business service background will apply to the channel server for a batch of channel number segments (the length of the channel number segment depends on the number of users), which are generally temporary channels.
  • an embodiment of a channel-based voice call method provided by this application includes:
  • the client When the client needs to initiate a call in random matching mode, the client sends a protocol that starts random matching to the business service background.
  • the server When the business service background receives the random matching protocol, the server will put the user ID that is sending the random call into the server. Match the pool, and match a group of users according to certain rules (such as heterosexual matching priority, similar age priority, similar location priority, constellation similar priority, etc.), if there are multiple people talking, then randomly match multiple groups of users according to the above rules.
  • channel lock means that when starting broadcasting through this channel, a password will be added to the current channel. To enter the channel, you must bring a password, and you can only enter the channel if you verify the password, otherwise it will not pass. Therefore, only clients matching the corresponding can enter the temporary channel.
  • the call is made through the temporary channel.
  • the call rate is higher and the sound quality is better.
  • the application through the temporary channel can recover and reuse the temporary channel, and the temporary channel can be locked to prevent The call content was eavesdropped.
  • FIGS. 3 and 4 another embodiment of a channel-based voice call method provided by this application includes:
  • the user who wants to make a voice call in the client must be a logged-in user, and his personal information has been improved.
  • the personal information includes the user's nickname, avatar, age, constellation, location, etc. If the user is judged not to fill in the personal information, the user is prompted fill in.
  • the matching rule is the difference between the characteristics of the client, that is, when the business service background receives a random matching protocol, the server will put the user ID that is sending random calls into the matching pool, and follow certain rules (such as heterosexual matching priority, age Similarity priority, positional proximity priority, constellation similarity priority, etc.) match a group of users, if it is a multi-person call, randomly match multiple groups of users according to the above rules.
  • certain rules such as heterosexual matching priority, age Similarity priority, positional proximity priority, constellation similarity priority, etc.
  • the location similarity priority, the user's position can be expressed by latitude and longitude, the smaller the difference between the latitude and longitude (the smaller the difference), the more priority matching, and for example, the constellation similarity priority, you can change
  • the difference of the same constellation is specified as 0, and the difference of the different constellations is specified as 1 (or other values), then the same priority of the constellation can be achieved, and all the differences (heterogeneity, age, location, constellation and other characteristics) can be achieved.
  • the difference) adds up, and the smallest total value can be the matching result.
  • the matching result is that client A and client B match, then client B is the client matched by client A, and client A is the client matched by client B.
  • Send the matched client ID and corresponding client information to the client so that the client displays the matched client information, and the user sees the client information displayed on the client (such as nickname, age, gender, avatar, Constellation and other information)
  • the user can choose whether to match with the current user according to the user content displayed on the interface, if not, then perform the re-matching step 2032, if you want, then start to initiate the call process (step 2031), if If you choose not to exceed the set time limit (the default is one minute here), the user is considered unwilling to make a call.
  • the client ID in the matching result is removed from the matching pool. For example, if client A and client B are matched, the client IDs of client A and client B are removed from the matching pool. At this time, if a user performs call matching again, the user who has been successfully matched and is no longer matched.
  • the above-mentioned matching is random matching. If directional matching is required (that is, client A specifies to match the call with client B), the matching rule can be modified to match the specific client ID.
  • steps 204 to 206 can be executed.
  • the client sends to the business service background whether to accept the call matching protocol message (accept call matching instruction), if within a certain time limit (can be preset) another client also sends to the business service background If the call matches the protocol, the server will allocate a temporary channel for them, and open the temporary channel and lock the current temporary channel.
  • the concept of channel lock means that when starting broadcasting through this channel, a password will be added to the current channel. To enter the channel, you must bring a password, and you can only enter the channel if you verify the password, otherwise it will not pass.
  • the business service background sends channel information (including channel number, channel password, channel type, etc.) established for the currently matching user to the client. If the other party is talking while the call is being initiated, the other party is considered busy and sends a message to tell the server that the server will tell the client that the other party is on the phone and then dial it later.
  • the business service background In order to not match duplicate users, the business service background generally writes the rule of "not matching the user who was not willing to call" into the matching rule. .
  • client A matches client B successfully, but client A is unwilling to talk to client B, then when matching is performed again, the match between client A and client B will not be accepted (similar to the blacklist rule), and Looking for the next matching result (in this embodiment, matching is performed by the case where the difference is the smallest, you can find the second smallest difference as the second matching result), such as the match between client A and client C.
  • the two or more clients After the two or more clients receive the message that the server returns to the channel successfully, they start to send the heartbeat of the call to the background of the business service at a certain frequency (we send it every 10 seconds, the time can be configured).
  • the business service background detects these call heartbeats and determines that the client is always online.
  • the server determines whether the current client is still connected according to the heartbeat of the call continuously sent by the client. If the server does not receive the heartbeat sent by the client within a certain time range, the client is considered to be disconnected, and then the other party or Multiple parties send messages to inform the other party that they have disconnected.
  • the business service background may determine that the client has been disconnected according to step 204.
  • the number of users in the temporary channel is less than a certain value, for example, only one user is in the channel, the user is kicked out of the current temporary channel, and the current channel is recovered and unlocked. Of course, before kicking out the user, the user will be notified first that "there is no more in the channel".
  • FIG. 4 is an interactive sequence diagram of a channel-based voice call method provided by this application.
  • Fig. 4 is the process of establishing a temporary channel and talking between client A and client B through the background of the business service. It can be understood that the service service background executes a channel-based voice call method provided by this application.
  • the present application also provides a channel-based voice call device, which includes a processor and a memory:
  • the memory is used to store program code and transmit the program code to the processor
  • the processor is configured to execute the channel-based voice call method of the foregoing embodiment according to the instructions in the program code.
  • the present application also provides a computer-readable storage medium for storing program code, where the program code is used to perform a channel-based voice call method of the foregoing embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请提供一种基于频道的语音通话方法及装置,其中方法包括:接受客户端的匹配请求,从匹配池中获取客户端的匹配结果,并将匹配结果返回至客户端;获取客户端的接受通话匹配指令,分配临时频道并加锁该临时频道,发送成功接受匹配消息、临时频道号和频道密码至客户端,使得客户端根据成功接受匹配消息、临时频道号和频道密码进入该临时频道进行通话。本申请匹配后通过临时频道进行通话,相比传统的VOIP协议通话码率较高音质较好,此外,本申请通过临时频道进行通话可以回收复用临时频道,通过加锁临时频道可以防止频道内通话内容被窃听。

Description

一种基于频道的语音通话方法及装置
本申请要求于2018年11月30日提交的申请号为201811456014.9、发明名称为“一种基于频道的语音通话方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及语音通话技术领域,尤其涉及一种基于频道的语音通话方法及装置。
背景技术
语音通话是现代社会必不可少的技术之一,人们可以控制客户端A(可以是手机、平板、电脑上的客户端)与另一个客户端B的人们进行语音通话,比起传统的打电话更加方便。
以往要实现语音通话主要是通过VOIP的协议方式去实现的,这种方式相对来说码率较低,音质相对较差,并且传输协议主要是通过RTP协议传输,容易丢包。
因此亟需提出一种新的语音通话方法解决传统语音通话码率较低,音质相对较差且容易丢包的技术问题。
发明内容
本申请提供了一种基于频道的语音通话方法及装置,用于解决传统语音通话码率较低,音质相对较差且容易丢包的技术问题。
本申请第一方面提供一种基于频道的语音通话方法,包括:
接受客户端的匹配请求,从匹配池中获取客户端的匹配结果,并将匹配结果返回至客户端;
获取客户端的接受通话匹配指令,分配临时频道并加锁该临时频道,发送成功接受匹配消息、临时频道号和频道密码至客户端,使得客户端根据成功接受匹配消息、临时频道号和频道密码进入该临时频道进行通话。
优选地,所述从匹配池中获取客户端的匹配结果具体包括:
根据客户端的匹配请求将客户端ID放入匹配池,按照匹配规则将客户端ID进行匹配,选择客户端的匹配结果发送至客户端。匹配规则为客户端特征的差别大小。
优选地,所述将匹配结果返回至客户端包括:
将匹配到的客户端ID和相应客户端信息发送至客户端,使得客户端显示该匹配到的客户端信息。
优选地,将匹配结果返回至客户端后还包括:
将匹配结果中的客户端ID从匹配池中剔除。
优选地,客户端进入该临时频道进行通话后还包括:
接收客户端按预设频率发送的通话心跳并根据通话心跳判断客户端是否还存在连接,若在预设时间范围内没有接收到通话心跳,则判断该没接收到的通话心跳对应的客户端已断开连接,并将该客户端已断开连接的信息发送至该临时频道的其他客户端。
优选地,客户端进入该临时频道进行通话后还包括:
接收客户端发送的正常结束通话指令,将该客户端已结束通话的信息发送至该临时频道的其他客户端。
优选地,客户端进入该临时频道进行通话后还包括:
检测临时频道内未断开连接的客户端数量是否小于预设数值,若是,则将临时频道内的客户端踢出该临时频道,并回收解锁该临时频道。
优选地,将匹配结果返回至客户端之后还包括:
接收客户端发送的拒绝通话指令,并重新进行匹配。
本申请第二方面提供一种基于频道的语音通话设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行上述第一方面的一种基于频道的语音通话方法。
本申请第三方面提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述第一方面的一种基于频道的语音通话方法。
从以上技术方案可以看出,本申请具有以下优点:
本申请提供一种基于频道的语音通话方法及装置,其中方法包括:接受客户端的匹配请求,从匹配池中获取客户端的匹配结果,并将匹配结果返回至客户端;获取客户端的接受通话匹配指令,分配临时频道并加锁该临时频道,发送成功接受匹配消息、临时频道号和频道密码至客户端,使得客户端根据成功接受匹配消息、临时频道号和频道密码进入该临时频道进行通话。本申请匹配后通过临时频道进行通话,相比传统的VOIP协议通话码率较高音质较好,此外,本申请通过临时频道进行通话可以回收复用临时频道,通过加锁临时频道可以防止频道内通话内容被窃听。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本申请提供的一种基于频道的语音通话方法应用的系统的示意图;
图2为本申请提供的一种基于频道的语音通话方法的一个实施例的示意图;
图3为本申请提供的一种基于频道的语音通话方法的另一个实施例的示意图;
图4为本申请提供的一种基于频道的语音通话方法的交互时序图。
具体实施方式
本申请提供了一种基于频道的语音通话方法及装置,用于解决传统语音通话码率较低,音质相对较差且容易丢包的技术问题。
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本申请一部分实施例,而非全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
应理解,本申请应用于一种基于频道的语音通话方法的系统,请参阅图1, 图1为本申请实施例中的系统架构图,如图1所示,图1中包括用户终端1、客户端11、服务终端2、业务服务后台、频道服务器。可以理解的是,客户端11是一种包含指令的计算机程序产品,其安装在用户终端1上。用户终端1可以是手机、平板、PC机等产品。业务服务后台是一种包含指令的计算机程序产品,其安装在服务终端2上。服务终端2可以是服务器、PC机等产品。频道服务器可以是提供临时频道进行通话的服务器,如语音频道服务器、直播频道连麦服务器。其中,临时频道是指临时建立的频道,其不绑定客户端的UID,并且可以被回收复用的频道,在不同的时刻同一个频道号可能会被不同的用户重复使用,并且临时频道的频道号是不对外公开的;而与临时频道不同的固定频道会绑定主播的UID或者一个公会的ID,并且不会存在回收复用的过程,一旦绑定就永久绑定,当用户开播的时候固定以这个频道号开播。在基于频道的语音通话方法实施之前,业务服务后台会向频道服务器申请一批频道号段(频道号段的长度取决于用户量的多少),一般都是临时频道。
请参阅图2,本申请提供的一种基于频道的语音通话方法的一个实施例,包括:
101、接受客户端的匹配请求,从匹配池中获取客户端的匹配结果,并将匹配结果返回至客户端;
当客户端需发起随机匹配模式的通话的时候,客户端向业务服务后台发送开始随机匹配的协议,当业务服务后台收到随机匹配的协议时,服务器会将正在发送随机通话的用户ID放入匹配池,并按一定的规则(比如异性匹配优先、年龄相近优先、位置相近优先、星座相近优先等)匹配一组用户,如果是多人通话则按上述的规则随机匹配多组用户。
102、获取客户端的接受通话匹配指令,分配临时频道并加锁该临时频道,发送成功接受匹配消息、临时频道号和频道密码至客户端,使得客户端根据成功接受匹配消息、临时频道号和频道密码进入该临时频道进行通话。
频道加锁的概念是指当通过此频道开播的时候,会给当前频道加上密码,要进入该频道,必须要带上密码,并且校验密码通过的才能进入频道,否则不予通过。因此,只有匹配对应的客户端才能进入到临时频道。
本申请匹配后通过临时频道进行通话,相比传统的VOIP协议通话码率较高音质较好,此外,本申请通过临时频道进行通话可以回收复用临时频道,通 过加锁临时频道可以防止频道内通话内容被窃听。
以上是对本申请提供的一种基于频道的语音通话方法的一个实施例进行详细的描述。以下将对本申请提供的一种基于频道的语音通话方法的另一个实施例进行详细的描述。
请参阅图3和图4,本申请提供的一种基于频道的语音通话方法的另一个实施例,包括:
201、接受客户端的匹配请求;
客户端中要进行语音通话的用户必需是登录用户,并且已经完善了个人资料,个人资料包括用户昵称、头像、年龄、星座、所在地区等等,如果判断用户没有填写个人资料则提示用户要先填写。
202、根据客户端的匹配请求将客户端ID放入匹配池,按照匹配规则将客户端ID进行匹配,选择客户端的匹配结果发送至客户端;
匹配规则为客户端特征的差别大小,即当业务服务后台收到随机匹配的协议时,服务器会将正在发送随机通话的用户ID放入匹配池,并按一定的规则(比如异性匹配优先、年龄相近优先、位置相近优先、星座相近优先等)匹配一组用户,如果是多人通话则按上述的规则随机匹配多组用户。此处的相近优先是指数值化的相近,比如位置相近优先,可以将用户的位置用经纬度表示,经纬度相差越小(差值越小)则越优先匹配,又比如星座相近优先,则可将星座相同的差值规定为0,星座不同的差值规定为1(也可以是其他数值),则可以实现星座相同的优先匹配,将所有的差值(异性、年龄、位置、星座等特征的差值)加起来,总值最小的可以为匹配结果。
比如匹配结果为客户端A和客户端B匹配,则客户端B为客户端A匹配到的客户端,客户端A为客户端B匹配到的客户端。将匹配到的客户端ID和相应客户端信息发送至客户端,使得客户端显示该匹配到的客户端信息,用户看到客户端上显示的客户端信息(如昵称、年龄、性别、头像、星座等等信息),用户可以根据界面上显示的用户内容选择是否愿意跟当前用户进行匹配,若不愿意,则进行重新匹配的步骤2032,若愿意则开始进入发起通话过程(步骤2031),若超过设定的时间限制不选择(这里默认为一分钟),则认为用户不愿意进行通话。
匹配完毕后,将匹配结果中的客户端ID从匹配池中剔除,比如客户端A 和客户端B匹配完毕,则将客户端A和客户端B的客户端ID从匹配池中剔除。此时如果有用户又进行通话匹配时,不再匹配已经匹配成功正在通话的用户。
需要说明的是,上述的匹配是随机匹配,若需要定向匹配(即客户端A指定要与客户端B匹配通话),则可以将匹配规则修改为与特定客户端ID进行匹配即可。
2031、获取客户端的接受通话匹配指令,分配临时频道并加锁该临时频道,发送成功接受匹配消息、临时频道号和频道密码至客户端,使得客户端根据成功接受匹配消息、临时频道号和频道密码进入该临时频道进行通话;
步骤2031执行后,可执行步骤204至步骤206。
需要说明的是,客户端向业务服务后台发送是否接受通话匹配的协议消息(接受通话匹配指令),若在一定的时间限制内(可预先设定)另外的客户端也向业务服务后台发送接收通话匹配的协议,则服务器会为他们分配一个临时频道,并开启这个临时频道并给当前临时频道加锁。频道加锁的概念是指当通过此频道开播的时候,会给当前频道加上密码,要进入该频道,必须要带上密码,并且校验密码通过的才能进入频道,否则不予通过。业务服务后台向客户端发送为当前匹配用户建立的频道信息(包括频道号、频道密码、频道类型等)。若发起通话过程中,对方正在进行通话,则认为对方正忙,并通过发送消息告诉服务器,服务器在下发告诉客户端对方正在通话中稍后再拨。
2032、接收客户端发送的拒绝通话指令,并重新进行匹配。
若用户不愿意与匹配到的用户进行通话,则会点击拒绝的按钮,则客户端会发送拒绝通话指令。接收客户端发送的拒绝通话指令后,可以帮助客户端进行重新匹配,为了不匹配到重复的用户,业务服务后台一般会将“不匹配上次不愿意通话的用户”的规则写进匹配规则里面。比如客户端A与客户端B匹配成功,但是客户端A不愿意与客户端B通话,则重新进行匹配时,客户端A和客户端B的匹配不会被接受(类似黑名单规则),进而寻找下一个匹配结果(本实施例中通过差值最小的情况进行匹配,则可以寻找差值第二小的作为第二个匹配结果),如客户端A与客户端C的匹配。
204、接收客户端按预设频率发送的通话心跳并根据通话心跳判断客户端是否还存在连接,若在预设时间范围内没有接收到通话心跳,则判断该没接收到的通话心跳对应的客户端已断开连接,并将该客户端已断开连接的信息发送 至该临时频道的其他客户端;
当双方或者多方客户端接收到服务器返回的进频道成功的消息之后,则开始按一定时间的频率(我们这里为10秒发送一次,时间可以配置)向业务服务后台发送通话心跳。业务服务后台则检测这些通话心跳,确定客户端一直在线。服务器根据客户端持续发送的通话心跳以判断当前客户端是否还存在连接,若服务器在一定的时间范围内没有收到客户端发送的心跳,则认为客户端已经断线,则向其他另外一方或者多方发送消息,告知对方已经断线。
可以理解的是,客户端中途挂断或者由于网络原因中途掉线都会停止发送通话心跳,则业务服务后台可以得知客户端断线。
205、接收客户端发送的正常结束通话指令,将该客户端已结束通话的信息发送至该临时频道的其他客户端;
需要说明的是,客户端发送正常结束通话指令后,将不再发送通话心跳,则业务服务后台根据步骤204可判定该客户端已断线。
206、检测临时频道内未断开连接的客户端数量是否小于预设数值,若是,则将临时频道内的客户端踢出该临时频道,并回收解锁该临时频道。
若临时频道中的用户数量小于一定数值,比如只有一个用户在频道里,则将该用户踢出当前的临时频道,回收并且解锁当前频道。当然,踢出该用户前会先通知该用户“频道内已没有人”。
请参阅图4,图4为本申请提供的一种基于频道的语音通话方法的交互时序图。图4为客户端A与客户端B通过业务服务后台建立临时频道并通话的过程。可以理解的是,业务服务后台执行本申请提供的一种基于频道的语音通话方法。
本申请还提供一种基于频道的语音通话设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行上述实施例的一种基于频道的语音通话方法。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述实施例的一种基于频道的语音通话方法。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

  1. 一种基于频道的语音通话方法,其特征在于,包括:
    接受客户端的匹配请求,从匹配池中获取客户端的匹配结果,并将匹配结果返回至客户端;
    获取客户端的接受通话匹配指令,分配临时频道并加锁该临时频道,发送成功接受匹配消息、临时频道号和频道密码至客户端,使得客户端根据成功接受匹配消息、临时频道号和频道密码进入该临时频道进行通话。
  2. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,所述从匹配池中获取客户端的匹配结果具体包括:
    根据客户端的匹配请求将客户端ID放入匹配池,按照匹配规则将客户端ID进行匹配,选择客户端的匹配结果发送至客户端。
  3. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,所述将匹配结果返回至客户端包括:
    将匹配到的客户端ID和相应客户端信息发送至客户端,使得客户端显示该匹配到的客户端信息。
  4. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,将匹配结果返回至客户端后还包括:
    将匹配结果中的客户端ID从匹配池中剔除。
  5. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,客户端进入该临时频道进行通话后还包括:
    接收客户端按预设频率发送的通话心跳并根据通话心跳判断客户端是否还存在连接,若在预设时间范围内没有接收到通话心跳,则判断该没接收到的通话心跳对应的客户端已断开连接,并将该客户端已断开连接的信息发送至该临时频道的其他客户端。
  6. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,客户端进入该临时频道进行通话后还包括:
    接收客户端发送的正常结束通话指令,将该客户端已结束通话的信息发送至该临时频道的其他客户端。
  7. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,客户端进入该临时频道进行通话后还包括:
    检测临时频道内未断开连接的客户端数量是否小于预设数值,若是,则将 临时频道内的客户端踢出该临时频道,并回收解锁该临时频道。
  8. 根据权利要求1所述的一种基于频道的语音通话方法,其特征在于,将匹配结果返回至客户端之后还包括:
    接收客户端发送的拒绝通话指令,并重新进行匹配。
  9. 一种基于频道的语音通话设备,其特征在于,所述设备包括处理器以及存储器:
    所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
    所述处理器用于根据所述程序代码中的指令执行权利要求1-8任一项所述的一种基于频道的语音通话方法。
  10. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-8任一项所述的一种基于频道的语音通话方法。
PCT/CN2019/119965 2018-11-30 2019-11-21 一种基于频道的语音通话方法及装置 WO2020108378A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
SG11202105653QA SG11202105653QA (en) 2018-11-30 2019-11-21 Channel-based voice call method and apparatus
US17/309,477 US11272053B2 (en) 2018-11-30 2019-11-21 Channel-based voice call method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811456014.9 2018-11-30
CN201811456014.9A CN109462705B (zh) 2018-11-30 2018-11-30 一种基于频道的语音通话方法及装置

Publications (1)

Publication Number Publication Date
WO2020108378A1 true WO2020108378A1 (zh) 2020-06-04

Family

ID=65612112

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/119965 WO2020108378A1 (zh) 2018-11-30 2019-11-21 一种基于频道的语音通话方法及装置

Country Status (4)

Country Link
US (1) US11272053B2 (zh)
CN (1) CN109462705B (zh)
SG (1) SG11202105653QA (zh)
WO (1) WO2020108378A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109462705B (zh) 2018-11-30 2020-04-17 广州华多网络科技有限公司 一种基于频道的语音通话方法及装置
CN113098901B (zh) * 2021-04-29 2022-09-09 心动互动娱乐有限公司 高并发的实时语音通话方法、系统、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103686438A (zh) * 2013-12-20 2014-03-26 广州华多网络科技有限公司 一种加入频道的方法和装置
CN103746821A (zh) * 2013-12-30 2014-04-23 广州华多网络科技有限公司 频道创建方法、装置、客户端、服务器及系统
WO2015101303A1 (zh) * 2013-12-30 2015-07-09 广州华多网络科技有限公司 频道处理方法和装置
CN106231444A (zh) * 2016-06-29 2016-12-14 深圳市轱辘车联数据技术有限公司 一种频道组建方法、装置及系统
CN109462705A (zh) * 2018-11-30 2019-03-12 广州华多网络科技有限公司 一种基于频道的语音通话方法及装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1850505A3 (en) 1997-04-24 2014-06-18 Ntt Mobile Communications Network Inc. Method and system for mobile communications
WO2001071642A2 (en) * 2000-03-21 2001-09-27 Chornenky Todd E Security apparatus
JP5296327B2 (ja) * 2007-04-27 2013-09-25 株式会社バッファロー 放送番組コンテンツを再生する方法およびプログラム
CN101547208A (zh) * 2009-05-14 2009-09-30 杭州华三通信技术有限公司 会话加密方法和语音终端
CN101938624A (zh) * 2010-08-31 2011-01-05 中山大学 一种基于h.323协议的ip机顶盒多点安全视频会议系统
CN103338215B (zh) * 2013-07-26 2016-12-28 中金金融认证中心有限公司 基于国密算法建立tls通道的方法
CN104661266A (zh) * 2013-11-25 2015-05-27 上海益尚信息科技有限公司 新型针对mbms多媒体广播业务的无线资源接入网关动态分配系统
CN103701690B (zh) * 2013-12-23 2017-08-01 广州华多网络科技有限公司 一种建立语音通信的方法及系统
CN104539433A (zh) * 2014-10-30 2015-04-22 马洁韵 一种语音通话加密系统和加密方法
CN105100523B (zh) * 2015-06-26 2018-04-27 小米科技有限责任公司 语音通道建立方法、装置及系统
CN106936788B (zh) * 2015-12-31 2019-10-22 北京大唐高鸿软件技术有限公司 一种适用于voip语音加密的密钥分发方法
CN105792193B (zh) * 2016-02-26 2019-02-26 东南大学常州研究院 基于iOS操作系统的移动终端语音端到端加密方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103686438A (zh) * 2013-12-20 2014-03-26 广州华多网络科技有限公司 一种加入频道的方法和装置
CN103746821A (zh) * 2013-12-30 2014-04-23 广州华多网络科技有限公司 频道创建方法、装置、客户端、服务器及系统
WO2015101303A1 (zh) * 2013-12-30 2015-07-09 广州华多网络科技有限公司 频道处理方法和装置
CN106231444A (zh) * 2016-06-29 2016-12-14 深圳市轱辘车联数据技术有限公司 一种频道组建方法、装置及系统
CN109462705A (zh) * 2018-11-30 2019-03-12 广州华多网络科技有限公司 一种基于频道的语音通话方法及装置

Also Published As

Publication number Publication date
US20210392226A1 (en) 2021-12-16
SG11202105653QA (en) 2021-06-29
CN109462705A (zh) 2019-03-12
US11272053B2 (en) 2022-03-08
CN109462705B (zh) 2020-04-17

Similar Documents

Publication Publication Date Title
US8446453B2 (en) Efficient and on demand convergence of audio and non-audio portions of a communication session for phones
US10009389B2 (en) Scalable conference bridge
CN103475499B (zh) 一种基于网络电话会议的语音对讲方法及系统
US8774168B2 (en) Communication system and method
US8245043B2 (en) Audio start service for Ad-hoc meetings
CN108347337B (zh) 会议通信方法和装置
US20050260976A1 (en) Communication system
CN1964475A (zh) 视频会议的实现方法、控制设备与用户终端
US9300808B2 (en) Method and system for interoperation between multiple conference systems
US20100235535A1 (en) Method and Device for Processing Simultaneous Media Streams
US10623350B2 (en) Subscription/notification of a conference in a collaboration conferencing system
WO2020108378A1 (zh) 一种基于频道的语音通话方法及装置
US20220303150A1 (en) Systems and methods for video conference acceleration
US11374911B1 (en) Systems and methods for locking encrypted video conferences
US20080112545A1 (en) Method, system and apparatus for recording voice data in half-duplex communication
US9584560B2 (en) Providing external application services with an existing private branch exchange media server
CN111131641A (zh) 会议级联方法、装置、服务器及可读存储介质
CN107277426B (zh) 云端视频系统
JP4903477B2 (ja) グループ通話用サーバ
CN113612759A (zh) 一种基于sip协议的高性能高并发智能广播系统及实现方法
CN113014474A (zh) 一种即时通信中的多媒体实现方法和系统
CA2771031A1 (en) Automated session admission
US20240187462A1 (en) Forwarding session initiation messages
KR101924073B1 (ko) IoT 기반의 방문자 통화 및 IoT 디바이스 제어 시스템 및 방법
WO2015024525A1 (zh) 会议信息处理方法、设备与系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19889964

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19889964

Country of ref document: EP

Kind code of ref document: A1