文本信息处理方法、装置、电子设备、服务器及存储介质

文档序号:1922112 发布日期:2021-12-03 浏览:8次 >En<

阅读说明:本技术 文本信息处理方法、装置、电子设备、服务器及存储介质 (Text information processing method and device, electronic equipment, server and storage medium ) 是由 黄铁鸣 郭金辉 文琛 李斌 于 2020-05-29 设计创作,主要内容包括:本发明提供了文本处理方法包括:获取对终端显示界面中内容的选择操作,响应于所述选择操作,确定剪切板进程中所存储的待处理的文本信息;接收文本信息格式选择指令,并将所述文本信息格式选择指令发送至对应的即时通讯客户端服务器;接收即时通信客户端服务器发送的文本处理指令;响应于所述文本处理指令,根据相对应的文本信息格式,对所述剪切板进程中所存储的待处理的文本信息进行处理。本发明还提供了处理装置、电子设备、服务器及存储介质。本发明能够实现对剪切板进程中所存储的待处理的文本信息进行处理,满足了不同使用场景中对于文本信息格式的不同需求,减少了用户对于文本信息进行编辑的时间,提升了对于文本信息处理的效率。(The invention provides a text processing method, which comprises the following steps: acquiring selection operation of contents in a terminal display interface, and determining text information to be processed stored in a clipboard process in response to the selection operation; receiving a text information format selection instruction, and sending the text information format selection instruction to a corresponding instant messaging client server; receiving a text processing instruction sent by an instant messaging client server; and responding to the text processing instruction, and processing the text information to be processed stored in the clipboard process according to the corresponding text information format. The invention also provides a processing device, an electronic device, a server and a storage medium. The invention can process the text information to be processed stored in the clipboard process, meets different requirements on text information formats in different use scenes, reduces the time for a user to edit the text information, and improves the efficiency of processing the text information.)

文本信息处理方法、装置、电子设备、服务器及存储介质

技术领域

本发明涉及信息处理技术,尤其涉及文本信息处理方法、装置、电子设备、服务器及存储介质。

背景技术

目前随着终端的不断普及与发展,用户越来越依赖终端,终端上可以安装各种各样的应用,其中,即时通讯客户端(IM InstantMessaging)在通信与文档分享过程中应用得到了广泛的使用,用户可以通过即时通讯应用完成与好友的实时通信,比如,在与好友的聊天场景中实时收发即时通讯消息,或者通过微文档进程进行文档的共享。但是这一过程中,即时通讯软件虽然提供了复制粘贴的相关组件,但是复制后的内容无法选择是否需要保留超文本标记语言(HTML HyperText Mark-up Language)的格式,对于不需要html格式的文本内容不能使用,还需要再次编辑;同时复制的文本信息内容无法让用户选择是否保留格式,不利于提升用户的使用体验,增加了用户操作的复杂程度。

发明内容

有鉴于此,本发明实施例提供一种文本信息处理方法、装置、电子设备、服务器及存储介质,本发明实施例的技术方案是这样实现的:

本发明实施例提供了一种文本信息处理方法,所述方法包括:

获取对终端显示界面中内容的选择操作,其中,所述选择操作用于通过按键或触控指令对所述显示界面中的相应文本信息进行选择;

响应于所述选择操作,确定剪切板进程中所存储的待处理的文本信息;

接收文本信息格式选择指令,并将所述文本信息格式选择指令发送至对应的即时通讯客户端服务器;

接收即时通信客户端服务器发送的文本处理指令;

响应于所述文本处理指令,根据相对应的文本信息格式,对所述剪切板进程中所存储的待处理的文本信息进行处理。

本发明实施例还提供了一种文本信息处理方法,包括:

通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;

接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;

基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,以实现对所述剪切板进程中所存储的待处理的文本信息进行处理。

本发明实施例还提供了一种文本信息处理装置,其特征在于,所述方法包括:

第一信息传输模块,用于获取对终端显示界面中内容的选择操作,其中,所述选择操作用于通过按键或触控指令对所述显示界面中的相应文本信息进行选择;

第一信息处理模块,用于响应于所述选择操作,确定剪切板进程中所存储的待处理的文本信息;

所述第一信息处理模块,用于接收文本信息格式选择指令,并将所述文本信息格式选择指令发送至对应的即时通讯客户端服务器;

所述第一信息传输模块,用于接收即时通信客户端服务器发送的文本处理指令;

所述第一信息处理模块,用于响应于所述文本处理指令,根据相对应的文本信息格式,对所述剪切板进程中所存储的待处理的文本信息进行处理。

上述方案中,

所述第一信息处理模块,用于确定数据迁移组件进程中目标客户端的标识;

所述第一信息处理模块,用于基于所述目标客户端的标识,对所述剪切板进程中所存储的待处理的文本信息进行处理,以实现所述待处理文本信息的粘贴或者剪切。

本发明实施例还提供了一种文本信息处理装置,所述方法包括:

第二信息传输模块,用于通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;

第二信息处理模块,用于接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;

所述第二信息处理模块,用于基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,以实现对所述剪切板进程中所存储的待处理的文本信息进行处理。

上述方案中,

所述第二信息处理模块,用于当与待处理文本信息相匹配的文本格式为纯文本格式时,确定所述终端显示界面中光标的位置信息,以及所述终端显示界面中的段落格式信息;

所述第二信息处理模块,用于基于所述光标的位置信息和所述段落格式信息,形成与所述文本信息的纯文本格式相匹配的第一文本处理指令。

上述方案中,

所述第二信息处理模块,用于当与待处理文本信息相匹配的文本格式为超文本标记语言格式时,确定与所述超文本标记语言格式相对应的数据结构;

所述第二信息处理模块,用于通过所述即时通信客户端中的文本处理进程,确定所述待处理文本信息中的超文本标记语言格式的样式信息和对应的文档对象模型对象结构;

所述第二信息处理模块,用于基于所述待处理文本信息中的超文本标记语言格式的样式信息和对应的文档对象模型对象结构,通过与所述超文本标记语言格式相对应的数据结构,确定与所述超文本标记语言格式相匹配的文本处理指令。

