CN114286039A - 一种音视频通话方法及*** - Google Patents

一种音视频通话方法及*** Download PDF

Info

Publication number
CN114286039A
CN114286039A CN202111634696.XA CN202111634696A CN114286039A CN 114286039 A CN114286039 A CN 114286039A CN 202111634696 A CN202111634696 A CN 202111634696A CN 114286039 A CN114286039 A CN 114286039A
Authority
CN
China
Prior art keywords
receiving client
client
audio
server
request
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202111634696.XA
Other languages
English (en)
Inventor
杨冬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fullsee Technology Co ltd
Original Assignee
Fullsee Technology Co ltd
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 Fullsee Technology Co ltd filed Critical Fullsee Technology Co ltd
Priority to CN202111634696.XA priority Critical patent/CN114286039A/zh
Publication of CN114286039A publication Critical patent/CN114286039A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及音视频通话方法及***,该方法包括以下步骤:发起客户端通过http或https协议发起音视频聊天信令请求;服务端接收请求并判断接收客户端的聊天状态;当判断接收客户端正在通话中,通知发起客户端并结束请求,当判断接收客户端未在通话中,向接收客户端发送websocket消息。在内网***中我们不能使用微信等软件音视频聊天软件的情况下,采用本发明的音视频通话方法,使用业务***就可以和该***的各个客户端进行音视频聊天,实现内网***中业务的高效沟通并保证***措施。

Description

