聊天消息处理方法、装置、电子设备及可读存储介质与流程

未命名 08-29 阅读:91 评论:0


1.本发明涉及互联网技术领域,还涉及社交应用技术领域,具体涉及一种社交应用中的聊天消息处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品。


背景技术:

2.随着互联网技术的发展,人们在网络上停留的时间越来越长,大部分人将现实中的社交关系也搬到网络上,因而具有社交属性的应用、工具在人们的生活和工作中扮演着重要角色。社交应用能够保持人们之间的连接和沟通,也提供网上娱乐、消遣的功能,并且,有很大一部分人通过社交媒体平台进行商业活动和营销,扩大社交圈以认识新的朋友和建立更广泛的社交关系。因而目前大部分人的社交应用或工具中存在着大量的与其建立起社交关系的用户,人们通常称为好友。为了方便用户能够与好友进行即时通信,目前的社交应用或工具通常为用户创建聊天窗口。一个聊天窗口对应一个即时通信组,在聊天窗口中显示用户发送的消息时,为了标识所述消息的来源,通常在消息前增加用户头像作为发送所述消息的用户标识。然而,作为用户标识的静态图像既显单调,无法起到吸引用户的作用,而且也不能为用户提供足够的信息以增进用户之间的社交关系。


技术实现要素:

