开源群体协同消息通知方法、装置、计算机设备和介质

文档序号:31227186发布日期:2022-08-23 19:58阅读:72来源:国知局
开源群体协同消息通知方法、装置、计算机设备和介质

1.本技术涉及计算机技术领域,特别是涉及一种开源群体协同消息通知方法、装置、计算机设备和存储介质。


背景技术:

2.在以gitlink、github等为代表的在线开源群体协同平台中,开发者之间往往会围绕感兴趣的软件问题、代码提交等元素进行交互,平台的消息通知机制在开发者交互过程中起到了非常重要的作用,例如管理者通过平台的消息通知及时获悉贡献者的代码审查请求等。然而,对于大规模、活跃的开源项目社区,开发者会持续接收到海量的、各种各样的消息通知,导致开发者(尤其是项目的管理者)面临严峻的信息过载问题,无法及时、有效地捕捉到急需他们关注的消息,进而有可能降低开源协同效率。现有平台所支持的消息通知和过滤条件过于简单和有限,存在适应性不佳的问题。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种能够实现个性化过滤的开源群体协同消息通知方法、装置、计算机设备和存储介质。
4.一种开源群体协同消息通知方法,所述方法包括:
5.在开源群体协同开发平台,根据消息定义模型定义多种消息类型;其中,每种消息类型对应一种交互目的;
6.当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数;所述多个参数中包括用于选择消息类型的消息类型参数;
7.根据所述参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;所述结构化数据将所述参数内容以字段形式存储;
8.当消息接收方接收到所述结构化数据时,通过字段对消息进行过滤展示。
9.在其中一个实施例中,还包括:获取所述开源群体协同开发平台预设的通用消息定义模型,定义多种平台通用的消息类型;
10.通过平台交互界面获取项目管理者针对当前项目配置的个性化消息定义模型,定义多种项目扩展的消息类型。
11.在其中一个实施例中,还包括:当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入三个参数;其中,第一参数为消息接收方用户名,第二参数为用于选择消息类型的消息类型参数,第三参数为消息内容。
12.在其中一个实施例中,还包括:所述第一参数和所述第二参数由消息发送方自行输入,或者从占位框下显示的推荐值中选择确定;所述第三参数由消息发送方输入自由文
本或者留空。
13.在其中一个实施例中,还包括:所述第一参数占位框下显示的推荐值为在当前线程中和当前消息发送方有过直接交互的开发者,以及在当前线程中发表过评论的开发者。
14.在其中一个实施例中,还包括:根据所述参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;所述结构化数据将所述参数内容以字段形式存储;所述结构化数据表示为:
[0015][0016][0017]
其中,sender、receiver、msg_type、msg_detail和mst_time为所述结构化数据的字段,dq、dp、消息类型、消息内容和消息发送时间为字段对应的参数内容。
[0018]
在其中一个实施例中,还包括:当消息接收方接收到所述结构化数据时,所述开源群体协同开发平台将消息以消息通知面板和邮件的形式展示给消息接收方;
[0019]
获取消息接收方根据字段设置的过滤条件信息;
[0020]
根据所述过滤条件信息对消息进行过滤展示,以使消息接收方得到根据消息类型、消息内容或者消息发送时间过滤后的信息。
[0021]
一种开源群体协同消息通知装置,所述装置包括:
[0022]
消息类型定义模块,用于在开源群体协同开发平台,根据消息定义模型定义多种消息类型;其中,每种消息类型对应一种交互目的;
[0023]
消息发送模块,用于当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数;所述多个参数中包括用于选择消息类型的消息类型参数;
[0024]
消息打包模块,用于根据所述参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;所述结构化数据将所述参数内容以字段形式存储;
[0025]
消息过滤模块,用于当消息接收方接收到所述结构化数据时,通过字段对消息进行过滤展示。
[0026]
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0027]
在开源群体协同开发平台,根据消息定义模型定义多种消息类型;其中,每种消息类型对应一种交互目的;
[0028]
当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数;所述多个参数中包括用于选择消息类型的消息类型参数;
[0029]
根据所述参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;所述结构化数据将所述参数内容以字段形式存储;
[0030]
当消息接收方接收到所述结构化数据时,通过字段对消息进行过滤展示。
[0031]
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0032]
在开源群体协同开发平台,根据消息定义模型定义多种消息类型;其中,每种消息类型对应一种交互目的;
[0033]
当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数;所述多个参数中包括用于选择消息类型的消息类型参数;
[0034]
根据所述参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;所述结构化数据将所述参数内容以字段形式存储;
[0035]
当消息接收方接收到所述结构化数据时,通过字段对消息进行过滤展示。
[0036]
上述开源群体协同消息通知方法、装置、计算机设备和存储介质,在开源群体协同开发平台,根据消息定义模型定义多种消息类型,通过对@工具进行模板化扩展,允许消息发送方在指定提及目标的同时设置消息类型和消息内容,当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数,其中包括用于选择消息类型的消息类型参数;根据参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;当消息接收方接收到结构化数据时,能够通过结构化数据中的字段对消息进行过滤展示。本发明通过可扩展的消息类型定义,体现消息之间的差异性,通过模板化的消息输入及引导,提高消息生成的效率,通过结构化的消息打包及发送,有利于消息的跨平台传输及解析,通过可适配的消息过滤及展示,充分利用不同平台的特性高效展示信息。
附图说明
[0037]
图1为一个实施例中开源群体协同消息通知方法的流程示意图;
[0038]
图2为另一个实施例中开源群体协同消息通知方法的流程示意图;
[0039]
图3为一个实施例中开源群体协同消息通知装置的结构框图;
[0040]
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
[0041]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
[0042]
本技术提供的开源群体协同消息通知方法,可以应用于如下应用环境中。其中,消息接收方和消息发送方均是开源群体协同开发平台下的开发者(包括项目管理者),消息发送方通过@工具给指定消息接收方发送消息,消息接收方接收到消息后,根据需求对消息进行过滤展示。
[0043]
在一个实施例中,如图1所示,提供了一种开源群体协同消息通知方法,包括以下步骤:
[0044]
步骤102,在开源群体协同开发平台,根据消息定义模型定义多种消息类型。
[0045]
其中,每种消息类型对应一种交互目的。例如:消息类型包括“请求代码审查”、“请求方案确认”、“请求代码修订”等。
[0046]
本发明的目标在于通过构建一种新的消息生成机制,能够丰富消息过滤功能,满足开发者对于消息过滤个性化的选择和设置。消息类型是本技术所提出的一个关键手段,每种消息类型实际上代表了一种开发者之间交互沟通的目的,通过可扩展的消息类型定义进行消息分类,分类标准明确,有利于体现消息之间的差异性,易于实现且具有较好的实用性。
[0047]
本发明方法提供消息类型定义的可扩展接口,既可以涵盖开发者交互过程中常见的消息类型,同时,平台也应支持项目通过配置定义只作用于本项目内的新消息类型,用以覆盖或扩展默认的消息模型。通过通用与定制的结合,既方便开发者节约设计时间,也能满足开发者对消息定义的特殊需求。
[0048]
步骤104,当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数。
[0049]
多个参数中包括用于选择消息类型的消息类型参数。
[0050]
平台通过对“@”(mention,提及)工具进行模板化扩展,允许开发者在指定提及目标的同时设置提及目的和消息内容等内容,具体为,预先设计参数模板,当一名开发者作为消息发送方通过评论回复作为消息接收方的另一名开发者时,在输入框中首先键入“@”符号,平台自动提示需要根据参数模板输入多个参数。通过模板化的消息输入及引导,可以提高消息生成的效率。
[0051]
步骤106,根据参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方。
[0052]
结构化数据将参数内容以字段形式存储。结构化数据结构清晰,易于通过字段查找需要的参数内容,且方便扩展。通过结构化的消息打包及发送,有利于消息的跨平台传输及解析。
[0053]
步骤108,当消息接收方接收到结构化数据时,通过字段对消息进行过滤展示。
[0054]
通过结构化数据的字段设置过滤条件,再根据过滤条件对消息进行过滤展示,可以实现基于消息类型的过滤、消息时间的过滤、消息内容的过滤等,可高效展示信息,最大化满足消息接收方的需求。
[0055]
上述开源群体协同消息通知方法中,在开源群体协同开发平台,根据消息定义模型定义多种消息类型,通过对@工具进行模板化扩展,允许消息发送方在指定提及目标的同时设置消息类型和消息内容,当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数,其中包括用于选择消息
类型的消息类型参数;根据参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;当消息接收方接收到结构化数据时,能够通过结构化数据中的字段对消息进行过滤展示。本发明通过可扩展的消息类型定义,体现消息之间的差异性,通过模板化的消息输入及引导,提高消息生成的效率,通过结构化的消息打包及发送,有利于消息的跨平台传输及解析,通过可适配的消息过滤及展示,充分利用不同平台的特性高效展示信息。
[0056]
在其中一个实施例中,还包括:获取开源群体协同开发平台预设的通用消息定义模型,定义多种平台通用的消息类型;通过平台交互界面获取项目管理者针对当前项目配置的个性化消息定义模型,定义多种项目扩展的消息类型。
[0057]
个性化消息定义模型为项目管理者根据当前项目实际需求自定义的消息定义模型,具有较好的扩展性和适应性。
[0058]
在其中一个实施例中,还包括:当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入三个参数;其中,第一参数为消息接收方用户名,第二参数为用于选择消息类型的消息类型参数,第三参数为消息内容。
[0059]
在其中一个实施例中,还包括:第一参数和第二参数由消息发送方自行输入,或者从占位框下显示的推荐值中选择确定;第三参数由消息发送方输入自由文本或者留空。
[0060]
在其中一个实施例中,还包括:第一参数占位框下显示的推荐值为在当前线程中和当前消息发送方有过直接交互的开发者,以及在当前线程中发表过评论的开发者。
[0061]
在其中一个实施例中,还包括:根据参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;结构化数据将参数内容以字段形式存储;结构化数据表示为:
[0062][0063][0064]
其中,sender、receiver、msg_type、msg_detail和mst_time为结构化数据的字段,dq、dp、消息类型、消息内容和消息发送时间为字段对应的参数内容。
[0065]
在其中一个实施例中,还包括:当消息接收方接收到结构化数据时,开源群体协同开发平台将消息以消息通知面板和邮件的形式展示给消息接收方;获取消息接收方根据字段设置的过滤条件信息;根据过滤条件信息对消息进行过滤展示,以使消息接收方得到根据消息类型、消息内容或者消息发送时间过滤后的信息。
[0066]
在一个具体实施例中,如图2所示,提供了一种开源群体协同消息通知方法,包括:
[0067]
s1:可扩展的消息类型定义
[0068]
平台针对开源群体协同开发中典型的交互场景,提供一个消息定义模型,涵盖开发者交互过程中常见的消息类型。同时,平台也应支持项目通过配置定义只作用于本项目内的新消息类型,用以覆盖或扩展默认的消息模型。
[0069]
s2:模板化的消息输入及引导
[0070]
平台通过对“@”(mention,提及)工具进行模板化扩展,允许开发者在指定提及目标的同时设置提及目的和消息内容,其具体步骤包括:
[0071]
s2.1当开发者dq通过评论回复另一名开发者dp时,在输入框中首先键入“@”符号;
[0072]
s2.2平台自动提示需要输入三个参数,第一个参数是被提交者的用户名,第二个参数是提及目的,第三个参数是消息内容;
[0073]
s2.3对于前两个参数,平台在每个参数占位框下方提示可选的数值,开发者点击某个数值后,该数值会被自动赋予给相应的参数,开发者也可以不选择推荐值而自己输入。对于第一个参数,平台会推荐两类人员:在当前讨论线程中和当前开发者有过直接交互的开发者,以及在当前讨论线程中发表过评论的开发者。对于第二个参数,平台会根据项目定义的消息模型逐个显示每一种消息类型;
[0074]
s2.4对于第三个参数,开发者可以输入自由文本,也可以留空。
[0075]
s3:结构化的消息打包及发送
[0076]
s3.1平台依据参数模板解析并识别出提及目标、提及目的以及消息内容,并将消息进行打包,形成以下结构化数据:
[0077][0078]
s3.2平台根据数据中的“receiver”字段将该数据发送给指定的消息接受者。
[0079]
s4:可适配的消息过滤及展示
[0080]
s4.1平台将消息通过两种途径发送给消息接受者(开发者dp),包括平台的消息通知面板以及邮件;
[0081]
s4.2在开发者dp的消息通知面板中,各消息默认根据发生时间排序。除此之外,dp可以依据消息的提及目的等字段对消息进行过滤。
[0082]
s4.3对于邮件消息,标题由项目名与提及目的组成,邮件内容则是具体的消息内容。
[0083]
应该理解的是,虽然图1-2的流程图中的各个步骤按照箭头的指示依次显示,但是
这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0084]
在一个实施例中,如图3所示,提供了一种开源群体协同消息通知装置,包括:消息类型定义模块302、消息发送模块304、消息打包模块306和消息过滤模块308,其中:
[0085]
消息类型定义模块302,用于在开源群体协同开发平台,根据消息定义模型定义多种消息类型;其中,每种消息类型对应一种交互目的;
[0086]
消息发送模块304,用于当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入多个参数;多个参数中包括用于选择消息类型的消息类型参数;
[0087]
消息打包模块306,用于根据参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;结构化数据将参数内容以字段形式存储;
[0088]
消息过滤模块308,用于当消息接收方接收到结构化数据时,通过字段对消息进行过滤展示。
[0089]
消息发送模块304还用于当消息发送方通过@工具给指定消息接收方发送消息时,通过平台交互界面根据预设的参数模板提示消息发送方输入三个参数;其中,第一参数为消息接收方用户名,第二参数为用于选择消息类型的消息类型参数,第三参数为消息内容。
[0090]
消息打包模块306还用于根据参数模板解析并识别消息发送方发送的消息,提取得到参数内容后将消息以结构化数据的形式发送给指定的消息接收方;结构化数据将参数内容以字段形式存储;结构化数据表示为:
[0091][0092]
其中,sender、receiver、msg_type、msg_detail和mst_time为结构化数据的字段,dq、dp、消息类型、消息内容和消息发送时间为字段对应的参数内容。
[0093]
消息过滤模块308还用于当消息接收方接收到结构化数据时,开源群体协同开发
平台将消息以消息通知面板和邮件的形式展示给消息接收方;获取消息接收方根据字段设置的过滤条件信息;根据过滤条件信息对消息进行过滤展示,以使消息接收方得到根据消息类型、消息内容或者消息发送时间过滤后的信息。
[0094]
关于开源群体协同消息通知装置的具体限定可以参见上文中对于开源群体协同消息通知方法的限定,在此不再赘述。上述开源群体协同消息通知装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0095]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种开源群体协同消息通知方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0096]
本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0097]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述方法实施例中的步骤。
[0098]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中的步骤。
[0099]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0100]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0101]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来
说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1