一种音视频通话方法及***
技术领域
本发明涉及音频数据处理技术领域,尤其涉及一种音视频通话方法及***。
背景技术
WebSocket链接是一种在单个TCP连接上进行全双工通信的协议。WebSocket链接使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据,满足调度及时向客户端推送其他客户端到服务器的请求。WebSocket链接支持持久连接。Websocket链接允许服务端主动向客户端推送数据,满足不了既有的业务***功能需求,Websocket长链接没有维护起来就无法实现调度通知。
http协议基于B/S架构进行通信的,其客户端的实现程序主要是Web浏览器,是一个客户端和服务器端请求和应答的标准(TCP)。可以满足业务***功能需求,然而满足不了及时向客户端推送其他客户端到服务器的请求等调度的功能。http协议不支持持久连接。
本发明结合WebSocket链接和http协议的上述特点,将Websocket链接和响应的http业务结合起来,将用户及客户端类型绑定一个链接,并且实现多用户音视频聊天前的调度。
发明内容
为解决现有技术的不足,本发明提出一种音视频通话方法及***,实现单账号登录多个终端时进行音视频聊天前的信令调度。
为实现以上目的,本发明所采用的技术方案包括:
一种音视频通话方法,其特征在于,包括以下步骤:
发起客户端通过http或https协议发起音视频聊天信令请求;
服务端接收请求并判断接收客户端的聊天状态;
当判断接收客户端正在通话中,通知发起客户端并结束请求;
当判断接收客户端未在通话中,向接收客户端发送websocket消息。
进一步地,向接收客户端发送websocket消息包括向接收客户端的web端和app端同时发送websocket消息。
进一步地,所述web端和所述app端通过唯一账户ID进行关联。
进一步地,当接收客户端的app端接收消息,接收客户端的app端通过http或https协议通知服务端,服务端更新接收客户端的聊天状态,并通过websocket消息通知接收客户端的web端关闭窗口。
进一步地,当接收客户端的web端接收消息,接收客户端的web端通过http或https协议通知服务端,服务端更新接收客户端的聊天状态,并通过websocket消息通知接收客户端的app端关闭窗口。
进一步地,当发起客户端或接收客户端通过http或https协议请求服务端结束通话时,服务端通过websocket消息通知另一方关闭窗口,并更新发起客户端或接收客户端的聊天状态。
一种音视频通话***,其特征在于,包括:
发起客户端,用于通过http或https协议发起音视频聊天信令请求;
服务端,用于接收请求并判断接收客户端的聊天状态;当判断接收客户端正在通话中,通知发起客户端并结束请求,当判断接收客户端未在通话中,向接收客户端发送websocket消息。
本发明还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
本发明还涉及一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存储操作指令;
所述处理器,用于通过调用所诉操作指令,执行上述的方法。
一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现如上所述方法的步骤。
本发明的有益效果为:
采用本发明所述音视频通话方法及***,通过单账号登录多个终端时进行音视频聊天前的信令调度通知。在内网***中我们不能使用微信等软件音视频聊天软件的情况下,采用本发明的音视频通话方法,使用业务***就可以和该***的各个客户端进行音视频聊天,实现内网***中业务的高效沟通并保证***措施。
附图说明
图1为本发明音视频通话方法流程示意图。
图2为本发明音视频通话***结构示意图。
具体实施方式
为了更清楚的理解本发明的内容,将结合附图和实施例详细说明。
本发明第一方面涉及一种步骤流程如图1所示的音视频通话方法,包括以下步骤:
发起客户端通过http或https协议发起音视频聊天信令请求;
服务端接收请求并判断接收客户端的聊天状态;
当判断接收客户端正在通话中,通知发起客户端并结束请求;
当判断接收客户端未在通话中,向接收客户端发送websocket消息。
其中,向接收客户端发送websocket消息包括向接收客户端的web端和app端同时发送websocket消息。
其中,所述web端和所述app端通过唯一账户ID进行关联。示例性的,可以通过身份证号或电话号码进行关联。
优选的,当接收客户端的app端接收消息,接收客户端的app端通过http或https协议通知服务端,服务端更新接收客户端的聊天状态,并通过websocket消息通知接收客户端的web端关闭窗口。
优选的,当接收客户端的web端接收消息,接收客户端的web端通过http或https协议通知服务端,服务端更新接收客户端的聊天状态,并通过websocket消息通知接收客户端的app端关闭窗口。
优选的,当发起客户端或接收客户端通过http或https协议请求服务端结束通话时,服务端通过websocket消息通知另一方关闭窗口,并更新发起客户端或接收客户端的聊天状态。
本申请实施例中,客户端登录服务端可以通过账号+密码方式登录,也可以通过电话号码+短信验证码方式登录,所以服务端有两种方式的映射维护关系。服务端会为每个客户端建立websocket链接;***中会将websocket链接两种方式维护起来,包括方式一:账号+客户端类型和websocket链接的映射关系,方式二:手机号+客户端类型和websocket链接的映射关系。
当用户A要与用户B音视频聊天,用户A通过http或者https协议发起视频聊天信令请求,如果用户B在web端和app端都有登录(即在服务端的内存维护中账号或者手机号能够找到响应的链接)。那么用户B和服务端有两个websocket链接,在服务端检查用户B在***内存中维护的当前音视频聊天状态是否是在通话中,如果内存中检查用户B在通话中(已连接音视频会话对象(connAudioVideoMap)集合中有用户B的呼叫和被呼叫记录)或者已被其他用户发起了音视频请求(请求音视频会话对象(reqAudioVideoMap)集合中有用户B的呼叫和被呼叫记录),服务端则通知用户A websocket消息:用户B正在音视频会话中,请稍后再试。然后结束音视频聊天会话。如果***内存中检查用户B未在通话中(***会将用户A向用户B发起的音视频请求按照规则源客户端类型+源用户+目标用户作为key,请求实体作为Value放入reqAudioVideoMap集合),那么从***内存中取出用户B的web端的websocket链接和app端的websocket链接同时向两个终端发送websocket消息,在用户B的web端和用户B的app端都会收到音视频通话请求界面,如果用户B在app端点击接收了视频聊天,用户B会向服务端发送http或https请求(告诉服务端我已经接收了音视频聊天了),服务端收到app端的请求后,更新内存中用户B账号或者手机号的当前音视频聊天状态,(***会从reqAudioVideoMap集合中找到相应的对象,放到connAudioVideoMap集合缓存音视频已建立连接的聊天对象,即将用户A和用户B的音视频聊天按照规则源客户端类型+源用户+目标用户作为key,请求实体作为Value放入connAudioVideoMap集合同时在reqAudioVideoMap集合移除),并在内存中获取用户B的其他客户端websocket链接(除用户B的app的websocket链接外),通过用户B的其他客户端websocket链接发送消息(用户B在app端已接收),用户B的web端会收到websocket消息,用户B的web音视频窗口会自动关闭。当发起客户端或接收客户端任何一方通过http或https协议请求服务端结束通话时,服务端通过发送websocket消息:对方已挂断,同时删除connAudioVideoMap集合中的该缓存记录。通知另一方关闭窗口,并更新发起客户端或接收客户端的聊天状态。
采用本发明所述音视频通话方法,通过单账号登录多个终端时进行音视频聊天前的信令调度通知,调度在两个缓存中的交互逻辑即可实现音视频通话。在内网***中我们不能使用微信等软件音视频聊天软件的情况下,采用本发明的音视频通话方法,使用业务***就可以和该***的各个客户端进行音视频聊天,实现内网***中业务的高效沟通并保证***措施。
本发明的另一方面还涉及一种音视频通话***,其结构如图2所示,包括:
发起客户端,用于通过http或https协议发起音视频聊天信令请求;
服务端,用于接收请求并判断接收客户端的聊天状态;当判断接收客户端正在通话中,通知发起客户端并结束请求,当判断接收客户端未在通话中,向接收客户端发送websocket消息。
通过使用该***,能够执行上述的运算处理方法并实现对应的技术效果。
本发明的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法的全部步骤。
本发明的实施例还提供一种用于执行上述方法的电子设备,作为该方法的实现装置,所述电子设备至少具备有处理器和存储器,特别是该存储器上存储有执行方法所需的数据和相关的计算机程序,例如等,并通过由处理器调用存储器中的数据、程序执行实现方法的全部步骤,并获得对应的技术效果。
优选的,该电子设备可以包含有总线架构,总线可以包括任意数量的互联的总线和桥,总线将包括由一个或多个处理器和存储器的各种电路链接在一起。总线还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和接收器和发送器之间提供接口。接收器和发送器可以是同一个元件,即收发机,提供用于在传输介质上与各种其他***通信的单元。处理器负责管理总线和通常的处理,而存储器可以被用于存储处理器在执行操作时所使用的数据。
额外的,所述电子设备还可以进一步包括通信模块、输入单元、音频处理器、显示器、电源等部件。其所采用的处理器(或称为控制器、操作控件)可以包括微处理器或其他处理器装置和/或逻辑装置,该处理器接收输入并控制电子设备的各个部件的操作;存储器可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种,可储存上述有关的数据信息,此外还可存储执行有关信息的程序,并且处理器可执行该存储器存储的该程序,以实现信息存储或处理等;输入单元用于向处理器提供输入,例如可以为按键或触摸输入装置;电源用于向电子设备提供电力;显示器用于进行图像和文字等显示对象的显示,例如可为LCD显示器。通信模块即为经由天线发送和接收信号的发送机/接收机。通信模块(发送机/接收机)耦合到处理器,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)还经由音频处理器耦合到扬声器和麦克风,以经由扬声器提供音频输出,并接收来自麦克风的音频输入,从而实现通常的电信功能。音频处理器可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器还耦合到中央处理器,从而使得可以通过麦克风能够在本机上录音,且使得可以通过扬声器来播放本机上存储的声音。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的***。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令***的制造品,该指令***实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
以上所述仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换等都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (10)