上述方案中,

所述第二信息处理模块,用于确定所述终端显示界面中光标的位置信息,以及所述终端显示界面中的段落格式信息;

所述第二信息处理模块,用于基于所述光标的位置信息和所述段落格式信息,确定所述即时通信客户端中的文本处理进程可识别的指令信息;

所述第二信息处理模块,用于基于与所述超文本标记语言格式相对应的数据结构,对所述即时通信客户端中的文本处理进程可识别的指令信息进行融合,形成所述超文本标记语言格式相匹配的第二文本处理指令。

上述方案中,

所述第二信息处理模块,用于即时通信客户端服务器侦测不同用户的操作历史,以记录不同用户对所述待处理文本进行操作时产生的文本处理指令;

所述第二信息处理模块,用于基于所记录的文本处理指令,对所述待处理文本信息对应的文档进行更新;

所述第二信息处理模块,用于当所述待处理文本信息对应的文档被新的目标用户唤醒时,通过所记录的不同用户对所述待处理文本进行操作时产生的文本处理指令,对所显示文档内容进行调整,以实现不同用户所获取的文档内容一致。

上述方案中,

所述第二信息处理模块,用于将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档送至区块链网络,以使

所述区块链网络的节点将所述用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档填充至新区块,且当对所述新区块共识一致时,将所述新区块追加至区块链的尾部。

上述方案中,

所述第二信息处理模块,用于接收所述区块链网络中的其他节点的数据同步请求;

所述第二信息处理模块,用于响应于所述数据同步请求,对所述其他节点的权限进行验证;

所述第二信息处理模块,用于当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档。

上述方案中,

所述第二信息处理模块,用于响应于查询请求,解析所述查询请求以获取对应的对象标识;

所述第二信息处理模块,用于根据所述对象标识,获取区块链网络中的目标区块内的权限信息;

所述第二信息处理模块,用于对所述权限信息与所述对象标识的匹配性进行校验;

所述第二信息处理模块,用于当所述权限信息与所述对象标识相匹配时,在所述区块链网络中获取相应的待处理文本信息以及待处理文本信息对应的文档;

所述第二信息处理模块,用于响应于所述查询指令,将所获取的待处理文本信息以及待处理文本信息对应的文档向相应的客户端进行推送,以实现所述客户端获取所述区块链网络中所保存的相应的待处理文本信息以及待处理文本信息对应的文档。

本发明实施例还提供了一种电子设备,所述电子设备包括:

存储器,用于存储可执行指令;

处理器,用于运行所述存储器存储的可执行指令时,实现前述的文本信息处理方法。

本发明实施例还提供了一种服务器,所述服务器包括:

存储器,用于存储可执行指令;

处理器,用于运行所述存储器存储的可执行指令时,实现前序的文本信息处理方法。

本发明实施例还提供了一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现前序的文本信息处理方法。

本发明实施例具有以下有益效果:

本发明实施例通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,由此,可以实现对剪切板进程中所存储的待处理的文本信息进行处理,满足了不同使用场景中对于文本信息格式的不同需求,减少了用户对于文本信息进行编辑的时间,提升了对于文本信息处理的效率。

附图说明

图1为本发明实施例提供的文本信息处理方法的使用环境示意图;

图2为本发明实施例提供的文本信息处理装置的组成结构示意图;

图3为本发明实施例提供的文本信息处理方法一个可选的流程示意图;

图4为本发明实施例提供的文本信息处理方法一个可选显示效果示意图;

图5为本发明实施例提供的文本信息处理装置的组成结构示意图;

图6为本发明实施例提供的文本信息处理方法一个可选的流程示意图

图7为本发明实施例提供的文本信息处理方法一个可选的流程示意图;

图8为本发明实施例提供的文本信息处理方法一个可选的流程示意图;

图9为本发明实施例提供的文本信息处理方法的数据结构示意图;

图10为本发明实施例提供的文本信息处理方法的数据结构示意图;

图11为本发明实施例提供的文本信息处理方法一个可选显示效果示意图;

图12为本发明实施例提供的文本信息处理方法一个可选显示效果示意图;

图13为本发明实施例提供的文本信息处理方法一个可选显示效果示意图;

图14是本发明实施例提供的文本信息处理装置100的架构示意图;

图15是本发明实施例提供的区块链网络200中区块链的结构示意图;

图16是本发明实施例提供的区块链网络200的功能架构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。

对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。

1)DataTransfer,在进行读写数据操作时,DataTransfer对象用来保存,通过拖放动作,拖动到浏览器的数据。它可以保存一项或多项数据、一种或者多种数据类型。这个对象可以从所有拖动事件drag events的dataTransfer属性上获取,但是不能单独创建。

2)终端,包括但不限于:普通终端、专用终端,其中所述普通终端与发送通道保持长连接和/或短连接,所述专用终端与所述发送通道保持长连接。

3)客户端,终端中实现特定功能的载体,例如移动客户端(APP)是移动终端中特定功能的载体,例如执行线上直播的功能或者是在线视频的播放功能。

4)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。

5)ClipboardEvent,ClipboardEvent是webview提供的web api接口,此接口描述了与修改剪切板相关信息的事件,这些事件包括剪切cut,复制copy和粘贴paste事件。

6)ClipboardEvent.clipboardData,ClipboardEvent.clipboardData属性保存了一个DataTransfer对象,这个对象可用于描述哪些数据可以由cut和copy事件处理器放入剪切板,通常通过调用setData(format,data)方法,并且可以获取由paste事件处理器拷贝进剪切板的数据,通常通过调用getData(format)方法。

7)setData,ataTransfer.setData()方法用来设置拖放操作的drag data到指定的数据和类型。如果给定类型的数据不存在,则将其添加到拖动数据存储的末尾,使得types列表中的最后一个项目将是新类型。如果给定类型的数据已经存在,现有数据将被替换为相同的位置。也就是说,替换相同类型的数据时types列表的顺序不会更改。示例数据类型为:"text/plain"和"text/uri-list",text/html。

8)getData,DataTransfer.getData()方法接受指定类型的拖放(以DOMString的形式)数据。如果拖放行为没有操作任何数据,会返回一个空字符串。数据类型有:text/plain,text/html,text/uri-list。

9)UIPasteboard:UIPasteboard类提供剪贴板:在app中或app之间共享数据的保护区域。该类提供方法,可以从剪贴板读取数据的项目,也可以向粘贴半写入数据的项目。

10)UIKit,IOS中提供的UIKit框架在UITextView和UITextField类中实现了复制-剪切-粘贴的能力。

11)微文档进程:微文档进程是企业微信中提供的文档产品,可以支持多人在线协作编辑/查看同一个文档内容,可以解决日常办公中对于文档内容协作的产品形态。

12)CS指令:微文档中为了提供多人在线协作时编辑内容时与后台数据同步的指令内容,以及通过CS指令可用于解决冲突时用于判断编辑内容的详细信息使用。

13)抽象语法树(AST abstract syntax tree),或者语法树(syntax tree),是源代码的抽象语法结构的树状表现形式,可以特指编程语言的源代码。

14)交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本发明实施例遵循了这一习惯。

例如,部署(Deploy)交易用于向区块链网络中的节点安装指定的智能合约并准备好被调用;调用(Invoke)交易用于通过调用智能合约在区块链中追加交易的记录,并对区块链的状态数据库进行操作,包括更新操作(包括增加、删除和修改状态数据库中的键值对)和查询操作(即查询状态数据库中的键值对)。

15)区块链(Block chain),是由区块(Block)形成的加密的、链式的交易的存储结构。

例如,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,从而基于哈希值实现区块中交易的防篡改和防伪造;新产生的交易被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成链式的增长。

16)区块链网络(Block chain Network),通过共识的方式将新区块纳入区块链的一系列的节点的集合。

17)账本(Ledger),是区块链(也称为账本数据)和与区块链同步的状态数据库的统称。

其中,区块链是以文件系统中的文件的形式来记录交易;状态数据库是以不同类型的键(Key)值(Value)对的形式来记录区块链中的交易,用于支持对区块链中交易的快速查询。

18)智能合约(Smart Contracts),也称为链码(Chain code)或应用代码,部署在区块链网络的节点中的程序,节点执行接收的交易中所调用的智能合约,来对账本数据库的键值对数据进行更新或查询的操作。

19)共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包括工作量证明(Po W,Proof of Work)、权益证明(PoS,Proof of Stake)、股份授权证明(DPo S,Delegated Proof-of-Stake)、消逝时间量证明(Po ET,Proof of Elapsed Time)等。

下面以企业微信应用程序作为社交环境的即时通讯软件为例对本发明实施例所提供的文本信息处理方法进行说明,其中,图1为本发明实施例提供的文本信息处理方法的使用环境示意图,参见图1,终端(包括终端10-1和终端10-2)上设置有能够部署作为即时通讯客户端的相应微信客户端,用户通过相应的客户端可以获得不同的社交信息并进行展示,并对需要使用的社交信息中的不同文档中的文本信息进行复制与粘贴;终端通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合,使用无线链路实现数据传输。

作为一个示例,服务器200用于布设所述文本信息处理装置以实现本发明所提供的文本信息处理方法,以通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,以实现对所述剪切板进程中所存储的待处理的文本信息进行处理。

同样的,作为示例,终端(包括终端10-1和终端10-2)也可以部署相应的文本信息处理装置,以实现获取对终端显示界面中内容的选择操作,其中,所述选择操作用于通过按键或触控指令对所述显示界面中的相应文本信息进行选择;响应于所述选择操作,确定剪切板进程中所存储的待处理的文本信息;接收文本信息格式选择指令,并将所述文本信息格式选择指令发送至对应的即时通讯客户端服务器;接收即时通信客户端服务器发送的文本处理指令;响应于所述文本处理指令,根据相对应的文本信息格式,对所述剪切板进程中所存储的待处理的文本信息进行处理。当然,本发明所提供的文本信息处理装置可以应用于各类型的文本信息处理环境(包括但不限于各类型的文本信息查看和文本信息编辑分享环境)或者社交软件(即时通讯客户端)进行信息交互的使用环境,并将最终的文本信息处理结果在用户显示界面(User Interface)上呈现,以供用户查看。用户在当前显示界面中获得的文本信息还可以供其他应用程序调用。

但是这一对文本信息的处理过程中,即时通讯软件虽然提供了复制粘贴的相关组件,但是复制后的内容无法选择是否需要保留html的格式,对于不需要html格式的文本内容不能使用,还需要再次编辑;同时复制的文本信息内容无法让用户选择是否保留格式,不利于提升用户的使用体验。

下面对本发明实施例的文本信息处理装置的结构做详细说明,文本信息处理装置可以各种形式来实施,如带有文本信息处理装置处理功能的专用终端,也可以为设置有文本信息处理装置处理功能的服务器,例如前序图1中的服务器200。图2为本发明实施例提供的文本信息处理装置的组成结构示意图,可以理解,图2仅仅示出了文本信息处理装置的示例性结构而非全部结构,根据需要可以实施图2示出的部分结构或全部结构。

本发明实施例提供的文本信息处理装置包括:至少一个处理器201、存储器202、用户接口203和至少一个网络接口204。文本信息处理装置中的各个组件通过总线系统205耦合在一起。可以理解,总线系统205用于实现这些组件之间的连接通信。总线系统205除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统205。

其中,用户接口203可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。

可以理解,存储器202可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。本发明实施例中的存储器202能够存储数据以支持终端(如10-1)的操作。这些数据的示例包括:用于在终端(如10-1)上操作的任何计算机程序,如操作系统和应用程序。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序。

在一些实施例中,本发明实施例提供的文本信息处理装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的文本信息处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的文本信息处理方法。例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application SpecificIntegrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。

作为本发明实施例提供的文本信息处理装置采用软硬件结合实施的示例,本发明实施例所提供的文本信息处理装置可以直接体现为由处理器201执行的软件模块组合,软件模块可以位于存储介质中,存储介质位于存储器202,处理器201读取存储器202中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器201以及连接到总线205的其他组件)完成本发明实施例提供的文本信息处理方法。

作为示例,处理器201可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

作为本发明实施例提供的文本信息处理装置采用硬件实施的示例,本发明实施例所提供的装置可以直接采用硬件译码处理器形式的处理器201来执行完成,例如,被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件执行实现本发明实施例提供的文本信息处理方法。

本发明实施例中的存储器202用于存储各种类型的数据以支持文本信息处理装置的操作。这些数据的示例包括:用于在文本信息处理装置上操作的任何可执行指令,如可执行指令,实现本发明实施例的从文本信息处理方法的程序可以包含在可执行指令中。

在另一些实施例中,本发明实施例提供的文本信息处理装置可以采用软件方式实现,图2示出了存储在存储器202中的文本信息处理装置,其可以是程序和插件等形式的软件,并包括一系列的模块,作为存储器202中存储的程序的示例,可以包括文本信息处理装置,文本信息处理装置中包括以下的软件模块:第一信息传输模块2081和第一信息处理模块2082。当文本信息处理装置中的软件模块被处理器201读取到RAM中并执行时,将实现本发明实施例提供的文本信息处理方法,其中,文本信息处理装置中各个软件模块的功能,包括:

第一信息传输模块2081,用于获取对终端显示界面中内容的选择操作,其中,所述选择操作用于通过按键或触控指令对所述显示界面中的相应文本信息进行选择;

第一信息处理模块2082,用于响应于所述选择操作,确定剪切板进程中所存储的待处理的文本信息;

所述第一信息处理模块2082,用于接收文本信息格式选择指令,并将所述文本信息格式选择指令发送至对应的即时通讯客户端服务器;

所述第一信息传输模块2081,用于接收即时通信客户端服务器发送的文本处理指令;

所述第一信息处理模块2082,用于响应于所述文本处理指令,根据相对应的文本信息格式,对所述剪切板进程中所存储的待处理的文本信息进行处理。

结合图2示出的文本信息处理装置说明本发明实施例提供的文本信息处理方法,参见图3,图3为本发明实施例提供的文本信息处理方法一个可选的流程示意图,可以理解地,图3所示的步骤可以由运行文本信息处理装置的各种电子设备执行,例如可以是如带有文本信息处理装置的服务器或者服务器集群,其中,带有文本信息处理装置的专用终端可以封装于图1所示的服务器中,以执行前序图2所示的文本信息处理装置中的相应软件模块。下面针对图3示出的步骤进行说明。

步骤301:文本信息处理装置获取对终端显示界面中内容的选择操作。

其中,所述选择操作用于通过按键或触控指令对所述显示界面中的相应文本信息进行选择。

步骤302:文本信息处理装置响应于所述选择操作,确定剪切板进程中所存储的待处理的文本信息。

其中,参考图4,图4为本发明实施例提供的文本信息处理方法一个可选显示效果示意图,其中,以企业微信应用程序作为社交环境的即时通讯软件为例,本发明所涉及的企业微信是面向企业级的基础办公沟通工具,企业通过企业微信可以实现基础的管理及效率沟通功能。参考图4,企业微信的微文档进程提供了在复制文本信息时,支持保留原有的html格式,同时也保留完整的纯文本格式的功能,其中,企业微信的微文档进程所能够的保留的完整的纯文本格式可以表现为所展示的文本信息中未出现任何文本修饰的,没有任何粗体,下划线,斜体,图形,符号或特殊字符及特殊打印格式的文本,只保存文本内容,不保存文本内容的格式设置,并将所有的分节符、分页符、新行字符转换为段落标记,以避免格式设置影响文本信息的显示;进一步地,以IOS系统为例,其为开发者提供了UIKit框架,框架中提供了app中实现复制、剪切、和粘贴所需方法和机制,其中,IOS客户端功能UIKit相关接口能力补充,包括:

UIPasteboard类提供剪贴板:在app中或app之间共享数据的保护区域。该类提供方法,可以从剪贴板读取数据的项目,也可以向剪切板进程写入数据的项目;

UIMenuController类在选中部分的上面或者下面显示一个编辑按钮,用以复制、剪切、或者粘贴。默认的编辑菜单命令包括:复制、剪切、粘贴、选择、及选择全部,当然也包括添加自定义菜单项目到编辑菜单。进一步地,UIResponder类声明了canPerformAction:withSender:方法。Responder类可以实现该方法来显示和移除基于当前内容的编辑菜单的命令。进一步地,UIResponderStandardEditActions非正式协议声明了处理复制、剪切、粘贴、选择、以及选择全部命令的接口。当用户在编辑菜单中触发任一命令时,对应的UIResponderStandardEditActions方法会被调用。

步骤303:文本信息处理装置接收文本信息格式选择指令,并将所述文本信息格式选择指令向对应的即时通信客户端服务器发送。

步骤304:文本信息处理装置接收即时通信客户端服务器发送的文本处理指令。

其中,具体来说,在本发明的一些实施例中,剪贴板是在app内或app间交换数据的标准化机制。剪贴板最常用于处理复制、剪切、以及粘贴操作:当用户选择app中的数据并选择复制(或剪切)命令时,该被选中的数据会被放置到剪贴板上。当用户选择粘贴命令时(可以在相同或者不同的app中,可以通过系统触发不同的APP之间共享,例如将个人微信客户端中的文本信息粘贴至企业微信客户端的显示界面中),剪贴板上的数据被复制到当前的app中,同时用户可以选择粘贴的格式是否需要html格式。

进一步地,对于复制的富文本或提供了复制数据的HTML、PDF、以及纯文本表示法。其中,富文本(Rich Text Format)是由一种跨平台文档格式。具有建好的兼容性,了便于在应用程序之间轻松转储格式化文本和图形,剪贴板的一个项目包括了所有app可以提供的数据项目的表示法。每个剪贴板项目的表示法通常通过唯一类型标识符(UTI Unique TypeIdentifier)标识,其中,UTI是简单的字符串,可以作为一个特定数据类型的唯一标记。

其中,UTI提供标记数据类型的通用方法。如果需要支持的自定义的数据类型,必须为它创建唯一的标识符。例如,可以使用反向DNS(reverse-DNS)符号表示类型字符串来确保唯一性。

在本发明的一些实施例中,企业微信(即时通讯客户端)还支持富文本和图片的选择。把富文本和所选文本的Unicode版本,以及所选图片的不同表示法放置到剪贴板。每个项目的每个表示法都存储有它们自己的数据。在本发明的一些实施例中,为了最大化发挥共享的作用,剪贴板项目可以包含尽可能多的不同的表示法,相应的,剪贴板读取器也需要找到最适配其功能的数据类型。

步骤305:文本信息处理装置响应于所述文本处理指令,根据相对应的文本信息格式,对所述剪切板进程中所存储的待处理的文本信息进行处理。

进一步地,当用户触发复制操作后,企业微信客户端可以将文本信息按html格式和纯文格式写入到剪贴板中,用户在微文档进程中当触发了粘贴行为时,通过调用微文档进程提供的jsapi的接口,根据用户选择的html或纯文本text类型,再读取剪贴板中的数据传递给微信文档的Web页面。

其中,当所处理的文本信息应用于其他客户端时,还可以确定数据迁移组件进程中目标客户端的标识;基于所述目标客户端的标识,对所述剪切板进程中所存储的待处理的文本信息进行处理,以实现所述待处理文本信息的粘贴或者剪切,由此可以避免用户的在不同的客户端中使用同样的文本信息时,重复编辑的缺陷,有效提升文本信息的处理速率,提升用户的使用体验。

下面对本发明实施例的服务器的结构做详细说明,其中本申请实施例所提供的服务器可以部署文本信息处理装置来实施文本信息处理方法,其可以是带有文本信息处理装置处理功能的专用服务器,也可以为设置有文本信息处理装置处理功能的即时通讯客户端的服务器,例如前序图1中的服务器200。图5为本发明实施例提供的文本信息处理装置的组成结构示意图,可以理解,图5仅仅示出了文本信息处理装置的示例性结构而非全部结构,根据需要可以实施图5示出的部分结构或全部结构。

本发明实施例提供的文本信息处理装置包括:至少一个处理器401、存储器402、用户接口403和至少一个网络接口404。文本信息处理装置中的各个组件通过总线系统405耦合在一起。可以理解,总线系统405用于实现这些组件之间的连接通信。总线系统405除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统405。

其中,用户接口403可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。

可以理解,存储器402可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。本发明实施例中的存储器402能够存储数据以支持终端(如10-1)的操作。这些数据的示例包括:用于在终端(如10-1)上操作的任何计算机程序,如操作系统和应用程序。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序。

在一些实施例中,本发明实施例提供的文本信息处理装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的文本信息处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的文本信息处理方法。例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application SpecificIntegrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。

作为本发明实施例提供的文本信息处理装置采用软硬件结合实施的示例,本发明实施例所提供的文本信息处理装置可以直接体现为由处理器401执行的软件模块组合,软件模块可以位于存储介质中,存储介质位于存储器402,处理器401读取存储器402中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器401以及连接到总线405的其他组件)完成本发明实施例提供的文本信息处理方法。

作为示例,处理器401可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

作为本发明实施例提供的文本信息处理装置采用硬件实施的示例,本发明实施例所提供的装置可以直接采用硬件译码处理器形式的处理器401来执行完成,例如,被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件执行实现本发明实施例提供的文本信息处理方法。

本发明实施例中的存储器402用于存储各种类型的数据以支持文本信息处理装置的操作。这些数据的示例包括:用于在文本信息处理装置上操作的任何可执行指令,如可执行指令,实现本发明实施例的从文本信息处理方法的程序可以包含在可执行指令中。

在另一些实施例中,本发明实施例提供的文本信息处理装置可以采用软件方式实现,图5示出了存储在存储器402中的文本信息处理装置,其可以是程序和插件等形式的软件,并包括一系列的模块,作为存储器402中存储的程序的示例,可以包括文本信息处理装置,文本信息处理装置中包括以下的软件模块:第二信息传输模块4081和第二信息处理模块4082。当文本信息处理装置中的软件模块被处理器401读取到RAM中并执行时,将实现本发明实施例提供的文本信息处理方法,其中,文本信息处理装置中各个软件模块的功能,包括:

第二信息传输模块4081,用于通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;

第二信息处理模块4082,用于接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;

所述第二信息处理模块4082,用于基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,以实现对所述剪切板进程中所存储的待处理的文本信息进行处理。

结合图5示出的文本信息处理装置说明本发明实施例提供的文本信息处理方法,参见图6,图6为本发明实施例提供的文本信息处理方法一个可选的流程示意图,可以理解地,图6所示的步骤可以由运行文本信息处理装置的各种电子设备执行,例如可以是如带有文本信息处理装置的服务器或者服务器集群,其中,带有文本信息处理装置的专用终端可以封装于图1所示的服务器中,以执行前序图5所示的文本信息处理装置中的相应软件模块。下面针对图6示出的步骤进行说明。

步骤601:文本信息处理装置通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息。

步骤602:文本信息处理装置接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式。

步骤603:文本信息处理装置基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并向所述终端发送。

由此,可以实现对所述剪切板进程中所存储的待处理的文本信息进行处理。

在本发明的一些实施例中,基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,包可以通过以下方式实现:

当与待处理文本信息相匹配的文本格式为纯文本格式时,确定所述终端显示界面中光标的位置信息,以及所述终端显示界面中的段落格式信息;基于所述光标的位置信息和所述段落格式信息,形成与所述文本信息的纯文本格式相匹配的第一文本处理指令。其中,纯文本格式的文本信息可以作为用户所要编辑的聊天内容在即时通讯客户端中向不同的用户发送,具体的,可以通过格式文本编辑器进行纯文本格式的文本信息的处理,例如通过支持文本格式编辑、识别的文本编辑器,如富文本编辑器(RTERich Text Editor)进行纯文本格式的文本信息的处理。

在本发明的一些实施例中,格式文本编辑器可以嵌入至即时通讯客户端的相应组件中,以便用户及时地编辑文本内容以及文本格式等。为了便于用户编辑文本内容以及文本格式,还可以在当显示界面中的消息交互界面中设置内容编辑区域,以便编写和显示文本内容。用户可以在内容编辑区域内输入文本内容,此时,终端通过格式文本编辑器接收到用户的文本输入。

在本发明的一些实施例中,基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,可以通过以下方式实现:

当与待处理文本信息相匹配的文本格式为超文本标记语言格式时,确定与所述超文本标记语言格式相对应的数据结构;通过所述即时通信客户端中的文本处理进程,确定所述待处理文本信息中的超文本标记语言格式的样式信息和对应的文档对象模型对象结构;基于所述待处理文本信息中的超文本标记语言格式的样式信息和对应的文档对象模型对象结构,通过与所述超文本标记语言格式相对应的数据结构,确定与所述超文本标记语言格式相匹配的文本处理指令。其中,当微文档进程Web在Webview加载完成后,通过Webview提供的Web Api的监听接口,监听onPaste事件,当用户操作粘贴时会通过监听此事件的回调通知Web侧的逻辑,回调函数中通过Clipboard Event.clipboardData获取终端剪贴板中所传递的待粘贴的内容,此时内容会有两种类型的数据,分别通过clipboardData.getData('text/html')或clipboard Data.getData('text/plain')分别获取html格式的内容或纯text的文本格式的数据。

在本发明的一些实施例中,所述方法还包括:

确定所述终端显示界面中光标的位置信息,以及所述终端显示界面中的段落格式信息;基于所述光标的位置信息和所述段落格式信息,确定所述即时通信客户端中的文本处理进程可识别的指令信息;基于与所述超文本标记语言格式相对应的数据结构,对所述即时通信客户端中的文本处理进程可识别的指令信息进行融合,形成所述超文本标记语言格式相匹配的第二文本处理指令。结合前序实施例,微文档进程提供了两种方式选择html或纯文本粘贴方式,当用户选择带有html格式样式粘贴时,可以通过clipboardData.getData('text/html')获取剪贴板的数据。其中,数据结构为AST(文档名词位置有描述)的数据结构样式,微文档进程解析AST的数据结构,获取当前剪贴的html样式以及dom结构,进而获取到用于写入到微文档进程中的数据结构,但是需要通过微文档进程的处理逻辑将数据转换为CS指令。

其中,参见图7,图7为本发明实施例提供的文本信息处理方法一个可选的流程示意图,其中,即时通讯客户端为企业微信,文本处理进程为企业微信所提供的微文档进程,文本处理进程服务器可以根据不同的文本信息格式执行不同的处理逻辑,具体包括:

步骤701:企业微信客户端复制生成html,text两种格式文本数据。

步骤702:Webview组件通知粘贴事件给微文档服务器。

步骤703:微文档服务器监听事件获取clipboardData.getData('tex t/html')。

步骤704:微文档服务器选择html格式或Texthtml格式转成相应的ast获取数据结构添加到文档中。

步骤705:企业微信根据剪切板数据,完整相应文本格式的文本信息处理。

在本发明的一些实施例中,所述方法还包括:

即时通信客户端服务器侦测不同用户的操作历史,以记录不同用户对所述待处理文本进行操作时产生的文本处理指令;基于所记录的文本处理指令,对所述待处理文本信息对应的文档进行更新;当所述待处理文本信息对应的文档被新的目标用户唤醒时,通过所记录的不同用户对所述待处理文本进行操作时产生的文本处理指令,对所显示文档内容进行调整,以实现不同用户所获取的文档内容一致。

其中,参见图8,图8为本发明实施例提供的文本信息处理方法一个可选的流程示意图,其中,即时通讯客户端为企业微信,文本处理进程为企业微信所提供的微文档进程,文本处理进程服务器可以根据不同的文本信息格式执行不同的处理逻辑,具体包括:

步骤801:获取无连接纯http的逻辑。

步骤802:将长连接的请求转换成http请求发给逻辑层处理。

步骤803:长连接push客户端请求发送给对应的服务器。

步骤804:服务器存储逻辑,并查询把push发给docpush。

进一步地,参考图9和图10,图9为本发明实施例提供的文本信息处理方法的数据结构示意图,图10为本发明实施例提供的文本信息处理方法的数据结构示意图,微文档进程获取到粘贴的html数据结构后,需要将当前要插入的光标位置、以及获取当前段落的默认样式,整合为微文档进程内部可用的CS指令;具体了微文档进程中的CS指令可以按照图9所示的数据结构用于记录和存储内容。

其中,1)AText,描述的是整个文档的内容与格式,这是一个json串。text部分代表的文档的内容,包括换行符这些符号。2)attribs部分代表的格式的描述,图9中所示的字符串语意是:9个带有0,1属性的字节,用1个字节换一行同时带有属性0,b(36进制)个带有属性0,1,2的字节,用2个字节换2行;这里的数字只代表属性序号,具体的属性,描述在另外一个组件APOOL中。也就是属性池。3)属性池是一个Object。描述了属性的对应关系,同时会有正反映射存在。其中AText描述个文档的内容与格式时所涉及的属性可以表现为一个pair类型的数据,与bold,true或者bold,false的属性相同。具体的,“0”号代表修改者信息的标识,如果有多个修改者,会在数据组中按照对应的修改顺序依次出现。其中,在同一个文档信息中,一个属性pair是唯一的,一次可以通过唯一的属性pair即可以实现格式描述字符的压缩。

其中,参考图11、图12和图13,微文档进程将粘贴的数据转换为CS指令后,会通过Websocket长链接将用户的CS指令数据发送给后台长链接的代理层(commonproxy),代理层再通过调用docProxy文档接口代理层提供的接口,发起文档指令的合并操作,将新增的CS指令内容与原有文档数据进行合并,并将数据记录到指令池中,根据时间或一定指令数量定时写入到文档后台存储。

后台(服务器)接受到用户新写入的CS指令后,会通过长链接推送给其它打开微文档的用户,同时微文档会将接收到的CS指令与本地的数据进行合并,通过OT合并算法进行数据的合并,得到本地应展示的最终结果。

参考图11,图11为本发明实施例提供的文本信息处理方法一个可选显示效果示意图,如果选择使用保留html的样式粘贴到文档中,通过前端显示界面可以保留文字以及背景、段落的样式相关格式,拷贝的html样式取决于拷贝内容的html标记上所记录的样式信息,以及微文档中按合理的方式进行转化成文档的表现。

参考图12,图12为本发明实施例提供的文本信息处理方法一个可选显示效果示意图,其中,当用户选择了纯文本的粘贴方式时,可以只保留纯文本以及换行的内容,以保留真实的数据内容,还以将纯文本用于个性化的样式编辑。

参考图13,图13为本发明实施例提供的文本信息处理方法一个可选显示效果示意图,在本发明的一些实施例中,微文档进程也提供了带有html格式的文本,如果显示异常或并不是用户所需要的结果,可以通过清除格式的一键功能,一键清除掉所有格式,进而再次编辑调整,得到自己需要的样式表现;例如可以使用清除格式后的内容表现,同样可以转换为一个纯文本的内容。

由此,即时通讯客户端的微文档支持在客户端拷贝了内容后,通过识别剪贴板的内容,通过对内容支持转换html的格式或普通文本的纯文本格式从而实现移动端复制时可以选择带格式的复制粘贴和不带格式的复制粘贴,选择不同格式的内容后可以粘贴到微文档中,通过微文档记录重要的信息资料。同时,通过选择是否保留html格式或使用纯文本的格式,满足不同的资料备份场景,可以灵活控制是否需要保留原有数据的格式,减少额外的编辑成本,进一步提升日常协作的效率。

在本发明的一些实施例中,为了实现通过区块链网络存储相应的数据,本发明所提供的文本信息方法还包括:

将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档送至区块链网络,以使所述区块链网络的节点将所述用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档填充至新区块,且当对所述新区块共识一致时,将所述新区块追加至区块链的尾部。

其中,本发明实施例可结合云技术实现,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件及网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术,也可理解为基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术及应用技术等的总称。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站,因此云技术需要以云计算作为支撑。

需要说明的是,云计算是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。作为云计算的基础能力提供商,会建立云计算资源池平台,简称云平台,一般称为基础设施即服务(IaaS,Infrastructure as a Service),在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(可为虚拟化机器,包含操作系统)、存储设备和网络设备。

结合前序图1所示,本发明实施例所提供的文本信息处理方法可以通过相应的云端设备实现,例如:终端(包括终端10-1和终端10-2)通过网络300连接位于云端的服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。值得说明的是,服务器200可为实体设备,也可为虚拟化设备。

在本发明的一些实施例中,还可以接收所述区块链网络中的其他节点的数据同步请求;响应于所述数据同步请求,对所述其他节点的权限进行验证;当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档。

参见图14,图14是本发明实施例提供的文本信息处理装置100的架构示意图,包括区块链网络200(示例性示出了共识节点210-1至共识节点210-3)、认证中心300、业务主体400和业务主体500,下面分别进行说明。

区块链网络200的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要授权的情况下接入区块链网络200;以联盟链为例,业务主体在获得授权后其下辖的电子设备(例如终端/服务器)可以接入区块链网络200,此时,成为区块链网络200中的客户端节点。

在一些实施例中,客户端节点可以只作为区块链网络200的观察者,即提供支持业务主体发起交易(例如,用于上链存储数据或查询链上数据)功能,对于区块链网络200的共识节点210的功能,例如排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选择性(例如,取决于业务主体的具体业务需求)地实施。从而,可以将业务主体的数据和业务处理逻辑最大程度迁移到区块链网络200中,通过区块链网络200实现数据和业务处理过程的可信和可追溯。

区块链网络200中的共识节点接收来自不同业务主体(例如图14中示出的业务主体400和业务主体500)的客户端节点(例如,图14中示出的归属于业务主体400的客户端节点410、以及归属于业务主体500的客户端节点510)提交的交易,执行交易以更新账本或者查询账本,执行交易的各种中间结果或最终结果可以返回业务主体的客户端节点中显示。

例如,客户端节点410/510可以订阅区块链网络200中感兴趣的事件,例如区块链网络200中特定的组织/通道中发生的交易,由共识节点210推送相应的交易通知到客户端节点410/510,从而触发客户端节点410/510中相应的业务逻辑。

下面以多个业务主体接入区块链网络以实现文本信息处理结果的管理为例,说明区块链网络的示例性应用。

参见图14,管理环节涉及的多个业务主体,如业务主体400可以是基于人工智能的文本信息处理装置,业务主体500可以是带有文本信息处理功能的显示系统,从认证中心300进行登记注册获得各自的数字证书,数字证书中包括业务主体的公钥、以及认证中心300对业务主体的公钥和身份信息签署的数字签名,用来与业务主体针对交易的数字签名一起附加到交易中,并被发送到区块链网络,以供区块链网络从交易中取出数字证书和签名,验证消息的可靠性(即是否未经篡改)和发送消息的业务主体的身份信息,区块链网络会根据身份进行验证,例如是否具有发起交易的权限。业务主体下辖的电子设备(例如终端或者服务器)运行的客户端都可以向区块链网络200请求接入而成为客户端节点。

业务主体400的客户端节点410用于通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,以实现对所述剪切板进程中所存储的待处理的文本信息进行处理,将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档发送至区块链网络200。

其中,将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档发送至区块链网络200,可以预先在客户端节点410设置业务逻辑,当形成相应的文本信息处理结果时,客户端节点410将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档自动发送至区块链网络200,也可以由业务主体400的业务人员在客户端节点410中登录,手动打包将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档,并将其发送至区块链网络200。在发送时,客户端节点410根据将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档生成对应更新操作的交易,在交易中指定了实现更新操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客户端节点410的数字证书、签署的数字签名(例如,使用客户端节点410的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200中的共识节点210。

区块链网络200中的共识节点210中接收到交易时,对交易携带的数字证书和数字签名进行验证,验证成功后,根据交易中携带的业务主体400的身份,确认业务主体400是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署节点210自己的数字签名(例如,使用节点210-1的私钥对交易的摘要进行加密得到),并继续在区块链网络200中广播。

区块链网络200中的共识节点210接收到验证成功的交易后,将交易填充到新的区块中,并进行广播。区块链网络200中的共识节点210广播的新区块时,会对新区块进行共识过程,如果共识成功,则将新区块追加到自身所存储的区块链的尾部,并根据交易的结果更新状态数据库,执行新区块中的交易:对于提交更新将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档的交易,在状态数据库中添加包括将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档的键值对。

业务主体500的业务人员在客户端节点510中登录,输入文本信息处理结果或者目标对象查询请求,客户端节点510根据文本信息处理结果或者目标对象查询请求生成对应更新操作/查询操作的交易,在交易中指定了实现更新操作/查询操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客户端节点510的数字证书、签署的数字签名(例如,使用客户端节点510的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200中的共识节点210。

区块链网络200中的共识节点210中接收到交易,对交易进行验证、区块填充及共识一致后,将填充的新区块追加到自身所存储的区块链的尾部,并根据交易的结果更新状态数据库,执行新区块中的交易:对于提交的更新某一将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档的交易,根据人工识别结果更新状态数据库中该文本信息处理结果对应的键值对;对于提交的查询某个文本信息处理结果的交易,从状态数据库中查询文本信息处理结果对应的键值对,并返回交易结果。

值得说明的是,在图14中示例性地示出了将用户标识、文本处理指令、待处理文本信息以及待处理文本信息对应的文档直接上链的过程,但在另一些实施例中,对于文本信息处理结果的数据量较大的情况,客户端节点410可将文本信息处理结果的哈希以及相应的文本信息处理结果的哈希成对上链,将原始的文本信息处理结果以及相应的文本信息处理结果存储于分布式文件系统或数据库。客户端节点510从分布式文件系统或数据库获取到文本信息处理结果以及相应的文本信息处理结果后,可结合区块链网络200中对应的哈希进行校验,从而减少上链操作的工作量。

作为区块链的示例,参见图15,图15是本发明实施例提供的区块链网络200中区块链的结构示意图,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,新产生的交易的记录被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成链式的增长,区块之间基于哈希值的链式结构保证了区块中交易的防篡改和防伪造。

下面说明本发明实施例提供的区块链网络的示例性的功能架构,参见图16,图16是本发明实施例提供的区块链网络200的功能架构示意图,包括应用层201、共识层202、网络层203、数据层204和资源层205,下面分别进行说明。

资源层205封装了实现区块链网路200中的各个节点210的计算资源、存储资源和通信资源。

数据层204封装了实现账本的各种数据结构,包括以文件系统中的文件实现的区块链,键值型的状态数据库和存在性证明(例如区块中交易的哈希树)。

网络层203封装了点对点(P2P,Point to Point)网络协议、数据传播机制和数据验证机制、接入认证机制和业务主体身份管理的功能。

其中,P2P网络协议实现区块链网络200中节点210之间的通信,数据传播机制保证了交易在区块链网络200中的传播,数据验证机制用于基于加密学方法(例如数字证书、数字签名、公/私钥对)实现节点210之间传输数据的可靠性;接入认证机制用于根据实际的业务场景对加入区块链网络200的业务主体的身份进行认证,并在认证通过时赋予业务主体接入区块链网络200的权限;业务主体身份管理用于存储允许接入区块链网络200的业务主体的身份、以及权限(例如能够发起的交易的类型)。

共识层202封装了区块链网络200中的节点210对区块达成一致性的机制(即共识机制)、交易管理和账本管理的功能。共识机制包括POS、POW和DPOS等共识算法,支持共识算法的可插拔。

交易管理用于验证节点210接收到的交易中携带的数字签名,验证业务主体的身份信息,并根据身份信息判断确认其是否具有权限进行交易(从业务主体身份管理读取相关信息);对于获得接入区块链网络200的授权的业务主体而言,均拥有认证中心颁发的数字证书,业务主体利用自己的数字证书中的私钥对提交的交易进行签名,从而声明自己的合法身份。

账本管理用于维护区块链和状态数据库。对于取得共识的区块,追加到区块链的尾部;执行取得共识的区块中的交易,当交易包括更新操作时更新状态数据库中的键值对,当交易包括查询操作时查询状态数据库中的键值对并向业务主体的客户端节点返回查询结果。支持对状态数据库的多种维度的查询操作,包括:根据区块向量号(例如交易的哈希值)查询区块;根据区块哈希值查询区块;根据交易向量号查询区块;根据交易向量号查询交易;根据业务主体的账号(向量号)查询业务主体的账号数据;根据通道名称查询通道中的区块链。

应用层201封装了区块链网络能够实现的各种业务,包括交易的溯源、存证和验证等。

有益技术效果:

本发明实施例通过即时通信客户端服务器监听接口终端显示界面中内容的选择操作,并获取剪切板进程中所存储的待处理的文本信息;接收终端发送的文本信息格式选择指令,根据所述文本信息格式选择指令,确定与待处理文本信息相匹配的文本格式;基于与待处理文本信息相匹配的文本格式触发不同的处理进程,形成与所述文本信息的文本格式相匹配的文本处理指令,并发送至所述终端,由此,可以以实现对所述剪切板进程中所存储的待处理的文本信息进行处理,满足了不同使用场景中对于文本信息格式的不同需求,减少了用户对于文本信息进行编辑的时间,提升了对于文本信息处理的效率。

以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

30页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于段落缩进量的文档转换方法、计算设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!