企业即时通讯方法、装置、计算机设备及可读存储介质与流程

专利2022-05-09  170


本发明涉及通讯领域,具体涉及企业实时沟通及企业内容管理通讯领域,特别是涉及一种企业即时通讯方法、装置、计算机设备及计算机可读存储介质。



背景技术:

企业im,企业即时通讯:简称eim(enterpriseinstantmessaging),它是一种面向企业使用的沟通和内容管理的工具服务,公司员工可以通过安装了即时通讯的终端软件进行两人或多人之间的实时沟通及企业内容管理。

基于voip(voiceoverinternetprotocol,ip承载语音)的网络通话已经被广泛应用于企业即时通讯中。通过将模拟语音信号进行数字化,并以数据封包的形式在ip网络上进行实时传递,不仅可以扩展传统的通话场景,而且还可以获得更佳的通话体验。在相关技术中,通讯应用提供了上述的网络通话功能,使得用户在手机、pc主机等电子设备上安装该即时通讯应用的客户端后,即可实现网络通话。

voip是一种语音通话技术,经由网际协议(internetprotocol,简称ip)来达成语音通话与多媒体会议,也就是经由互联网来进行通信。其他非正式的名称有ip电话(iptelephony)、互联网电话(internettelephony)、宽带电话(broadbandtelephony)以及宽带电话服务(broadbandphoneservice)。voip可用于包括voip电话、智能手机、个人计算机在内的诸多互联网接入设备,通过蜂窝网络、wi-fi进行通话及发送短信。

目前,企业im在应用voip技术发起电话或语音沟通时,现有技术在处理用户间的消息推送时,对于在线目标用户客户端,一般是通过在线通知目标用户客户端的,此时,企业im的tcp连接未断开,目标用户可以直接进入应用程序处理请求端的通话请求;对于离线等非在线状态的目标用户客户端,企业im的tcp连接断开,此时目标用户一般是通过pushkit(一种框架,用于处理消息通知方式)推送实现ios音视频消息通知。pushkit是一种消息推送方式,有别于普通的apn,它不会弹出通知,而是悄悄的告诉用户的应用程序有推送过来,唤醒应用程序,让应用程序做出相应的处理,进行一些操作,而不被用户感知。但是,pushkit在一些操作系统中不能使用,导致离线用户不能及时收到请求用户的通话请求通知。如ios系统(inputoutputsystem,苹果公司开发的移动操作系统),根据苹果的文档,应用pushkit推送voip后必须跟随calllkit的调用,否则应用程序会被强行终止,多次违反后甚至再也收不到推送,而ios13及以上系统无法使用callkit.framework进行viop推送消息。



技术实现要素:

为了解决上述问题,本发明的目的是提供一种企业即时通讯方法、装置、计算机设备及计算机可读存储介质,该方法在接收到请求用户发出的与目标用户音/视频通话请求时,根据目标用户与服务器的tcp连接状态向所述目标用户推送tcp消息或apns消息通知,将所述请求用户请求信息传递到离线状态的目标用户。

基于此,本发明提供了一种企业即时通讯方法,所述企业即时通讯方法包括:

接收请求用户的音/视频通话请求;

获取目标用户的tcp连接状态,判断所述目标用户当前状态:

当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户;当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

在本发明中,在服务器在接收到请求用户的音/视频通话请求时,若所述目标用户未与服务器建立tcp连接,则通过物理连接,向所述目标用户推送apns消息通知,对所述目标用户进行物理连接认证,当所述目标用户终端设备通过验证,所述服务器接收的请求信息保存到所述apns消息通知中并发送给所述目标用户客户端终端,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

其中,当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户后,还包括:

获取所述目标用户的当前状态,判断所述目标用户是否处于空闲状态,若所述目标用户忙时,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求,否则,所述目标用户空闲,调用通话连接请求,以使所述目标用户进入来电操作提醒页面。

其中,所述当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知的步骤,包括:

采集所述采集所述目标用户的通话状态,判断所述目标用户当前是否合适接听音/视频通话:

当所述目标用户当前在通话时,所述目标用户不适合接听音/视频通话,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求;

当所述目标用户当前无通话时,推送所述目标用户所述apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

其中,推送所述apns消息通知到所述目标用户时,同时采集所述目标用户的通话状态,当所述目标用户在目标时间内未处理所述apns消息通知,再次推送一次所述apns消息通知,直至达到推送次数阈值。

其中,所述推送所述目标用户所述apns消息通知,还包括:

向所述目标用户调用提示请求,提醒所述目标用户所述apns消息通知。