3.有鉴于此,本发明实施例提供一种聊天消息处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,用以丰富聊天窗口显示的信息,提高当前正在进行的交流的沉浸感和代入感。
4.根据本发明的一个方面,本发明实施例提供了一种聊天消息处理方法,应用于第一用户的终端设备,包括:
5.基于与所述第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口;
6.在接收到用户发送的消息时,在所述聊天窗口中为所述用户创建消息区域,并在所述消息区域中生成头像显示位,其中,一个消息区域内包括一个头像显示位,所述用户为第一用户或第二用户;
7.获取发送所述消息的用户的3d角色,并将所述用户的所述3d角色加载到所述头像显示位作为聊天头像;
8.在所述用户的当前消息区域内显示所述用户发送的消息;
9.监视聊天过程中所述即时通信组中用户发送的表情消息;以及
10.响应于获取到用户发送表情消息,将所述表情消息融合到所述用户的3d角色中;
11.其中,所述3d角色包括3d人物模型,在将所述表情消息融合到所述3d角色时,所述3d人物模型按照所述表情消息呈现面部表情和/或动作。
12.根据本发明的一个方面,本发明实施例提供了一种聊天消息处理装置,包括通信组创建模块、消息区域创建模块、头像处理模块和聊天消息模块,其中,所述通信组创建模
块经配置以基于与所述第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口;所述消息区域创建模块经配置以在接收到用户消息时,在所述聊天窗口中为所述用户创建消息区域,并在所述消息区域中生成头像显示位,其中,一个消息区域内包括一个头像显示位;所述头像处理模块经配置以获取发送所述消息的用户的3d角色,并将所述用户的所述3d角色加载到所述头像显示位作为聊天头像,并将用户发送的表情消息融合到所述用户的3d角色中;其中,所述3d角色包括3d人物模型,在将所述表情消息融合到所述3d角色时,所述3d人物模型按照所述表情消息呈现面部表情和/或动作;所述聊天消息模块经配置以用户的当前消息区域内显示所述用户发送的消息,并在监视到聊天过程中所述即时通信组中用户发送的表情消息时,将所述表情消息发送给所述头像处理模块。
13.本发明实施例提供了一种电子设备,包括处理器以及存储有计算机程序指令的存储器,所述处理器执行所述计算机程序指令时实现前述的社交应用中的聊天消息处理方法。
14.本发明实施例提供一种计算机可读存储介质,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前述的社交应用中的聊天消息处理方法。
15.本发明实施例提供一种计算机程序产品,所述计算机程序产品中包括计算机程序指令,所述计算机程序指令被处理器执行时实现前述的社交应用中的聊天消息处理方法。
16.相比于现有技术中的平面表情符号、单独增加在消息区域中的静态或动态的表情图片,利用本发明的实施例既能够减小占用的消息区域面积,又能够通过头像的面部表情、头部、肢体等的动作强化了聊天过程中用户之间传递的情绪,消息的显示方式丰富,提高了交流的沉浸感和代入感。
附图说明
17.为了更清楚地说明本发明实施例的实现方式,以下对本发明实施例中的附图作简单介绍。
18.图1示意性地示出了一种基于服务器和终端设备的社交应用系统架构示意图。
19.图2是根据本发明一个实施例的社交应用中的聊天消息处理方法流程图。
20.图3是根据本发明一个实施例的聊天窗口示意图。
21.图4是根据本发明一个实施例将表情消息融合到所述用户的3d角色中的处理流程图。
22.图5是根据本发明另一个实施例在将表情消息融合到所述用户的3d角色中之后的处理流程图。
23.图6是根据本发明另一个实施例在建立聊天窗口之后的处理流程图。
24.图7是根据本发明一个实施例的内置有聊天消息处理装置的终端设备20的原理框图。
25.图8是根据本发明另一个实施例的内置有聊天消息处理装置的终端设备20的原理框图。
26.图9是本发明一个实施例提供的一种电子设备60的结构示意图。
27.图10是本发明实施例的示例性终端设备的软件结构示意图。
具体实施方式
28.以下将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,提供这些实施方式的目的是为了使本发明的原理和精神更加清楚和透彻,使本领域技术人员能够更好地理解进而实现本发明的原理和精神。本文中提供的示例性实施方式仅是本发明的一部分实施方式,而不是全部的实施方式。基于本文中的实施方式,本领域普通技术人员在不付出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
29.本领域技术人员知晓,本发明的实施方式可以实现为一种系统、装置、设备、方法、计算机可读存储介质或计算机程序产品。因此,本发明可以具体实现为以下至少一种形式:完全的硬件、完全的软件,或者硬件与软件结合的形式。根据本发明的具体实施方式,本发明请求保护一种聊天消息处理方法、装置、终端设备、服务器、计算机可读存储介质及计算机程序产品。
30.在本文中,诸如第一、第二、第三之类的用语,仅用来将一个实体(或操作)与另一个实体(或操作)区分开来,而不在于要求或暗示这些实体(或操作)之间存在任何顺序或关联。
31.本发明的实施例可应用于服务器和终端设备。请参考图1,图1示意性地示出了一种基于服务器和终端设备的社交应用系统架构示意图。服务器10与终端设备20中分别安装有社交应用的服务端软件和客户端软件,通过服务端与客户端的配合实现社交应用。本发明提供的社交应用中的聊天消息方法可应用于用户的终端设备,方法中的步骤可由终端设备侧的社交应用的客户端或终端设备侧的社交应用客户端与服务器侧的社交应用服务端共同实现。为了区分,本发明将终端设备的用户称为第一用户,将与第一用户建立聊天活动的用户称为第二用户,在以下的说明中,当说明的方案适用于第一用户和第二用户时称为用户。用户之间的聊天活动通过聊天窗口呈现在用户的终端设备的显示界面上。
32.以下通过若干示例性实施例或代表性实施方式对本发明的原理和精神进行详细阐释。
33.图2是根据本发明一个实施例的社交应用中的聊天消息处理方法流程图,所述方法应用于第一用户的终端设备,图3是根据本发明一个实施例的聊天窗口示意图,结合图2和图3说明本实施例的所述方法,所述方法包括以下步骤:
34.步骤s1,基于与所述第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口。参见图3,图3所示的显示界面则为一个通信组建立的聊天窗口,在本实施例中,所述通信组共有两个用户,右边为第一用户,即呈现当前聊天窗口的用户终端设备的用户,左边为第二用户,为第一用户的好友。
35.步骤s2,在接收到用户发送的消息时,在所述聊天窗口中为所述用户创建消息区域,并在所述消息区域中生成头像显示位,其中,一个消息区域内包括一个头像显示位。参见图3,在两个用户分别发送消息时,分别为两个用户建立了对应的消息区域11,每个消息区域11中包括一个头像显示位12。
36.步骤s3,获取发送所述消息的用户的3d角色,并将所述用户的所述3d角色加载到所述头像显示位作为聊天头像。其中,所述3d角色作为用户化身,包括3d人物模型,所述3d人物模型可以为用户自己设置,也可以是系统随机指定。在一个可选实施例中,为了生动地表现出用户化身,所述3d人物模型能够动态地显示在头像显示位中,例如按照预置条件改
变动作或状态,预置条件例如为用户设置的状态、随机的动作等。动态的头像能够有效地提高沉浸感和代入感。
37.步骤s4,在所述用户的当前消息区域内显示所述用户发送的消息。参见图3,将用户发送的消息显示与其对应的消息区域11中。在一个可选的实施例中,每条消息显示在消息框13中,通过设置消息框13的形状,使所述消息框13具有指向。在一个可选的实施例中,在消息区域11中,头像显示位12与消息的显示区域呈左右并列的排列关系,所述消息框13的指向形状与头像显示位12相对,从而得到消息指向头像的效果,避免了两个用户都在发送消息时混淆消息的发送来源的问题。当有多条消息连续显示时,所述多条连续消息从上向下排列,如图3中的第二用户发送的两条连续消息的排列方式。另外,还可以设置消息框13的底色,从而能够进一步区分不同用户发送的消息。
38.步骤s5,监视聊天过程中所述即时通信组中用户是否发送表情消息,如果监视到有用户发送了表情消息,在步骤s6将所述表情消息融合到所述用户的3d角色中,使用户的3d角色做出对应的表情或动作,以达到传达情绪的目的。
39.参见图4,其为根据本发明一个实施例将表情消息融合到所述用户的3d角色中的处理流程图。在本实施例中,当一个用户通过聊天窗口中的输入栏选择表情符号并发送时,通过以下步骤将所述表情消息融合到所述用户的3d角色中:
40.步骤s61,获取所述的表情符号。
41.步骤s62,查询所述表情符号的文字描述信息。
42.步骤s63,判断是否得到所述表情符号的文字描述信息,如果得到了所述表情符号的文字描述信息,在步骤s64根据所述文件描述信息确定表情数据。如果没有文字描述信息,在步骤s65识别所述表情符号的关键点以得到表情数据。所述的表情数据包括一组或多组面部部位数据的时间序列,所述的面部部位例如为一个或多个面部骨骼、面部肌肉等,具有多个时间信息的同一面部部位的数据构成了一个面部部位数据的时间序列,当面部部位为多个时,则有多个这样的时间序列,这些时间序列的时间信息相同。在一个实施例中,服务端或客户端预置有表情数据与表情类型(或描述信息)的对应关系表,每一种表情与一组表情数据相对应。例如下表1所示:
43.表1
[0044][0045][0046]
当得到所述文件描述信息时,根据所述文件描述信息确定表情类型,而后基于表
情类型在数据库中提取相应序号的表情数据。
[0047]
步骤s66,获取用户的3d角色数据,如面部骨骼和肌肉等多个面部部位的数据。
[0048]
步骤s67,基于表情数据改变3d角色数据得到一个图像序列,并按照设定的帧率生成表情动画文件,其为3d动画文件。其中,所述图像序列的第一幅图像为当前的3d角色图像。例如,将表情数据中的面部部位数据按照时间信息分成多组数据,从第一组数据开始,计算相邻两组同一面部部位的数据的变化,并将该面部部位的数据变化映射到3d角色对应面部部位的数据变化进而得到3d角色对应面部部位的新数据,同理得到全部的面部部位的新数据,将3d角色的面部新数据组合在一起则构成了一个图像。按照该步骤处理其他组的数据进而得到多组图像,则形成了一个图像序列。
[0049]
步骤s68,向头像显示位加载并播放所述3d动画文件。
[0050]
在另一个实施例中,当一个用户通过聊天窗口中的输入栏选择表情录制时,可根据录制的视频生成表情数据。例如,首先录制得到视频,而后间隔一定时间或逐帧抽取一定数量的图像帧,从中得到具有时间对应关系的面部关键部位的位置数据,从而得到一组面部关键部位数据的时间序列,再执行上述的步骤s66至s68。
[0051]
又例如,在用户录制表情时,可根据融合时需要改变的头像中3d角色的面部部位,按照一定频率捕获用户相应面部部位的位置,在每次得到用户相应面部部位的位置时根据上一次捕获的对应面部部位的位置计算得到该面部部位的位置差异,并将所述部位的位置差异映射到3d角色面部部位的位置差异,基于所述差异改变3d角色面部部位的位置,从而能够实时地将录制的表情融合到头像的3d角色。
[0052]
又例如,系统数据库中预置有3d动画及对应的已经提取好的表情数据,如果没有已经提取好的表情数据,从所述预置的3d动画中提取出面部数据,进而得到面部部位数据的时间序列,即得到了表情数据。而后再执行上述的步骤s66至s68则得到了表情动画文件。
[0053]
在前述实施例中,表情数据只包括了面部的骨骼和肌肉等面部部位的数据,然而在另外的一些实施例中也可以包括动作的数据。所述的动作例如为与表情类型匹配的、预置好的头部动作,如在微笑时歪头,在大笑时头部前后摇动,显示出前仰后合的状态。所述的动作还可以是与表情类型匹配的、预置好的肢体动作,如惊恐表情时举手到头顶,同时弓背,通过大幅度的肢体变化增强效果。
[0054]
相比于现有技术中的平面表情符号、单独增加在消息区域中的静态表情图片,本发明通过头像的面部表情、头部、肢体等的动作变化,在聊天时更具有代入感,起到表情的强化作用。
[0055]
在图3所示的实施例中,聊天头像包括头像显示窗口及突出所述头像显示窗口部分边界的3d角色半身图像截图。由于聊天过程中需要频繁地为用户创建消息区域,因而需要频繁地加载3d角色。在加载一个动态的3d角色时需要处理大量的数据,因而会占用大量的内存及cpu。当用户的终端设备的性能不足时会出现卡顿的现象,甚至可能会影响其他的应用。因而为了不占用过多的内存及cpu,本实施例只根据所述头像显示窗口的大小,截取3d角色半身图像,将该3d角色半身图像叠加到头像显示窗口中,因而能够在加载头像时大大减小数据处理量,而且本实施例在将该3d角色半身图像叠加到头像显示窗口中时,使其部分突出所述头像显示窗口部分边界,增加了头像的立体感。
[0056]
图5是根据本发明另一个实施例在将表情消息融合到所述用户的3d角色中之后的
处理流程图。本实施例在将表情消息融合到所述用户的3d角色中之后,还包括以下步骤:
[0057]
步骤s71,生成所述3d动画文件中3d角色呈现的面部表情和/或动作的文字描述信息。如图3中的文字描述信息14。
[0058]
步骤s72,将所述文字描述信息填加在聊天头像旁边的文字显示位中。
[0059]
步骤s73,在所述文字显示位中显示关联标识15。
[0060]
步骤s74,建立所述关联标识15与3d动画文件的关联关系。
[0061]
其中,聊天头像旁边的文字显示位为一个或多个,当为多个时,按照与其对应的3d动画文件的生成时间顺序排列在聊天头像旁边。如图3所示,其中有4个面部表情和/或动作的文字描述信息,并按照时间顺序从上向下排列。
[0062]
步骤s75,监视用户对所述关联标识的操作。
[0063]
步骤s76,判断是否得到用户对所述关联标识的播放操作,如果得到了用户对所述关联标识的播放操作,在步骤s77向头像显示位加载并播放所述3d动画文件,并在所述3d动画文件播放完后替换为3d角色的图像截图。
[0064]
本实施例使用户能够重复查看用户发出或接收的表情消息。
[0065]
图6是根据本发明另一个实施例在建立聊天窗口之后的处理流程图。参考图3,在本实施例中,在用户的终端设备显示界面建立了聊天窗口之后进一步包括以下步骤:
[0066]
步骤s11,分别获取所述即时通信组中每个用户的3d角色。
[0067]
步骤s12,将每个用户的3d角色分别加载到所述聊天窗口中的每个用户的用户状态位。如图3中的状态卡片21中包括两个用户状态位,分别显示第一用户和第二用户的3d角色20。
[0068]
步骤s13,获取每个用户的第一状态数据。所述的第一状态数据例如为用户通过客户端设置的数据,其为用户设置的一段文字信息、图形标识或音频信息,其存储位置例如为客户端和/或服务端。对于第一用户的第一状态数据,可读取客户端中存储的用户设置数据得到所述第一状态数据,对于第二用户的第一状态数据,第一用户的客户端向服务端发送请求,通过服务端得到第二用户的第一状态数据。
[0069]
步骤s14,将所述每个用户的第一状态数据分别填加在对应的用户状态位中。如图3所示,第一用户的第一状态数据22为一段文字及图形标识,并放置在3d角色下方。
[0070]
进一步地,还可以包括可选步骤s15,在最新聊天消息后面的第二用户状态位同步显示第二用户的第一状态数据。如图3中,当第二用户改变其第一状态数据后,其显示在状态卡片21中,并同步显示在当前最新聊天消息后的第二用户状态位23。使得用户的状态变更时,不但能够显示在状态卡片中,还同时显示在当前的最新聊天消息后,使聊天中的对方能够及时且直观地感受到对方状态的变化,进一步强化了交流的代入感。为了能够及时获得对方用户更新的状态,还包括以下步骤:
[0071]
步骤s16,监视即时通信组中的每个用户的第一状态数据。其中,当用户修改了其第一状态数据,所述用户的客户端该数据将发送给服务端,并由服务端发送给正在与其进行聊天活动的对方用户的客户端。
[0072]
步骤s17,判断用户的第一状态数据是否发生改变,如果用户的第一状态数据发生改变,在步骤s18更新所述用户的用户状态位中的第一状态数据。
[0073]
步骤s19,生成状态数据更新通知,并显示在当前聊天窗口的状态更新通知位中。
在一个实施例中,所述的状态更新通知位例如为步骤s15中第二用户状态位,二者可以在同一位置,也可以不在同一位置,当不在同一位置时,还在第二用户状态位同步显示新的第一状态数据。
[0074]
参见图3,本实施例为了突出用户之间的社交关系,在两个用户的用户状态位之间还设置有亲密度信息位24,在向用户状态位中填加数据时,还包括获取第一用户和第二用户的亲密度数据,并将所述亲密度数据填加到亲密度信息位中。所述的亲密度数据可包括图形标识,例如根据亲密关系设置相应形状、颜色的标识,例如,当二者为朋友关系时所述的标识例如为笑脸,当二者为情侣关系时所述的标识例如为心形图案。所述的亲密度数据还可以包括文字、数字等字符,例如由数值大小代表该类型的亲密程度。所述亲密度数据通过一定的逻辑算法在两个用户建立起社交关系时开始计算,实时或定时更新,并存储在用户的客户端及服务端。
[0075]
参见图3,在一个实施例中,第二用户的用户状态位还可以包括用户标签25,用于特别标识其与第一用户的关系,用于作为亲密度数据的补充。
[0076]
为了方便聊天窗口中的用户查看当前聊天活动中用户的个人信息,在建立起用户状态位后,还建立所述用户状态位与所述用户的个人信息页的关联关系,当用户以点击等方式对该用户状态位实施操作时,可跳转到所述用户的个人信息页,从而显示个人信息页。
[0077]
在本实施例中,当经过前述的处理得到了两个用户的3d角色、第一状态数据、亲密度数据、用户标签数据等等后,以卡片的方式在聊天窗口中呈现这些信息,从而能够减少聊天过程中的数据处理量。
[0078]
针对聊天过程中用户发送的消息,本发明还监视聊天过程中同一用户发送连续消息的时间间隔。所述的连续消息是指多条由同一用户发送的消息,中间没有插入其他用户发送的消息。当同一用户发送连续消息的时间间隔小于第一阈值,如1分钟、2分钟等,将这些连续消息按照时间顺序显示在同一当前消息区域中,如图3所示,第二用户发送了一条消息后又发送了一条消息,由于中间没有插入其他用户的消息,所以这两条消息为连续消息,根据两条消息的发送时间可以确定两条消息的时间间隔。由于该时间间隔小于设定的第一阈值,如1分钟,则将第二条消息显示当前的消息区域内。
[0079]
通过本实施例中将符合时间要求的连续消息显示在同一当前消息区域中,减少了创建消息区域的相关操作,因而能够提高数据处理速度,并且方便用户查看消息。
[0080]
为了避免同一用户发送的连续消息时间跨度过大而导致消息混淆,在一个实施例中,监视当前消息区域中的消息时间跨度,例如计算当前最新连续消息的发送时间和第一条消息的发送时间的差值,如果该差值小于第二阈值,则不需要新建消息区域,仍然将当前消息显示在当前的消息区域中。如果该差值大于第二阈值,则为所述用户重新创建一个消息区域,并在新建的消息区域中显示该消息。从显示效果来看,此时先显示用户头像,而后在头像旁边显示所述消息。
[0081]
从消息数量的角度,如果一个消息区域中的消息数量过多也会造成消息混淆,例如在当前一屏显示不下消息区域中的消息时,屏幕界面向上移动,会出现当前全屏都是消息而没有用户头像的情况,这会给用户造成困扰。为了避免出现该情况,还监视当前消息区域中的连续消息数量,如果当前消息区域中的连续消息数量超过第三阈值,则创建新的消息区域。或者是监视当前消息区域的长度,如果当前消息区域的长度超过了屏幕界面的长
度,则创建新的消息区域。
[0082]
当然,在聊天窗口中除了经过上述处理得到的各种显示内容外,还包括一些其他显示内容,如在窗口的标题栏中显示第二用户的用户名,还可以包括一些其他信息,如第二用户的地理位置信息、对方虚拟小屋的入口、是否在线的在线状态信息等。还包括一些跳转标识,如图3中的左上角的返回标识、右上角的更多信息的显示标识,界面下方的输入栏,及输入栏中用于输入各种类型信息的输入窗口入口标识等等。
[0083]
需要说明,对于本发明的各个实施例,为描述清楚,均表述为一系列的动作或处理的组合。本领域技术人员应知悉,其实现过程不受所描述的动作或处理的顺序限制,本发明实施例中的某些步骤可以采用其他顺序处理或者同时进行处理。
[0084]
与本发明提供的方法对应地,本发明还提供一种聊天消息处理装置,其置于终端设备20中。图7是根据本发明一个实施例的内置有聊天消息处理装置的终端设备20的原理框图。在本实施例中,所述终端设备20至少包括显示屏幕21和通信模块22,所述的显示屏幕例如为手机显示屏,具有显示和触摸功能,通信模块21例如为2g/3g/4g/5g等通信模块,其能够与服务端通信。终端设备还包括摄像头等其他硬件模块(未示出)。聊天消息处理装置200包括通信组创建模块201、消息区域创建模块202、头像处理模块203和聊天消息模块204,其中,所述的通信组创建模块201经配置以基于与所述第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口。所述消息区域创建模块202经配置以在接收到用户消息时,在所述聊天窗口中为所述用户创建消息区域,并在所述消息区域中生成头像显示位,其中,一个消息区域内包括一个头像显示位;所述头像处理模块203经配置以获取发送所述消息的用户的3d角色,并将所述用户的所述3d角色加载到所述头像显示位作为聊天头像,并将用户发送的表情消息融合到所述用户的3d角色中;其中,所述3d角色包括3d人物模型,在将所述表情消息融合到所述3d角色时,所述3d人物模型按照所述表情消息呈现面部表情和/或动作;所述聊天消息模块204经配置以在用户的当前消息区域内显示所述用户发送的消息,并在监视到聊天过程中所述即时通信组中用户发送的表情消息时,将所述表情消息发送给所述头像处理模块。
[0085]
进一步地,所述头像处理模块203在获取到发送所述消息的用户的3d角色后,截取其上半身的图像截图,并加载到消息区域中的头像显示位。当得到表情消息时,基于所述表情消息和3d人物模型生成3d动画文件,所述3d动画的第一帧图像为当前聊天头像中的3d角色的图像截图;向头像显示位加载并播放所述3d动画文件,则实现了将表情消息融合到3d角色的功能。进一步地,所述头像处理模块203还生成所述3d动画文件中3d角色呈现的面部表情和/或动作的文字描述信息,并发送给聊天消息模块204,所述聊天消息模块204将所述文字描述信息填加在聊天头像旁边的文字显示位中;并建立所述文字显示位与3d动画文件的关联关系。而后在所述文字显示位中显示与3d动画文件进行关联的关联标识。进一步地,所述文字显示位可以为一个或多个,当为多个时,所述聊天消息模块204按照与其关联的3d动画文件的生成时间顺序排列在聊天头像旁边。
[0086]
所述头像处理模块203监视用户对所述关联标识的操作,响应于获得到用户对所述关联标识的播放操作,向头像显示位加载并播放所述3d动画文件,在所述3d动画文件播放完后替换为3d角色的图像截图。
[0087]
其中,所述消息区域创建模块202监视聊天过程中同一用户发送连续消息的时间
间隔;响应于同一用户发送连续消息的时间间隔小于第一阈值,当所述连续消息按照时间顺序显示在同一当前消息区域。所述消息区域创建模块202还监视当前消息区域中的消息时间跨度,在当前消息区域中的消息时间跨度超过第二阈值时创建新的消息区域。所述消息区域创建模块202还可选地监视当前消息区域中的连续消息数量,在当前消息区域中的连续消息数量超过第三阈值时创建新的消息区域。所述消息区域创建模块202还可选地监视当前消息区域的长度,在当前消息区域的长度超过屏幕界面长度时创建新的消息区域。
[0088]
图8是根据本发明另一个实施例的内置有聊天消息处理装置200的终端设备的原理框图。在实施例在图7所示的实施例的基础上还包括状态模块205,所述状态模块205分别获取所述即时通信组中每个用户的3d角色,将每个用户的3d角色分别加载到所述聊天窗口中的每个用户的用户状态位,获取每个用户的第一状态数据,将所述每个用户的第一状态数据分别填加在对应的用户状态位中。
[0089]
进一步地,状态模块205还可选地监视即时通信组中的每个用户的第一状态数据是否改变;在用户的第一状态数据发生改变时更新所述用户的用户状态位中的第一状态数据,并生成状态数据更新通知,显示在当前聊天窗口的状态更新通知位中。
[0090]
进一步地,状态模块205还可选地在建立聊天窗口之后获取第一用户和第二用户的亲密度数据;将所述亲密度数据填加在所述第一用户和所述第二用户的状态位之间的亲密度信息位中。建立所述用户状态位与所述用户的个人信息页的关联关系,在检测到对所述用户状态位的操作时跳转到所述用户的个人信息页。
[0091]
本领域技术人员应理解,本文中所描述的实施例属于优选实施例,所涉及的动作、步骤、模块或单元等并不一定是本发明实施例所必须的。在上述实施例中,本发明实施例对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0092]
图9是本发明一个实施例提供的一种电子设备60的结构示意图,电子设备60包括处理器61、存储器62以及用于连接处理器61和存储器62的通信总线,其中在存储器62中存储有可以在处理器61上运行的计算机程序,处理器61运行该计算机程序时可执行或称实现本发明中各个实施例的方法中的步骤。电子设备60还包括通信接口,用于接收和发送数据。电子设备60可以是本发明实施例中的服务器,也可以是本发明实施例中的终端设备。
[0093]
在一些实施例中,处理器61可以是中央处理器(central processing unit,cpu)、图形处理器(graphics processing unit,gpu)、应用处理器(application processor,ap)、调制解调处理器、图像信号处理器(image signal processor,isp)、控制器、视频编解码器、数字信号处理器(digital signal processor,dsp)、基带处理器、神经网络处理器(neural-network processing unit,npu)等;处理器61还可以是其他通用处理器、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或其他可编程逻辑器件、分立门或晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器,也可以是任何常规的处理器等。其中,神经网络处理器npu通过借鉴生物神经网络结构,可对输入信息快速处理,还可以不断进行自我学习。通过npu电子设备60可以实现智能认知等应用,例如图像识别、人脸识别、语义识别、语音识别、文本理解等。
[0094]
在一些实施例中,存储器62可以是电子设备60的内部存储单元,例如电子设备60
的硬盘或内存;存储器62也可以是电子设备60的外部存储设备,例如电子设备60上配备的插接式硬盘、智能存储卡(smart media card,smc)、安全数字(secure digital,sd)卡、闪存卡(flash card)等。存储器62还可以既包括电子设备60的内部存储单元也包括外部存储设备。存储器62可用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如计算机程序的程序代码等。存储器62包括但不限于是随机存储记忆体(random access memory,ram)、只读存储器(read-only memory,rom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)或便携式只读存储器(compact disc read-only memory,cd-rom)。存储器62用于存储电子设备60所执行的程序代码和所传输的数据。存储器62还可以用于暂时地存储已经输出或者将要输出的数据。
[0095]
本领域技术人员可以理解,图9仅是电子设备60的举例,并不构成对电子设备60的限定,电子设备60可以包括比图示更多或更少的部件,或者组合某些部件,或者包括不同的部件,例如还可以包括输入输出设备、网络接入设备等。
[0096]
图10是本发明实施例的终端设备的软件结构示意图。以手机操作系统为android系统为例,在一些实施例中,将android系统分为四层,分别为:应用程序层、应用程序框架层(framework,fwk)、系统层以及硬件抽象层,层与层之间通过软件接口通信。
[0097]
首先,应用程序层可以包括多个应用程序包,应用程序包可以是例如通话、相机、视频、导航、天气、即时通讯、教育等各种应用程序app,也可以是基于ar技术的应用程序app。
[0098]
第二,应用程序框架层fwk为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层可以包括一些预先定义的函数,例如用于接收应用程序框架层所发送的事件的函数。
[0099]
应用程序框架层可以包括窗口管理器、资源管理器以及通知管理器等。
[0100]
其中,窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
[0101]
其中,资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
[0102]
其中,通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
[0103]
此外,应用程序框架层还可以包括视图系统,视图系统包括可视控件,例如显示文字的控件、显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的,例如短信通知图标的显示界面上可以包括显示文字的视图以及显示图片的视图。
[0104]
第三,系统层可以包括多个功能模块,例如传感器服务模块、物理状态识别模块、三维图形处理库(例如:opengles),等等。
[0105]
其中,传感器服务模块用于对硬件层各类传感器上传的传感器数据进行监测,确定手机的物理状态;物理状态识别模块用于对用户手势、人脸等进行分析和识别;三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
[0106]
此外,系统层还可以包括表面管理器和媒体库。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。
[0107]
最后,硬件抽象层是硬件和软件之间的层。硬件抽象层可以包括显示驱动、摄像头驱动、传感器驱动等,用于驱动硬件层的相关硬件,如显示屏、摄像头、传感器等。
[0108]
本发明实施例还提供一种计算机可读存储介质,其存储有计算机程序或指令,该计算机程序或指令被执行时以实现上述实施例中所涉及的方法中的步骤。
[0109]
本发明实施例还提供一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被执行时以实现上述实施例中所涉及的方法中的步骤。示例性的,该计算机程序产品可以为一个软件安装包。
[0110]
本领域技术人员应该知悉,本发明实施例所描述的方法、步骤或者相关模块/单元的功能可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式来实现,也可以是由处理器执行计算机程序指令的方式来实现。其中,该计算机程序产品包括至少一个计算机程序指令,计算机程序指令可以由相应的软件模块组成,软件模块可以被存放于ram、闪存、rom、eprom、eeprom、寄存器、硬盘、移动硬盘、只读光盘(cd-rom)或者本领域熟知的任何其它形式的存储介质中。该计算机程序指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。例如,该计算机程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质、或者半导体介质(如ssd)等。
[0111]
关于上述实施例中描述的各个装置/产品,其中包含的模块/单元可以是软件模块/单元,也可以是硬件模块/单元,还可以部分是软件模块/单元,部分是硬件模块/单元。例如,对于应用或集成于芯片的装置/产品,其包含的各个模块/单元可以都用电路等硬件的方式实现,或者,至少部分模块/单元采用软件程序的方式实现,运行于芯片内部集成的处理器,剩余的部分模块/单元采用电路等硬件方式实现。又如,对于应用或集成于终端的装置/产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,或者,至少部分模块/单元采用软件程序的方式实现,运行于终端内部集成的处理器,剩余部分模块/单元可以采用电路等硬件方式实现。
[0112]
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

