CN109885604A - 聊天消息展示方法、电子装置及计算机可读存储介质 - Google Patents
聊天消息展示方法、电子装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109885604A CN109885604A CN201910056841.7A CN201910056841A CN109885604A CN 109885604 A CN109885604 A CN 109885604A CN 201910056841 A CN201910056841 A CN 201910056841A CN 109885604 A CN109885604 A CN 109885604A
- Authority
- CN
- China
- Prior art keywords
- message
- history message
- local
- backstage
- user
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000001747 exhibiting effect Effects 0.000 title claims abstract description 31
- 238000012795 verification Methods 0.000 claims abstract description 22
- 230000001360 synchronised effect Effects 0.000 claims description 40
- 230000002085 persistent effect Effects 0.000 claims description 10
- 238000012790 confirmation Methods 0.000 claims description 7
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 230000018109 developmental process Effects 0.000 description 5
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Abstract
本发明涉及一种数据展示技术,揭露了一种聊天消息展示方法,该方法包括:将用户聊天消息存储至后台服务器;当用户查看历史记录时,校验用户身份;当校验通过后,从后台服务器获取预设条数的后台历史消息;将后台历史消息与本地数据库中的本地历史消息进行对比,判断后台历史消息与本地历史消息的消息序列是否一致;当消息序列不一致时,根据后台历史消息更新本地历史消息,直至消息序列一致;当消息序列一致时,从本地数据库中获取本地历史消息显示给用户查看。本发明还提供一种电子装置及计算机可读存储介质。本发明提供的聊天消息展示方法、电子装置及计算机可读存储介质能够防止泄露隐私,节省时间和流量,并保证历史消息有序展示。
Description
技术领域
本发明涉及数据展示技术领域,尤其涉及一种聊天消息展示方法、电子装置及计算机可读存储介质。
背景技术
目前市面上的聊天系统,有的没有历史记录功能(例如微信),换一个手机,历史消息就无法获取了;有的在获取历史消息时可能存在乱序情况,影响用户体验。另外,在机器人客服的聊天场景中,由于每次聊天时都需要请求后台拉取历史记录,会增加用户流量。并且,针对涉及用户隐私的聊天场景(例如保险业务),不方便将数据源泄露给第三方,因此需要一个独立的聊天系统。
发明内容
有鉴于此,本发明提出一种聊天消息展示方法、电子装置及计算机可读存储介质,以解决至少一个上述技术问题。
首先,为实现上述目的,本发明提出一种聊天消息展示方法,该方法包括步骤:
将用户聊天消息存储至后台服务器;
当用户查看历史记录时,校验用户身份;
当校验通过后,从所述后台服务器获取预设条数的后台历史消息;
将所述后台历史消息与本地数据库中的本地历史消息进行对比,判断所述后台历史消息与所述本地历史消息的消息序列是否一致;
当消息序列不一致时,根据所述后台历史消息更新所述本地历史消息,直至消息序列一致;及
当消息序列一致时,从所述本地数据库中获取所述本地历史消息显示给用户查看。
可选地,该方法还包括步骤:
在机器人客服聊天场景下,将从所述后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储,作为本地历史消息;
当机器人用户查看历史记录时,分段从所述本地数据库获取所述本地历史消息;
根据消息标签确认所述本地历史消息是否与后台历史消息同步;
当所述本地历史消息与所述后台历史消息未同步时,从所述后台服务器获取预设条数的后台历史消息,以将所述本地历史消息与所述后台历史消息同步;
当所述本地历史消息与所述后台历史消息已同步时,将所述本地历史消息显示给用户查看。
可选地,该方法还包括步骤:
判断当前聊天场景是否为保护模式;
当所述聊天场景为保护模式时,禁止用户对聊天界面进行截屏。
可选地,在所述将用户聊天消息存储至后台服务器的步骤中,当所述聊天消息为语音输入时,将所述聊天消息以语音消息形式保存,或者转换为文字消息进行保存。
可选地,所述消息标签为每条历史消息中记录的对应的上一条消息的id。
可选地,所述根据消息标签确认所述本地历史消息是否与后台历史消息同步的步骤包括:
根据所述消息标签,判断所述本地历史消息中每条历史消息的上一条消息是否正确;
若都正确,则确认所述本地历史消息已与所述后台历史消息同步;
若有不正确,则确认所述本地历史消息未与所述后台历史消息同步。
此外,为实现上述目的,本发明还提供一种电子装置,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的聊天消息展示系统,所述聊天消息展示系统被所述处理器执行时实现如上述的聊天消息展示方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有聊天消息展示系统,所述聊天消息展示系统可被至少一个处理器执行,以使所述至少一个处理器执行如上述的聊天消息展示方法的步骤。
相较于现有技术,本发明所提出的聊天消息展示方法、电子装置及计算机可读存储介质,可以在用户需要查看聊天历史记录时,首先校验用户身份,以防止泄露隐私;优先从本地数据库中获取本地历史消息显示给用户查看,节省时间和流量;但是在此之前先从后台服务器获取预设条数的后台历史消息,并与本地数据库中的本地历史消息进行对比,判断消息序列是否一致,当消息序列不一致时,根据后台历史消息更新本地数据库中的本地历史消息,直至消息序列一致,从而保证历史消息有序展示。
并且,在机器人聊天场景下,将从后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储,以节省用户流量,当用户查看历史记录时,首先根据消息标签确认本地历史消息是否与后台历史消息同步,同步后将本地历史消息显示给用户查看,从而保证历史消息有序展示,提升用户体验。
由于从后台到前端,都是独立的系统,且支持保护模式,可以禁止对聊天界面截屏,所以不存在将用户隐私泄露给第三方的情况。另外,所述聊天消息展示方法对应的程序采用SDK的形式提供,因此,任何终端应用都可以集成后,直接使用,减小二次开发成本。
附图说明
图1是本发明电子装置一可选的硬件架构的示意图;
图2是本发明聊天消息展示系统第一实施例的程序模块示意图;
图3是本发明聊天消息展示系统第二实施例的程序模块示意图;
图4是本发明聊天消息展示系统第三实施例的程序模块示意图;
图5是本发明聊天消息展示方法第一实施例的流程示意图;
图6是本发明聊天消息展示方法第二实施例的流程示意图;
图7是本发明聊天消息展示方法第三实施例的部分流程示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明电子装置2一可选的硬件架构的示意图。
本实施例中,所述电子装置2可包括,但不仅限于,可通过系统总线相互通信连接存储器11、处理器12、网络接口13。需要指出的是,图1仅示出了具有组件11-13的电子装置2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,所述电子装置2可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、掌上电脑、便携计算机等终端设备。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述电子装置2的内部存储单元,例如该电子装置2的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述电子装置2的外部存储设备,例如该电子装置2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可以既包括所述电子装置2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器11通常用于存储安装于所述电子装置2的操作系统和各类应用软件,例如聊天消息展示系统200的程序代码等。此外,所述存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子装置2的总体操作。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的聊天消息展示系统200等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述电子装置2与其他电子设备之间建立通信连接。
至此,己经详细介绍了本发明相关设备的硬件结构和功能。下面,将基于上述介绍提出本发明的各个实施例。
首先,本发明提出一种聊天消息展示系统200。
参阅图2所示,是本发明聊天消息展示系统200第一实施例的程序模块图。
本实施例中,所述聊天消息展示系统200包括一系列的存储于存储器11上的计算机程序指令,当该计算机程序指令被处理器12执行时,可以实现本发明各实施例的聊天消息展示操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,聊天消息展示系统200可以被划分为一个或多个模块。例如,在图2中,所述聊天消息展示系统200可以被分割成存储模块201、校验模块202、获取模块203、对比模块204、更新模块205、显示模块206。其中:
所述存储模块201,用于将用户聊天消息存储至后台服务器。
具体地,在用户使用聊天应用过程中,将每条聊天消息保存在本地数据库的同时,实时或者定时存储至后台服务器。其中,本地数据库中保存的历史消息可能因用户删除会话、清理缓存、更换手机等操作而无法保留,但后台服务器中保存的历史消息是永久保存的,以使用户可以查看所有的历史消息(对用户开放的历史记录没有时间限制)。
值得注意的是,本实施例中的聊天消息可以是文字输入,也可以是语音输入,语音输入的聊天消息可以以语音消息形式保存,也可以转换为文字消息进行保存。
所述校验模块202,用于当用户查看历史记录时,校验用户身份。
具体地,用户通过点击查看历史记录的操作,或者上拉获取更多消息的操作,请求按第一预设条数分段查看历史记录。在本实施例中,为了防止泄露用户隐私,需要校验用户身份,所述校验包括两个阶段,第一个阶段是在用户开启聊天应用时,判断用户登录的电子装置2(例如手机)是否更换过,如果是一个新手机,需要根据用户预先设置的校验方式优先级采用对应的校验方式来校验用户身份。所述校验方式包括给用户预设的手机号或邮箱发送提醒短信或邮件,告知其登录验证码;或者使用手机安全令牌来校验是否是用户本人的操作。第二个阶段是在接收到用户查看历史记录的请求后,对用户身份进行二次校验,校验方式包括指纹识别、图形解锁、密码等。当二次校验通过后,用户才有权限查看历史记录。
所述获取模块203,用于当校验通过后,从后台服务器获取第二预设条数的后台历史消息。
所述第二预设条数(一般为10条)可以与所述第一预设条数一致,也可以分别设置为不同的数量。
所述对比模块204,用于将所获取的后台历史消息与本地数据库中的本地历史消息进行对比,判断消息序列是否一致。
具体地,通过最新获取的后台历史消息与本地历史消息对比,判断是否需要更新本地数据库,如果后台历史消息的序列与本地历史消息的序列一致,则后续直接使用本地历史消息供用户查看。
所述更新模块205,用于当消息序列不一致时,根据后台历史消息更新本地数据库中的本地历史消息,直至消息序列一致。
具体地,如果后台历史消息的序列与本地历史消息的序列不一致,根据所获取的后台历史消息更新本地数据库,直至后台历史消息的序列与本地历史消息的序列相一致时,优先读取本地数据库中的本地历史消息供用户查看。
值得注意的是,当本地数据库中不存在对应的本地历史消息或者消息条数不够时,从后台服务器中继续获取后台历史消息,更新至本地数据库。
也就是说,该电子装置2每次从后台服务器获取10条后台历史消息,若后台历史消息与本地历史消息序列一致,则直接采用本地历史消息供用户查看。若不一致,则根据每次获取的第10条后台历史消息来更新本地数据库,直至后台历史消息与本地历史消息序列一致时,不再获取后台历史消息,将更新后的本地数据库中的本地历史消息供用户查看。当本地数据库中的本地历史消息显示完后(若用户还需要查看更多历史记录),继续从后台服务器获取后台历史消息。
所述显示模块206,用于当消息序列一致时,从本地数据库中获取本地历史消息显示给用户查看。
具体地,每次从本地数据库中获取所述第一预设条数的本地历史消息,分段显示给用户查看。
值得注意的是,在本实施例中除了以文字形式显示所述本地历史消息外,还可以根据用户需求将部分或全部消息转换为语音形式播放。
本实施例提供的聊天消息展示系统200,可以在用户需要查看聊天历史记录时,首先校验用户身份,以防止泄露隐私;优先从本地数据库中获取本地历史消息显示给用户查看,节省时间和流量;但是在此之前先从后台服务器获取预设条数的后台历史消息,并与本地数据库中的本地历史消息进行对比,判断消息序列是否一致,当消息序列不一致时,根据后台历史消息更新本地数据库中的本地历史消息,直至消息序列一致,从而保证历史消息有序展示,提升用户体验。
参阅图3所示,是本发明聊天消息展示系统200第二实施例的程序模块图。本实施例适用于机器人客服与普通用户之间的聊天场景。在本实施例中,所述的聊天消息展示系统200除了包括第一实施例中的所述存储模块201、获取模块203、显示模块206之外,还包括确认模块207、同步模块208。
所述存储模块201还用于将从后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储。
具体地,在机器人客服聊天场景下,每次聊天时都需要请求查看历史记录,因此为了节省用户流量,在进入聊天场景时,将从后台服务器中获取的后台历史消息和本地的实时聊天消息均在本地数据库持久化存储,这些被存储的消息将作为本地历史消息供用户后续查看。因此,在下一次进入该聊天场景时,不需要再次从后台服务器获取后台历史消息,而可以直接使用本地数据库中的本地历史消息。
所述获取模块203还用于当机器人用户查看历史记录时,根据第三预设条数分段从本地数据库获取本地历史消息。
具体地,机器人客服为了智能地与客户沟通,需要根据历史记录分析交易信息等数据。当接收到机器人用户查看历史记录的请求时,从本地数据库中获取第三预设条数(例如10条)的本地历史消息。
所述确认模块207用于根据消息标签确认所述本地历史消息是否与后台历史消息同步。
具体地,为了防止本地历史消息可能存在的乱序情况,在将本地历史消息显示给用户查看之前,首先要确认所述本地历史消息的有序性(连续性和完整性)。在本实施例中,可以根据每条消息的标签(tag)进行确认。所述历史记录中的每条历史消息都记录了对应的上一条消息的id作为标签。根据所述标签,可以判断所述本地历史消息中每条历史消息的上一条消息是否正确,若都正确,则表示所述本地历史消息已与后台历史消息同步;若有不正确,则表示所述本地历史消息未与后台历史消息同步。例如,根据id为a的历史消息的标签,其上一条消息应该是id为b的消息,但所述本地数据库中上一条却是id为c的消息,则所述本地历史消息出现了乱序情况,未与后台历史消息同步。
所述同步模块208用于当本地历史消息与后台历史消息未同步时,从后台服务器获取第四预设条数的后台历史消息,将本地历史消息与后台历史消息同步。
具体地,当判断出所述本地历史消息未与后台历史消息同步时,从后台服务器中获取第四预设条数(例如5条)的后台历史消息。例如,上述id为a的历史消息的上一条消息出现错误,则从所述后台服务器中查找到该id为a的历史消息,并向前获取第四预设条数的后台历史消息。根据所获取的第四预设条数的后台历史消息,可以更新所述本地数据库,将本地历史消息与后台历史消息同步(例如补充id为a的消息和id为c的消息之间的历史消息)。
所述显示模块206还用于当本地历史消息与后台历史消息已同步时,将本地历史消息显示给用户查看。
具体地,当所述本地历史消息与后台历史消息同步后,每次显示第三预设条数的本地历史消息给用户查看。
本实施例提供的聊天消息展示系统200,可以在机器人聊天场景下,将从后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储,以节省用户流量,当用户查看历史记录时,首先根据消息标签确认本地历史消息是否与后台历史消息同步,同步后将本地历史消息显示给用户查看,从而保证历史消息有序展示,提升用户体验。
参阅图4所示,是本发明聊天消息展示系统200第三实施例的程序模块图。在本实施例中,所述的聊天消息展示系统200在第一实施例或第二实施例的基础上,还包括判断模块209、禁止模块210。
所述判断模块209用于判断当前聊天场景是否为保护模式。
具体地,针对涉及用户隐私的聊天场景,可以将聊天界面设置为保护模式。在进入所述聊天场景时,根据预先设置的模式判断是否为保护模式。
所述禁止模块210用于当所述聊天场景为保护模式时,禁止用户对聊天界面进行截屏。
具体地,可以采用现有的禁止截屏的方法限制用户的截屏操作,以防泄露用户隐私。
本实施例提供的聊天消息展示系统200,由于从后台到前端,都是独立的系统,且支持保护模式,可以禁止对聊天界面截屏,所以不存在将用户隐私泄露给第三方的情况。
另外,所述聊天消息展示系统200对应的程序采用SDK(Software DevelopmentKit,软件开发工具包)的形式提供,因此,任何终端应用都可以集成后,直接使用,减小二次开发成本。
此外,本发明还提出一种聊天消息展示方法。
参阅图5所示,是本发明聊天消息展示方法第一实施例的流程示意图。在本实施例中,根据不同的需求,图5所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
该方法包括以下步骤:
步骤S500,将用户聊天消息存储至后台服务器。
具体地,在用户使用聊天应用过程中,将每条聊天消息保存在本地数据库的同时,实时或者定时存储至后台服务器。其中,本地数据库中保存的历史消息可能因用户删除会话、清理缓存、更换手机等操作而无法保留,但后台服务器中保存的历史消息是永久保存的,以使用户可以查看所有的历史消息(对用户开放的历史记录没有时间限制)。
值得注意的是,本实施例中的聊天消息可以是文字输入,也可以是语音输入,语音输入的聊天消息可以以语音消息形式保存,也可以转换为文字消息进行保存。
步骤S502,当用户查看历史记录时,校验用户身份。
具体地,用户通过点击查看历史记录的操作,或者上拉获取更多消息的操作,请求按第一预设条数分段查看历史记录。在本实施例中,为了防止泄露用户隐私,需要校验用户身份,所述校验包括两个阶段,第一个阶段是在用户开启聊天应用时,判断用户登录的电子装置2(例如手机)是否更换过,如果是一个新手机,需要根据用户预先设置的校验方式优先级采用对应的校验方式来校验用户身份。所述校验方式包括给用户预设的手机号或邮箱发送提醒短信或邮件,告知其登录验证码;或者使用手机安全令牌来校验是否是用户本人的操作。第二个阶段是在接收到用户查看历史记录的请求后,对用户身份进行二次校验,校验方式包括指纹识别、图形解锁、密码等。当二次校验通过后,用户才有权限查看历史记录
步骤S504,当校验通过后,从后台服务器获取第二预设条数的后台历史消息。
所述第二预设条数可以与所述第一预设条数一致,也可以分别设置为不同的数量。
步骤S506,将所获取的后台历史消息与本地数据库中的本地历史消息进行对比,判断消息序列是否一致。当消息序列不一致时,执行步骤S508。当消息序列一致时,执行步骤S510。
具体地,通过最新获取的后台历史消息与本地历史消息对比,判断是否需要更新本地数据库,如果后台历史消息的序列与本地历史消息的序列一致,则后续直接使用本地历史消息供用户查看。
步骤S508,根据后台历史消息更新本地数据库中的本地历史消息,直至消息序列一致。
具体地,如果后台历史消息的序列与本地历史消息的序列不一致,根据所获取的后台历史消息更新本地数据库,直至后台历史消息的序列与本地历史消息的序列相一致时,优先读取本地数据库中的本地历史消息供用户查看。
值得注意的是,当本地数据库中不存在对应的本地历史消息或者消息条数不够时,从后台服务器中继续获取后台历史消息,更新至本地数据库。
也就是说,该电子装置2每次从后台服务器获取10条后台历史消息,若后台历史消息与本地历史消息序列一致,则直接采用本地历史消息供用户查看。若不一致,则根据每次获取的第10条后台历史消息来更新本地数据库,直至后台历史消息与本地历史消息序列一致时,不再获取后台历史消息,将更新后的本地数据库中的本地历史消息供用户查看。当本地数据库中的本地历史消息显示完后(若用户还需要查看更多历史记录),继续从后台服务器获取后台历史消息。
步骤S510,从本地数据库中获取本地历史消息显示给用户查看。
具体地,每次从本地数据库中获取所述第一预设条数的本地历史消息,分段显示给用户查看。
值得注意的是,在本实施例中除了以文字形式显示所述本地历史消息外,还可以根据用户需求将部分或全部消息转换为语音形式播放。
本实施例提供的聊天消息展示方法,可以在用户需要查看聊天历史记录时,首先校验用户身份,以防止泄露隐私;优先从本地数据库中获取本地历史消息显示给用户查看,节省时间和流量;但是在此之前先从后台服务器获取预设条数的后台历史消息,并与本地数据库中的本地历史消息进行对比,判断消息序列是否一致,当消息序列不一致时,根据后台历史消息更新本地数据库中的本地历史消息,直至消息序列一致,从而保证历史消息有序展示,提升用户体验。
如图6所示,是本发明聊天消息展示方法的第二实施例的流程示意图。本实施例适用于机器人客服与普通用户之间的聊天场景。在本实施例中,根据不同的需求,图6所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
该方法包括以下步骤:
步骤S600,将从后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储。
具体地,在机器人客服聊天场景下,每次聊天时都需要请求查看历史记录,因此为了节省用户流量,在进入聊天场景时,将从后台服务器中获取的后台历史消息和本地的实时聊天消息均在本地数据库持久化存储,这些被存储的消息将作为本地历史消息供用户后续查看。因此,在下一次进入该聊天场景时,不需要再次从后台服务器获取后台历史消息,而可以直接使用本地数据库中的本地历史消息。
步骤S602,当机器人用户查看历史记录时,根据第三预设条数分段从本地数据库获取本地历史消息。
具体地,机器人客服为了智能地与客户沟通,需要根据历史记录分析交易信息等数据。当接收到机器人用户查看历史记录的请求时,从本地数据库中获取第三预设条数(例如10条)的本地历史消息。
步骤S604,根据消息标签确认所述本地历史消息是否与后台历史消息同步。当本地历史消息与后台历史消息未同步时,执行步骤S606。当本地历史消息与后台历史消息已同步时,执行步骤S608。
具体地,为了防止本地历史消息可能存在的乱序情况,在将本地历史消息显示给用户查看之前,首先要确认所述本地历史消息的有序性(连续性和完整性)。在本实施例中,可以根据每条消息的标签(tag)进行确认。所述历史记录中的每条历史消息都记录了对应的上一条消息的id作为标签。根据所述标签,可以判断所述本地历史消息中每条历史消息的上一条消息是否正确,若都正确,则表示所述本地历史消息已与后台历史消息同步;若有不正确,则表示所述本地历史消息未与后台历史消息同步。例如,根据id为a的历史消息的标签,其上一条消息应该是id为b的消息,但所述本地数据库中上一条却是id为c的消息,则所述本地历史消息出现了乱序情况,未与后台历史消息同步。
步骤S606,从后台服务器获取第四预设条数的后台历史消息,将本地历史消息与后台历史消息同步。
具体地,当判断出所述本地历史消息未与后台历史消息同步时,从后台服务器中获取第四预设条数(例如5条)的后台历史消息。例如,上述id为a的历史消息的上一条消息出现错误,则从所述后台服务器中查找到该id为a的历史消息,并向前获取第四预设条数的后台历史消息。根据所获取的第四预设条数的后台历史消息,可以更新所述本地数据库,将本地历史消息与后台历史消息同步(例如补充id为a的消息和id为c的消息之间的历史消息)。
步骤S608,将本地历史消息显示给用户查看。
具体地,当所述本地历史消息与后台历史消息同步后,每次显示第三预设条数的本地历史消息给用户查看。
本实施例提供的聊天消息展示方法,可以在机器人聊天场景下,将从后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储,以节省用户流量,当用户查看历史记录时,首先根据消息标签确认本地历史消息是否与后台历史消息同步,同步后将本地历史消息显示给用户查看,从而保证历史消息有序展示,提升用户体验。
参阅图7所示,是本发明聊天消息展示方法第三实施例的部分流程示意图。在本实施例中,所述聊天消息展示方法在上述第一实施例或第二实施例的基础上,还包括以下步骤:
步骤S700,判断当前聊天场景是否为保护模式。
具体地,针对涉及用户隐私的聊天场景,可以将聊天界面设置为保护模式。在进入所述聊天场景时,根据预先设置的模式判断是否为保护模式。
步骤S702,当所述聊天场景为保护模式时,禁止用户对聊天界面进行截屏。
具体地,可以采用现有的禁止截屏的方法限制用户的截屏操作,以防泄露用户隐私。
本实施例提供的聊天消息展示方法,由于从后台到前端,都是独立的系统,且支持保护模式,可以禁止对聊天界面截屏,所以不存在将用户隐私泄露给第三方的情况。
另外,所述聊天消息展示方法对应的程序采用SDK的形式提供,因此,任何终端应用都可以集成后,直接使用,减小二次开发成本。
本发明还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有聊天消息展示程序,所述聊天消息展示程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的聊天消息展示方法的步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种聊天消息展示方法,其特征在于,所述方法包括步骤:
将用户聊天消息存储至后台服务器;
当用户查看历史记录时,校验用户身份;
当校验通过后,从所述后台服务器获取预设条数的后台历史消息;
将所述后台历史消息与本地数据库中的本地历史消息进行对比,判断所述后台历史消息与所述本地历史消息的消息序列是否一致;
当消息序列不一致时,根据所述后台历史消息更新所述本地历史消息,直至消息序列一致;及
当消息序列一致时,从所述本地数据库中获取所述本地历史消息显示给用户查看。
2.如权利要求1所述的聊天消息展示方法,其特征在于,该方法还包括步骤:
在机器人客服聊天场景下,将从所述后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储,作为本地历史消息;
当机器人用户查看历史记录时,分段从所述本地数据库获取所述本地历史消息;
根据消息标签确认所述本地历史消息是否与后台历史消息同步;
当所述本地历史消息与所述后台历史消息未同步时,从所述后台服务器获取预设条数的后台历史消息,以将所述本地历史消息与所述后台历史消息同步;
当所述本地历史消息与所述后台历史消息已同步时,将所述本地历史消息显示给用户查看。
3.如权利要求1或2所述的聊天消息展示方法,其特征在于,该方法还包括步骤:
判断当前聊天场景是否为保护模式;
当所述聊天场景为保护模式时,禁止用户对聊天界面进行截屏。
4.如权利要求1所述的聊天消息展示方法,其特征在于,在所述将用户聊天消息存储至后台服务器的步骤中,当所述聊天消息为语音输入时,将所述聊天消息以语音消息形式保存,或者转换为文字消息进行保存。
5.如权利要求2所述的聊天消息展示方法,其特征在于,所述消息标签为每条历史消息中记录的对应的上一条消息的id。
6.如权利要求5所述的聊天消息展示方法,其特征在于,所述根据消息标签确认所述本地历史消息是否与后台历史消息同步的步骤包括:
根据所述消息标签,判断所述本地历史消息中每条历史消息的上一条消息是否正确;
若都正确,则确认所述本地历史消息已与所述后台历史消息同步;
若有不正确,则确认所述本地历史消息未与所述后台历史消息同步。
7.一种电子装置,其特征在于,所述电子装置包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的聊天消息展示系统,所述聊天消息展示系统被所述处理器执行时实现如下步骤:
将用户聊天消息存储至后台服务器;
当用户查看历史记录时,校验用户身份;
当校验通过后,从所述后台服务器获取预设条数的后台历史消息;
将所述后台历史消息与本地数据库中的本地历史消息进行对比,判断所述后台历史消息与所述本地历史消息的消息序列是否一致;
当消息序列不一致时,根据所述后台历史消息更新所述本地历史消息,直至消息序列一致;及
当消息序列一致时,从所述本地数据库中获取所述本地历史消息显示给用户查看。
8.如权利要求7所述的电子装置,其特征在于,所述聊天消息展示系统被所述处理器执行时还实现步骤:
在机器人客服聊天场景下,将从所述后台服务器中获取的历史消息和本地的实时聊天消息均在本地数据库持久化存储,作为本地历史消息;
当机器人用户查看历史记录时,分段从所述本地数据库获取所述本地历史消息;
根据消息标签确认所述本地历史消息是否与后台历史消息同步;
当所述本地历史消息与所述后台历史消息未同步时,从所述后台服务器获取预设条数的后台历史消息,以将所述本地历史消息与所述后台历史消息同步;
当所述本地历史消息与所述后台历史消息已同步时,将所述本地历史消息显示给用户查看。
9.如权利要求7或8所述的电子装置,其特征在于,所述聊天消息展示系统被所述处理器执行时还实现步骤:
判断当前聊天场景是否为保护模式;
当所述聊天场景为保护模式时,禁止用户对聊天界面进行截屏。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有聊天消息展示系统,所述聊天消息展示系统可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-6中任一项所述的聊天消息展示方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910056841.7A CN109885604A (zh) | 2019-01-22 | 2019-01-22 | 聊天消息展示方法、电子装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910056841.7A CN109885604A (zh) | 2019-01-22 | 2019-01-22 | 聊天消息展示方法、电子装置及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109885604A true CN109885604A (zh) | 2019-06-14 |
Family
ID=66926448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910056841.7A Pending CN109885604A (zh) | 2019-01-22 | 2019-01-22 | 聊天消息展示方法、电子装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109885604A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110912805A (zh) * | 2019-11-20 | 2020-03-24 | 中移(杭州)信息技术有限公司 | 消息读取状态的同步方法、终端、服务端及系统 |
CN112737921A (zh) * | 2020-12-23 | 2021-04-30 | 北京百分点科技集团股份有限公司 | 消息交互方法、客户端及通信系统 |
CN112787910A (zh) * | 2021-01-29 | 2021-05-11 | 联仁健康医疗大数据科技股份有限公司 | 一种消息处理方法、装置、电子设备和存储介质 |
CN116545977A (zh) * | 2023-06-06 | 2023-08-04 | 北京联客触点智能科技有限公司 | 一种基于企微定制化rpa操作交互方法 |
WO2024037529A1 (zh) * | 2022-08-17 | 2024-02-22 | 网易(杭州)网络有限公司 | 聊天消息的处理方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140067982A1 (en) * | 2012-08-31 | 2014-03-06 | International Business Machines Corporation | Determining an estimation of message response time |
CN104348707A (zh) * | 2013-08-08 | 2015-02-11 | 腾讯科技(深圳)有限公司 | 一种会话消息查找方法、装置及系统 |
CN104811366A (zh) * | 2014-01-26 | 2015-07-29 | 阿里巴巴集团控股有限公司 | 一种网络通讯消息的漫游方法及装置 |
US20160149839A1 (en) * | 2014-11-20 | 2016-05-26 | Superchat, LLC | Multi-Network Chat System |
-
2019
- 2019-01-22 CN CN201910056841.7A patent/CN109885604A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140067982A1 (en) * | 2012-08-31 | 2014-03-06 | International Business Machines Corporation | Determining an estimation of message response time |
CN104348707A (zh) * | 2013-08-08 | 2015-02-11 | 腾讯科技(深圳)有限公司 | 一种会话消息查找方法、装置及系统 |
CN104811366A (zh) * | 2014-01-26 | 2015-07-29 | 阿里巴巴集团控股有限公司 | 一种网络通讯消息的漫游方法及装置 |
US20160149839A1 (en) * | 2014-11-20 | 2016-05-26 | Superchat, LLC | Multi-Network Chat System |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110912805A (zh) * | 2019-11-20 | 2020-03-24 | 中移(杭州)信息技术有限公司 | 消息读取状态的同步方法、终端、服务端及系统 |
CN110912805B (zh) * | 2019-11-20 | 2021-08-17 | 中移(杭州)信息技术有限公司 | 消息读取状态的同步方法、终端、服务端及系统 |
CN112737921A (zh) * | 2020-12-23 | 2021-04-30 | 北京百分点科技集团股份有限公司 | 消息交互方法、客户端及通信系统 |
CN112737921B (zh) * | 2020-12-23 | 2022-07-29 | 北京百分点科技集团股份有限公司 | 消息交互方法、客户端及通信系统 |
CN112787910A (zh) * | 2021-01-29 | 2021-05-11 | 联仁健康医疗大数据科技股份有限公司 | 一种消息处理方法、装置、电子设备和存储介质 |
WO2024037529A1 (zh) * | 2022-08-17 | 2024-02-22 | 网易(杭州)网络有限公司 | 聊天消息的处理方法、装置、电子设备及存储介质 |
CN116545977A (zh) * | 2023-06-06 | 2023-08-04 | 北京联客触点智能科技有限公司 | 一种基于企微定制化rpa操作交互方法 |
CN116545977B (zh) * | 2023-06-06 | 2024-03-12 | 北京联客触点智能科技有限公司 | 一种基于企微定制化rpa操作交互方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885604A (zh) | 聊天消息展示方法、电子装置及计算机可读存储介质 | |
US11882221B2 (en) | Mobile terminal privacy protection method and protection apparatus, and mobile terminal | |
CN110011788A (zh) | 一种基于区块链的数据处理方法、系统及相关设备 | |
CN104517069A (zh) | 一种信息处理方法及电子设备 | |
US20180260921A1 (en) | Remote machine operation through distributed permissioning | |
CN112073289B (zh) | 一种即时通信控制方法及装置 | |
CN107506637A (zh) | 信息展示方法和装置、终端及可读存储介质 | |
CN109993524A (zh) | 卡券管理方法、装置、设备及计算机可读存储介质 | |
CN107766453A (zh) | 基于区块链的数据库管理方法、装置及存储介质 | |
CN105260639A (zh) | 一种脸部识别系统的数据更新的方法及装置 | |
CN104615662A (zh) | 一种处理数据的方法、装置及终端设备 | |
WO2016145849A1 (zh) | 一种短信安全管理方法、装置及终端 | |
CN107872446B (zh) | 一种通信帐号的管理方法、装置及服务器 | |
CN105827739B (zh) | 联系人信息同步方法、装置、服务器及系统 | |
CN104270496A (zh) | 显示主叫方信息的方法及装置 | |
CN106210233A (zh) | 一种终端通讯录管理方法及装置 | |
CN108763976B (zh) | 基于双屏的信息显示方法、移动终端及存储介质 | |
CN104346165A (zh) | 信息处理设备、信息处理方法、存储介质和信息处理系统 | |
CN106254680A (zh) | 信息处理方法及装置 | |
CN104346346A (zh) | 业务发布方法和系统、业务更新方法、客户端 | |
CN111177171A (zh) | 基于区块链的业务数据认证与管理方法及系统 | |
WO2021056767A1 (zh) | 一种信息处理方法、移动终端及计算机存储介质 | |
CN103052060B (zh) | 一种提高移动终端信息安全的方法及一种移动终端 | |
CN110059081A (zh) | 基于数据展示的数据输出方法、装置及计算机设备 | |
CN109800601A (zh) | 一种基于区块链的互联网实名认证方法 |
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 |