1.一种音视频通话方法,其特征在于,包括以下步骤:
发起客户端通过http或https协议发起音视频聊天信令请求;
服务端接收请求并判断接收客户端的聊天状态;
当判断接收客户端正在通话中,通知发起客户端并结束请求;
当判断接收客户端未在通话中,向接收客户端发送websocket消息。
2.如权利要求1所述的方法,其特征在于,向接收客户端发送websocket消息包括向接收客户端的web端和app端同时发送websocket消息。
3.如权利要求2所述的方法,其特征在于,所述web端和所述app端通过唯一账户ID进行关联。
4.如权利要求2所述的方法,其特征在于,当接收客户端的app端接收消息,接收客户端的app端通过http或https协议通知服务端,服务端更新接收客户端的聊天状态,并通过websocket消息通知接收客户端的web端关闭窗口。
5.如权利要求2所述的方法,其特征在于,当接收客户端的web端接收消息,接收客户端的web端通过http或https协议通知服务端,服务端更新接收客户端的聊天状态,并通过websocket消息通知接收客户端的app端关闭窗口。
6.如权利要求1至5任一项所述的方法,其特征在于,当发起客户端或接收客户端通过http或https协议请求服务端结束通话时,服务端通过websocket消息通知另一方关闭窗口,并更新发起客户端或接收客户端的聊天状态。
7.一种音视频通话***,其特征在于,包括:
发起客户端,用于通过http或https协议发起音视频聊天信令请求;
服务端,用于接收请求并判断接收客户端的聊天状态;当判断接收客户端正在通话中,通知发起客户端并结束请求,当判断接收客户端未在通话中,向接收客户端发送websocket消息。
8.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
9.一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存储操作指令;
所述处理器,用于通过调用所述操作指令,执行权利要求1至6中任一项所述的方法。
10.一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现权利要求1至6中任一项所述方法的步骤。
CN202111634696.XA 2021-12-29 2021-12-29 一种音视频通话方法及*** Pending CN114286039A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111634696.XA CN114286039A (zh) 2021-12-29 2021-12-29 一种音视频通话方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111634696.XA CN114286039A (zh) 2021-12-29 2021-12-29 一种音视频通话方法及***

Publications (1)

Publication Number Publication Date
CN114286039A true CN114286039A (zh) 2022-04-05

Family

ID=80877688

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111634696.XA Pending CN114286039A (zh) 2021-12-29 2021-12-29 一种音视频通话方法及***

Country Status (1)