技术特征:
1.一种聊天消息处理方法,其特征在于,应用于第一用户的终端设备,包括:基于与所述第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口;在接收到用户发送的消息时,在所述聊天窗口中为所述用户创建消息区域,并在所述消息区域中生成头像显示位,其中,一个消息区域内包括一个头像显示位,所述用户为第一用户或第二用户;获取发送所述消息的用户的3d角色,并将所述用户的所述3d角色加载到所述头像显示位作为聊天头像;在所述用户的当前消息区域内显示所述用户发送的消息;监视聊天过程中所述即时通信组中用户发送的表情消息;以及响应于获取到用户发送的表情消息,将所述表情消息融合到所述用户聊天头像的3d角色中;其中,所述3d角色包括3d人物模型,在将所述表情消息融合到所述3d角色时,所述3d人物模型按照所述表情消息呈现面部表情和/或动作。2.根据权利要求1所述的方法,其特征在于,所述聊天头像为3d角色的图像截图;对应地,在将所述表情消息融合到所述3d角色中时进一步包括:基于所述表情消息和3d人物模型生成3d动画文件,其中,所述3d动画的第一帧图像为当前聊天头像中的3d角色的图像截图;以及向头像显示位加载并播放所述3d动画文件。3.根据权利要求2所述的方法,其特征在于,在生成3d动画文件时进一步还包括:生成所述3d动画文件中3d角色呈现的面部表情和/或动作的文字描述信息;以及将所述文字描述信息填加在聊天头像旁边的文字显示位中。4.根据权利要求2所述的方法,其特征在于,在生成3d动画文件时进一步包括:创建3d动画文件的关联标识,并建立所述关联标识与3d动画文件的关联关系;监视用户对所述关联标识的操作;以及响应于用户对所述关联标识的播放操作,向头像显示位加载并播放所述3d动画文件。5.根据权利要求3所述的方法,其特征在于,所述文字显示位为一个或多个,当为多个时,按照与其对应的3d动画文件的生成时间顺序排列在聊天头像旁边区域。6.根据权利要求1所述的方法,其特征在于,在建立聊天窗口之后进一步包括:分别获取所述即时通信组中每个用户的3d角色;将每个用户的3d角色分别加载到所述聊天窗口中的每个用户的用户状态位;获取每个用户的第一状态数据;以及将每个用户的所述第一状态数据分别填加在对应的用户状态位中;其中,所述用户包括第一用户和一个或多个第二用户。7.根据权利要求6所述的方法,其特征在于,进一步包括:在最新聊天消息后面的第二用户状态位同步显示第二用户的第一状态数据。8.根据权利要求6或7所述的方法,其特征在于,所述第一状态数据包括文字和/或图形标识。9.根据权利要求6所述的方法,其特征在于,进一步包括:
监视即时通信组中每个用户的第一状态数据是否改变;响应于用户的第一状态数据发生改变,更新所述用户的用户状态位中的第一状态数据;以及生成状态数据更新通知并显示在当前聊天窗口的状态更新通知位中。10.根据权利要求6所述的方法,其特征在于,在建立聊天窗口之后进一步包括:获取第一用户和第二用户的亲密度数据;以及将所述亲密度数据填加在所述第一用户的用户状态位和所述第二用户的用户状态位之间的亲密度信息位中。11.根据权利要求10所述的方法,其特征在于,所述亲密度数据包括文字和/或图形标识。12.根据权利要求6所述的方法,其特征在于,进一步包括:建立用户状态位与所述用户的个人信息页的关联关系;响应于对所述用户状态位的操作跳转到所述用户的个人信息页。13.根据权利要求1所述的方法,其特征在于,进一步包括:监视聊天过程中同一用户发送连续消息的时间间隔;以及响应于同一用户发送连续消息的时间间隔小于第一阈值,将所述连续消息按照时间顺序显示在同一消息区域中。14.根据权利要求13所述的方法,其特征在于,进一步包括:监视当前消息区域中的消息时间跨度;以及响应于当前消息区域中的消息时间跨度超过第二阈值,创建新的消息区域;和/或者监视当前消息区域中的连续消息数量;以及响应于当前消息区域中的连续消息数量超过第三阈值,创建新的消息区域;和/或者监视当前消息区域的长度;以及响应于当前消息区域的长度超过屏幕界面的长度,创建新的消息区域。15.根据权利要求1所述的方法,其特征在于,聊天头像包括显示窗口及突出所述显示窗口部分边界的3d角色半身图像截图。16.根据权利要求2所述的方法,其特征在于,所述表情消息的内容为表情动画或表情符号,所述基于所述表情消息和3d人物模型生成3d动画文件的过程包括:根据所述表情消息获取对应的表情数据,所述表情数据至少包括一组或多组面部部位数据的时间序列;至少获取用户3d角色的面部部位数据;基于时间序列将所述面部部位数据映射到所述用户3d角色的面部部位数据,以得到一个面部图像序列;以及基于预置的帧率和所述面部图像序列生成所述3d动画文件。17.一种聊天消息处理装置,其特征在于,包括:通信组创建模块,经配置以基于与所述第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口;消息区域创建模块,经配置以在接收到用户消息时,在所述聊天窗口中为所述用户创建消息区域,并在所述消息区域中生成头像显示位,其中,一个消息区域内包括一个头像显
示位,所述用户为第一用户或第二用户;头像处理模块,经配置以获取发送所述消息的用户的3d角色,并将所述用户的所述3d角色加载到所述头像显示位作为聊天头像,并将用户发送的表情消息融合到所述用户的3d角色中;其中,所述3d角色包括3d人物模型,在将所述表情消息融合到所述3d角色时,所述3d人物模型按照所述表情消息呈现面部表情和/或动作;以及聊天消息模块,经配置以用户的当前消息区域内显示所述用户发送的消息,并在监视到聊天过程中所述即时通信组中用户发送的表情消息时,将所述表情消息发送给所述头像处理模块。18.一种电子设备,其特征在于,包括处理器以及存储有计算机程序指令的存储器,所述处理器执行所述计算机程序指令时实现如权利要求1-16中任一项所述的社交应用中的聊天消息处理方法。19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-16中任一项所述的社交应用中的聊天消息处理方法。20.一种计算机程序产品,其特征在于,其包括计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-16中任一项所述的社交应用中的聊天消息处理方法。

技术总结
本发明公开了一种聊天消息处理方法及装置。该方法包括:基于与第一用户进行即时通信的第二用户或第二用户组建立即时通信组及对应的聊天窗口;在所述聊天窗口中为发送消息的用户创建消息区域,并在所述消息区域中生成头像显示位;将所述用户的3D角色加载到所述头像显示位作为聊天头像;监视聊天过程中所述即时通信组中用户发送的表情消息;以及响应于获取到用户发送的表情消息,将所述表情消息融合到所述用户聊天头像的3D角色中;其中在将所述表情消息融合到所述3D角色时,所述3D角色按照所述表情消息呈现面部表情和/或动作。本发明强化了聊天过程中用户之间传递的情绪,消息的显示方式丰富,提高了交流的沉浸感和代入感。提高了交流的沉浸感和代入感。提高了交流的沉浸感和代入感。


技术研发人员:郝和乐
受保护的技术使用者:北京河图联合创新科技有限公司
技术研发日:2023.05.30
技术公布日:2023/8/28
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