即时通讯中联系人状态的通知方法及通知装置制造方法及图纸

技术编号:11277726 阅读:85 留言:0更新日期:2015-04-09 10:30
本发明专利技术提供了一种即时通讯中联系人状态的通知方法及通知装置,其中,即时通讯中联系人状态的通知方法,包括:设置用于表示联系人状态的状态表,每个所述状态表用于对所有联系人的多种状态中对应的一种状态进行标识,每个所述状态表包括多个指示位,每个所述指示位用于对相应的一个联系人的当前状态是否是所述每个状态表对应的状态进行标识;将用于对所述所有联系人的至少一种状态进行标识的至少一个所述状态表发送至所述所有联系人中每个联系人对应的终端,以由所述每个联系人对应的终端根据至少一个所述状态表确定所述所有联系人的当前状态。通过本发明专利技术的技术方案,可以有效地降低服务器在传输状态报文时的数据流量。

【技术实现步骤摘要】
即时通讯中联系人状态的通知方法及通知装置
本专利技术涉及即时通讯
,具体而言,涉及一种即时通讯中联系人状态的通知方法和一种即时通讯中联系人状态的通知装置。
技术介绍
目前,企业内部通常都需要使用即时通信服务,由于使用个人版的即时通讯工具(如QQ、MSN等)存在公司敏感信息被窃取的风险,并且不能有效管理员工是否使用此类即时通讯工具进行工作。因此,在有些公司内部会使用专有的即时通信软件。通常情况下,企业的每个员工都要能看到整个企业通讯录中的员工状态,即是否在线、繁忙、离开等即时通信状态。由于整个企业的员工状态对每个员工而言是可见的,而每个员工得状态是时刻变动的,当员工登录时,服务器需要发送的状态报文个数是n×n/2(n是企业员工个数),而在上班时间段则是n×n的报文个数,当企业员工上万时,则需要广播的状态报文个数是上亿个,导致服务器需要发送的数据量较大。同时,在移动技术高速发展的今天,用户可能在PC端、手机端、平板端等多个终端上进行登录,因此服务器在发送状态报文时也需要实时获取每个联系人在那些终端上登录,并且需要获取每个联系人在每个终端上的状态。所有这些造成了服务器端需要广播的员工状态报文包的个数庞大,导致服务器端传输的数据流量巨大。因此,如何能够减少服务器发送状态报文的数据量,降低状态报文的传输流量成为亟待解决的技术问题。
技术实现思路
本专利技术正是基于上述技术问题至少之一,提出了一种新的即时通讯中联系人状态的通知方案,可以有效地降低服务器在传输状态报文时的数据流量。有鉴于此,本专利技术提出了一种即时通讯中联系人状态的通知方法,包括:设置用于表示联系人状态的状态表,每个所述状态表用于对所有联系人的多种状态中对应的一种状态进行标识,每个所述状态表包括多个指示位,每个所述指示位用于对相应的一个联系人的当前状态是否是所述每个状态表对应的状态进行标识;将用于对所述所有联系人的至少一种状态进行标识的至少一个所述状态表发送至所述所有联系人中每个联系人对应的终端,以由所述每个联系人对应的终端根据至少一个所述状态表确定所述所有联系人的当前状态。在该技术方案中,通过设置状态表,且每个状态表用于对联系人的一种状态进行标识,每个状态表中的每个指示位对相应的一个联系人的当前状态是否是每个状态表对应的状态进行标识,使得在向每个联系人对应的终端发送所有联系人的当前状态时,仅需通过状态报文传输对应于每个联系人的指示位即可,如一个4096字节的状态表可以表示4096×8个联系人的一种状态(如在线、离线、离开、繁忙、就餐中的一种状态),即便需要发送多个状态表(即分别对应于在线、离线、离开、繁忙、就餐中的状态表),传输的数据量也远远小于现有技术中传输每个联系人的ID及其对应的状态的数据量,有效地降低了服务器传输状态报文的数据流量。其中,每个联系人对应的终端在接收到至少一个状态表时,可以通过至少一个状态表中相应的指示位确定所有联系人的当前状态。优选情况下,服务器需要将用于对所有联系人的多种状态(如所有状态)进行标识的多个状态表发送至所有联系人中每个联系人对应的终端。在上述技术方案中,优选地,还包括:获取所述每个联系人在多个终端中每个终端上的状态;根据所述多个终端的优先级,选择所述每个联系人在所述多个终端中优先级最高的终端上的状态作为所述每个联系人的当前状态。在该技术方案中,由于每个联系人可能在多个终端上登录,因此当联系人在多个终端上登录上,可以根据多个终端的优先级,确定每个联系人的当前状态。如联系人可能在PC端、手机端、平板端和固话端登录,则可以设置优先级从高到低依次为PC端、手机端、平板端和固话端,进而可以取优先级较高的终端上的联系人的状态作为联系人的当前状态。在上述技术方案中,优选地,还包括:设置终端类型表,每个终端类型表包括多个指示位,每个终端类型表中的每个指示位用于对所述所有联系人中相应的一个联系人在所述多个终端中的一个终端上的当前状态;将用于对所述所有联系人在所述多个终端上的当前状态进行标识的多个所述终端类型表发送至所述每个联系人对应的至少一个终端,以由所述每个联系人对应的至少一个终端根据多个所述终端类型表确定所述所有联系人在所述多个终端中每个终端上的状态。在该技术方案中,类似于状态表的设计方案,服务器可以设置终端类型表,以将每个联系人在多个终端上的状态发送至每个联系人对应的至少一个终端,进而能够确保每个联系人能够查看到其他联系人在多个终端上的状态,同时也能够有效降低服务器的传输数据量。其中,每个联系人对应的至少一个终端可以是每个联系人对应的所有终端或任意数量的终端。在上述技术方案中,优选地,将每个所述状态表或每个所述终端类型表发送至所述每个联系人对应的终端的步骤具体包括:将每个所述状态表或每个所述终端类型表划分为多个数据块,根据所述多个数据块中每个数据块包含的指示位的值,确定所述每个数据块的值;将所述每个数据块的值发送至所述每个联系人对应的终端,或仅将所述多个数据块中指定数据块的值发送至所述每个联系人对应的终端,其中,所述指定数据块中包含的所有指示位的值不同。在该技术方案中,通过将状态表或终端类型表划分为多个数据块,以根据每个数据块包含的指示位的值确定每个数据块的值,进而将每个数据块的值发送至每个联系人对应的终端,或仅将上述指定数据块的值发送至每个联系人对应的终端,使得能够在确保将所有联系人的状态或所有联系人在每个终端上的状态发送至其他联系人对应的终端的前提下,有效降低服务器的传输数据量。在上述技术方案中,优选地,还包括:通过具有预定格式的数据报文将每个所述状态表或每个所述终端类型表发送至所述每个联系人对应的终端;其中,所述预定格式包括:表示所述状态表或所述终端类型表的报头部分、表示所述每个数据块的值的数据部分和表示所述每个数据块的属性的描述部分。在上述技术方案中,优选地,还包括:检测所述所有联系人的当前状态是否发生变化;每经过预定时间后,将所述当前状态发生变化的联系人的标识信息和变化后的状态通过广播报文的方式发送至所述每个联系人对应的终端。在该技术方案中,通过在每经过预定时间后,将当前状态发生变化的联系人的标识信息和变化后的状态通过广播报文的方式发送至每个联系人对应的终端,可以避免在有联系人的状态发生变化时就发送状态报文而导致服务器需要广播的报文数量较多的问题,同样可以降低服务器传输状态报文的数据流量。在上述技术方案中,优选地,每个所述状态表中的每个指示位对应于一个所述联系人的标识信息,以及每个所述终端类型表中的每个指示位对应于一个所述联系人的标识信息。在上述技术方案中,优选地,根据所述所有联系人的数量和/或处理系统单次能够读取或处理的数据量,设置每个所述状态表和/或每个所述终端类型表的大小。在该技术方案中,通过根据处理系统单次能够读取或处理的数据量,设置每个状态表和/或每个终端类型表大小,能够最大程度地提高处理系统的处理速度。根据本专利技术的另一方面,还提出了一种即时通讯中联系人状态的通知装置,包括:设置单元,用于设置用于表示联系人状态的状态表,每个所述状态表用于对所有联系人的多种状态中对应的一种状态进行标识,每个所述状态表包括多个指示位,每个所述指示位用于对相应的一个联系人的当前状态是否是所述每个状态表对应的状态进行标识本文档来自技高网...

