[go: up one dir, main page]

HK1261859B - Communication data recovery method, device and equipment - Google Patents

Communication data recovery method, device and equipment Download PDF

Info

Publication number
HK1261859B
HK1261859B HK19121767.8A HK19121767A HK1261859B HK 1261859 B HK1261859 B HK 1261859B HK 19121767 A HK19121767 A HK 19121767A HK 1261859 B HK1261859 B HK 1261859B
Authority
HK
Hong Kong
Prior art keywords
user
contacts
recoverable
communication data
list
Prior art date
Application number
HK19121767.8A
Other languages
Chinese (zh)
Other versions
HK1261859A1 (en
Inventor
任健
Original Assignee
创新先进技术有限公司
Filing date
Publication date
Application filed by 创新先进技术有限公司 filed Critical 创新先进技术有限公司
Publication of HK1261859A1 publication Critical patent/HK1261859A1/en
Publication of HK1261859B publication Critical patent/HK1261859B/en

Links

Description

一种通讯数据的恢复方法、装置及设备Method, device and equipment for recovering communication data

技术领域Technical Field

本申请涉及计算机技术领域,尤其涉及一种通讯数据的恢复方法、装置及设备。The present application relates to the field of computer technology, and in particular to a method, device, and equipment for recovering communication data.

背景技术Background Art

随着信息技术的发展和普及,越来越多的用户通过即时通讯(InstantMessaging,IM)的方式实现彼此间的交流互动,如:采用各类IM应用、iMessage等进行通讯。With the development and popularization of information technology, more and more users communicate and interact with each other through instant messaging (IM), such as using various IM applications, iMessage, etc.

在某些应用场景下,如:用户更换了终端设备(如:手机),或者用户使用的终端设备进行了格式化等场景,可能导致用户无法获知近期的聊天记录。为此,即时通讯服务商通常会提供聊天记录的恢复服务。In some application scenarios, such as when a user changes a terminal device (e.g., a mobile phone) or formats the terminal device used by the user, the user may lose access to recent chat history. For this reason, instant messaging service providers usually provide chat history recovery services.

具体地,在现有技术中,用户的聊天记录通常会在服务端进行备份,那么,若需要恢复聊天记录时,则可以从服务端获取数据。对于该方式而言,随着用户量的增长,存储在服务端的聊天记录的数据量也呈现指数级增长,增加服务端的资源消耗。Specifically, in the prior art, user chat records are usually backed up on the server side. If the chat records need to be restored, the data can be retrieved from the server side. With this approach, as the number of users increases, the amount of chat records stored on the server side also grows exponentially, increasing the resource consumption of the server side.

基于现有技术,需要一种更为有利于降低服务端消耗的通讯数据恢复方式。Based on the existing technology, a communication data recovery method that is more conducive to reducing server consumption is needed.

发明内容Summary of the Invention

本说明书实施例提供一种通讯数据的恢复方法、装置及设备,用以解决目前的即时通讯数据恢复过程中服务端的消耗较高的问题。The embodiments of this specification provide a communication data recovery method, apparatus, and device to solve the problem of high server consumption during the current instant messaging data recovery process.

本说明书实施例采用下述技术方案:The embodiments of this specification adopt the following technical solutions:

在第一用户侧,本说明书实施例提供一种通讯数据的恢复方法,包括:On the first user side, an embodiment of this specification provides a method for recovering communication data, including:

向服务器发送通讯数据恢复请求;Send a communication data recovery request to the server;

接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;Receiving a recoverable contact list fed back by the server, wherein the recoverable contact list includes some or all contacts of the first user;

根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;determining one or more second users according to the restorable contact list, and notifying the server;

接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得。Receive and use the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained after the server establishes a communication connection with the second user.

在服务器侧,本说明书实施例还提供一种通讯数据的恢复方法,包括:On the server side, the embodiment of this specification also provides a method for recovering communication data, including:

接收由第一用户发出的通讯数据恢复请求;receiving a communication data recovery request sent by a first user;

根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;sending a pre-recorded list of recoverable contacts of the first user to the first user according to the communication data recovery request; wherein the list of recoverable contacts includes some or all of the contacts of the first user;

确定所述第一用户所选择的可恢复联系人,作为第二用户;determining the recoverable contact selected by the first user as the second user;

获取所述第二用户所存储的通讯数据,发送给所述第一用户。Acquire the communication data stored by the second user and send it to the first user.

对应地,在第一用户侧,本说明书实施例还提供一种通讯数据的恢复装置,包括:Correspondingly, on the first user side, the embodiment of this specification further provides a communication data recovery device, including:

请求发送模块,向服务器发送通讯数据恢复请求;Request sending module, sending communication data recovery request to the server;

列表接收模块,接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;a list receiving module, receiving a recoverable contact list fed back by the server, wherein the recoverable contact list includes some or all contacts of the first user;

用户确定模块,根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;a user determination module, configured to determine one or more second users based on the restorable contact list and notify the server;

数据恢复模块,接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得。The data recovery module receives and uses the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained after the server communicates with the second user.

在服务器侧,本说明书实施例还提供一种通讯数据的恢复装置,包括:On the server side, the embodiment of this specification further provides a communication data recovery device, including:

请求接收模块,接收由第一用户发出的通讯数据恢复请求;a request receiving module for receiving a communication data recovery request sent by a first user;

列表反馈模块,根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;a list feedback module, which sends a pre-recorded list of recoverable contacts of the first user to the first user according to the communication data recovery request; wherein the recoverable contact list includes some or all of the contacts of the first user;

选择处理模块,确定所述第一用户所选择的可恢复联系人,作为第二用户;A selection processing module determines the recoverable contact selected by the first user as the second user;

数据处理模块,获取所述第二用户所存储的通讯数据,发送给所述第一用户。The data processing module obtains the communication data stored by the second user and sends it to the first user.

对应地,在第一用户侧,本说明书实施例还提供一种通讯数据的恢复设备,包括:处理器、存储器,其中:Correspondingly, on the first user side, an embodiment of this specification further provides a communication data recovery device, including: a processor and a memory, wherein:

所述存储器,存储通讯数据的恢复程序;The memory stores a recovery program for communication data;

所述处理器,调用存储器中存储的通讯数据的恢复程序,并执行:The processor calls a communication data recovery program stored in the memory and executes:

向服务器发送通讯数据恢复请求;Send a communication data recovery request to the server;

接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;Receiving a recoverable contact list fed back by the server, wherein the recoverable contact list includes some or all contacts of the first user;

根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;determining one or more second users according to the restorable contact list, and notifying the server;

接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得。Receive and use the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained after the server establishes a communication connection with the second user.

在服务器侧,本说明书实施例还提供一种通讯数据的恢复设备,包括:处理器、存储器,其中:On the server side, an embodiment of this specification further provides a communication data recovery device, including: a processor and a memory, wherein:

所述存储器,存储通讯数据的恢复程序;The memory stores a recovery program for communication data;

所述处理器,调用存储器中存储的通讯数据的恢复程序,并执行:The processor calls a communication data recovery program stored in the memory and executes:

接收由第一用户发出的通讯数据恢复请求;receiving a communication data recovery request sent by a first user;

根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;sending a pre-recorded list of recoverable contacts of the first user to the first user according to the communication data recovery request; wherein the list of recoverable contacts includes some or all of the contacts of the first user;

确定所述第一用户所选择的可恢复联系人,作为第二用户;determining the recoverable contact selected by the first user as the second user;

获取所述第二用户所存储的通讯数据,发送给所述第一用户。Acquire the communication data stored by the second user and send it to the first user.

本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:At least one of the above technical solutions adopted in the embodiments of this specification can achieve the following beneficial effects:

对于需要恢复通讯数据的第一用户而言,可以向服务器发出请求,并获得由服务器提供的可恢复联系人列表。在此基础上,第一用户可以根据实际应用的需要,根据可恢复联系人列表确定一个或多个第二用户,以便恢复第一用户与第二用户之间的通讯数据,这样一来,服务器便可以获取由第二用户所存储的通讯数据,最后反馈给第一用户,以恢复与第二用户之间的通讯数据。A first user who needs to restore communication data can send a request to the server and obtain a list of recoverable contacts provided by the server. Based on this, the first user can then identify one or more second users from the list of recoverable contacts, depending on actual application needs, in order to restore communication data between the first and second users. The server can then retrieve the communication data stored by the second users and provide it back to the first user, allowing the communication data between the first and second users to be restored.

也就是说,当第一用户使用没有聊天记录的终端进行即时通讯时,第一用户可主动选择所需恢复的联系人通讯数据,同时对于部分联系人的通讯数据可以不选择进行恢复,有利于提升用户体验,并且能够在一定程度减少通信流量的消耗。That is to say, when the first user uses a terminal without chat records for instant messaging, the first user can actively select the contact communication data that needs to be restored, and at the same time, the communication data of some contacts can be not restored, which is conducive to improving the user experience and can reduce the consumption of communication traffic to a certain extent.

此外,对于服务器而言,由于通讯数据可存储在用户所使用的终端本地,那么,服务器中便可以尽可能地减少通讯数据的存储量,有利于减少服务器的资源消耗及数据维护成本。In addition, for the server, since the communication data can be stored locally on the terminal used by the user, the storage volume of the communication data in the server can be reduced as much as possible, which is conducive to reducing the server's resource consumption and data maintenance costs.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

图1为本说明书实施例提供的通讯数据的恢复方法所基于的架构示意图;FIG1 is a schematic diagram of the architecture of the communication data recovery method provided in an embodiment of this specification;

图2为本说明书实施例提供的基于第一用户侧的通讯数据的恢复过程示意图;FIG2 is a schematic diagram of a recovery process based on communication data on a first user side according to an embodiment of the present disclosure;

图3为本说明书实施例提供的基于服务器侧的通讯数据的恢复过程示意图;FIG3 is a schematic diagram of a server-side communication data recovery process according to an embodiment of the present disclosure;

图4为本说明书实施例提供的在实际应用时通讯数据的恢复过程示意图;FIG4 is a schematic diagram of a communication data recovery process in actual application according to an embodiment of this specification;

图5为本说明书实施例提供的基于第一用户侧的通讯数据的恢复装置结构示意图;FIG5 is a schematic diagram of the structure of a device for recovering communication data based on a first user side according to an embodiment of the present disclosure;

图6为本说明书实施例提供的基于服务器侧的通讯数据的恢复装置结构示意图。FIG6 is a schematic diagram of the structure of a communication data recovery device based on the server side provided in an embodiment of this specification.

具体实施方式DETAILED DESCRIPTION

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。To make the purpose, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the specific embodiments of this application and the corresponding drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

在实际应用中,对于诸如聊天记录等通讯数据,除了备份于服务端之外,也会存储在用户所使用的终端本地。那么,对于本说明书实施例中提供的通讯数据的恢复方法而言,当某一用户需要恢复通讯数据时,可以从其他用户的终端中获取其保存的通讯数据,便可尽量减少服务端所存储的通讯数据。In actual applications, communication data such as chat logs is not only backed up on the server but also stored locally on the user's terminal. Therefore, with respect to the communication data recovery method provided in the embodiments of this specification, when a user needs to recover communication data, they can retrieve the saved communication data from other users' terminals, thereby minimizing the communication data stored on the server.

为实现上述基于商户的业务推送方法,可以采用如图1所示的架构。To implement the above merchant-based service push method, the architecture shown in FIG1 may be adopted.

在图1中,服务端可为用户提供即时通讯服务,该服务端可由单一服务器、集群式服务器或分布式服务器等构成,这里不进行具体限定。In FIG1 , the server can provide instant messaging services for users. The server can be composed of a single server, a clustered server, or a distributed server, etc., which is not specifically limited here.

图1中的第一用户,可认为是需要进行通讯数据恢复的用户。一般来说,以下情况可能会造成用户需要进行通讯数据恢复:The first user in Figure 1 can be considered as the user who needs to recover communication data. Generally speaking, the following situations may cause users to need to recover communication data:

情况一,用户更换了终端,并首次在该更换后的终端上进行即时通讯,该情况下,更换后的终端上从未存储该用户的通讯数据,故需要进行通讯数据的恢复。这里所提及的更换终端,既可以包括用户更新其使用的终端(如:更换新手机)的场景,也可以包括用户使用同一即时通讯账号进行多设备登录的场景。In the first scenario, a user changes their device and conducts instant messaging on the new device for the first time. In this case, the new device has never stored the user's communication data, so communication data recovery is required. The terminal change mentioned here can include scenarios where the user updates their device (such as a new phone) or where the user uses the same instant messaging account to log in on multiple devices.

情况二,用户所使用的终端进行了格式化处理,导致原先保存的通讯数据被清除,故需要进行通讯数据的恢复。In the second case, the terminal used by the user has been formatted, resulting in the deletion of the previously saved communication data, so the communication data needs to be restored.

图1中的第二用户,可认为是向第一用户提供通讯数据的用户,一般来说,第二用户是第一用户的即时通讯的联系人或好友。The second user in FIG1 can be considered as a user who provides communication data to the first user. Generally speaking, the second user is an instant messaging contact or friend of the first user.

需要说明的是,在本说明书的一个或多个实施例中,用户可以通过安装运行在终端上的即时通讯应用进行即时通讯,也可以使用终端自带的即时通讯功能进行即时通讯。所以,针对图1所示的架构,所述的第一用户或第二用户,可理解为涵盖了用户个人以及用户所使用的终端设备、用户所使用的账户等。这里并不应该构成对本申请的限定。It should be noted that in one or more embodiments of this specification, users can perform instant messaging by installing and running an instant messaging application on a terminal, or by using the instant messaging function built into the terminal. Therefore, with respect to the architecture shown in FIG1 , the first user or second user mentioned can be understood to include individual users, the terminal devices used by the users, the accounts used by the users, and so on. This should not constitute a limitation of this application.

在本说明书的一个或多个实施例中,所述的通讯数据,主要是指即时通讯中的聊天记录,换言之,在用户进行即时通讯过程中所发送的文本、图片、音频或视频等数据,均可认为是所述的通讯数据所涵盖的范围。In one or more embodiments of this specification, the communication data mainly refers to the chat records in instant messaging. In other words, the text, pictures, audio or video data sent by the user during the instant messaging process can be considered to be covered by the communication data.

基于上述如图1所述的架构,以下将详细说明本说明书实施例中所提供的技术方案。Based on the architecture described in FIG1 , the technical solutions provided in the embodiments of this specification will be described in detail below.

在第一用户侧,本说明书实施例中提供一种通讯数据的恢复方法,如图2所示,具体包括以下步骤:On the first user side, an embodiment of this specification provides a method for recovering communication data, as shown in FIG2 , which specifically includes the following steps:

步骤S201:向服务器发送通讯数据恢复请求。Step S201: Send a communication data recovery request to the server.

在前述的情况下,第一用户暂未获得与其他联系人的聊天记录,那么,便可以向服务器发出通讯数据恢复请求。In the aforementioned situation, if the first user has not yet obtained the chat records with other contacts, then the first user may send a communication data recovery request to the server.

作为一种可能的方式,用户所使用的终端(或安装于该终端上的即时通讯应用),具有聊天记录的检测功能,若检测到本地并未存储有聊天记录,则可自动向服务器发送相应的通讯数据恢复请求。As a possible approach, the terminal used by the user (or the instant messaging application installed on the terminal) has a chat history detection function. If it is detected that no chat history is stored locally, a corresponding communication data recovery request can be automatically sent to the server.

作为另一种可能的方式,用户可以主动通过相应的选项或控件,指示终端(或运行于该终端上的即时通讯应用)向服务器发出通讯数据恢复请求。As another possible manner, the user may actively instruct the terminal (or the instant messaging application running on the terminal) to send a communication data recovery request to the server through a corresponding option or control.

可以理解的是,所述的通讯数据恢复请求中至少应携带有该第一用户的用户信息,如:用户ID、账户名等,这里不进行具体限定。It is understandable that the communication data recovery request should at least carry the user information of the first user, such as user ID, account name, etc., which is not specifically limited here.

步骤S203:接收服务器反馈的可恢复联系人列表。其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人。Step S203: Receive a recoverable contact list fed back by the server, wherein the recoverable contact list includes some or all of the first user's contacts.

在本说明书实施例中,服务器可基于第一用户的通讯录联系人,生成所述的可恢复联系人列表(该列表的生成过程在后续将进行说明),并基于第一用户的请求,发送给该第一用户。In the embodiment of the present specification, the server may generate the recoverable contact list based on the first user's address book contacts (the generation process of the list will be described later), and send the list to the first user based on the first user's request.

步骤S205:根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器。Step S205: determining one or more second users according to the restorable contact list, and notifying the server.

第一用户可以根据实际应用的需要,选择所需恢复通讯数据的联系人,既可以恢复某一或某些可恢复联系人的通讯数据,也可以恢复列表中所有可恢复联系人的通讯数据。当然,这里并不应构成对本申请的限定。The first user can select the contacts whose communication data need to be restored according to the actual application needs, and can restore the communication data of one or some recoverable contacts, or restore the communication data of all recoverable contacts in the list. Of course, this should not constitute a limitation of the present application.

在本说明书实施例中,对于选定的可恢复联系人,可看作是第二用户,相应地,第一用户将通知服务器。对于通知服务器的过程而言,也同样可采用请求的方式将选定的可恢复联系人通知服务器。可以理解地,此次通知至少应携带第一用户的标识(如:第一用户的账户名)以及第二用户的标识(如:第二用户的账户名)。In the embodiments of this specification, the selected recoverable contact can be considered the second user, and accordingly, the first user will notify the server. Regarding the process of notifying the server, the selected recoverable contact can also be notified to the server via a request. It is understood that this notification should at least include the identifier of the first user (e.g., the first user's account name) and the identifier of the second user (e.g., the second user's account name).

步骤S207:接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得。Step S207: receiving and using the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained after the server establishes a communication connection with the second user.

在本说明书实施例中,第一用户与可恢复联系人之间的聊天记录并非存储在服务器上,而是存储在可恢复联系人所使用的终端上。基于此,服务器可以与第二用户进行通信,由此获得第二用户存储的通讯数据,并发送给第一用户。从而,第一用户便可以在接收到了与第二用户之间的通讯数据后,恢复聊天记录。In the embodiments of this specification, the chat history between the first user and the restorable contact is not stored on a server, but rather on the device used by the restorable contact. Based on this, the server can communicate with the second user, obtain the second user's stored communication data, and send it to the first user. Thus, the first user can restore the chat history after receiving the communication data with the second user.

通过以上内容可知,对于需要恢复通讯数据的第一用户而言,可以向服务器发出请求,并获得由服务器提供的可恢复联系人列表。在此基础上,第一用户可以根据实际应用的需要,根据可恢复联系人列表确定一个或多个第二用户,以便恢复第一用户与第二用户之间的通讯数据,这样一来,服务器便可以获取由第二用户所存储的通讯数据,最后反馈给第一用户,以恢复与第二用户之间的通讯数据。As can be seen from the above, a first user who needs to restore communication data can send a request to the server and obtain a list of recoverable contacts provided by the server. Based on this, the first user can then determine one or more second users from the list of recoverable contacts based on actual application needs in order to restore communication data between the first user and the second user. In this way, the server can obtain the communication data stored by the second user and finally feedback it to the first user, thereby restoring the communication data between the first user and the second user.

也就是说,当第一用户使用没有聊天记录的终端进行即时通讯时,第一用户可主动选择所需恢复的联系人通讯数据,同时对于部分联系人的通讯数据可以不选择进行恢复,有利于提升用户体验,并且能够在一定程度减少通信流量的消耗。That is to say, when the first user uses a terminal without chat records for instant messaging, the first user can actively select the contact communication data that needs to be restored, and at the same time, the communication data of some contacts can be not restored, which is conducive to improving the user experience and can reduce the consumption of communication traffic to a certain extent.

对于前述如图2所示的方法,其执行主体通常可以是运行在终端上的即时通讯应用的客户端,当然,在某些情况下也可以是第一用户所使用的终端本身,这里并不作具体限定。在本说明书实施例中,主要以执行主体是即时通讯应用客户端的场景进行说明,应理解,其具体执行方法步骤,同样适用于执行主体为终端自身的场景。For the method shown in FIG2 , the execution subject can generally be the client of the instant messaging application running on the terminal. Of course, in some cases, it can also be the terminal used by the first user itself, and this is not specifically limited here. In the embodiments of this specification, the scenario in which the execution subject is the instant messaging application client is mainly described. It should be understood that the specific execution method steps are also applicable to the scenario in which the execution subject is the terminal itself.

此外,上述方法中当第一用户接收到服务器所反馈的可恢复联系人列表后,可由IM客户端自动选择相应的第二用户,也可由用户主动选择相应的第二用户。In addition, in the above method, after the first user receives the recoverable contact list fed back by the server, the IM client may automatically select the corresponding second user, or the user may actively select the corresponding second user.

具体地,作为本说明书中一种可行的实施方式,IM客户端中设置有相应的规则,用以在接收到可恢复联系人列表后,自行选择一个或多个可恢复联系人作为第二用户。Specifically, as a feasible implementation in this specification, corresponding rules are set in the IM client to select one or more recoverable contacts as the second user after receiving the recoverable contact list.

这里所设置的规则可以是:非4G网络/WiFi网络的情况下,仅将用户当前打开的聊天窗口所对应的可恢复联系人,确定为第二用户(此时并不选择可恢复联系人列表中的其他可恢复联系人)。The rule set here may be: in the case of non-4G network/WiFi network, only the recoverable contact corresponding to the chat window currently opened by the user is determined as the second user (other recoverable contacts in the recoverable contact list are not selected at this time).

设置的规则还可以是:在4G网络/WiFi网络的情况下,将可恢复联系人列表中的所有可恢复联系人均作为第二用户。The set rule may also be: in the case of a 4G network/WiFi network, all the recoverable contacts in the recoverable contact list are regarded as the second user.

或者,设置的规则又可以是:按照社交亲密度(主要指在以往的即时通讯过程中,相互发消息的次数),将社交亲密度超过设定阈值的可恢复联系人作为第二用户。Alternatively, the set rule may be: according to social intimacy (mainly referring to the number of times messages were sent to each other during previous instant messaging processes), the recoverable contacts whose social intimacy exceeds a set threshold are selected as the second users.

当然,以上规则具体可以根据实际应用的需要进行设置,以上仅仅是一种说明举例,并不应构成对本申请的限定。Of course, the above rules can be specifically set according to the needs of actual application. The above is merely an illustrative example and should not constitute a limitation of this application.

作为本说明书中另一种可行的实施方式,IM客户端在接收到可恢复联系人列表后,可将该列表直接展示给用户,并接收用户在该列表中针对一个或多个可恢复联系人的选择操作,将用户所选择的可恢复联系人作为第二用户。As another feasible implementation in the present specification, after receiving the list of recoverable contacts, the IM client may directly display the list to the user, receive the user's selection operation for one or more recoverable contacts in the list, and use the recoverable contacts selected by the user as the second user.

此后,第一用户会向服务器发出通知,以便获得由服务器提供的通讯数据。在一种实际应用场景下,第一用户通常可以逐个将所需进行通讯数据恢复的第二用户的标识信息发送给服务器。如果服务器未能获取到某个第二用户的通讯数据,则第一用户会将下一个第二用户的标识信息发送给服务器。以此类推,直至遍历所有的第二用户。Afterward, the first user sends a notification to the server to obtain the communication data provided by the server. In a practical application scenario, the first user can typically send the identification information of the second users whose communication data needs to be recovered to the server one by one. If the server fails to obtain the communication data of a second user, the first user sends the identification information of the next second user to the server. And so on, until all second users have been traversed.

以上是基于第一用户侧的描述说明,而在服务端侧,本说明书实施例中提供一种通讯数据的恢复方法,如图3所述,具体包括以下步骤:The above description is based on the first user side. On the server side, an embodiment of this specification provides a method for recovering communication data, as shown in FIG3 , which specifically includes the following steps:

步骤S301:接收由第一用户发出的通讯数据恢复请求。Step S301: receiving a communication data recovery request sent by a first user.

通讯数据恢复请求的发送过程可以参考前述内容,这里不再过多赘述。The process of sending the communication data recovery request can refer to the above content and will not be described in detail here.

步骤S303:根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户。其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人。Step S303: According to the communication data recovery request, a pre-recorded list of recoverable contacts of the first user is sent to the first user, wherein the list of recoverable contacts includes some or all of the contacts of the first user.

在本说明书实施例中,所述的可恢复联系人列表,可由服务器生成。在一些实施方式中,服务器可将第一用户通讯录中的全部联系人,均作为可恢复联系人,生成可恢复联系人列表。当然,在另一些实施方式中,出于成本、数据量等方面的考虑,可以只将第一用户通讯录中的一部分联系人,作为可恢复联系人,生成可恢复联系人列表。In the embodiments of this specification, the restorable contact list may be generated by a server. In some embodiments, the server may treat all contacts in the first user's address book as restorable contacts to generate the restorable contact list. Of course, in other embodiments, due to cost, data volume, and other considerations, only a portion of the contacts in the first user's address book may be treated as restorable contacts to generate the restorable contact list.

对于以上两种方式而言,至于采用何种方式,具体将根据实际应用的需要所确定,这里并不构成对本申请的限定。As for the above two methods, which method to adopt will be determined according to the needs of actual application and does not constitute a limitation to this application.

可以理解的是,为了尽可能地减少服务器所存储的通讯数据,由服务器所生成的可恢复联系人列表中一般仅包含联系人的ID或账户名等标识性数据,而非通讯数据。It is understandable that, in order to minimize the communication data stored in the server, the recoverable contact list generated by the server generally only contains identification data such as the contact's ID or account name, rather than the communication data.

结合上述S301及S303两个步骤可知,当第一用户发起恢复通讯数据的请求后,服务器并非直接将通讯数据发送给第一用户以便其进行恢复,而是将可恢复联系人列表发送给第一用户,使得第一用户根据可恢复联系人列表选择需要恢复的联系人聊天记录。Combining the above steps S301 and S303, it can be seen that when the first user initiates a request to restore communication data, the server does not directly send the communication data to the first user for restoration, but instead sends a list of recoverable contacts to the first user, allowing the first user to select the chat records of the contacts that need to be restored based on the list of recoverable contacts.

步骤S305:确定所述第一用户所选择的可恢复联系人,作为第二用户。Step S305: Determine the recoverable contact selected by the first user as the second user.

如前所述,第一用户在接收到可恢复联系人列表后,可以在该列表中选定一个或多个可恢复联系人,那么,服务器便可以基于第一用户的选择,确定第一用户所需恢复通讯数据的用户(即,第二用户)。As mentioned above, after receiving the list of recoverable contacts, the first user can select one or more recoverable contacts in the list. Then, based on the first user's selection, the server can determine the user (i.e., the second user) for whom the first user needs to restore communication data.

步骤S307:获取所述可恢复联系人所存储的通讯数据,发送给所述第一用户。Step S307: Acquire the communication data stored in the recoverable contact and send it to the first user.

在本说明书实施例中,服务器自身并不存储(或者尽可能不存储)用户之间的通讯数据,该通讯数据通常存储在用户所使用的终端中,因此,一旦服务器确定了第一用户所选择的、需要进行通讯数据恢复的第二用户,则该服务器便可以通过与第二用户之间的通信连接,获取第二用户存储的通讯数据。之后再将获取的通讯数据发送给第一用户。In the embodiments of this specification, the server itself does not store (or stores as little as possible) communication data between users. Such communication data is usually stored in the terminals used by the users. Therefore, once the server determines the second user selected by the first user for whom communication data recovery is required, the server can obtain the communication data stored by the second user through the communication connection with the second user. The obtained communication data is then sent to the first user.

当然,服务器获取第二用户所存储的通讯数据时,既可以根据第一用户逐个发送的第二用户标识信息向第二用户获取通讯数据,也可以根据第一用的请求,并发式地同时获取各个第二用户的通讯数据。Of course, when the server obtains the communication data stored by the second user, it can obtain the communication data from the second user according to the second user identification information sent by the first user one by one, or it can concurrently obtain the communication data of each second user at the same time according to the request of the first user.

对于如图3所示的方法,需要说明的是,对于可恢复联系人列表的生成过程,可以为:服务器获取第一用户的全部联系人,在获取到的全部联系人中,确定指定数量的联系人,并获取确定出的联系人的标识信息,根据所述标识信息生成所述可恢复联系人列表。其中,所述标识信息至少包括:联系人ID或账户名。Regarding the method shown in FIG. 3 , it should be noted that the process for generating the recoverable contact list may be as follows: the server obtains all contacts of the first user, determines a specified number of contacts from the obtained contacts, obtains identification information of the determined contacts, and generates the recoverable contact list based on the identification information. The identification information includes at least a contact ID or an account name.

以上内容中所提及的全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人。All contacts mentioned above include: friends of the first user, contacts in the social groups that the first user has joined, and contacts with whom the first user has not established a friend relationship.

一般来说,服务器可以根据第一用户与各个联系人之间的社交亲密度,筛选出部分联系人,以便生成前述的可恢复联系人列表。如果不考虑成本及数据量,也可以将第一用户的全部联系人生成可恢复联系人列表。Generally speaking, the server can filter out some contacts based on the social intimacy between the first user and each contact to generate the aforementioned recoverable contact list. If cost and data volume are not considered, all contacts of the first user can also be generated into a recoverable contact list.

至此,本说明书实施例中的上述方法的实际执行过程可如图4所示,具体包括以下步骤:At this point, the actual execution process of the above method in the embodiment of this specification can be shown in Figure 4, which specifically includes the following steps:

步骤S401:第一用户向服务器发送通讯数据恢复请求。Step S401: The first user sends a communication data recovery request to the server.

步骤S403:服务器将预先生成的、该第一用户的可恢复联系人列表发送给所述第一用户。Step S403: The server sends the pre-generated list of recoverable contacts of the first user to the first user.

其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人。The restorable contact list includes some or all of the first user's contacts.

步骤S405:第一用户基于所述可恢复联系人列表,确定一个或多个第二用户,并通知所述服务器。Step S405: The first user determines one or more second users based on the restorable contact list and notifies the server.

步骤S407:服务器根据第一用户所选定的第二用户,监测第二用户是否在线。Step S407: The server monitors whether the second user is online according to the second user selected by the first user.

步骤S409:当第二用户在线时,服务器获取第二用户存储的该第二用户与第一用户之间的通讯数据。Step S409: When the second user is online, the server obtains the communication data between the second user and the first user stored by the second user.

步骤S411:服务器将获取的通讯数据发送给第一用户。Step S411: The server sends the acquired communication data to the first user.

步骤S413:第一用户使用服务器发送的通讯数据进行恢复。Step S413: The first user uses the communication data sent by the server to perform recovery.

综上所述,用户间的即时通讯数据分布式地存储在各个用户所使用的终端设备中,利用终端存储空间取代了服务端的集中式存储,极大降低了服务端的存储成本。在恢复通讯数据时,用户可以请求服务端从其他用户的终端本地获取到相应的通讯数据,并转发给发出请求的用户,从而实现通讯数据的恢复。In summary, instant messaging data between users is distributed and stored on each user's terminal device. This replaces centralized server storage with terminal storage, significantly reducing server storage costs. To restore communication data, a user can request the server to retrieve the corresponding communication data locally from another user's terminal and forward it to the requesting user, thus restoring the communication data.

当然,在一些特殊的实际应用场景中,第一用户和第二用户之间可以采用点对点的方式直接传输通讯数据,而无需服务端中转。Of course, in some special practical application scenarios, the first user and the second user can directly transmit communication data in a point-to-point manner without the need for server-side transfer.

以上为本说明书实施例提供的通讯数据的恢复方法,基于同样的思路,本说明书实施例还提供相应的通讯数据的恢复装置。The above is a method for recovering communication data provided by the embodiment of this specification. Based on the same idea, the embodiment of this specification also provides a corresponding device for recovering communication data.

具体而言,在第一用户侧,本说明书实施例中所提供的通讯数据的恢复装置如图5所示,所述装置包括:Specifically, on the first user side, the communication data recovery device provided in the embodiment of this specification is shown in FIG5 , and the device includes:

请求发送模块501,向服务器发送通讯数据恢复请求;Request sending module 501, sending a communication data recovery request to the server;

列表接收模块502,接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;A list receiving module 502 receives a recoverable contact list fed back by the server, wherein the recoverable contact list includes some or all contacts of the first user;

用户确定模块503,根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;A user determination module 503 determines one or more second users according to the restorable contact list and notifies the server;

数据恢复模块504,接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得。The data recovery module 504 receives and uses the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained after the server communicates with the second user.

进一步地,所述用户确定模块503,确定第一用户所使用网络的网络状态,根据所述网络状态以及预设的恢复规则,在所述可恢复联系人列表中,确定一个或多个联系人作为第二用户。Furthermore, the user determination module 503 determines a network status of a network used by the first user, and determines one or more contacts in the restorable contact list as the second user according to the network status and a preset restoration rule.

所述用户确定模块503,接收针对所述可恢复联系人列表中的可恢复联系人的选择操作,根据所述选择操作,确定一个或多个联系人作为第二用户。The user determination module 503 receives a selection operation on a recoverable contact in the recoverable contact list, and determines one or more contacts as a second user according to the selection operation.

所述可恢复联系人列表中包含可恢复联系人的标识信息,基于此,所述用户确定模块503,确定一个或多个所述标识信息,将所述标识信息对应的联系人作为第二用户。The restorable contact list includes identification information of the restorable contacts. Based on this, the user determination module 503 determines one or more identification information and uses the contacts corresponding to the identification information as the second user.

其中,所述标识信息至少包括:联系人ID或账户名。The identification information at least includes: a contact ID or an account name.

所述用户确定模块503,根据确定出的第二用户,逐个向所述服务器发送通讯数据的获取请求。The user determination module 503 sends communication data acquisition requests to the server one by one according to the determined second users.

所述用户确定模块503,若未接收到所述服务器反馈的通讯数据,则向所述服务器发送下一第二用户的通讯数据的获取请求,直到遍历所有的第二用户为止。The user determination module 503 sends a request for obtaining the communication data of the next second user to the server if the communication data fed back by the server is not received, until all second users are traversed.

基于图5所示的装置,在实际应用中可由实体的设备(如:终端设备)所实现,具体而言,该设备包括:处理器、存储器,其中,Based on the device shown in FIG5 , in actual application, it can be implemented by a physical device (such as a terminal device). Specifically, the device includes a processor and a memory, wherein:

所述存储器,存储通讯数据的恢复程序;The memory stores a recovery program for communication data;

所述处理器,调用存储器中存储的通讯数据的恢复程序,并执行:The processor calls a communication data recovery program stored in the memory and executes:

向服务器发送通讯数据恢复请求;Send a communication data recovery request to the server;

接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;Receiving a recoverable contact list fed back by the server, wherein the recoverable contact list includes some or all contacts of the first user;

根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;determining one or more second users according to the restorable contact list, and notifying the server;

接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得。Receive and use the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained after the server establishes a communication connection with the second user.

在服务器侧,本说明书实施例还提供一种通讯数据的恢复装置,如图6所示,所述装置包括:On the server side, the embodiment of this specification further provides a communication data recovery device, as shown in FIG6 , the device includes:

请求接收模块601,接收由第一用户发出的通讯数据恢复请求;The request receiving module 601 receives a communication data recovery request sent by a first user;

列表反馈模块602,根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;A list feedback module 602 sends a pre-recorded list of recoverable contacts of the first user to the first user according to the communication data recovery request; wherein the recoverable contact list includes some or all of the contacts of the first user;

选择处理模块603,确定所述第一用户所选择的可恢复联系人,作为第二用户;The selection processing module 603 determines the recoverable contact selected by the first user as the second user;

数据处理模块604,获取所述第二用户所存储的通讯数据,发送给所述第一用户。The data processing module 604 obtains the communication data stored by the second user and sends it to the first user.

进一步地,所述装置还包括:列表生成模块605,获取第一用户的全部联系人,在获取到的全部联系人中,确定指定数量的联系人,并获取确定出的联系人的标识信息,根据所述标识信息生成所述可恢复联系人列表;Furthermore, the apparatus further includes: a list generating module 605, which obtains all contacts of the first user, determines a specified number of contacts from all the obtained contacts, obtains identification information of the determined contacts, and generates the recoverable contact list based on the identification information;

其中,所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人。The said all contacts include: friends of the first user, contacts in the social group that the first user has joined, and contacts with whom the first user has not established a friend relationship.

所述标识信息至少包括:联系人ID或账户名。The identification information includes at least: a contact ID or an account name.

所述列表生成模块605,确定在设定历史时间段内第一用户与各联系人之间的交互亲密度,根据所述交互亲密度,在获取到的全部联系人中,确定所述交互亲密度超过设定阈值的联系人。The list generation module 605 determines the interaction intimacy between the first user and each contact within a set historical time period, and determines, based on the interaction intimacy, contacts whose interaction intimacy exceeds a set threshold among all the acquired contacts.

所述列表生成模块605,将获取到的全部联系人均确定为生成可恢复联系人列表所需的联系人。The list generating module 605 determines all the acquired contacts as contacts required for generating a list of recoverable contacts.

所述数据处理模块604,确定所述第二用户的在线状态,当确定所述第二用户在线时,建立与所述第二用户的通信连接,并获取所述第二用户存储的通讯数据。The data processing module 604 determines the online status of the second user, and when it is determined that the second user is online, establishes a communication connection with the second user and obtains the communication data stored by the second user.

所述装置还包括:通知模块606,若服务器并未获取到所述第二用户存储的通讯数据,则向所述第一用户返回失败通知。The apparatus further includes a notification module 606 , which returns a failure notification to the first user if the server fails to obtain the communication data stored by the second user.

基于图6所示的装置,在实际应用中可由实体的设备(如:终端设备/服务器)所实现,具体而言,该设备包括:处理器、存储器,其中,Based on the apparatus shown in FIG6 , in actual applications, it can be implemented by a physical device (such as a terminal device/server). Specifically, the device includes a processor and a memory, wherein:

所述存储器,存储通讯数据的恢复程序;The memory stores a recovery program for communication data;

所述处理器,调用存储器中存储的通讯数据的恢复程序,并执行:The processor calls a communication data recovery program stored in the memory and executes:

接收由第一用户发出的通讯数据恢复请求;receiving a communication data recovery request sent by a first user;

根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;sending a pre-recorded list of recoverable contacts of the first user to the first user according to the communication data recovery request; wherein the list of recoverable contacts includes some or all of the contacts of the first user;

确定所述第一用户所选择的可恢复联系人,作为第二用户;determining the recoverable contact selected by the first user as the second user;

获取所述第二用户所存储的通讯数据,发送给所述第一用户。Acquire the communication data stored by the second user and send it to the first user.

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和介质类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可,这里就不再一一赘述。The various embodiments in this specification are described in a progressive manner. Similar parts between the various embodiments can be referred to in conjunction with each other. Each embodiment focuses on the differences between the other embodiments. In particular, the device, equipment, and media embodiments are generally similar to the method embodiments, so their descriptions are relatively simple. For relevant parts, refer to the descriptions of the method embodiments and will not be repeated here.

至此,已经对本主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序,以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。Thus far, specific embodiments of the present subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve the desired results. Furthermore, the processes depicted in the accompanying drawings do not necessarily require the specific order shown or sequential order to achieve the desired results. In certain embodiments, multitasking and parallel processing may be advantageous.

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。In the 1990s, technological improvements could be clearly distinguished as either hardware improvements (for example, improvements to circuit structures like diodes, transistors, and switches) or software improvements (improvements to process flows). However, with the advancement of technology, many process flow improvements today can now be considered direct improvements to hardware circuit structures. Designers almost always create the corresponding hardware circuit structure by programming the improved process flow into the hardware circuit. Therefore, it cannot be said that a process flow improvement cannot be implemented using hardware modules. For example, a programmable logic device (PLD), such as a field programmable gate array (FPGA), is an integrated circuit whose logical function is determined by user programming. Designers can "integrate" a digital system on a PLD through their own programming, without having to hire a chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of manually fabricating integrated circuit chips, this programming is mostly done using "logic compiler" software. This is similar to the software compiler used when developing programs. Before compilation, the original code must also be written in a specific programming language, called a hardware description language (HDL). There is not just one HDL, but many, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art will also understand that by simply programming the method flow in one of these hardware description languages and then programming it into an integrated circuit, a hardware circuit that implements the logic method flow can be easily obtained.

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。The controller can be implemented in any suitable manner. For example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also know that in addition to implementing the controller in a purely computer-readable program code format, the controller can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, such a controller can be considered a hardware component, and the devices included therein for implementing various functions can also be considered as structures within the hardware component. Or even, the devices for implementing various functions can be considered as both software modules that implement the method and structures within the hardware component.

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。The systems, devices, modules, or units described in the above embodiments may be implemented by computer chips or entities, or by products having certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。For the convenience of description, the above devices are described as being divided into various units according to their functions. Of course, when implementing this application, the functions of each unit can be implemented in the same or multiple software and/or hardware.

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention is described with reference to the flowcharts and/or block diagrams of the methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and/or box in the flowchart and/or block diagram, as well as the combination of processes and/or boxes in the flowchart and/or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and/or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。Computer-readable media includes permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media (transitory media), such as modulated data signals and carrier waves.

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定事务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行事务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communications network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。The various embodiments in this specification are described in a progressive manner. Similar parts between the various embodiments can be referred to in conjunction with each other. Each embodiment focuses on the differences between the other embodiments. In particular, the system embodiments are generally similar to the method embodiments, so the description is relatively simple. For relevant parts, refer to the description of the method embodiments.

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。The foregoing is merely an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principles of the present application should be included within the scope of the claims of the present application.

Claims (26)

1.一种通讯数据的恢复方法,包括:1. A method for recovering communication data, comprising: 接收由第一用户发出的通讯数据恢复请求;所述通讯数据恢复请求是所述第一用户的终端检测到本地未存储有聊天记录后而自动生成的请求;Receive a communication data recovery request sent by the first user; the communication data recovery request is automatically generated by the first user's terminal after detecting that no chat history is stored locally; 根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人;所述可恢复联系人列表是基于服务器根据所述第一用户与各个联系人之间的社交亲密度筛选出的部分联系人而生成的;所述可恢复联系人列表中包括联系人的ID或账户名;所述第一用户与所述可恢复联系人之间的通讯数据存储在所述可恢复联系人所使用的终端上;Based on the communication data recovery request, a pre-recorded list of recoverable contacts for the first user is sent to the first user; wherein, the list of recoverable contacts contains some or all of the first user's contacts; the all contacts include: the first user's friends, contacts in social groups that the first user has joined, and contacts who have not established a friend relationship with the first user; the list of recoverable contacts is generated by the server based on a subset of contacts filtered according to the social intimacy between the first user and each contact; the list of recoverable contacts includes the contact's ID or account name; the communication data between the first user and the recoverable contacts is stored on the terminal used by the recoverable contacts; 确定所述第一用户所选择的可恢复联系人,作为第二用户;所述第二用户与所述第一用户之间的社交亲密度超过设定阈值;The recoverable contact selected by the first user is identified as the second user; the social intimacy between the second user and the first user exceeds a set threshold. 获取所述第二用户所存储的通讯数据,发送给所述第一用户;所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得;The communication data stored by the second user is obtained and sent to the first user; the communication data of the second user is obtained by the server after establishing a communication connection with the second user. 所述确定所述第一用户所选择的可恢复联系人,作为第二用户,具体包括:The step of determining the recoverable contact selected by the first user as the second user specifically includes: 将所述第一用户当前打开的聊天窗口所对应的可恢复联系人确定为第二用户;The recoverable contact corresponding to the chat window currently opened by the first user is identified as the second user; 或者,确定社交亲密度,并将所述社交亲密度超过设定阈值的可恢复联系人确定为第二用户。Alternatively, determine the social intimacy level and identify recoverable contacts whose social intimacy level exceeds a set threshold as second users. 2.如权利要求1所述的方法,通过以下方法生成所述可恢复联系人列表:2. The method as described in claim 1, wherein the recoverable contact list is generated by the following method: 服务器获取第一用户的全部联系人;The server retrieves all contacts of the first user; 在获取到的全部联系人中,确定指定数量的联系人,并获取确定出的联系人的标识信息;From all the contacts obtained, identify a specified number of contacts and obtain the identification information of the identified contacts; 根据所述标识信息生成所述可恢复联系人列表;The list of recoverable contacts is generated based on the identification information; 所述标识信息至少包括:联系人ID或账户名。The identification information includes at least: contact ID or account name. 3.如权利要求2所述的方法,在获取到的全部联系人中,确定指定数量的联系人,具体包括:3. The method as described in claim 2, wherein determining a specified number of contacts from all obtained contacts specifically includes: 确定在设定历史时间段内第一用户与各联系人之间的交互亲密度;Determine the level of interaction intimacy between the first user and each contact within a set historical time period; 根据所述交互亲密度,在获取到的全部联系人中,确定所述交互亲密度超过设定阈值的联系人。Based on the interaction intimacy, among all the contacts obtained, those whose interaction intimacy exceeds a set threshold are identified. 4.如权利要求2所述的方法,在获取到的全部联系人中,确定指定数量的联系人,具体包括:4. The method as described in claim 2, wherein determining a specified number of contacts from all obtained contacts specifically includes: 将获取到的全部联系人均确定为生成可恢复联系人列表所需的联系人。All the contacts obtained are selected as the contacts needed to generate the recoverable contact list. 5.如权利要求1所述的方法,获取所述第二用户所存储的通讯数据,具体包括:5. The method as described in claim 1, wherein obtaining the communication data stored by the second user specifically includes: 确定所述第二用户的在线状态;Determine the online status of the second user; 当确定所述第二用户在线时,建立与所述第二用户的通信连接,并获取所述第二用户存储的通讯数据。When it is determined that the second user is online, a communication connection is established with the second user, and the communication data stored by the second user is obtained. 6.如权利要求1所述的方法,所述方法还包括:6. The method of claim 1, further comprising: 若服务器并未获取到所述第二用户存储的通讯数据,则向所述第一用户返回失败通知。If the server does not obtain the communication data stored by the second user, it returns a failure notification to the first user. 7.一种通讯数据的恢复方法,包括:7. A method for recovering communication data, comprising: 向服务器发送通讯数据恢复请求;所述通讯数据恢复请求是第一用户的终端检测到本地未存储有聊天记录后而自动生成的请求;Send a communication data recovery request to the server; the communication data recovery request is automatically generated by the first user's terminal after detecting that no chat history is stored locally; 接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人;所述可恢复联系人列表是基于所述服务器根据所述第一用户与各个联系人之间的社交亲密度筛选出的部分联系人而生成的;所述可恢复联系人列表中包括联系人的ID或账户名;所述第一用户与所述可恢复联系人之间的通讯数据存储在所述可恢复联系人所使用的终端上;The system receives a list of recoverable contacts from the server. This list includes some or all of the first user's contacts. All contacts include: the first user's friends, contacts in social groups the first user has joined, and contacts with whom the first user has not established a friendship relationship. The recoverable contact list is generated based on a subset of contacts selected by the server according to the social intimacy between the first user and each contact. The list includes the contact's ID or account name. Communication data between the first user and the recoverable contacts is stored on the terminal used by the recoverable contacts. 根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;所述第二用户与所述第一用户之间的社交亲密度超过设定阈值;One or more second users are identified based on the list of recoverable contacts, and the server is notified; the social intimacy between the second user and the first user exceeds a set threshold. 接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得;The server receives and uses the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained by the server after establishing a communication connection with the second user; 所述根据所述可恢复联系人列表确定一个或多个第二用户,具体包括:The step of determining one or more second users based on the list of recoverable contacts specifically includes: 将所述第一用户当前打开的聊天窗口所对应的可恢复联系人确定为第二用户;The recoverable contact corresponding to the chat window currently opened by the first user is identified as the second user; 或者,确定社交亲密度,并将所述社交亲密度超过设定阈值的可恢复联系人确定为第二用户。Alternatively, determine the social intimacy level and identify recoverable contacts whose social intimacy level exceeds a set threshold as second users. 8.如权利要求7所述的方法,根据所述可恢复联系人列表确定一个或多个第二用户,具体包括:8. The method of claim 7, wherein determining one or more second users based on the recoverable contact list, specifically includes: 确定第一用户所使用网络的网络状态;Determine the network status of the network used by the first user; 根据所述网络状态以及预设的恢复规则,在所述可恢复联系人列表中,确定一个或多个联系人作为第二用户。Based on the network status and preset recovery rules, one or more contacts are selected as second users from the list of recoverable contacts. 9.如权利要求7所述的方法,根据所述可恢复联系人列表确定一个或多个第二用户,具体包括:9. The method of claim 7, wherein determining one or more second users based on the recoverable contact list, specifically includes: 接收针对所述可恢复联系人列表中的可恢复联系人的选择操作;Receive a selection operation for a recoverable contact in the recoverable contact list; 根据所述选择操作,确定一个或多个联系人作为第二用户。Based on the selection operation, one or more contacts are selected as the second user. 10.如权利要求8或9所述的方法,所述可恢复联系人列表中包含可恢复联系人的标识信息;10. The method as described in claim 8 or 9, wherein the list of recoverable contacts includes identification information of recoverable contacts; 确定一个或多个联系人作为第二用户,具体包括:Designate one or more contacts as secondary users, specifically including: 确定一个或多个所述标识信息,将所述标识信息对应的联系人作为第二用户;Determine one or more of the identification information, and designate the contact person corresponding to the identification information as the second user; 其中,所述标识信息至少包括:联系人ID或账户名。The identification information includes at least: contact ID or account name. 11.如权利要求10所述的方法,通知所述服务器,具体包括:11. The method of claim 10, wherein notifying the server specifically includes: 根据确定出的第二用户,逐个向所述服务器发送通讯数据的获取请求。Based on the identified second user, requests to obtain communication data are sent to the server one by one. 12.如权利要求11所述的方法,所述方法还包括:12. The method of claim 11, further comprising: 若未接收到所述服务器反馈的通讯数据,则向所述服务器发送下一第二用户的通讯数据的获取请求,直到遍历所有的第二用户为止。If no communication data is received from the server, a request to obtain the communication data of the next second user is sent to the server, and this process continues until all second users have been traversed. 13.一种通讯数据的恢复装置,包括:13. A communication data recovery device, comprising: 请求接收模块,接收由第一用户发出的通讯数据恢复请求;所述通讯数据恢复请求是所述第一用户的终端检测到本地未存储有聊天记录后而自动生成的请求;The request receiving module receives a communication data recovery request sent by the first user; the communication data recovery request is automatically generated by the first user's terminal after detecting that no chat history is stored locally. 列表反馈模块,根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人;所述可恢复联系人列表是基于服务器根据所述第一用户与各个联系人之间的社交亲密度筛选出的部分联系人而生成的;所述可恢复联系人列表中包括联系人的ID或账户名;所述第一用户与所述可恢复联系人之间的通讯数据存储在所述可恢复联系人所使用的终端上;The list feedback module, based on the communication data recovery request, sends a pre-recorded list of recoverable contacts for the first user to the first user; wherein, the list of recoverable contacts contains some or all of the first user's contacts; the all contacts include: the first user's friends, contacts in social groups joined by the first user, and contacts with whom the first user has not established a friend relationship; the list of recoverable contacts is generated by the server based on a subset of contacts filtered according to the social intimacy between the first user and each contact; the list of recoverable contacts includes the contact's ID or account name; the communication data between the first user and the recoverable contacts is stored on the terminal used by the recoverable contacts; 选择处理模块,确定所述第一用户所选择的可恢复联系人,作为第二用户;所述第二用户与所述第一用户之间的社交亲密度超过设定阈值;The selection processing module determines the recoverable contact selected by the first user as the second user; the social intimacy between the second user and the first user exceeds a set threshold. 数据处理模块,获取所述第二用户所存储的通讯数据,发送给所述第一用户;所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得;The data processing module acquires the communication data stored by the second user and sends it to the first user; the communication data of the second user is obtained by the server after establishing a communication connection with the second user. 所述选择处理模块,具体用于:The selection processing module is specifically used for: 将所述第一用户当前打开的聊天窗口所对应的可恢复联系人确定为第二用户;The recoverable contact corresponding to the chat window currently opened by the first user is identified as the second user; 或者,确定社交亲密度,并将所述社交亲密度超过设定阈值的可恢复联系人确定为第二用户。Alternatively, determine the social intimacy level and identify recoverable contacts whose social intimacy level exceeds a set threshold as second users. 14.如权利要求13所述的装置,所述装置还包括:列表生成模块,获取第一用户的全部联系人,在获取到的全部联系人中,确定指定数量的联系人,并获取确定出的联系人的标识信息,根据所述标识信息生成所述可恢复联系人列表;14. The apparatus of claim 13, further comprising: a list generation module, for acquiring all contacts of a first user, determining a specified number of contacts from the acquired contacts, acquiring identification information of the determined contacts, and generating the recoverable contact list based on the identification information; 所述标识信息至少包括:联系人ID或账户名。The identification information includes at least: contact ID or account name. 15.如权利要求14所述的装置,所述列表生成模块,确定在设定历史时间段内第一用户与各联系人之间的交互亲密度,根据所述交互亲密度,在获取到的全部联系人中,确定所述交互亲密度超过设定阈值的联系人。15. The apparatus of claim 14, wherein the list generation module determines the interaction intimacy between the first user and each contact within a set historical time period, and determines, based on the interaction intimacy, contacts whose interaction intimacy exceeds a set threshold among all the acquired contacts. 16.如权利要求14所述的装置,所述列表生成模块,将获取到的全部联系人均确定为生成可恢复联系人列表所需的联系人。16. The apparatus of claim 14, wherein the list generation module determines all the acquired contacts as those required to generate the recoverable contact list. 17.如权利要求13所述的装置,所述数据处理模块,确定所述第二用户的在线状态,当确定所述第二用户在线时,建立与所述第二用户的通信连接,并获取所述第二用户存储的通讯数据。17. The apparatus of claim 13, wherein the data processing module determines the online status of the second user, and when the second user is determined to be online, establishes a communication connection with the second user and acquires the communication data stored by the second user. 18.如权利要求13所述的装置,所述装置还包括:通知模块,若服务器并未获取到所述第二用户存储的通讯数据,则向所述第一用户返回失败通知。18. The apparatus of claim 13, further comprising: a notification module, wherein if the server fails to obtain the communication data stored by the second user, it returns a failure notification to the first user. 19.一种通讯数据的恢复装置,包括:19. A communication data recovery device, comprising: 请求发送模块,向服务器发送通讯数据恢复请求;所述通讯数据恢复请求是第一用户的终端检测到本地未存储有聊天记录后而自动生成的请求;The request sending module sends a communication data recovery request to the server; the communication data recovery request is automatically generated by the first user's terminal after detecting that no chat history is stored locally. 列表接收模块,接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人;所述可恢复联系人列表是基于所述服务器根据所述第一用户与各个联系人之间的社交亲密度筛选出的部分联系人而生成的;所述可恢复联系人列表中包括联系人的ID或账户名;所述第一用户与所述可恢复联系人之间的通讯数据存储在所述可恢复联系人所使用的终端上;The list receiving module receives a list of recoverable contacts from the server. This list includes some or all of the first user's contacts. All contacts include: the first user's friends, contacts in social groups the first user has joined, and contacts with whom the first user has not established a friend relationship. The recoverable contact list is generated based on a subset of contacts selected by the server according to the social intimacy between the first user and each contact. The list includes the contact's ID or account name. Communication data between the first user and the recoverable contacts is stored on the terminal used by the recoverable contacts. 用户确定模块,根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;所述第二用户与所述第一用户之间的社交亲密度超过设定阈值;The user identification module identifies one or more second users based on the list of recoverable contacts and notifies the server; the social intimacy between the second user and the first user exceeds a set threshold. 数据恢复模块,接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得;The data recovery module receives and uses the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained by the server after establishing a communication connection with the second user; 所述用户确定模块,具体用于:The user determination module is specifically used for: 将所述第一用户当前打开的聊天窗口所对应的可恢复联系人确定为第二用户;The recoverable contact corresponding to the chat window currently opened by the first user is identified as the second user; 或者,确定社交亲密度,并将所述社交亲密度超过设定阈值的可恢复联系人确定为第二用户。Alternatively, determine the social intimacy level and identify recoverable contacts whose social intimacy level exceeds a set threshold as second users. 20.如权利要求19所述的装置,所述用户确定模块,确定第一用户所使用网络的网络状态,根据所述网络状态以及预设的恢复规则,在所述可恢复联系人列表中,确定一个或多个联系人作为第二用户。20. The apparatus of claim 19, wherein the user determination module determines the network status of the network used by the first user, and determines one or more contacts as the second user in the list of recoverable contacts based on the network status and a preset recovery rule. 21.如权利要求19所述的装置,所述用户确定模块,接收针对所述可恢复联系人列表中的可恢复联系人的选择操作,根据所述选择操作,确定一个或多个联系人作为第二用户。21. The apparatus of claim 19, wherein the user determination module receives a selection operation for a recoverable contact in the recoverable contact list, and determines one or more contacts as a second user based on the selection operation. 22.如权利要求20或21所述的装置,所述可恢复联系人列表中包含可恢复联系人的标识信息;22. The apparatus of claim 20 or 21, wherein the list of recoverable contacts includes identification information of recoverable contacts; 所述用户确定模块,确定一个或多个所述标识信息,将所述标识信息对应的联系人作为第二用户;The user determination module determines one or more of the identification information and designates the contact person corresponding to the identification information as the second user. 其中,所述标识信息至少包括:联系人ID或账户名。The identification information includes at least: contact ID or account name. 23.如权利要求22所述的装置,所述用户确定模块,根据确定出的第二用户,逐个向所述服务器发送通讯数据的获取请求。23. The apparatus of claim 22, wherein the user determination module sends a request to obtain communication data to the server one by one, based on the determined second user. 24.如权利要求19所述的装置,所述用户确定模块,若未接收到所述服务器反馈的通讯数据,则向所述服务器发送下一第二用户的通讯数据的获取请求,直到遍历所有的第二用户为止。24. The apparatus of claim 19, wherein if the user determination module does not receive communication data from the server, it sends a request to the server to obtain the communication data of the next second user, until all second users have been traversed. 25.一种通讯数据的恢复设备,包括:处理器、存储器,其中:25. A communication data recovery device, comprising: a processor and a memory, wherein: 所述存储器,存储通讯数据的恢复程序;The memory stores the communication data recovery program; 所述处理器,调用存储器中存储的通讯数据的恢复程序,并执行:The processor calls the communication data recovery program stored in the memory and executes it: 接收由第一用户发出的通讯数据恢复请求;所述通讯数据恢复请求是所述第一用户的终端检测到本地未存储有聊天记录后而自动生成的请求;Receive a communication data recovery request sent by the first user; the communication data recovery request is automatically generated by the first user's terminal after detecting that no chat history is stored locally; 根据所述通讯数据恢复请求,将预先记录的、该第一用户的可恢复联系人列表发送给所述第一用户;其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人;所述可恢复联系人列表是基于服务器根据所述第一用户与各个联系人之间的社交亲密度筛选出的部分联系人而生成的;所述可恢复联系人列表中包括联系人的ID或账户名;所述第一用户与所述可恢复联系人之间的通讯数据存储在所述可恢复联系人所使用的终端上;Based on the communication data recovery request, a pre-recorded list of recoverable contacts for the first user is sent to the first user; wherein, the list of recoverable contacts contains some or all of the first user's contacts; the all contacts include: the first user's friends, contacts in social groups that the first user has joined, and contacts who have not established a friend relationship with the first user; the list of recoverable contacts is generated by the server based on a subset of contacts filtered according to the social intimacy between the first user and each contact; the list of recoverable contacts includes the contact's ID or account name; the communication data between the first user and the recoverable contacts is stored on the terminal used by the recoverable contacts; 确定所述第一用户所选择的可恢复联系人,作为第二用户;所述第二用户与所述第一用户之间的社交亲密度超过设定阈值;The recoverable contact selected by the first user is identified as the second user; the social intimacy between the second user and the first user exceeds a set threshold. 获取所述第二用户所存储的通讯数据,发送给所述第一用户;所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得;The communication data stored by the second user is obtained and sent to the first user; the communication data of the second user is obtained by the server after establishing a communication connection with the second user. 所述确定所述第一用户所选择的可恢复联系人,作为第二用户,具体包括:The step of determining the recoverable contact selected by the first user as the second user specifically includes: 将所述第一用户当前打开的聊天窗口所对应的可恢复联系人确定为第二用户;The recoverable contact corresponding to the chat window currently opened by the first user is identified as the second user; 或者,确定社交亲密度,并将所述社交亲密度超过设定阈值的可恢复联系人确定为第二用户。Alternatively, determine the social intimacy level and identify recoverable contacts whose social intimacy level exceeds a set threshold as second users. 26.一种通讯数据的恢复设备,包括:处理器、存储器,其中:26. A communication data recovery device, comprising: a processor and a memory, wherein: 所述存储器,存储通讯数据的恢复程序;The memory stores the communication data recovery program; 所述处理器,调用存储器中存储的通讯数据的恢复程序,并执行:The processor calls the communication data recovery program stored in the memory and executes it: 向服务器发送通讯数据恢复请求;所述通讯数据恢复请求是第一用户的终端检测到本地未存储有聊天记录后而自动生成的请求;Send a communication data recovery request to the server; the communication data recovery request is automatically generated by the first user's terminal after detecting that no chat history is stored locally; 接收服务器反馈的可恢复联系人列表,其中,所述可恢复联系人列表中包含第一用户的部分或全部联系人;所述全部联系人,包括:所述第一用户的好友,第一用户所加入到的社交群组中的联系人,以及与所述第一用户并未建立好友关系的联系人;所述可恢复联系人列表是基于所述服务器根据所述第一用户与各个联系人之间的社交亲密度筛选出的部分联系人而生成的;所述可恢复联系人列表中包括联系人的ID或账户名;所述第一用户与所述可恢复联系人之间的通讯数据存储在所述可恢复联系人所使用的终端上;The system receives a list of recoverable contacts from the server. This list includes some or all of the first user's contacts. All contacts include: the first user's friends, contacts in social groups the first user has joined, and contacts with whom the first user has not established a friendship relationship. The recoverable contact list is generated based on a subset of contacts selected by the server according to the social intimacy between the first user and each contact. The list includes the contact's ID or account name. Communication data between the first user and the recoverable contacts is stored on the terminal used by the recoverable contacts. 根据所述可恢复联系人列表确定一个或多个第二用户,并通知所述服务器;所述第二用户与所述第一用户之间的社交亲密度超过设定阈值;One or more second users are identified based on the list of recoverable contacts, and the server is notified; the social intimacy between the second user and the first user exceeds a set threshold. 接收并使用所述服务器反馈的所述第二用户的通讯数据,其中,所述第二用户的通讯数据由所述服务器与所述第二用户进行通信连接后获得;The server receives and uses the communication data of the second user fed back by the server, wherein the communication data of the second user is obtained by the server after establishing a communication connection with the second user; 所述根据所述可恢复联系人列表确定一个或多个第二用户,具体包括:The step of determining one or more second users based on the list of recoverable contacts specifically includes: 将所述第一用户当前打开的聊天窗口所对应的可恢复联系人确定为第二用户;The recoverable contact corresponding to the chat window currently opened by the first user is identified as the second user; 或者,确定社交亲密度,并将所述社交亲密度超过设定阈值的可恢复联系人确定为第二用户。Alternatively, determine the social intimacy level and identify recoverable contacts whose social intimacy level exceeds a set threshold as second users.
HK19121767.8A 2019-04-02 Communication data recovery method, device and equipment HK1261859B (en)

Publications (2)

Publication Number Publication Date
HK1261859A1 HK1261859A1 (en) 2020-01-03
HK1261859B true HK1261859B (en) 2022-02-11

Family

ID=

Similar Documents

Publication Publication Date Title
CN109391850B (en) Method, device and storage medium for interacting messages in video page
US7793140B2 (en) Method and system for handling failover in a distributed environment that uses session affinity
CN107368507A (en) A blockchain-based consensus method and device
CN110881224B (en) Network long connection method, device, equipment and storage medium
US11165916B2 (en) Information processing method, information processing apparatus, and non-transitory recording medium storing instructions for executing an information processing method
WO2024119853A1 (en) Database disaster recovery system, method and apparatus, and storage medium and electronic device
CN115658368A (en) Fault processing method and device, storage medium and electronic equipment
CN119784389B (en) Data processing methods, apparatus and equipment
CN107070770B (en) A resource transmission method and device
CN108650165B (en) A recovery method, device and device for communication data
HK1261859B (en) Communication data recovery method, device and equipment
CN111553697A (en) Risk processing method, device, equipment and storage medium
CN109150795B (en) Information processing method, device and equipment
CN115080538B (en) Block chain version verification method and device
CN108628615A (en) A kind of discarded code detection method, device and equipment
HK1261859A1 (en) Communication data recovery method, device and equipment
CN106961375B (en) A resource transmission method and device
CN116996475B (en) Account use method, device, medium and equipment
CN115038134A (en) Service request processing method, device, equipment and medium
HK1241602B (en) Resource transmission method and device
HK1259097B (en) Information push method, device and equipment
HK1259097A1 (en) Information push method, device and equipment
CN114329655A (en) Control method and device of USB interface, storage medium and processor
CN119538219A (en) Method, device, storage medium and electronic device for transition verification
HK1246891B (en) Consensus method and device based on block chain