1.一种直播连麦方法,应用于连麦服务器,其特征在于,所述方法包括:
在接收到来自于第一主播用户所在的第一主播客户端的随机连麦请求时,查询连麦候选池中是否存在正在等待连麦的主播用户;
如果所述连麦候选池中存在正在等待连麦的主播用户,从所述连麦候选池中选择一个正在等待连麦的主播用户,确定为第二主播用户;
将所述第一主播用户和所述第二主播用户匹配成功,从所述连麦候选池中删除所述第二主播用户;
如果所述第一主播用户与所述第二主播用户匹配成功,建立所述第一主播客户端与所述第二主播用户所在的第二主播客户端之间的连麦服务,使得所述第一主播用户与所述第二主播用户之间进入连麦状态;
向所述第一主播客户端和所述第二主播客户端发送匹配成功消息,所述匹配成功消息用于指示所述第一主播客户端和所述第二主播客户端各自隐藏匹配等待界面;
获取表征所述第一主播用户与所述第二主播用户之间连麦状态的连麦状态数据,存储至所述连麦服务器所建立的连麦会话中;
接收结束连麦请求,所述结束连麦请求来自所述第一主播客户端或者所述第二主播客户端,所述结束连麦请求中携带有所述第一主播用户的用户ID和所述第二主播用户的用户ID;
根据所述第一主播用户的用户ID和所述第二主播用户的用户ID构建目标查询数据;
在所述连麦会话中进行查询是否存在所述目标查询数据;如果所述连麦会话中存在所述目标查询数据,结束所述第一主播客户端与所述第一主播客户端之间的连麦服务,并且从所述连麦会话中删除表征所述第一主播用户与所述第二主播用户之间连麦状态的连麦状态数据,还向所述第一主播客户端和所述第二主播客户端发送连麦结束通知消息;如果所述连麦会话中不存在所述目标查询数据,向发起所述结束连麦请求的主播客户端返回错误消息。
2.如权利要求1所述的直播连麦方法,其特征在于,在所述查询所述连麦候选池中是否存在正在等待连麦的主播用户之后,还包括:如果所述连麦候选池中不存在正在等待连麦的主播用户,将所述第一主播用户加入至所述连麦候选池,并记录所述第一主播用户被加入所述连麦候选池时的时间戳;
将所述第一主播用户在以所述时间戳为起始时刻的预设时长内保持在所述连麦候选池中;
如果在所述预设时长内接收到来自任一主播用户发起的随机连麦请求,将该发起所述随机连麦请求的主播用户确定为第二主播用户,将所述第一主播用户与所述第二主播用户匹配成功,并且从所述连麦候选池中删除所述第一主播用户;
如果所述第一主播用户保持在所述连麦候选池中的时长超过所述预设时长,从所述连麦候选池中删除所述第一主播用户,并且向所述第一主播客户端下发匹配失败消息。
3.如权利要求2所述的直播连麦方法,其特征在于,在将所述第一主播用户加入至所述连麦候选池之后,并且在所述第一主播用户与所述第二主播用户匹配成功之前,所述方法还包括:如果接收到来自所述第一主播客户端的取消连麦请求,从所述连麦候选池中删除所述第一主播用户,并且向所述第一主播用户所在的所述第一主播客户端发送删除成功消息。
4.如权利要求1所述的直播连麦方法,其特征在于,在所述建立所述第一主播客户端与所述第二主播用户所在的第二主播客户端之间的连麦服务之后,所述方法还包括:接收来自所述第一主播客户端按照预设心跳时间间隔发送的第一心跳消息和所述第二主播客户端按照所述预设心跳时间间隔发送的第二心跳消息,所述第一心跳消息和所述第二心跳消息中均携带有所述第一主播用户的用户ID和所述第二主播用户的用户ID;
在接收到所述第一心跳消息时,在所述连麦会话中更新所述第一主播用户的保活时间戳,在接收到所述第二心跳消息时,在所述连麦会话中更新所述第二主播用户的保活时间戳;
如果超过预设检查时长没有接收到所述第一心跳消息,则结束所述第一主播客户端与所述第二主播客户端之间的连麦服务,并且向所述第二主播客户端发送主播失连消息;
如果超过预设检查时长没有接收到所述第二心跳消息,则结束所述第一主播客户端与所述第二主播客户端之间的连麦服务,并且向所述第一主播客户端发送主播失连消息。
5.一种连麦服务器,其特征在于,包括:
连麦请求接收单元,用于接收来自于第一主播用户所在的第一主播客户端的随机连麦请求;
主播用户匹配单元,用于接收到来自于第一主播用户所在的第一主播客户端的随机连麦请求时,查询连麦候选池中是否存在正在等待连麦的主播用户;如果所述连麦候选池中存在正在等待连麦的主播用户,从所述连麦候选池中选择一个正在等待连麦的主播用户,确定为第二主播用户;将所述第一主播用户和所述第二主播用户匹配成功,从所述连麦候选池中删除所述第二主播用户;
连麦服务建立单元,用于如果所述第一主播用户与所述第二主播用户匹配成功,建立所述第一主播客户端与所述第二主播用户所在的第二主播客户端之间的连麦服务,使得所述第一主播用户与所述第二主播用户之间进入连麦状态;
成功消息发送单元,用于在所述第一主播用户与所述第二主播用户匹配成功之后,向所述第一主播客户端和所述第二主播客户端发送匹配成功消息,所述匹配成功消息用于指示所述第一主播客户端和所述第二主播客户端各自隐藏匹配等待界面;
结束连麦请求接收单元,用于在所述建立所述第一主播客户端与所述第二主播用户所在的第二主播客户端之间的连麦服务之后,接收结束连麦请求,所述结束连麦请求来自所述第一主播客户端或者所述第二主播客户端,所述结束连麦请求中携带有所述第一主播用户的用户ID和所述第二主播用户的用户ID;
数据构建单元,用于根据所述第一主播用户的用户ID和所述第二主播用户的用户ID构建目标查询数据;
数据查询单元,用于在所述连麦会话中进行查询是否存在所述目标查询数据;
结束连麦处理单元,用于如果所述连麦会话中存在所述目标查询数据,结束所述第一主播客户端与所述第一主播客户端之间的连麦服务,并且从所述连麦会话中删除表征所述第一主播用户与所述第二主播用户之间连麦状态的连麦状态数据,还向所述第一主播客户端和所述第二主播客户端发送连麦结束通知消息;
错误消息发送单元,用于如果所述连麦会话中不存在所述目标查询数据,向发起所述结束连麦请求的主播客户端返回错误消息。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-4中任一项所述的步骤。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-4中任一项所述的步骤。