【技术保护点】
一种即时通讯中联系人状态的通知方法,其特征在于,包括:设置用于表示联系人状态的状态表,每个所述状态表用于对所有联系人的多种状态中对应的一种状态进行标识,每个所述状态表包括多个指示位,每个所述指示位用于对相应的一个联系人的当前状态是否是所述每个状态表对应的状态进行标识;将用于对所述所有联系人的至少一种状态进行标识的至少一个所述状态表发送至所述所有联系人中每个联系人对应的终端,以由所述每个联系人对应的终端根据至少一个所述状态表确定所述所有联系人的当前状态。

【技术特征摘要】
1.一种即时通讯中联系人状态的通知方法,其特征在于,包括:设置用于表示联系人状态的状态表,每个所述状态表用于对所有联系人的多种状态中对应的一种状态进行标识,每个所述状态表包括多个指示位,每个所述指示位用于对相应的一个联系人的当前状态是否是所述每个状态表对应的状态进行标识;将用于对所述所有联系人的至少一种状态进行标识的至少一个所述状态表发送至所述所有联系人中每个联系人对应的终端,以由所述每个联系人对应的终端根据至少一个所述状态表确定所述所有联系人的当前状态。2.根据权利要求1所述的即时通讯中联系人状态的通知方法,其特征在于,还包括:获取所述每个联系人在多个终端中每个终端上的状态;根据所述多个终端的优先级,选择所述每个联系人在所述多个终端中优先级最高的终端上的状态作为所述每个联系人的当前状态。3.根据权利要求2所述的即时通讯中联系人状态的通知方法,其特征在于,还包括:设置终端类型表,每个终端类型表包括多个指示位,每个终端类型表中的每个指示位用于对所述所有联系人中相应的一个联系人在所述多个终端中的一个终端上的当前状态进行标识;将用于对所述所有联系人在所述多个终端上的当前状态进行标识的多个所述终端类型表发送至所述每个联系人对应的至少一个终端,以由所述每个联系人对应的至少一个终端根据多个所述终端类型表确定所述所有联系人在所述多个终端中每个终端上的状态。4.根据权利要求3所述的即时通讯中联系人状态的通知方法,其特征在于,将每个所述状态表或每个所述终端类型表发送至所述每个联系人对应的终端的步骤具体包括:将每个所述状态表或每个所述终端类型表划分为多个数据块,根据所述多个数据块中每个数据块包含的指示位的值,确定所述每个数据块的值;将所述每个数据块的值发送至所述每个联系人对应的终端,或仅将所述多个数据块中指定数据块的值发送至所述每个联系人对应的终端,其中,所述指定数据块中包含的所有指示位的值不同。5.根据权利要求4所述的即时通讯中联系人状态的通知方法,其特征在于,还包括:通过具有预定格式的数据报文将每个所述状态表或每个所述终端类型表发送至所述每个联系人对应的终端;其中,所述预定格式包括:表示所述状态表或所述终端类型表的报头部分、表示所述每个数据块的值的数据部分和表示所述每个数据块的属性的描述部分。6.根据权利要求1至3中任一项所述的即时通讯中联系人状态的通知方法,其特征在于,还包括:检测所述所有联系人的当前状态是否发生变化;每经过预定时间后,将所述当前状态发生变化的联系人的标识信息和变化后的状态通过广播报文的方式发送至所述每个联系人对应的终端。7.根据权利要求3所述的即时通讯中联系人状态的通知方法,其特征在于:每个所述状态表中的每个指示位对应于一个所述联系人的标识信息,以及每个所述终端类型表中的每个指示位对应于一个所述联系人的标识信息;和/或根据所述所有联系人的数量和/或处理系统单次能够读取或处理的数据量,设置每个所述状态表和/或每个所述终端类型表的大小。8.一种即时通讯中联系人状态的通知装置,其特征在于,包括:设置单元,用于设置...

【专利技术属性】
技术研发人员:张晓廷杨志鹏方正华孟祥宇
申请(专利权)人:深圳中兴网信科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1