本发明还提供了一种企业即时通讯装置,包括:

接收模块,用于接收请求用户的音/视频通话请求;

tcp连接验证模块,用于获取目标用户的tcp连接状态,判断所述目标用户当前状态:

消息推送模块,用于在当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户;当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

其中,所述目标用户反馈模块包括:

采集子模块,用于采集所述采集所述目标用户的通话状态,判断所述目标用户当前是否合适接听音/视频通话;

消息推送子模块,用于在当所述目标用户当前在通话时,所述目标用户不适合接听音/视频通话,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求;

当所述目标用户当前无通话时,推送所述目标用户所述apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

其中,所述消息推送子模块还用于采集所述目标用户的通话状态,当所述目标用户在目标时间内未处理所述apns消息通知,再次推送一次所述apns消息通知,直至达到推送次数阈值。

本发明还提供了一种计算机设备,包括存储器、处理器和网络接口,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现企业即时通讯方法的步骤。

本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现企业即时通讯方法的步骤。

在本发明中,所述企业即时通讯方法在接收请求用户的音/视频通话请求后,获取目标用户的tcp连接状态,判断所述目标用户当前状态:当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户;当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。本发明在服务器在接收到请求用户的音/视频通话请求时,若所述目标用户未与服务器建立tcp连接,则通过物理连接,向所述目标用户推送apns消息通知,对所述目标用户进行物理连接认证,当所述目标用户终端设备通过验证,所述服务器接收的请求信息保存到所述apns消息通知中并发送给所述目标用户客户端终端,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例可以应用于其中的示例性系统架构图;

图2是本发明实施例提供的企业即时通讯方法的示意图;

图3本发明实施例提供的一企业即时通讯方法原理图;

图4是本发明实施例提供的企业即时通讯方装置的结构示意图;

图5根据本申请的计算机设备的一个实施例的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等,操作企业即时通讯方法的业务及应用。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。

终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于用户设备、网络设备或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备其包括但不限于任何一种可与用户通过触摸板进行人机交互的移动电子产品,例如智能手机、平板电脑等,所述移动电子产品可以采用任意操作系统,如android操作系统、ios操作系统等。其中,所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(asic)、可编程门阵列(fpga)、数字处理器(dsp)、嵌入式设备等。所述网络设备其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(cloudcomputing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述网络包括但不限于互联网、广域网、城域网、局域网、vpn网络、无线自组织网络(adhoc网络)等。当然,本领域技术人员应能理解上述终端设备仅为举例,其他现有的或今后可能出现的终端设备如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

终端设备101、102、103是企业即时通讯应用的客户端,客户端之间可以通过所述网络104和服务器105进行通信,终端设备101、102、103之间可以双方甚至多方连接通信。具体地,其中一个终端设备101、102、103中在即时通讯应用程序发起通话请求或音视频通话请求,服务器105接收该请求后,推送消息到其他终端设备101、102、103中,建立tcp连接通话。

服务器105可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。其也可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。

需要说明的是,本申请实施例所提供的企业即时通讯方法一般由服务器执行,相应地,企业即时通讯装置一般设置于服务器设备中,终端设备安装相应计算机程序或应用程序。

应该理解,图2中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

图2是本发明实施例提供的企业即时通讯方法的示意图,所述方法包括:

201、接收请求用户的音/视频通话请求。

企业im,企业即时通讯:简称eim(enterpriseinstantmessaging),它是一种面向企业使用的沟通和内容管理的工具服务,公司员工可以通过安装了即时通讯的终端软件进行两人或多人之间的实时沟通及企业内容管理。在本发明实施例中,企业即时通讯应用终端可向另一或者更多终端用户发送音/视频通话请求,由服务器接收请求用户的音/视频通话请求。

需要说明的是,即时通讯应用可以为任意具有网络通话功能的即时通讯应用,本申请并不对此进行限制。比如,该即时通讯应用可以为企业即时通讯(enterpriseinstantmessaging,eim)应用,例如“钉钉(dingtalk)”、“马上办”、“企业微信”、kk等。

需要说明的是,所述企业im即时通讯应用包括多个终端用户成员,每个所述终端用户包含至少一组织标识符、一账号以及一密码。每个所述终端用户成员可向所述服务器发起音/视频通话请求,请求和至少一个其他终端用户成员连接音/视频通话。

可以理解的是,装载所述企业即时通讯应用的客户端终端设备可以为为手机、平板等移动设备,或者所述终端设备也可以为pc主机等非移动式的电子设备,本申请并不对此进行限制。通过在终端设备上安装所述企业即时通讯应用的客户端应用程序(app),并登录用户在该即时通讯应用处的注册账号,即可将该电子设备配置为该用户对应的所述企业即时通讯应用的客户端。

202、获取目标用户的tcp连接状态,判断所述目标用户当前状态,若目标tcp连接在线,则执行步骤203,若目标用户tcp断开连接非在线,则执行步骤204。

在本发明实施例中,当服务器接收到步骤201请求用户发出的音/视频通话请求,由于用户终端操作系统(包括如ios系统、android操作系统等其他操作系统)无法使用callkit.framework进行viop推送消息通知目标用户,无法直接唤醒所述目标用户终端程序,目标用户终端所述企业即时通讯应用作出相应的处理,即消息传达通知不到所述目标用户。

为解决此技术问题,本发明实施例在步骤201接收到所述请求用户发出的音/视频通话请求后,根据所请求目标用户与服务器的tcp连接状态进行消息推送处理。当所述目标用户终端程序在线时,所述目标用户与所述服务器之间建立的tcp连接未断开,执行步骤203,所述服务器可直接向所述目标用户终端应用程序推送音视频通话的tcp消息通知。当所述目标用户终端程序处于离线等非在线状态时,所述服务器与所述目标用户直接沟通的tcp连接沟通桥梁断开,所述服务器无法直接向所述目标用户客户端应用程序发送tcp消息通知。此时,执行步骤204,所述服务器向所述目标用户终端应用程序推送apns(applepushnotificationservice,苹果推送服务)消息通知,所述apns消息通知到达时所述目标用户终端的企业即时通讯应用程序并没有在运行,所述用户终端就会告知目标用户应用所述企业即时通讯应用程序有待处理的数据。

203、向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户。

在本发明实施例中,处于运行状态是所述目标用户在运行所述企业即时通讯应用程序接收到步骤202推送的所述tcp消息通知,所述目标用户根据所述企业即时通讯应用程序当前状态,判断是否所述目标用户是否可以接听所述音/视频请求通话。

应当理解的是,当所述目标用户繁忙时,如正在进行上一通话中,则所述目标用户不能接听此次音/视频通话,向服务器发起请求拒绝此次音/视频通话请求,回复繁忙无法接听,所述服务器收到所述目标用户的繁忙回复请求,向所述请求用户发送音/视频繁忙的tcp消息通知,直接挂断所述请求用户的所述音/视频通话请求,所述请求用户客户端终止所述音/视频通话请求。

可以理解的是,当所述目标用户处于空闲时,所述目标用户终端在运行所述企业即时通讯直接调用弹出所述请求用户的音/视频通话请求页面,所述目标用户可向所述服务器发起请求同意接通所述音/视频通话请求,回复接听音视频通话,并弹出接听页面。进一步地,在结束所述音视频通话时,可以由所述目标用户向所述服务器发起结束通话请求结束通话,也可以由所述请求用户向所述服务器发起结束通话请求被动结束通话。

可以理解的是,当所述目标客户处于空闲时,所述目标客户终端在运行所述企业即时通讯应用接收到步骤202所述的tcp消息,在所述企业即时通讯应用调用也可以直接向所述服务器发送拒绝通话请求,所述音/视频通话未接通,由所述服务器回复所述请求用户挂断的tcp消息通知,结束所述音/视频通话。

204、推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

在本发明实施例中,当步骤202获取到所述目标用户与所述服务器的tcp连接断开时,即所述目标用户未启动应用所述企业即时通讯程序,所述服务器不能直接向所述目标用户终端发送tcp消息,而是发送apns消息消息通知,所述apns消息通知到达所述目标用户终端的企业即时通讯应用程序时并没有在运行,所述目标用户并未在线,所述服务器向所述目标用户调用提示请求,提醒所述目标用户所述apns消息通知,所述apns消息通知所述目标用户终有待处理的音视频通话待处理,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

值得注意的是,在推送所述apns消息通知到所述目标用户时,同时采集所述目标用户的通话状态或处理情况,当所述目标用户在目标时间内未处理所述通知消息,再次推送一次通知消息,直至达到推送次数阈值或所述目标用户进入所述企业即时通讯应用处理所述音/视频通话请求。

示例性的,如图3所示,图3是本发明实施例提供一种企业即时通讯方法的应用原理图,以下步骤是应用图3所示原理实现4本发明实施例所提供一种企业即时通讯方法的具体实施过程,包括如下步骤:

301:请求用户a向服务器发送音/视频通话请求。

302:服务器收到音视频通话请求后获取目标用户b的tcp连接状态,若用户b在线,执行步骤303,否则,执行步骤308。

303:向目标用户b推送音视频通话的tcp消息通知,并判断目标用户b当前用户状态,若繁忙,执行步骤304,若空闲,执行步骤306或步骤307;

304:目标用户b向服务器发起请求,回复繁忙无法接听,服务器收到客目标用户b的繁忙回复请求,向请求用户a发送音视频繁忙的tcp消息通知。

305:请求用户a收到繁忙的tcp消息通知,结束音视频通话。

306:目标用户b向服务器发起请求,回复接听音视频通话,调用通话连接请求,所述目标用户进入来电操作提醒页面,可点击接听按钮进入音视频通话,点击挂断按钮结束通话或者由请求用户a请求被动结束通话。

307:目标用户b向服务器发起请求,拒绝接听音视频通话,服务器向请求用户a发送音视频挂断的tcp消息通知,请求用户a收到挂断的tcp消息通知,结束音视频通话。

308:获取目标用户b的当前用户状态,判断所述目标用户当前是否合适接听音/视频通话:若目标用户b处于繁忙状态(当前处于通话状态),执行步骤309,否则,执行步骤310。

309:服务器直接返回所述请求用户a音视频繁忙的tcp消息通知,请求用户a收到繁忙的tcp消息通知,结束音视频通话。

310:目标用户b收到所述apns消息通知,响铃30s,循环震动30次。

311:目标用户b点击apns消息通知进入企业即时通讯app,向服务器发起查询音视频通话请求,返回是否有进行中的音视频通话,若是,执行步骤312,否则,结束执行。

312:目标用户b点击接听进入通话,点击挂断结束通话并向服务器发起挂断请求,请求用户a收到挂断的tcp消息通知,结束音视频通话。

313:目标用户b向服务器发起请求,拒绝接听音视频通话,服务器向请求用户a发送音视频挂断的tcp消息通知,请求用户a收到挂断的tcp消息通知,结束音视频通话。

314:服务器采集目标用户b离线时的音视频通话状态,若用户b在30s内没有进入所述企业即时通讯app,即没有在线,30s再次推送一次apns消息通知。

图4是本发明实施例提供的企业即时通讯装置400的示意图,所述装置包括:

接收模块401,用于接收请求用户的音/视频通话请求;

tcp连接验证模块402,用于获取目标用户的tcp连接状态,判断所述目标用户当前状态。

消息推送模块403,用于在当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户;当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

其中,所述消息推送模块403包括采集子模块,用于采集所述采集所述目标用户的通话状态,判断所述目标用户当前是否合适接听音/视频通话;

消息推送子模块,用于在当所述目标用户当前在通话时,所述目标用户不适合接听音/视频通话,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求;

当所述目标用户当前无通话时,推送所述目标用户所述apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

进一步地,所述消息推送子模块还用于采集所述目标用户的通话状态,当所述目标用户在目标时间内未处理所述apns消息通知,再次推送一次所述apns消息通知,直至达到推送次数阈值。

所述企业即时通讯装置400还包括显示模块(图未示),所述显示模块用于显示所述企业即时通讯装置400的软件开发过程及操作页面,终端用户可视化处理音/视频通话操作处理过程。

所述企业即时通讯装置400还可以包括输入模块(图未示),所述输入模块与所述显示模块相连,所述输入模块可包括按键,可用于输入用户id的账号、密码、名称等信息,所述软件开发过程操作页面可以在所述软件开发装置中的显示模块中显示,并且所述显示模块还可以显示所述用户的其他信息,并将此信息存储起来,方便用户随时进行查看。

需要说明的是,本实施例的企业即时通讯装置500,与方法实施例的属于同一构思,其具体实现过程详细见方法实施例,且方法实施例中的技术特征在本实施例中均对应适用,此处不再赘述。

为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图5,图5为本实施例计算机设备基本结构框图。

所述计算机设备5包括通过系统总线相互通信连接存储器51、处理器52、网络接口53。需要指出的是,图中仅示出了具有组件51-53的计算机设备5,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程门阵列(field-programmablegatearray,fpga)、数字处理器(digitalsignalprocessor,dsp)、嵌入式设备等。

所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。

所述存储器51至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器51可以是所述计算机设备5的内部存储单元,例如该计算机设备5的硬盘或内存。在另一些实施例中,所述存储器51也可以是所述计算机设备5的外部存储设备,例如该计算机设备5上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器51还可以既包括所述计算机设备5的内部存储单元也包括其外部存储设备。本实施例中,所述存储器51通常用于存储安装于所述计算机设备5的操作系统和各类应用软件,例如企业即时通讯方法的程序代码等。此外,所述存储器51还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器52在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器52通常用于控制所述计算机设备5的总体操作。本实施例中,所述处理器52用于运行所述存储器51中存储的程序代码或者处理数据,例如运行所述企业即时通讯方法的程序代码。

所述网络接口53可包括无线网络接口或有线网络接口,该网络接口53通常用于在所述计算机设备5与其他电子设备之间建立通信连接。

本发明的实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现企业即时通讯方法的步骤。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。


技术特征:

1.一种企业即时通讯方法,其特征在于,包括以下步骤:

接收请求用户的音/视频通话请求;

获取目标用户的tcp连接状态,判断所述目标用户当前状态:

当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户;当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

2.根据权利要求1所述的企业即时通讯方法,其特征在于,当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户后,还包括:

获取所述目标用户的当前状态,判断所述目标用户是否处于空闲状态,若所述目标用户忙时,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求,否则,所述目标用户空闲,调用通话连接请求,以使所述目标用户进入来电操作提醒页面。

3.根据权利要求1所述的企业即时通讯方法,其特征在于,所述当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知的步骤,包括:

采集所述采集所述目标用户的通话状态,判断所述目标用户当前是否合适接听音/视频通话:

当所述目标用户当前在通话时,所述目标用户不适合接听音/视频通话,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求;

当所述目标用户当前无通话时,推送所述目标用户所述apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

4.根据权利要求3所述的企业即时通讯方法,其特征在于,推送所述apns消息通知到所述目标用户时,同时采集所述目标用户的通话状态,当所述目标用户在目标时间内未处理所述apns消息通知,再次推送一次所述apns消息通知,直至达到推送次数阈值。

5.根据权利要求3所述的企业即时通讯方法,其特征在于,所述推送所述目标用户所述apns消息通知,还包括:

向所述目标用户调用提示请求,提醒所述目标用户所述apns消息通知。

6.一种企业即时通讯装置,其特征在于,包括:

接收模块,用于接收请求用户的音/视频通话请求;

tcp连接验证模块,用于获取目标用户的tcp连接状态,判断所述目标用户当前状态:

消息推送模块,用于在当所述目标用户tcp连接在线时,向所述目标用户推送音视频通话的tcp消息通知,直接将所述音/视频通话请求发送到所述目标用户;当所述目标用户tcp断开连接非在线时,推送所述目标用户apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

7.根据权利要求6所述的企业即时通讯装置,其特征在于,所述消息推送模块包括:

采集子模块,用于采集所述采集所述目标用户的通话状态,判断所述目标用户当前是否合适接听音/视频通话;

消息推送子模块,用于在当所述目标用户当前在通话时,所述目标用户不适合接听音/视频通话,返回所述请求用户所述目标用户繁忙并结束所述音/视频通话请求;

当所述目标用户当前无通话时,推送所述目标用户所述apns消息通知,所述目标用户根据所述apns消息通知进入应用程序获取并处理所述音/视频通话请求。

8.根据权利要求7所述的企业即时通讯装置,其特征在于,所述消息推送子模块还用于采集所述目标用户的通话状态,当所述目标用户在目标时间内未处理所述apns消息通知,再次推送一次所述apns消息通知,直至达到推送次数阈值。

9.一种计算机设备,包括存储器、处理器和网络接口,所述存储器存储有计算机程序,其征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述企业即时通讯方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述企业即时通讯方法的步骤。

技术总结
本发明提供一种企业即时通讯方法、装置、存储介质及计算机设备,该方法包括接收请求用户的音/视频通话请求,获取目标用户的TCP连接状态,判断目标用户当前状态:当目标用户TCP连接在线时,向目标用户推送音视频通话的TCP消息通知,直接将音/视频通话请求发送到目标用户;当目标用户TCP断开连接非在线时,推送目标用户APNS消息通知,目标用户根据APNS消息通知进入应用程序获取并处理音/视频通话请求。本发明在服务器在目标用户未与服务器建立TCP连接时,向目标用户推送APNS消息通知,对目标用户进行物理连接认证,服务器接收的请求信息保存到APNS消息通知中并发送给目标用户客户端终端,目标用户根据APNS消息通知进入应用程序获取并处理音/视频通话请求。

技术研发人员:桂家旺;黎培
受保护的技术使用者:深圳依时货拉拉科技有限公司
技术研发日:2021.04.06
技术公布日:2021.08.03

转载请注明原文地址:https://doc.8miu.com/read-2417.html

最新回复(0)