Country Link
CN (1) CN114286039A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117177059A (zh) * 2023-10-27 2023-12-05 荣耀终端有限公司 用于视频通话的相机控制方法、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014192591A1 (ja) * 2013-05-29 2014-12-04 グリー株式会社 メッセージを通信するための方法、システム及びプログラム
CN108881779A (zh) * 2018-07-17 2018-11-23 聚好看科技股份有限公司 智能设备之间的视频通话接听转移方法、***及服务器
CN112751842A (zh) * 2020-12-25 2021-05-04 广东南方新媒体科技有限公司 一种高性能的即时通讯方法
CN112968963A (zh) * 2021-02-23 2021-06-15 上海昊沧***控制技术有限责任公司 基于WebSocket进行用户强制实时下线的方法
CN113259337A (zh) * 2021-05-07 2021-08-13 中国联合网络通信集团有限公司 多终端音视频接听控制方法、服务器、终端、设备及介质
CN113572678A (zh) * 2021-06-30 2021-10-29 中企云链(北京)金融信息服务有限公司 一种基于websocket实现的即时通讯方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014192591A1 (ja) * 2013-05-29 2014-12-04 グリー株式会社 メッセージを通信するための方法、システム及びプログラム
CN108881779A (zh) * 2018-07-17 2018-11-23 聚好看科技股份有限公司 智能设备之间的视频通话接听转移方法、***及服务器
CN112751842A (zh) * 2020-12-25 2021-05-04 广东南方新媒体科技有限公司 一种高性能的即时通讯方法
CN112968963A (zh) * 2021-02-23 2021-06-15 上海昊沧***控制技术有限责任公司 基于WebSocket进行用户强制实时下线的方法
CN113259337A (zh) * 2021-05-07 2021-08-13 中国联合网络通信集团有限公司 多终端音视频接听控制方法、服务器、终端、设备及介质
CN113572678A (zh) * 2021-06-30 2021-10-29 中企云链(北京)金融信息服务有限公司 一种基于websocket实现的即时通讯方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DDSSINGSONG: "webrtc_server_java", pages 1 - 14, Retrieved from the Internet <URL:https://github.com/ddssingsong/webrtc_server_java/commit/7cd2bca85e548ac24fe7c76a2da469a460509ee1> *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117177059A (zh) * 2023-10-27 2023-12-05 荣耀终端有限公司 用于视频通话的相机控制方法、电子设备及存储介质
CN117177059B (zh) * 2023-10-27 2024-04-12 荣耀终端有限公司 用于视频通话的相机控制方法、电子设备及存储介质

Similar Documents

Publication Publication Date Title
KR102148046B1 (ko) 준비되지 않은 단말의 호출 기법
CN110266810B (zh) 基于mqtt协议的消息接收方法、设备及存储介质
US9065666B2 (en) System and method of multi-media conferencing between universal plug and play (UPnP) enabled telephony devices and wireless area network (WAN) devices
JP2003179642A (ja) データ伝送システム、情報処理装置および方法、中継装置および方法、記録媒体、並びにプログラム
CN109586929B (zh) 会议内容的传输方法及装置、电子设备、存储介质
US20200028955A1 (en) Communication system and api server, headset, and mobile communication terminal used in communication system
KR20090071995A (ko) 멀티미디어 스트리밍 서비스 제공 방법 및 그를 수행하는시스템
CN112738559A (zh) 投屏实现方法、装置及***
WO2013127163A1 (zh) 呼叫终端入会的方法和装置
US20150035934A1 (en) Video message record terminal, video message transmitting server and method for leaving video message
CN111510493B (zh) 分布式数据传输方法及装置
CN112689012A (zh) 跨网络的代理通讯方法及装置
US10855846B1 (en) Encrypting multiple party calls
CN103024687A (zh) 用于建立即时通信的方法和设备
CN111767558B (zh) 数据访问监控方法、装置及***
CN111666589A (zh) 区块链分布式的风险数据共享***及方法
CN114286039A (zh) 一种音视频通话方法及***
CN109819278B (zh) 直播视频的优化方法
WO2016095510A1 (zh) 一种路径选择方法、设备及***
KR100499769B1 (ko) 이동 통신 단말의 인스턴트 메신저를 통한 사진 표시 방법및 이를 위한 이동 통신 단말
CN103701879A (zh) 自动实现业务处理的方法和设备
JP2022107581A (ja) モバイルデバイスへの通知の配信
WO2016150334A1 (zh) 一种语音信箱服务器及语音信箱***的实现方法
CN111818144B (zh) 远程服务调用框架下的报文传输方法、装置及***
CN115086263B (zh) Ios终端的im消息发送方法、***、存储介质、计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination