CN112737922A - 通讯方法、装置、计算机设备和存储介质 - Google Patents

通讯方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN112737922A
CN112737922A CN202011539074.4A CN202011539074A CN112737922A CN 112737922 A CN112737922 A CN 112737922A CN 202011539074 A CN202011539074 A CN 202011539074A CN 112737922 A CN112737922 A CN 112737922A
Authority
CN
China
Prior art keywords
session
message
software
reply
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011539074.4A
Other languages
English (en)
Other versions
CN112737922B (zh
Inventor
凌勇
高勇
张曙光
陈杰
朱惟恺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Suning Cloud Computing Co ltd
Original Assignee
Jiangsu Suning Cloud Computing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Suning Cloud Computing Co ltd filed Critical Jiangsu Suning Cloud Computing Co ltd
Priority to CN202011539074.4A priority Critical patent/CN112737922B/zh
Publication of CN112737922A publication Critical patent/CN112737922A/zh
Priority to CA3143846A priority patent/CA3143846A1/en
Application granted granted Critical
Publication of CN112737922B publication Critical patent/CN112737922B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/043Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/234Monitoring or handling of messages for tracking messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请涉及通信领域,具体涉及一种通讯方法、装置、计算机设备和存储介质。所述方法包括:第一软件对所有第二软件的会话界面进行监控;在监控到任一会话界面中展示了任一监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息;将所有未读会话消息中的每条目标会话消息发送给安装在第二设备的第三软件;接收来自该第三软件的包括消息回复对象确定信息和回复消息的回复信息;根据消息回复对象确定信息确定待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作。本发明实施例能够让用户及时地回复来自任何其他用户的会话消息。

Description

通讯方法、装置、计算机设备和存储介质
技术领域
本申请涉及通信技术领域,特别是涉及一种通讯方法、装置、计算机设备和存储介质。
背景技术
即时通讯软件(如微信、QQ、钉钉等软件)的用户之间可以通过发送会话消息来进行通讯。然而当用户接收到数量较多的其他用户的会话消息时,用户往往难以做到及时地回复每个其他用户的会话消息。
发明内容
本发明针对现有技术的缺点,提供了一种通讯方法、装置、计算机设备和存储介质,本发明实施例能够让用户及时地回复来自任何其他用户的会话消息。
本发明根据第一方面提供了一种通讯方法,在一个实施例中,该方法应用于运行有第一软件和至少一个第二软件的第一设备,该方法包括以下步骤:
第一软件对所有第二软件的会话界面进行监控;
在监控到任一个会话界面中展示了任一个监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息;
将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复该监控会话对象的消息;
接收来自该第三软件的回复信息,回复信息包括消息回复对象确定信息和回复消息;
根据消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象。
在一个实施例中,第一设备包括显示装置,所有第二软件的会话界面显示在该显示装置上,任一个第二软件的会话界面包括多个会话信息预览区域,一个会话信息预览区域用于展示一个会话对象的会话预览信息,任一个会话对象的会话预览信息是该第二软件的登录账号主体与该会话对象进行的会话的预览信息;任一个第二软件的会话界面还包括会话窗口,会话窗口包括会话消息展示框和消息编辑框,会话消息展示框用于展示该第二软件的登录账号主体与指定会话对象进行的会话的多条会话消息,消息编辑框包括消息发送按钮。
在一个实施例中,第一软件对任一个第二软件的会话界面进行监控的步骤,包括:
第一软件每隔预设时间间隔对该任一个第二软件的会话界面所包括的每个会话信息预览区域进行截图;
对截到的每个会话信息预览区域的截图进行识别,以判断该会话信息预览区域中是否有展示了任一个监控会话对象的会话预览信息和消息未读标识;
若确定有任一个会话信息预览区域中展示了任一个监控会话对象的会话预览信息和消息未读标识,则判定监控到该第二软件的会话界面中展示了该监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识。
在一个实施例中,获取与该任一个监控会话对象对应的所有未读会话消息的步骤,包括:
对展示了该任一个监控会话对象的会话预览信息和消息未读标识的会话信息预览区域执行模拟鼠标选中操作,以使该监控会话对象成为指定会话对象;
在确定该任一个第二软件的会话界面展示了该监控会话对象对应的会话窗口之后,对该会话窗口所包括的会话消息展示框进行截图,得到消息展示框截图;
对消息展示框截图进行文字识别,以获取会话消息展示框中展示的所有会话消息;
从所有会话消息中筛选出所有未读会话消息。
在一个实施例中,执行机器人模拟消息发送操作的步骤,包括:
复制回复消息;
对目标第二软件的目标会话界面中的展示了消息回复对象的会话预览信息的会话信息预览区域执行模拟鼠标选中操作,以使消息回复对象成为指定会话对象;
在确定目标会话界面展示了消息回复对象对应的会话窗口之后,在该会话窗口所包括的消息编辑框中执行模拟消息粘贴操作,以将复制的回复消息粘贴到该消息编辑框中;
对该消息编辑框所包括的消息发送按钮执行模拟鼠标发送操作,以将消息编辑框中的回复消息发送给消息回复对象。
在一个实施例中,将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件的步骤,包括:
获取该任一个监控会话对象对应的第三软件注册账号信息;
根据该第三软件注册账号信息对所有未读会话消息中的每条符合预设消息获取条件的目标会话消息进行封装;
通过双通道通讯框架将封装后的每条目标会话消息发送给安装在第二设备的第三软件;
接收来自第三软件的回复信息的步骤,包括:
接收第三软件通过双通道通讯框架发送的回复消息。
在一个实施例中,第一软件为机器人流程自动化软件,第三软件和任一第二软件为即时通讯软件;回复消息是第三软件基于其收到的目标会话消息生成的消息,或是第三软件的使用者针对第三软件收到的目标会话消息发送给第三软件的消息。
本发明根据第二方面提供了一种通讯装置,在一个实施例中,该装置运行有第一软件和至少一个第二软件,该装置包括以下模块:
会话界面监控模块,用于响应第一软件的指示对所有第二软件的会话界面进行监控;
未读会话消息获取模块,用于在会话界面监控模块监控到任一个会话界面中展示了任一个监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息;
会话消息发送模块,用于将该所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复该监控会话对象的消息;
回复信息接收模块,用于接收来自第三软件的回复信息,回复信息包括消息回复对象确定信息和回复消息;
回复消息发送模块,用于根据消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象。
本发明根据第三方面提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一方法的实施例的步骤。
本发明根据第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一方法的实施例的步骤。
在本发明实施例中,第一设备在运行第一软件和和至少一个第二软件时,第一软件能够对所有第二软件的会话界面进行监控,并在监控到任一会话界面中展示了任一监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息,之后将所有未读会话消息中的每条目标会话消息发送给安装在第二设备的第三软件;而在接收到来自该第三软件的包括消息回复对象确定信息和回复消息的回复信息之后,就根据消息回复对象确定信息确定待回复消息的目标第二软件和消息回复对象,然后执行机器人模拟消息发送操作以将回复信息通过目标第二软件的会话界面发送给消息回复对象,本实施例通过第一软件能够及时地捕捉到任一个第二软件新接收到的监控会话对象(即需要及时回复消息的其他用户)的会话消息,之后将捕捉到的会话消息发送给第二设备的第三软件,以获得用于回复该其他用户的消息,在获得第三软件发送的回复消息时,将其转发给相应第二软件中的相应的会话对象,从而能够让第二软件的用户及时地回复来自任何其他用户的会话消息。
附图说明
图1为一个实施例中一种通讯方法的流程示意图;
图2为一个实施例中一种通讯方法的应用环境图;
图3为一个实施例中一种会话界面的展示示意图;
图4为一个实施例中第一软件对第二软件进行监控的流程示意图;
图5为一个实施例中获取新接收到的监控会话对象的会话消息的流程示意图;
图6为一个实施例中一种执行机器人模拟消息发送操作的流程示意图;
图7为一个实施例中一种第一软件向第三软件发送目标会话消息的流程示意图;
图8为一个实施例中基于Netty通讯框架的通讯架构图;
图9为一个实施例中Reactor线程模型的示意图;
图10-a为一个实施例中第二软件的会话界面的展示示意图;
图10-b为一个实施例中第三软件的会话界面的展示示意图;
图11为一个实施例中一种通讯装置的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本发明提供了一种通讯方法。在一个实施例中,该通讯方法包括的步骤如图1所示,该方法包括以下步骤:
S110:第一软件对所有第二软件的会话界面进行监控。
在本实施例中,该通讯方法可以应用于运行有第一软件和至少一个第二软件的第一设备。其中,该第一软件为机器人流程自动化软件,第一软件具有通讯功能,其能够通过该通讯功能将其获取的任一个第二软件的会话消息发送给第二设备的第三软件,而第二软件是指需要通过第一软件来监控会话消息的即时通讯软件;当第一设备运行多个第二软件时,可以是运行相同的即时通讯软件(如同时运行多个QQ软件),也可以是多类即时通讯软件(如同时运行微信、QQ和钉钉等软件);该第一设备可以是PC电脑、平板电脑、笔记本电脑、或是任意虚拟机服务器,该虚拟机服务器中需要部署能够安装即时通讯软件的操作系统,如微软公司的windows系统;该第三软件也为即时通讯软件,其可以运行在第二设备中,第二设备可以是PC电脑、平板电脑、笔记本电脑、或者各类智能手机。
在一个实施方式中,该通讯方法的应用环境可以如图2所示。图中,11或21是指登录了第二软件的其他用户账号的设备(或称为其他用户设备),其他用户设备可以是PC电脑、平板电脑、笔记本电脑、或者各类智能手机,而12或22则是消息转发服务器(指第二软件的用于转发登录账号主体的会话消息的服务器),30是第一设备、40是第二设备。第一设备运行的第二软件中的登录账号主体(即第一设备中第二软件登陆了的用户账号)可以与该第二软件的其他用户账号进行会话,即互相发送会话消息,用户账号之间发送的会话消息需要通过第二软件的消息转发服务器(即图中的12或22)来进行转发。比如,假设第二软件是微信软件,微信账号A和微信账号B互相发送(当然,会话消息实际是由登录了各微信账号的设备来发送)的会话消息需要通过微信软件的用于转发会话消息的消息转发服务器来转发,即微信账号A和微信账号B之间所发送的会话消息需要通过消息转发服务器来进行转发。进一步地,第一软件和第三软件之间通讯的会话消息也可以通过第三软件的消息转发服务器(图中未示出)来进行中转。
使用者可以在第一软件中进行相关的设置,如设置第一软件需要进行监控的软件(即第二软件,如钉钉软件、微信软件等)以及各个第二软件中的监控会话对象,即各个第二软件中需要监控的其他用户账号,比如可以是与该软件的登录账号主体有关联的所有其他用户账号或部分用户账号,有关联可以是指互相加了好友或没有加好友但都处于同个群聊/群组/讨论组等,监控会话对象还可以是群聊/群组/讨论组,需要说明的是,以群聊为例,多个用户账号可以建立一个群聊,每个用户账号在群内发送的会话消息都会显示在同一会话窗口中,因而群内的任一用户账号所发送的会话消息都属于该群聊这一会话对象的会话消息而不属于该用户账号的会话消息。还可以进一步设置第一软件需要获取的目标会话消息,即需要获取监控会话对象的哪些会话消息,比如可以是所有的会话消息、所有的问句形式的会话消息和/或含有预设关键字/词的会话消息等。
当使用者对第一软件完成上述设置之后,当第一软件运行之后,会检测运行该第一软件的设备(即第一设备)当前运行的软件中是否包括需要监控的软件(即第二软件),如果有的话,那么第一软件就对其的会话界面进行监控,监控时可以先确定出各个第二软件的会话界面在显示装置上的显示位置,然后周期性地对该会话界面进行截图,然后利用图像识别技术、OCR(Optical Character Recognition,光学字符识别)识别技术来识别出截图中的文字和或图标,并基于识别到的信息来判断各个第二软件的登录账号主体是否新接收到来自监控会话对象(这里的监控对象是指该登陆账号主体对应的监控会话对象)的会话消息。
在一个具体的实施方式中,第一设备包括显示装置,所有第二软件的会话界面显示在显示装置上,其中,该显示装置可以是内嵌于计算机设备的屏幕或是与计算机设备外接的显示器。任一个第二软件的会话界面包括多个会话信息预览区域,一个会话信息预览区域用于展示一个会话对象的会话预览信息,任一个会话对象的会话预览信息是该第二软件的登录账号主体与该会话对象进行的会话的预览消息。具体地,任一个第二软件的会话界面还包括会话窗口,会话窗口包括会话消息展示框和消息编辑框,会话消息展示框用于展示该第二软件的登录账号主体与指定会话对象进行的会话的多条会话消息,消息编辑框包括消息发送按钮。
如图3所示,为一种可能的会话界面示意图。该会话界面的左边区域为会话列表,该会话列表包括多个会话信息预览区域(图中示例性地示出3个),会话信息预览区域中展示的会话预览信息包括会话对象的身份标识和预览消息。预览消息具体可以展示在会话信息预览区域中的预览消息展示区域,如图中展示的“预览消息1”,该区域仅展示固定字符长度的字符,例如,该区域仅展示4个字符长度(相当于两个汉字),假如需要展示“你在哪?”这一预览消息,由于该预览消息的字符长度超过4,所以只展示前面的4个字符长度,即“你在”。身份标识包括该会话对象的用户身份标识(可以是用户名,其展示在用户身份标识展示区域中,比如,家乐福福利群)和头像(展示在头像展示区域中,如果会话对象是群,则头像展示区域会展示若干个群内成员的头像,如果会话对象是个人用户,则头像展示区域会展示该个人用户的头像,可参见图中第2和第3个会话信息预览区域的头像展示区域)。进一步地,会话界面的右边区域为会话窗口,图中会话列表最上面的会话信息预览区域被选中了,因而该会话窗口中的会话消息展示框中展示了登录账号主体与该会话信息预览区域所展示的会话对象(此时该会话对象即为指定会话对象)进行的会话的多条会话消息(图中示例性地示出4条)。
S120:在监控到任一个会话界面中展示了任一个监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息。
在本实施例中,通常的即时通讯软件在新接收到其他用户账号的会话消息时,会在会话界面中与该其他用户账号对应的区域(比如可以是在该其他用户账号对应的会话信息预览区域中)展示用于提示用户有新接收到消息的标识,比如可以展示小红点、内有数字的圆圈如①等等。然而,实际场景中可能不是所有即时通讯软件都会在新接收到其他用户账号的会话消息时展示上述标识,比如,对于指定会话对象,由于会话界面中已经展示了其对应的会话窗口,因此,在新接收到指定会话对象的会话消息时,就不在其对应的会话信息预览区域中展示上述标识,而只是更新了会话信息预览区域中所展示的预览消息,例如,原先会话信息预览区域中展示的预览消息是会话消息1对应的预览消息,在接收到其他用户消息的会话消息2时,将会话消息1更新为会话消息2对应的预览消息。因而,当第一软件监控到会话界面中与监控会话对象对应的区域中展示了用于提示用户有新接收到消息的标识,或者是监控会话对象对应的会话信息预览区域更新了预览消息,就判定会话界面中展示了与该监控会话对象对应的消息未读标识。
进一步地,当第一软件监控到有任何一个第二软件的登录账号主体新接收到来自监控会话对象的会话消息时,就获取该监控会话对象的所有会话消息(比如,监控会话对象发送了一条会话消息,那么就获取该条会话消息)。其中,可以通过OCR识别技术来识别出该监控会话对象所发送的会话消息。
S130:将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复该监控会话对象的消息。
在本实施例中,第一软件在获得该监控会话对象对应的所有未读会话消息之后,由于不是接收到的所有未读会话消息都需要回复,比如有的未读会话消息是该监控会话对象对应的用户误操作而发送的无意义字符串(比如,**¥**&),因而需要从所有未读会话消息中筛选出符合预设消息获取条件的目标会话消息(指符合该条件的会话消息),然后再将其发送给该第三软件,这样也可以减少需要发送的会话消息数量,在需要发送的会话消息数量较大时,可以减轻第一设备的负荷。
S140:接收来自该第三软件的回复信息,回复信息包括消息回复对象确定信息和回复消息。
在本实施例中,第三软件在接收到任一条目标会话消息之后,可以基于其收到的目标会话消息来生成的回复消息,或者是,第三软件将接收到的目标会话消息通过其会话界面展示给其使用者(第三软件的使用者),从而其使用者可以针对其收到的目标会话消息,通过其会话界面来输入回复消息,并通过其将回复消息发送给第一软件,以便第一软件通过该目标会话消息对应的第二软件来将回复消息发送给该目标会话消息对应的监控会话对象,其中,消息回复对象确定信息是提供给第一软件,以使第一软件确定出目标第二软件和消息回复对象的信息。
S150:根据消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象。
在本实施例中,每当第一软件接收到第三软件的回复信息时,根据回复信息所包括的消息回复对象确定信息确定出目标第二软件(即需要回复消息的第二软件)和消息回复对象(即该第二软件对应的需要回复消息的监控会话对象),然后执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象,也就是利用RPA(Robotic process automation,机器人流程自动化)技术来模拟人在会话界面中输入回复消息和发送回复消息的操作,从而实现将回复信息发送给消息回复对象。
本实施例通过第一软件能够及时地捕捉到任一个第二软件新接收到的监控会话对象(即需要及时回复消息的其他用户)的会话消息,之后将捕捉到的会话消息发送给第二设备的第三软件,以获得用于回复该其他用户的消息,在获得第三软件发送的回复消息时,将其转发给相应第二软件中的相应的会话对象,从而让该第二软件的用户能够及时地回复任何其他用户的会话消息。另一方面,第二软件和第三软件是不同的即时通讯软件,本实施例可以通过第一软件来中转来自第二软件和第三软件的会话消息,从而打通了两种不同即时通讯软件之间通讯。
在一个实施例中,如图4所示,S110:第一软件对任一个第二软件的会话界面进行监控的步骤,包括:
S111:第一软件每隔预设时间间隔对该任一个第二软件的会话界面所包括的每个会话信息预览区域进行截图;
S112:对截到的每个会话信息预览区域的截图进行识别,以判断该会话信息预览区域中是否有展示了任一个监控会话对象的会话预览信息和消息未读标识;
S113:若确定有任一个会话信息预览区域中展示了任一个监控会话对象的会话预览信息和消息未读标识,则判定监控到该第二软件的会话界面中展示了该监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识。
本实施例提供了一种用于判断第二软件的登录账号主体是否有新接收到监控会话对象的会话消息的方式,以下以第一软件对某一个第二软件(以下简称为待监控第二软件)进行监控为例对上述方式进行说明,第一软件监控其他第二软件的过程可以参见此例。
具体地,第一软件每隔预设时间间隔对待监控第二软件的会话界面中的每个会话信息预览区域进行截图。当然,为了提高截图效率,假如会话界面中的所有会话信息预览区域都展示在一整块区域(比如都展示在会话列表中),那么截图时可以直接截图该整块区域,此时,本实施例所述的对会话界面中的每个会话信息预览区域进行截图应该解释为对该整块区域进行截图。
完成截图后,对截到的每个会话信息预览区域的截图进行识别,由于会话信息预览区域中又可以分为若干个展示区域(如预览消息展示区域等),且每个展示区域的相对位置是固定的,因为在识别出会话信息预览区域中的文字信息之后,通过文字信息所在的位置即可知道其是什么信息(比如,通过文字信息的位置来判断该文字信息是用户名还是预览消息)。
识别出该截图中的文字信息之后即可通过识别出的文字信息来判断该会话信息预览区域中是否展示有任一个监控会话对象的会话预览信息。比如,预先搜集每个第二软件对应的所有监控会话对象的用户身份标识(如用户名),之后当从截图中识别出会话信息预览区域所展示的用户身份标识时,将识别出的用户身份标识与预先搜集的所有监控会话对象的用户身份标识分别进行匹配,如果有匹配成功的,那么可以确定会话信息预览区域展示了监控会话对象的会话预览信息。
在确定会话信息预览区域展示了监控会话对象的会话预览信息之后,接着识别截图中是否包含用于提示用户有新接收到消息的标识,比如小红点、内有数字的圆圈如①等等(不同即时通讯软件的标识可能有所差异,使用者可以预先在第一软件中进行设置以使第一软件能够成功识别),如果确定截图中有该标识,那么可以确定会话信息预览区域展示了与该监控会话对象对应的消息未读标识,而如果确定截图中没有该标识,则进一步获取截图中的预览消息展示区域中的预览消息,将该预览消息与该监控会话对象的距离当前时间最近的截图中的预览消息进行比对,如果两个预览消息相同,那么可以确定会话信息预览区域没有展示与该监控会话对象对应的消息未读标识,如果两个预览消息不同,这表明当前的截图中的会话信息预览区域更新了预览消息,那么可以确定会话信息预览区域展示了与该监控会话对象对应的消息未读标识。
更具体地,上述的会话信息预览区域的截图可以是指直接截取到的会话信息预览区域的截图,也可以是先截取整块区域的截图,再从该整块区域的截图进一步截取出各个会话信息预览区域的截图。
在一个实施例中,如图5所示,S120:获取与该任一个监控会话对象对应的所有未读会话消息的步骤,包括:
S121:对展示了该任一个监控会话对象的会话预览信息和消息未读标识的会话信息预览区域执行模拟鼠标选中操作,以使该监控会话对象成为指定会话对象;
S122:在确定该任一个第二软件的会话界面展示了该监控会话对象对应的会话窗口之后,对该会话窗口所包括的会话消息展示框进行截图,得到消息展示框截图;
S123:对消息展示框截图进行文字识别,以获取会话消息展示框中展示的所有会话消息;
S124:从所有会话消息中筛选出所有未读会话消息。
在本实施例中,有些即时通讯软件的会话界面中不会将所有会话对象的会话窗口都展示出来,而只是展示指定会话对象(通常是一个,当然也可能是少数几个)对应的会话窗口,因而当需要获取监控会话对象的会话消息时,需要先使其成为指定会话对象,通常对会话信息预览区域执行选中操作(即上述模拟鼠标选中操作,比如可以是鼠标左键的单击或双击等操作)即可使会话信息预览区域所对应的会话对象成为指定会话对象。
具体地,可以利用RPA技术来模拟人为的鼠标操作,将鼠标的位置移到监控会话对象的会话信息预览区域内(可以通过自动化脚本来计算该区域在显示装置中显示的位置,如x坐标和y坐标的坐标信息),然后执行选中操作如鼠标左键单击,即可使监控会话对象成为指定会话对象,在完成上述选中操作之后,会话界面就会展示监控会话对象对应的会话窗口,之后对会话窗口中的会话消息展示框进行截图,之后对该截图进行文字识别即可识别出会话消息展示框中的所有会话消息,可以理解的,会话消息展示框中的会话消息并不全是需要回复的会话消息,比如,图3中所示的会话消息展示框中有4条会话消息,但是右边的会话消息来自登录账号主体,这不需要发送给第三软件,所以可以将其中的登录账号主体的会话消息剔除掉,将剩余的会话消息发送给第三软件。
在一个实施例中,如图6所示,S150中的执行机器人模拟消息发送操作的步骤,包括:
S151:复制回复消息;
S152:对目标第二软件的目标会话界面中的展示了消息回复对象的会话预览信息的会话信息预览区域执行模拟鼠标选中操作,以使消息回复对象成为指定会话对象;
S153:在确定目标会话界面展示了消息回复对象对应的会话窗口之后,在该会话窗口所包括的消息编辑框中执行模拟消息粘贴操作,以将复制的回复消息粘贴到该消息编辑框中;
S154:对该消息编辑框所包括的消息发送按钮执行模拟鼠标发送操作,以将消息编辑框中的回复消息发送给消息回复对象。
在本实施例中,机器人模拟消息发送操作是利用RPA技术实现的。具体地,第一软件在接收到第三软件的回复信息之后,对回复信息所包括的回复消息复制,然后将鼠标移动目标第二软件的目标会话界面中的目标会话信息预览区域(即展示了消息回复对象的会话预览信息的会话信息预览区域)内,然后对目标会话信息预览区域执行选中操作(比如可以是鼠标左键的单击或双击等操作)从而使消息回复对象成为指定会话对象,这样目标会话界面中就会展示消息回复对象对应的会话窗口,继续将鼠标移到该会话窗口的消息编辑框内,然后执行模拟消息粘贴操作以将复制的回复消息粘贴到该消息编辑框中。模拟消息粘贴操作可以是模拟单击鼠标右键,单击之后会展示一个右键菜单,该右键菜单类似于一个展示列表,该展示列表中可能只包含“粘贴”这一个操作选项的展示区域,也可能包含“粘贴”在内的多个操作选项的展示区域,因此,将鼠标移到该右键菜单中“粘贴”这一个操作选项的展示区域内并执行选中操作如鼠标左键单击,即可将回复消息粘贴到该消息编辑框中,之后再将鼠标移动到消息编辑框所包括的消息发送按钮对应的展示区域内,并执行选中操作如鼠标左键单击,从而实现将回复消息发送给消息回复对象。
在一个实施例中,如图7所示,S130:将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件的步骤,包括:
S131:获取该任一个监控会话对象对应的第三软件注册账号信息;
S132:根据该第三软件注册账号信息对所有未读会话消息中的每条符合预设消息获取条件的目标会话消息进行封装;
S133:通过双通道通讯框架将封装后的每条目标会话消息发送给安装在第二设备的第三软件;
相应地,接收来自第三软件的回复信息的步骤,包括:接收第三软件通过双通道通讯框架发送的回复消息。
在本实施例中,第一软件和第三软件之间的通讯功能可以采用Netty和Openfire等双通道通讯框架、或者根据实际需求搭建双通道通讯框架来实现。以Netty通讯框架来实现第一软件和第三软件之间的通讯功能为例,第一软件和第三软件之间的通讯架构图如图8所示,该通讯架构图可以反映出客户端与服务端通过netty框架进行通讯的过程,其中,第一软件中集成了Netty的客户端,而第三软件中集成了Netty的服务端。
Netty框架里主要提供3个部件,分别是:起监听的Bootstrap部件,处理线程组部件(Group)和线程处理部件(Handler)。Bootstrap主要用来初始化各个部件,创建Channel通讯通道;处理线程组主要提供给netty框架内部的Reactor线程模型使用。处理事件主要完成获得的通讯信息处理和解析。该Reactor线程模型可以参见图9,当N个客户端请求事件(Event),向服务端请求的时候,服务端的处理逻辑是先把客户端的请求全部进队列,然后有个事件路由来分发事件给各个事件处理Handler去处理。
第一软件在向第三软件发送某个第二软件的某个监控会话对象的目标会话消息之前,需要第一软件的使用者为该监控会话对象在第三软件注册用户账号,之后,第一软件在监控到该监控会话对象的目标会话消息时,即可通过其在第三软件中注册的用户账号将该目标会话消息发送给第三软件。
以下以一个例子来对本实施例进行说明。如图10-a所示,假设第一软件监控到第二软件中的监控会话对象“福利群1”的目标会话消息为“请问A型号的空调的价格是多少?”,第一软件获取该目标会话消息,以及“福利群1”在第三软件中对应的注册账号信息(该注册账号后续称为第三方账号),然后根据该注册账号信息对“请问A型号的空调的价格是多少?”这条会话消息进行封装,并通过双通道通讯框架发送给第三软件,可以理解地,第二设备中第三软件的登录账号主体是能够接收到该第三方账号的会话消息的用户账号,假设该第三方账号的用户名也为“福利群1”,那么当第三软件接收到第一软件发送的该目标会话消息后,可以自动生成与该目标会话消息对应的回复消息并返回给第一软件,第三软件也可以将回复消息展示在其会话界面中,展示情况可以如图10-b所示,图中所示的回复消息是“你好,A型号的空调的价格是xxxx元。”(当然,图中所示仅为示例,回复消息的具体内容本实施例不做限定),这样可以方便第三软件的使用者直观了解到接收到的所有目标会话消息及其对应的回复消息的情况。进一步地,第三软件的使用者也可以通过第三软件的会话界面来编辑相应的回复消息,并进行回复。
当第一软件接收到回复信息后,根据回复信息包括的消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象即“福利群1”,然后执行机器人模拟消息发送操作,将“你好,A型号的空调的价格是xxxx元。”这一回复消息在第二软件中发送给“福利群1”,完成回复消息的发送后,目标第二软件的会话界面的展示情况可以如图10-a所示。
图1、图4-图7为一个实施例中通讯方法的流程示意图。应该理解的是,虽然图1、图4-图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1、图4-图7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
基于相同的发明构思,本发明还提供了一种通讯装置。在一个实施例中,该装置运行有第一软件和至少一个第二软件,如图11所示,该通讯装置包括以下模块:
会话界面监控模块110,用于响应第一软件的指示对所有第二软件的会话界面进行监控;
未读会话消息获取模块120,用于在会话界面监控模块监控到任一个会话界面中展示了任一个监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息;
会话消息发送模块130,用于将该所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复该监控会话对象的消息;
回复信息接收模块140,用于接收来自第三软件的回复信息,回复信息包括消息回复对象确定信息和回复消息;
回复消息发送模块150,用于根据消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象。
在一个实施例中,通讯装置还包括显示装置,所有第二软件的会话界面显示在显示装置上,任一个第二软件的会话界面包括多个会话信息预览区域,一个会话信息预览区域用于展示一个会话对象的会话预览信息,任一个会话对象的会话预览信息是该第二软件的登录账号主体与该会话对象进行的会话的预览信息。进一步地,任一个第二软件的会话界面还包括会话窗口,会话窗口包括会话消息展示框和消息编辑框,会话消息展示框用于展示该第二软件的登录账号主体与指定会话对象进行的会话的多条会话消息,消息编辑框包括消息发送按钮。
在一个实施例中,会话界面监控模块,包括:
预览区域截图子模块,用于每隔预设时间间隔对该任一个第二软件的会话界面所包括的每个会话信息预览区域进行截图;
识别子模块,用于对截到的每个会话信息预览区域的截图进行识别,以判断该会话信息预览区域中是否有展示了任一个监控会话对象的会话预览信息和消息未读标识;
判定子模块,用于在确定有任一个会话信息预览区域中展示了任一个监控会话对象的会话预览信息和消息未读标识时,判定监控到该第二软件的会话界面中展示了该监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识。
在一个实施例中,未读会话消息获取模块,包括:
第一模拟选中子模块,用于对展示了该任一个监控会话对象的会话预览信息和消息未读标识的会话信息预览区域执行模拟鼠标选中操作,以使该监控会话对象成为指定会话对象;
展示框截图子模块,用于在确定该任一个第二软件的会话界面展示了该监控会话对象对应的会话窗口之后,对该会话窗口所包括的会话消息展示框进行截图,得到消息展示框截图;
文字识别子模块,用于对消息展示框截图进行文字识别,以获取会话消息展示框中展示的所有会话消息;
未读会话消息筛选子模块,用于从所有会话消息中筛选出所有未读会话消息。
在一个实施例中,回复消息发送模块,包括:
消息复制子模块,用于复制回复消息;
第二模拟选中子模块,用于对目标第二软件的目标会话界面中的展示了消息回复对象的会话预览信息的会话信息预览区域执行模拟鼠标选中操作,以使消息回复对象成为指定会话对象;
模拟粘贴子模块,用于在确定目标会话界面展示了消息回复对象对应的会话窗口之后,在该会话窗口所包括的消息编辑框中执行模拟消息粘贴操作,以将复制的回复消息粘贴到该消息编辑框中;
模拟发送子模块,用于对该消息编辑框所包括的消息发送按钮执行模拟鼠标发送操作,以将消息编辑框中的回复消息发送给消息回复对象。
在一个实施例中,会话消息发送模块,包括:
账号信息获取子模块,用于获取该任一个监控会话对象对应的第三软件注册账号信息;
消息封装子模块,用于根据该第三软件注册账号信息对所有未读会话消息中的每条符合预设消息获取条件的目标会话消息进行封装;
消息发送子模块,用于通过双通道通讯框架将封装后的每条目标会话消息发送给安装在第二设备的第三软件;
回复信息接收模块,具体用于接收第三软件通过双通道通讯框架发送的回复消息。
在一个实施例中,第一软件为机器人流程自动化软件,第三软件和任一第二软件为即时通讯软件;回复消息是第三软件基于其收到的目标会话消息生成的消息,或是第三软件的使用者针对第三软件收到的目标会话消息发送给第三软件的消息。
关于通讯装置的具体限定可以参见上文中对于通讯方法的限定,在此不再赘述。上述通讯装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图12所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储第一软件截取到的各类截图等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种通讯方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括显示装置、存储器、处理器及存储在存储器上并可在处理器上运行的第一软件(软件或称为计算机程序)和至少一个第二软件,处理器执行第一软件时实现以下步骤:
对所有第二软件的会话界面进行监控;在监控到任一个会话界面中展示了任一个监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息;将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复该监控会话对象的消息;接收来自该第三软件的回复信息,回复信息包括消息回复对象确定信息和回复消息;根据消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象。
在一个实施例中,该计算机设备包括的显示装置可以为内嵌于计算机设备的屏幕或为与计算机设备外接的显示器,所有第二软件的会话界面显示在显示装置上,任一个第二软件的会话界面包括多个会话信息预览区域,一个会话信息预览区域用于展示一个会话对象的会话预览信息,任一个会话对象的会话预览信息是该第二软件的登录账号主体与该会话对象进行的会话的预览信息;任一个第二软件的会话界面还包括会话窗口,会话窗口包括会话消息展示框和消息编辑框,会话消息展示框用于展示该第二软件的登录账号主体与指定会话对象进行的会话的多条会话消息,消息编辑框包括消息发送按钮。
在一个实施例中,处理器执行第一软件,实现对任一个第二软件的会话界面进行监控时,还实现以下步骤:
每隔预设时间间隔对该任一个第二软件的会话界面所包括的每个会话信息预览区域进行截图;对截到的每个会话信息预览区域的截图进行识别,以判断该会话信息预览区域中是否有展示了任一个监控会话对象的会话预览信息和消息未读标识;若确定有任一个会话信息预览区域中展示了任一个监控会话对象的会话预览信息和消息未读标识,则判定监控到该第二软件的会话界面中展示了该监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识。
在一个实施例中,处理器执行第一软件,实现获取与该任一个监控会话对象对应的所有未读会话消息时,还实现以下步骤:
对展示了该任一个监控会话对象的会话预览信息和消息未读标识的会话信息预览区域执行模拟鼠标选中操作,以使该监控会话对象成为指定会话对象;在确定该任一个第二软件的会话界面展示了该监控会话对象对应的会话窗口之后,对该会话窗口所包括的会话消息展示框进行截图,得到消息展示框截图;对消息展示框截图进行文字识别,以获取会话消息展示框中展示的所有会话消息;从所有会话消息中筛选出所有未读会话消息。
在一个实施例中,处理器执行第一软件,实现执行机器人模拟消息发送操作时,还实现以下步骤:
复制回复消息;对目标第二软件的目标会话界面中的展示了消息回复对象的会话预览信息的会话信息预览区域执行模拟鼠标选中操作,以使消息回复对象成为指定会话对象;在确定目标会话界面展示了消息回复对象对应的会话窗口之后,在该会话窗口所包括的消息编辑框中执行模拟消息粘贴操作,以将复制的回复消息粘贴到该消息编辑框中;对该消息编辑框所包括的消息发送按钮执行模拟鼠标发送操作,以将消息编辑框中的回复消息发送给消息回复对象。
在一个实施例中,处理器执行第一软件,实现将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件时,还实现以下步骤:
获取该任一个监控会话对象对应的第三软件注册账号信息;根据该第三软件注册账号信息对所有未读会话消息中的每条符合预设消息获取条件的目标会话消息进行封装;通过双通道通讯框架将封装后的每条目标会话消息发送给安装在第二设备的第三软件。
相应地,处理器执行第一软件,实现接收来自第三软件的回复信息时,还实现以下步骤:接收第三软件通过双通道通讯框架发送的回复消息。
在一个实施例中,第一软件为机器人流程自动化软件,第三软件和任一第二软件为即时通讯软件;回复消息是第三软件基于其收到的目标会话消息生成的消息,或是第三软件的使用者针对第三软件收到的目标会话消息发送给第三软件的消息。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有第一软件(软件或称为计算机程序),第一软件被前述实施例提供的计算机设备的处理器执行时实现以下步骤:
对该计算机设备中运行的所有第二软件的会话界面进行监控;在监控到任一个会话界面中展示了任一个监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识时,获取与该监控会话对象对应的所有未读会话消息;将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复该监控会话对象的消息;接收来自该第三软件的回复信息,回复信息包括消息回复对象确定信息和回复消息;根据消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将回复信息通过目标第二软件的会话界面发送给消息回复对象。
在一个实施例中,第一软件被处理器执行,对任一个第二软件的会话界面进行监控时,还实现以下步骤:
每隔预设时间间隔对该任一个第二软件的会话界面所包括的每个会话信息预览区域进行截图;对截到的每个会话信息预览区域的截图进行识别,以判断该会话信息预览区域中是否有展示了任一个监控会话对象的会话预览信息和消息未读标识;若确定有任一个会话信息预览区域中展示了任一个监控会话对象的会话预览信息和消息未读标识,则判定监控到该第二软件的会话界面中展示了该监控会话对象的会话预览信息且展示了与该监控会话对象对应的消息未读标识。
在一个实施例中,第一软件被处理器执行,获取与该任一个监控会话对象对应的所有未读会话消息时,还实现以下步骤:
对展示了该任一个监控会话对象的会话预览信息和消息未读标识的会话信息预览区域执行模拟鼠标选中操作,以使该监控会话对象成为指定会话对象;在确定该任一个第二软件的会话界面展示了该监控会话对象对应的会话窗口之后,对该会话窗口所包括的会话消息展示框进行截图,得到消息展示框截图;对消息展示框截图进行文字识别,以获取会话消息展示框中展示的所有会话消息;从所有会话消息中筛选出所有未读会话消息。
在一个实施例中,第一软件被处理器执行,执行机器人模拟消息发送操作时,还实现以下步骤:
复制回复消息;对目标第二软件的目标会话界面中的展示了消息回复对象的会话预览信息的会话信息预览区域执行模拟鼠标选中操作,以使消息回复对象成为指定会话对象;在确定目标会话界面展示了消息回复对象对应的会话窗口之后,在该会话窗口所包括的消息编辑框中执行模拟消息粘贴操作,以将复制的回复消息粘贴到该消息编辑框中;对该消息编辑框所包括的消息发送按钮执行模拟鼠标发送操作,以将消息编辑框中的回复消息发送给消息回复对象。
在一个实施例中,第一软件被处理器执行,将所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件时,还实现以下步骤:
获取该任一个监控会话对象对应的第三软件注册账号信息;根据该第三软件注册账号信息对所有未读会话消息中的每条符合预设消息获取条件的目标会话消息进行封装;通过双通道通讯框架将封装后的每条目标会话消息发送给安装在第二设备的第三软件。
相应地,第一软件被处理器执行,接收来自第三软件的回复信息时,还实现以下步骤:接收第三软件通过双通道通讯框架发送的回复消息
在一个实施例中,第一软件为机器人流程自动化软件,第三软件和任一第二软件为即时通讯软件;回复消息是第三软件基于其收到的目标会话消息生成的消息,或是第三软件的使用者针对第三软件收到的目标会话消息发送给第三软件的消息。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种通讯方法,其特征在于,所述方法应用于运行有第一软件和至少一个第二软件的第一设备,所述方法包括:
所述第一软件对所有所述第二软件的会话界面进行监控;
在监控到任一个所述会话界面中展示了任一个监控会话对象的会话预览信息且展示了与所述监控会话对象对应的消息未读标识时,获取与所述监控会话对象对应的所有未读会话消息;
将所述所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复所述监控会话对象的消息;
接收来自所述第三软件的回复信息,所述回复信息包括消息回复对象确定信息和回复消息;
根据所述消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将所述回复信息通过所述目标第二软件的会话界面发送给所述消息回复对象。
2.如权利要求1所述的通讯方法,其特征在于,所述第一设备包括显示装置,所有所述第二软件的会话界面显示在所述显示装置上,任一个所述第二软件的会话界面包括多个会话信息预览区域,一个所述会话信息预览区域用于展示一个会话对象的会话预览信息,任一个所述会话对象的会话预览信息是该第二软件的登录账号主体与该会话对象进行的会话的预览信息;
任一个所述第二软件的会话界面还包括会话窗口,所述会话窗口包括会话消息展示框和消息编辑框,所述会话消息展示框用于展示该第二软件的登录账号主体与指定会话对象进行的会话的多条会话消息,所述消息编辑框包括消息发送按钮。
3.如权利要求2所述的通讯方法,其特征在于,所述第一软件对任一个所述第二软件的会话界面进行监控的步骤,包括:
所述第一软件每隔预设时间间隔对该任一个第二软件的会话界面所包括的每个会话信息预览区域进行截图;
对截到的每个所述会话信息预览区域的截图进行识别,以判断该会话信息预览区域中是否有展示了任一个监控会话对象的会话预览信息和消息未读标识;
若确定有任一个会话信息预览区域中展示了任一个监控会话对象的会话预览信息和消息未读标识,则判定监控到该第二软件的会话界面中展示了所述监控会话对象的会话预览信息且展示了与所述监控会话对象对应的消息未读标识。
4.如权利要求3所述的通讯方法,其特征在于,所述获取与所述监控会话对象对应的所有未读会话消息的步骤,包括:
对展示了所述监控会话对象的会话预览信息和消息未读标识的会话信息预览区域执行模拟鼠标选中操作,以使所述监控会话对象成为指定会话对象;
在确定该任一个所述第二软件的会话界面展示了所述监控会话对象对应的会话窗口之后,对该会话窗口所包括的会话消息展示框进行截图,得到消息展示框截图;
对所述消息展示框截图进行文字识别,以获取所述会话消息展示框中展示的所有会话消息;
从所述所有会话消息中筛选出所有未读会话消息。
5.如权利要求2所述的通讯方法,其特征在于,所述执行机器人模拟消息发送操作的步骤,包括:
复制所述回复消息;
对所述目标第二软件的目标会话界面中的展示了所述消息回复对象的会话预览信息的会话信息预览区域执行模拟鼠标选中操作,以使所述消息回复对象成为指定会话对象;
在确定所述目标会话界面展示了所述消息回复对象对应的会话窗口之后,在该会话窗口所包括的消息编辑框中执行模拟消息粘贴操作,以将复制的所述回复消息粘贴到该消息编辑框中;
对该消息编辑框所包括的消息发送按钮执行模拟鼠标发送操作,以将所述消息编辑框中的回复消息发送给所述消息回复对象。
6.如权利要求1所述的通讯方法,其特征在于,所述将所述所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件的步骤,包括:
获取所述监控会话对象对应的第三软件注册账号信息;
根据所述第三软件注册账号信息对所述所有未读会话消息中的每条符合预设消息获取条件的目标会话消息进行封装;
通过双通道通讯框架将封装后的每条目标会话消息发送给安装在第二设备的第三软件;
所述接收来自所述第三软件的回复信息的步骤,包括:
接收所述第三软件通过所述双通道通讯框架发送的回复消息。
7.如权利要求1所述的通讯方法,其特征在于,所述第一软件为机器人流程自动化软件,所述第三软件和任一所述第二软件为即时通讯软件;
所述回复消息是所述第三软件基于其收到的目标会话消息生成的消息,或是所述第三软件的使用者针对所述第三软件收到的目标会话消息发送给所述第三软件的消息。
8.一种通讯装置,其特征在于,所述装置安装有第一软件和至少一个第二软件,所述装置包括:
会话界面监控模块,用于响应所述第一软件的指示对所有所述第二软件的会话界面进行监控;
未读会话消息获取模块,用于在所述会话界面监控模块监控到任一个所述会话界面中展示了任一个监控会话对象的会话预览信息且展示了与所述监控会话对象对应的消息未读标识时,获取与所述监控会话对象对应的所有未读会话消息;
会话消息发送模块,用于将所述所有未读会话消息中的每条符合预设消息获取条件的目标会话消息发送给安装在第二设备的第三软件,以获得用于回复所述监控会话对象的消息;
回复信息接收模块,用于接收来自所述第三软件的回复信息,所述回复信息包括消息回复对象确定信息和回复消息;
回复消息发送模块,用于根据所述消息回复对象确定信息确定出待回复消息的目标第二软件和消息回复对象,执行机器人模拟消息发送操作,以将所述回复信息通过所述目标第二软件的会话界面发送给所述消息回复对象。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202011539074.4A 2020-12-23 2020-12-23 通讯方法、装置、计算机设备和存储介质 Active CN112737922B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011539074.4A CN112737922B (zh) 2020-12-23 2020-12-23 通讯方法、装置、计算机设备和存储介质
CA3143846A CA3143846A1 (en) 2020-12-23 2021-12-23 Communicating method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011539074.4A CN112737922B (zh) 2020-12-23 2020-12-23 通讯方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN112737922A true CN112737922A (zh) 2021-04-30
CN112737922B CN112737922B (zh) 2023-04-14

Family

ID=75604553

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011539074.4A Active CN112737922B (zh) 2020-12-23 2020-12-23 通讯方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN112737922B (zh)
CA (1) CA3143846A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113343769A (zh) * 2021-05-11 2021-09-03 广州市申迪计算机系统有限公司 一种自动收取文字消息的方法和装置
CN113468023A (zh) * 2021-07-09 2021-10-01 中国电信股份有限公司 监控方法、装置、介质及电子设备
CN113676373A (zh) * 2021-08-12 2021-11-19 深圳追一科技有限公司 会话测试方法、装置、计算机设备和存储介质
CN113905001A (zh) * 2021-09-15 2022-01-07 深圳市六度人和科技有限公司 一种自动回复方法、装置、计算机设备及可读存储介质
CN115065652A (zh) * 2022-06-27 2022-09-16 壹沓科技(上海)有限公司 消息回复方法、装置、存储介质及计算机设备
CN115509776A (zh) * 2022-09-29 2022-12-23 南京远能电力工程有限公司监理分公司 基于电力工程智慧监理平台的数据分析方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090265471A1 (en) * 2007-07-24 2009-10-22 Huawei Technologies Co., Ltd. Method, system, server and terminal for processing message
CN103973540A (zh) * 2013-01-28 2014-08-06 纽海信息技术(上海)有限公司 即时多方交互通讯工具及其方法
CN110022399A (zh) * 2018-11-27 2019-07-16 阿里巴巴集团控股有限公司 消息展示方法、装置、用户终端及可读存储介质
CN110543269A (zh) * 2019-09-06 2019-12-06 腾讯科技(深圳)有限公司 一种消息处理方法、装置及终端设备、存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090265471A1 (en) * 2007-07-24 2009-10-22 Huawei Technologies Co., Ltd. Method, system, server and terminal for processing message
CN103973540A (zh) * 2013-01-28 2014-08-06 纽海信息技术(上海)有限公司 即时多方交互通讯工具及其方法
CN110022399A (zh) * 2018-11-27 2019-07-16 阿里巴巴集团控股有限公司 消息展示方法、装置、用户终端及可读存储介质
CN110543269A (zh) * 2019-09-06 2019-12-06 腾讯科技(深圳)有限公司 一种消息处理方法、装置及终端设备、存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113343769A (zh) * 2021-05-11 2021-09-03 广州市申迪计算机系统有限公司 一种自动收取文字消息的方法和装置
CN113468023A (zh) * 2021-07-09 2021-10-01 中国电信股份有限公司 监控方法、装置、介质及电子设备
CN113676373A (zh) * 2021-08-12 2021-11-19 深圳追一科技有限公司 会话测试方法、装置、计算机设备和存储介质
CN113676373B (zh) * 2021-08-12 2022-08-19 深圳追一科技有限公司 会话测试方法、装置、计算机设备和存储介质
CN113905001A (zh) * 2021-09-15 2022-01-07 深圳市六度人和科技有限公司 一种自动回复方法、装置、计算机设备及可读存储介质
CN113905001B (zh) * 2021-09-15 2023-06-06 深圳市六度人和科技有限公司 一种自动回复方法、装置、计算机设备及可读存储介质
CN115065652A (zh) * 2022-06-27 2022-09-16 壹沓科技(上海)有限公司 消息回复方法、装置、存储介质及计算机设备
CN115065652B (zh) * 2022-06-27 2024-03-19 壹沓科技(上海)有限公司 消息回复方法、装置、存储介质及计算机设备
CN115509776A (zh) * 2022-09-29 2022-12-23 南京远能电力工程有限公司监理分公司 基于电力工程智慧监理平台的数据分析方法及系统
CN115509776B (zh) * 2022-09-29 2024-02-06 南京远能电力工程有限公司监理分公司 基于电力工程智慧监理平台的数据分析方法及系统

Also Published As

Publication number Publication date
CN112737922B (zh) 2023-04-14
CA3143846A1 (en) 2022-06-23

Similar Documents

Publication Publication Date Title
CN112737922B (zh) 通讯方法、装置、计算机设备和存储介质
CN107786430B (zh) 机器人聊天方法及系统
CN110138573B (zh) 一种会议状态提示方法、服务器、智能终端及存储介质
US10863312B2 (en) Moving track sharing method and apparatus, and storage medium
CN109558162A (zh) 应用程序发布方法、装置、计算机设备及存储介质
CN104850491A (zh) 一种软件测试方法、设备及系统
CN109728996B (zh) 通讯信息的展示方法、用户设备、存储介质及装置
CN114861948A (zh) 设备智能自检方法、设备智能自检系统以及存储介质
CN112631939A (zh) 用例配置方法、用例配置装置以及可读存储介质
WO2016111414A1 (ko) 소셜 네트워크 서비스를 이용한 로봇 서비스 방법 및 로봇장치
WO2022100075A1 (zh) 性能检测方法、装置、电子设备和计算机可读介质
CN111194540A (zh) 多主题对话的通信控制装置和方法、及计算机处理设备
CN109491748B (zh) 一种基于小程序的可穿戴设备管控方法及管控终端
CN111399732A (zh) 网页截图方法、装置、计算机设备和存储介质
CN110908881A (zh) 埋点数据的发送方法、装置、电子设备及计算机可读存储介质
CN106941411B (zh) 终端管控方法及系统
EP4239539A1 (en) Network system and control device
CN110893616A (zh) 一种远程控制方法、装置、计算机设备和存储介质
CN114461102A (zh) 一种表情图像添加方法、装置、设备和存储介质
CN114546560A (zh) 数据分享方法及装置、存储介质及电子设备
KR20220003625A (ko) 성능 검측 방법, 장치, 전자 기기, 컴퓨터 판독 가능 매체 및 컴퓨터 프로그램 제품
CN113221039A (zh) 页面展示方法、装置、计算机设备和存储介质
CN112073462A (zh) 定位方法及装置
CN111258890A (zh) 程序测试方法、存储介质和系统
CN111709600A (zh) 会场的故障处理方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant