CN114064330A - 基于OpenVidu的钩子回调广播转发方法及系统 - Google Patents

基于OpenVidu的钩子回调广播转发方法及系统 Download PDF

Info

Publication number
CN114064330A
CN114064330A CN202210033687.3A CN202210033687A CN114064330A CN 114064330 A CN114064330 A CN 114064330A CN 202210033687 A CN202210033687 A CN 202210033687A CN 114064330 A CN114064330 A CN 114064330A
Authority
CN
China
Prior art keywords
hook
receiving
event hook
event
type
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.)
Granted
Application number
CN202210033687.3A
Other languages
English (en)
Other versions
CN114064330B (zh
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.)
Guangdong Eflycloud Computing Co Ltd
Original Assignee
Guangdong Eflycloud Computing 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 Guangdong Eflycloud Computing Co Ltd filed Critical Guangdong Eflycloud Computing Co Ltd
Priority to CN202210033687.3A priority Critical patent/CN114064330B/zh
Publication of CN114064330A publication Critical patent/CN114064330A/zh
Application granted granted Critical
Publication of CN114064330B publication Critical patent/CN114064330B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请涉及网络视频技术领域,公开了基于OpenVidu的钩子回调广播转发方法及系统,钩子回调广播转发方法包括:接收客户端发送的事件钩子触发请求;判断触发的事件钩子的类型;查找能够接收当前事件钩子类型的接收方;将当前事件钩子转发到能够接收该类型事件钩子的接收方;本申请通过上述的方法,实现了对同一事件钩子同时进行多方转发的使用要求,并且通过预先查找能够接收当前事件钩子类型的接收方,能够做到事件钩子精准发送,避免事件钩子发送后接收方无权限接收造成大量的网络垃圾以及导致网络资源浪费。

Description

基于OpenVidu的钩子回调广播转发方法及系统
技术领域
本发明属于网络视频技术领域,尤其涉及基于OpenVidu的钩子回调广播转发方法及系统。
背景技术
OpenVidu是一个基于Kurento Media Server(KMS)流媒体服务器的流媒体服务器框架,使用OpenVidu能快速开发视频聊天与视频会议相关的应用,而OpenVidu有一个事件钩子回调功能,当OpenVidu触发到某一事件时,会发送请求到指定的远程接收方地址。但是,目前的OpenVidu只支持发送到单个接收方,当需要进行多个接收方回调时,就无法满足这一需求。
发明内容
(一)发明目的
为了克服以上不足,本发明的目的在于提供基于OpenVidu的钩子回调广播转发方法及系统,以解决OpenVidu中对触发的事件钩子只能转发到单个接收方,无法满足多个接收方同时回调的使用要求。
(二)技术方案
为实现上述目的,本申请一方面提供的技术方案如下:
一种基于OpenVidu的钩子回调广播转发方法,包括:
接收客户端发送的事件钩子触发请求;
判断触发的事件钩子的类型;
查找能够接收当前事件钩子类型的接收方;
将当前事件钩子转发到能够接收该类型事件钩子的接收方;
本申请通过上述的方法,实现了对同一事件钩子同时进行多方转发的使用要求,并且通过预先查找能够接收当前事件钩子类型的接收方,能够做到事件钩子精准发送,避免事件钩子发送后接收方无权限接收,造成大量的网络垃圾以及导致网络资源浪费。
在一些实施例中,在接收客户端发送的事件钩子触发请求之前,还包括:
获取所有接收方的接收权限以及获取各事件钩子的类型;
将每个接收方的接收权限与各类型事件钩子进行配对,生成配对信息列表。
对OpenVidu触发的事件钩子进行多方广播转发,并且可以设定接收方对哪些事件钩子有接收权限。
在一些实施例中,查找能够接收当前事件钩子类型的接收方包括:基于配对信息列表查找与该事件钩子类型配对的接收方。
在一些实施例中,在将当前事件钩子转发到能够接收该类型事件钩子的接收方后,接收接收方发送的确认接收或拒绝接收的反馈信息。
在一些实施例中,针对每个类型的事件钩子,单位时间段内分别统计每个接收方反馈的确认接收或拒绝接收的次数,生成反馈信息列表。
在一些实施例中,在基于配对信息列表查找与该事件钩子类型配对的接收方之后并且在将当前事件钩子转发到能够接收该类型事件钩子的接收方之前,还包括:查找反馈信息列表,剔除对应该类型事件钩子确认接收次数低于预定阈值的接收方;
在发送事件钩子之前,基于反馈信息列表对接收方进行再次筛选,剔除不常接收该类型事件钩子的接收方,可以进一步避免事件钩子发送后接收方无权限接收造成大量的网络垃圾以及网络资源浪费。
本申请另一方面提供了一种应用上述的基于OpenVidu的钩子回调广播转发方法的系统,包括:
OpenVidu模块,与客户端通信连接,用于接收客户端发送的事件钩子触发请求并且触发事件钩子,对事件钩子进行分类,基于分类好的事件钩子发送事件钩子回调请求;
事件钩子广播转发模块,与OpenVidu模块通信连接,用于接收OpenVidu模块发送的事件钩子回调请求并且查找能够接收当前事件钩子类型的接收方,将当前事件钩子转发到能够接收该类型事件钩子的接收方。
在一些实施例中,事件钩子广播转发模块还包括:
获取子模块,用于获取所有接收方的接收权限以及获取各事件钩子的类型;
配对子模块,将每个接收方的接收权限与各类型事件钩子进行配对,生成配对信息列表。
在一些实施例中,事件钩子广播转发模块还包括:统计子模块,用于在单位时间段内分别统计每个接收方对其接收到的每个类型的事件钩子的确认次数,生成反馈信息列表。
在一些实施例中,事件钩子广播转发模块还能够在查找到能够接收当前事件钩子类型的接收方后,基于反馈信息列表剔除对应该类型事件钩子确认接收次数低于预定阈值的接收方。
附图说明
图1是基于OpenVidu的钩子回调广播转发方法的系统的框架结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
本发明提供的一种基于OpenVidu的钩子回调广播转发方法,包括:
接收客户端发送的事件钩子触发请求;
判断触发的事件钩子的类型;
查找能够接收当前事件钩子类型的接收方;
将当前事件钩子转发到能够接收该类型事件钩子的接收方。
具体的,本申请的钩子回调广播转发方法基于OpenVidu模块以及事件钩子广播转发模块,OpenVidu模块的接收端与客户端通信连接,发送端与事件钩子广播转发模块通信连接,事件钩子广播转发模块的接收端与OpenVidu模块通信连接,发送端与多个接收方连接。
更具体的,工作时,当客户端向OpenVidu模块发送事件钩子触发请求,OpenVidu模块接收到请求后,触发事件钩子,OpenVidu模块对当前触发的事件钩子进行分类,然后向事件钩子广播转发模块发送请求,事件钩子广播转发模块接收到事件钩子回调请求后查找能够接收该类型事件钩子的接收方,完成查找后,将当前事件钩子转发到对应的接收方,不可以接收的接收方不进行转发。
具体的,事件钩子广播转发模块在接收客户端发送的事件钩子触发请求之前,还包括:
获取所有接收方的接收权限以及获取各事件钩子的类型,各事件钩子的类型是预知的,是OpenVidu模块触发的所有事件钩子类型;
将每个接收方的接收权限与各类型事件钩子进行配对,生成配对信息列表。
然后,查找能够接收当前事件钩子类型的接收方包括:基于配对信息列表查找与该事件钩子类型配对的接收方。
以下通过一个例子对上述的方法进行详细说明:
前提条件(预先设定):
OpenVidu模块的地址为:https://ov.site.com;
事件钩子广播转发模块回调地址为:
https://forward.site.com/callback;
n个接收方的回调地址分别为:
接收方1:https://a1.site.com/callback;
接收方2:https://a2.site.com/callback;
接收方3:https://a3.site.com/callback;
.......
接收方n:https://a(n).site.com/callback;
事件钩子广播转发模块设置接收方信息列表;
接收方信息包括两个参数:接收地址和可接收事件类型:
①接收方1:
接收地址:https://a1.site.com/callback;
可接收事件类型:所有;
②接收方2:
接收地址:https://a2.site.com/callback;
可接收事件类型:
sessionCreated;
sessionDestroyed;
participantJoined;
participantLeft;
③接收方3:
接收地址:https://a3.site.com/callback;
可接收事件类型:
sessionCreated;
sessionDestroyed;
participantJoined;
participantLeft;
.......
接收方n:
接收地址:https://an.site.com/callback;
可接收事件类型:
sessionCreated;
sessionDestroyed;
participantJoined;
participantLeft;
将OpenVidu的事件钩子回调地址设为事件钩子广播转发模块回调地址,如:
OPENVIDU_WEBHOOK_ENDPOINT=https://forward.site.com/callback;
具体流程:
S1、客户端接入OpenVidu(https://ov.site.com);
S2、当OpenVidu触发到事件钩子时,会主动向已设置的事件钩子广播转发模块回调地址(https://forward.site.com/callback)进行发送请求;
S3、事件钩子广播转发模块接收请求,查找对己设置的接收方信息列表的每一个接收方进行判断:判断是否可以接收当前事件类型,如果可以,则对该接收方进行转发,如果不可以,则不进行转发。
优选的,在事件钩子广播转发模块将当前事件钩子转发到能够接收该类型事件钩子的接收方后,接收方会向事件钩子广播转发模块发送确认接收或拒绝接收的反馈信息。
具体的,有些情况下,虽然接收方能够接收对应类型的事件钩子,但是接收方处理的业务并不需要该事件钩子,这样就会出现多余转发,造成网络中堆积无用信息,产生网络垃圾的情况。
优选的,针对每个类型的事件钩子,单位时间段内分别统计每个接收方反馈的确认接收的次数,生成反馈信息列表。然后在将当前事件钩子转发到能够接收该类型事件钩子的接收方之前,查找反馈信息列表,剔除确认接收该类型事件钩子次数低于预定阈值的接收方,确认接收的次数低于预定阈值表示该接收方的业务不需要或极少需要该事件钩子,因此无需转发。
具体的,每过预定单位时间段对反馈信息列表进行更新,避免出现与各接收方新业务不适配的情况,具体的,预定单位时间段可以是5-10min,预定阈值可以是1-3次的范围。具体的,如果某一接收方需要接收该事件钩子但是没有被自动转发,可以手动进行转发。
本申请另一方面提供了一种应用上述的基于OpenVidu的钩子回调广播转发方法的系统,包括:
OpenVidu模块,与客户端通信连接,用于接收客户端发送的事件钩子触发请求并且触发事件钩子,对事件钩子进行分类,基于分类好的事件钩子发送事件钩子回调请求;
事件钩子广播转发模块,与OpenVidu模块通信连接,用于接收OpenVidu模块发送的事件钩子回调请求并且查找能够接收当前事件钩子类型的接收方,将当前事件钩子转发到能够接收该类型事件钩子的接收方。
具体的,OpenVidu模块包括:
事件钩子分类子模块,用于对触发的各事件钩子进行分类;
第一发送子模块,基于分类好的事件钩子发送事件钩子回调请求。
具体的,事件钩子广播转发模块包括:
获取子模块,用于获取所有接收方的接收权限以及获取各事件钩子的类型;
配对子模块,将每个接收方的接收权限与各类型事件钩子进行配对,生成配对信息列表;
第一查找子模块,用于在配对信息列表中查找能够接收当前事件钩子类型的接收方;
第二发送子模块,将当前事件钩子转发到能够接收该类型事件钩子的接收方。
优选的,事件钩子广播转发模块还包括:
统计子模块,针对每个类型的事件钩子,单位时间段内分别统计每个接收方反馈的确认接收或拒绝接收的次数,生成反馈信息列表。
优选的,事件钩子广播转发模块还包括:第二查找子模块以及剔除子模块,在第一查找子模块查找到能够接收当前事件钩子类型的接收方后,第二查找子模块能够查找反馈信息列表,然后通知剔除子模块剔除对应该类型事件钩子,确认接收次数低于预定阈值的接收方。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

Claims (10)

1.一种基于OpenVidu的钩子回调广播转发方法,其特征在于,包括:
接收客户端发送的事件钩子触发请求;
判断触发的事件钩子的类型;
查找能够接收当前事件钩子类型的接收方;
将当前事件钩子转发到能够接收该类型事件钩子的接收方。
2.根据权利要求1所述的基于OpenVidu的钩子回调广播转发方法,其特征在于,在接收客户端发送的事件钩子触发请求之前,还包括:
获取所有接收方的接收权限以及获取各事件钩子的类型;
将每个接收方的接收权限与各类型事件钩子进行配对,生成配对信息列表。
3.根据权利要求2所述的基于OpenVidu的钩子回调广播转发方法,其特征在于,所述查找能够接收当前事件钩子类型的接收方包括:基于所述配对信息列表查找与该事件钩子类型配对的接收方。
4.根据权利要求3所述的基于OpenVidu的钩子回调广播转发方法,其特征在于,在将当前事件钩子转发到能够接收该类型事件钩子的接收方后,所述方法还包括:接收接收方发送的确认接收或拒绝接收的反馈信息。
5.根据权利要求4所述的基于OpenVidu的钩子回调广播转发方法,其特征在于,所述方法还包括:针对每个类型的事件钩子,单位时间段内分别统计每个接收方反馈的确认接收或拒绝接收的次数,生成反馈信息列表。
6.根据权利要求5所述的基于OpenVidu的钩子回调广播转发方法,其特征在于,在基于所述配对信息列表查找与该事件钩子类型配对的接收方之后并且在将当前事件钩子转发到能够接收该类型事件钩子的接收方之前,还包括:查找反馈信息列表,剔除对应该类型事件钩子确认接收次数低于预定阈值的接收方。
7.一种应用上述权利要求1-6任意一项所述的基于OpenVidu的钩子回调广播转发方法的系统,其特征在于,包括:
OpenVidu模块,与客户端通信连接,用于接收客户端发送的事件钩子触发请求并且触发事件钩子,对事件钩子进行分类,基于分类好的事件钩子发送事件钩子回调请求;
事件钩子广播转发模块,与OpenVidu模块通信连接,用于接收OpenVidu模块发送的事件钩子回调请求并且查找能够接收当前事件钩子类型的接收方,将当前事件钩子转发到能够接收该类型事件钩子的接收方。
8.根据权利要求7所述的系统,其特征在于,所述事件钩子广播转发模块还包括:
获取子模块,用于获取所有接收方的接收权限以及获取各事件钩子的类型;
配对子模块,将每个接收方的接收权限与各类型事件钩子进行配对,生成配对信息列表。
9.根据权利要求8所述的系统,其特征在于,所述事件钩子广播转发模块还包括:统计子模块,用于在单位时间段内分别统计每个接收方对其接收到的每个类型的事件钩子的确认次数,生成反馈信息列表。
10.根据权利要求9所述的系统,其特征在于,所述事件钩子广播转发模块还能够在查找到能够接收当前事件钩子类型的接收方后,基于反馈信息列表剔除对应该类型事件钩子确认接收次数低于预定阈值的接收方。
CN202210033687.3A 2022-01-12 2022-01-12 基于OpenVidu的钩子回调广播转发方法及系统 Active CN114064330B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210033687.3A CN114064330B (zh) 2022-01-12 2022-01-12 基于OpenVidu的钩子回调广播转发方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210033687.3A CN114064330B (zh) 2022-01-12 2022-01-12 基于OpenVidu的钩子回调广播转发方法及系统

Publications (2)

Publication Number Publication Date
CN114064330A true CN114064330A (zh) 2022-02-18
CN114064330B CN114064330B (zh) 2022-05-13

Family

ID=80230809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210033687.3A Active CN114064330B (zh) 2022-01-12 2022-01-12 基于OpenVidu的钩子回调广播转发方法及系统

Country Status (1)

Country Link
CN (1) CN114064330B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112601114A (zh) * 2020-12-14 2021-04-02 杭州当虹科技股份有限公司 一种基于钩子回调的gb28181按需拉流实现方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200746A1 (en) * 2005-03-04 2006-09-07 Samsung Electronics Co., Ltd. Device and method for processing multimedia broadcast-related events in portable terminal
CN103841450A (zh) * 2012-11-20 2014-06-04 株式会社Ntt都科摩 无线互联网设备、多媒体广播接入设备及方法
CN106528309A (zh) * 2016-11-30 2017-03-22 武汉斗鱼网络科技有限公司 一种更新操作界面的更新系统及更新方法
CN106714116A (zh) * 2016-06-29 2017-05-24 腾讯科技(深圳)有限公司 一种消息处理方法及装置
CN107341047A (zh) * 2017-05-17 2017-11-10 深圳市小牛在线互联网信息咨询有限公司 回调事件的路由处理方法、装置、存储介质及计算机设备
CN110928699A (zh) * 2018-09-20 2020-03-27 北京京东尚科信息技术有限公司 一种前端跨域事件处理方法和装置
US20210112130A1 (en) * 2019-10-15 2021-04-15 UiPath, Inc. Mobile push notification for robotic process automation (rpa)
CN112732459A (zh) * 2020-12-31 2021-04-30 上海连尚网络科技有限公司 统一接收广播消息的方法和设备
CN112817782A (zh) * 2021-02-20 2021-05-18 腾讯科技(深圳)有限公司 一种数据采集上报方法、装置、电子设备和存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200746A1 (en) * 2005-03-04 2006-09-07 Samsung Electronics Co., Ltd. Device and method for processing multimedia broadcast-related events in portable terminal
CN103841450A (zh) * 2012-11-20 2014-06-04 株式会社Ntt都科摩 无线互联网设备、多媒体广播接入设备及方法
CN106714116A (zh) * 2016-06-29 2017-05-24 腾讯科技(深圳)有限公司 一种消息处理方法及装置
CN106528309A (zh) * 2016-11-30 2017-03-22 武汉斗鱼网络科技有限公司 一种更新操作界面的更新系统及更新方法
CN107341047A (zh) * 2017-05-17 2017-11-10 深圳市小牛在线互联网信息咨询有限公司 回调事件的路由处理方法、装置、存储介质及计算机设备
CN110928699A (zh) * 2018-09-20 2020-03-27 北京京东尚科信息技术有限公司 一种前端跨域事件处理方法和装置
US20210112130A1 (en) * 2019-10-15 2021-04-15 UiPath, Inc. Mobile push notification for robotic process automation (rpa)
CN112732459A (zh) * 2020-12-31 2021-04-30 上海连尚网络科技有限公司 统一接收广播消息的方法和设备
CN112817782A (zh) * 2021-02-20 2021-05-18 腾讯科技(深圳)有限公司 一种数据采集上报方法、装置、电子设备和存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112601114A (zh) * 2020-12-14 2021-04-02 杭州当虹科技股份有限公司 一种基于钩子回调的gb28181按需拉流实现方法
CN112601114B (zh) * 2020-12-14 2023-03-21 杭州当虹科技股份有限公司 一种基于钩子回调的gb28181按需拉流实现方法

Also Published As

Publication number Publication date
CN114064330B (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
CN100490425C (zh) 组播网络部署方法及组播网络
CN101227433B (zh) 在网络电视业务系统中实现信息共享的方法和终端
US20120072964A1 (en) STB Messaging System
EP1802049A1 (en) A method and system for controlling multimedia broadcast/multicast service session
CN114064330B (zh) 基于OpenVidu的钩子回调广播转发方法及系统
US20060166651A1 (en) Method for managing duplicated arrival notification message in multimedia messaging service
CN101448072A (zh) 网络视频监控系统的视频查看方法及系统
EP4099731A1 (en) Communication method and apparatus for multicast and broadcast service, and medium and electronic device
CN105357146A (zh) 出口网关内缓存队列饱和攻击防御方法、装置及系统
CN109429185B (zh) Mbsfn群组信令发送方法及装置
US10771928B2 (en) Communication method for requesting relay service, device, and system
CN111327584A (zh) 视频监控方法、装置、系统、设备和存储介质
CN101448144A (zh) 视频监控系统中实现报警的方法及视频监控报警系统
CN113014672B (zh) 一种消息推送方法、装置、电子设备及存储介质
CN102316083B (zh) 一种在ip网络中实现组播业务的方法和装置
US7986687B2 (en) Multicast data transfer
CN102595248B (zh) 组播转发表项维护方法及协议无关组播路由器
US20090193084A1 (en) Method and apparatus for obtaining information from a plurality of network elements
CN108353071B (zh) 小区多播业务处理方法以及设备
CN115550135B (zh) 一种告警信息传输方法、装置、网元及存储介质
CN109429184B (zh) Mbms组播会话的建立方法及装置
CN108600994B (zh) 一种数据传输方法及装置
CN100508486C (zh) 释放请求处理方法及装置
CN108810037B (zh) 分布式集群服务的实现方法和系统
EP3200453A1 (en) Method and apparatus for implementing roi video

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
GR01 Patent grant
GR01 Patent grant