提供用户状态信息的方法及装置与流程

文档序号:11959752阅读:141来源:国知局
提供用户状态信息的方法及装置与流程
本申请涉及即时通信
技术领域
,特别是涉及提供用户状态信息的方法及装置。
背景技术
:随着网络技术的不断发展,以及各类型终端设备的不断普及,大部分的人与人之间的沟通都是通过终端设备进行的。除了传统的打电话、发送信息等方式,各种应用(App)也为人们的沟通提供了更多更丰富的方式,例如一些即使通信类的应用也为用户提供了发送信息、语音通话、视频通话等通讯方式,为人们的日常生活提供了极大的便利。但是,在有些情况下,这种便利的通讯方式也可能会打扰到人们的日常生活。例如,某用户正在参加会议时,突然接到朋友的电话或者信息,在该用户忘记将手机关静音的情况下,可能会使得该用户比较尴尬。从通信系统角度而言,如果用户在其联系人不方便的情况下与其联系,则可能无法及时得到回复,之后可能会重复多次联系,造成系统资源的浪费。总之,如何使得现有的通讯方式在给用户带来便利的前提下,更加人性化,尽量降低对人们正常生活造成影响,降低系统资源的浪费,成为需要本领域技术人员解决的技术问题。技术实现要素:本申请提供了提供用户状态信息的方法及装置,可以避免正与某特定关系用户在一起的用户被打扰,同时,也可以降低对网络资源的浪费。本申请提供了如下方案:一种提供用户状态信息的方法,包括:服务器预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;收集用户的当前地理位置信息;针对同一用户集合中的各个目标用户,将同一时刻收集到的地理位置信息进行比对;如果某用户集合中各个目标用户之间的距离小于预置阈值,则将该用户集合中的所述目标用户标注为预置状态,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起。一种提供用户状态信息的方法,包括:客户端接收到打开联系人列表的用户指令时,向服务器发送获取用户状态信息的请求,以便服务器判断所述联系人列表中是否包括处于预置状态的目标用户,如果是,则将所述目标用户处于所述预置状态的信息返回;其中,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起;根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。一种提供用户状态信息的方法,包括:服务器预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;接收客户端发送的获取指定用户的用户状态的请求;判断所述指定用户是否出现在所述用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息;将所述各个目标用户的地理位置信息进行比对;如果各个目标用户之间的距离小于预置阈值,则向所述客户端返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起。一种提供用户状态信息的方法,包括:客户端在接收到打开联系人列表并选择指定用户的指令后,向服务器发送获取该指定用户的用户状态的请求,以便服务器判断所述指定用户是否出现在预置的用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息,并将所述各个目标用户的地理位置信息进行比对,如果各个目标用户之间的距离小于预置阈值,则返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起;根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。一种提供用户状态信息的装置,应用于服务器,包括:数据库建立单元,用于预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;位置信息收集单元,用于收集用户的当前地理位置信息;位置信息比对单元,用于针对同一用户集合中的各个目标用户,将同一时刻收集到的地理位置信息进行比对;状态信息标注单元,用于如果某用户集合中各个目标用户之间的距离小于预置阈值,则将该用户集合中的所述目标用户标注为预置状态,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起。一种提供用户状态信息的装置,应用于客户端,包括:第一请求发送单元,用于接收到打开联系人列表的用户指令时,向服务器发送获取用户状态信息的请求,以便服务器判断所述联系人列表中是否包括处于预置状态的目标用户,如果是,则将所述目标用户处于所述预置状态的信息返回;其中,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起;第一提示单元,用于根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。一种提供用户状态信息的装置,应用于服务器,包括:数据库建立单元,用于预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;第二请求接收单元,用于接收客户端发送的获取指定用户的用户状态的请求;第二判断单元,用于判断所述指定用户是否出现在所述用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息;比对单元,用于将所述各个目标用户的地理位置信息进行比对;返回单元,用于如果各个目标用户之间的距离小于预置阈值,则向所述客户端返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起。一种提供用户状态信息的装置,应用于客户端,包括:第二请求发送单元,用于在接收到打开联系人列表并选择指定用户的指令后,向服务器发送获取该指定用户的用户状态的请求,以便服务器判断所述指定用户是否出现在预置的用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息,并将所述各个目标用户的地理位置信息进行比对,如果各个目标用户之间的距离小于预置阈值,则返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起;第二提示单元,用于根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。根据本申请提供的具体实施例,本申请公开了以下技术效果:通过本申请实施例,能够预先建立其用户关系数据库,并根据对用户所在地理位置信息的比对,确定出具有特定关系的用户是否正在一起,如果是,则可以向这种用户的好友用户等客户端提供相关的通知消息,以便客户端对其好友用户进行提示,这样,如果其中一方的好友用户想要与该用户联系时,可能会由于该提示信息的存在,而暂时不再联系,从而避免该用户被打扰,同时, 也可以降低对网络资源的浪费。当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的第一方法的流程图;图2是本申请实施例提供的第二方法的流程图;图3是本申请实施例提供的第三方法的流程图;图4是本申请实施例提供的第四方法的流程图;图5是本申请实施例提供的第一装置的示意图;图6是本申请实施例提供的第二装置的示意图;图7是本申请实施例提供的第三装置的示意图;图8是本申请实施例提供的第四装置的示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。由于在实际应用中,用户往往是在与某些特殊的人在一起时不愿意被打扰,例如,与领导在一起时,与情侣在一起时,等等。因此,在本申请实施例中,可以将这种情况识别出来,并向其好友进行提示,这样,在用户知晓其联系人当前可能不方便接听电话或者查看信息的情况下,可能会暂时不去联系,从而 避免对方被打扰,也避免多次无效的联系导致的资源浪费。下面对具体的实现方式进行详细介绍。实施例一参见图1,该实施例一首先从服务器的角度,提供了一种提供用户状态信息的方法,其特征在于,包括:S101:服务器预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;所谓的特定关系可以有多种,例如,可以是工作中的上下级关系、服务商与客户关系、师生关系、情侣关系等等。数据库中的数据来源也可以有多种,例如,可以是用户上传的,或者系统收集的。其中,在系统收集的方式下,可以是通过大数据分析等方式进行的,例如,将各个用户在系统中的个人资料信息、聊天记录信息、通讯录信息等进行统计,从中发现哪些用户之间存在特定关系。例如,在用户A的聊天记录中,称呼用户B为“老婆”,则可以确定该用户A与用户B为情侣关系。或者,假设用户C的个人资料中公布其电话号码为138****,而用户D的通讯录中,将该138****号码对应的联系人标注为“老板”,则可以确定该用户C与用户D之间具有工作中的上下级关系,等等。当然,关于用户的通讯录信息等可能会涉及到用户隐私的信息,可以是在得到用户许可的情况下再进行收集。关于具体挖掘用户之间特定关系的实现方式,由于并不属于本申请实施例的发明重点,因此,这里不再详述。总之,无论采用具体何种方式,可以发现多个用户集合,每个用户集合中就包括具有特定关系的两个用户,为了便于后续使用,可以通过数据库的方式进行保存。例如,具体的保存形式可以如以下表1所示:表1序号用户集合关系名称1(用户A,用户B)情侣关系2(用户C,用户D)上下级关系………………S102:收集用户的当前地理位置信息;由于现有的移动终端设备一般都配备有定位功能,并且在得到用户许可的情况下,终端设备中安装的具体应用(App)可以使用该定位功能,在这种情况下,App客户端可以通过移动终端设备的定位功能获取到设备的当前地理位置信息;另一方面,由于用户在使用其移动终端设备上的App客户端登录到其在服务器注册的账号后,就可以将账号与该移动终端设备进行关联。这样,再通过App客户端与服务器之间的通信,就可以使得服务器获取到各个用户当前的地理位置信息。当然,在实际应用中,还可以通过其他方式来收集用户的当前地理位置信息,例如,如果用户的移动终端设备是通过WiFi(无线保真)的方式接入互联网,则可以获取各个用户接入的WiFi名称,虽然该信息可能无法直接表示出该用户的绝对位置信息,但是可以通过判断同一用户集合内的其他用户是否通过同一WiFi进行联网这一信息,来确定出两者之间的相对位置信息,进而判断两者是否在一起。S103:针对同一用户集合中的各个目标用户,将同一时刻收集到的地理位置信息进行比对;由于可以收集到各个用户的当前地理位置信息,因此,可以将用户之间的地理位置信息进行比对,这种比对是在同一用户集合的各个目标用户之间进行的。例如,对于表1中的各个用户集合,就是将用户A与用户B的地理位置信息进行比对,将用户C与用户D的地理位置信息进行比对。具体实现时,可以预先设置比对的时间间隔,例如,每隔每五分钟比对一次,等等。S104:如果某用户集合中各个目标用户之间的距离小于预置阈值,则将该用户集合中的所述目标用户标注为预置状态,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起。如果通过某时刻的比对发现,某用户集合中各个目标用户之间的距离小于预置阈值,也就是说,该用户集合中的各个目标用户之间的距离比较近,则证明这些用户可能在一起,因此,就可以将该用户集合中的目标用户标注为某预置的状态,用以表示:目标用户正与其特定关系用户在一起。例如,如果某时刻确定出表1中第一个用户集合中的用户A与用户B之间的距离比较近,则可以对该用户A及用户B进行标注,也即,用户A以及用户B当前的状态为:正与其情侣在一起。具体在对用户的状态进行标注时,可以有多种方式,例如,可以在表1所示的数据库表中增加一列,用于表示对应的集合中各个目标用户是否处于预置状态,例如,如表2所示:表2序号用户集合关系名称是否处于预置状态1(用户A,用户B)情侣关系是2(用户C,用户D)上下级关系否……………………当然,关于该表2中的关于各个目标用户的状态的标注可能是会发生变化的,例如,某时刻发现某两个目标用户在一起,可是过一段时间之后两者可能会分开,通过步骤S102以及S103中地理位置信息的不断收集以及比对,在监控到处于所述预置状态的各个目标用户之间的距离超出所述预置阈值,并且已经持续了预置时间长度后,证明目标用户已经没有在一起,此时,就可以将关于该目标用户的标注删除,或者切换为其他状态。需要说明的是,根据具体特定关系的不同,同一集合中的各个目标用户之间的关系可能是对等的,也可能并不是对等的,例如,如果用户A与用户B之间的情侣关系,则两者的关系是对等的,而如果用户A与用户B之间是上下级关系,则两者的关系并不是对等的。对于对等的关系,两个目标用户在一起时,可能都不想被打扰,而对于非对等的关系,两个目标用户在一起时,可 能只是其中一方用户不想被打扰,此时的不想被打扰可能是出于对谈话对方的尊重等目的。因此,在本申请实施例中,还可以对具体的实现方式进行细化。例如,在识别出某用户集合中两个目标用户在一起之后,对于非对等的用户关系,还可以仅将其中一个目标用户的状态进行标识。为此,还可以在用户关系数据库中增加一个字段,用于记录各个用户集合中的需要被标注的目标用户,例如,可以如表3所示:表3序号用户集合关系名称需要被标注的用户是否处于预置状态1(用户A,用户B)情侣关系用户A、用户B否2(用户C,用户D)上下级关系用户D是…………………………这样,如果上述第二个用户集合中的用户C正与用户D在一起,则可以仅对用户D的状态进行标注,这样,后续只需要向该用户D的好友提供通知消息,以通知该用户D正与其上级领导在一起,暂时不要打扰他;而关于用户C,则不必对其好友进行通知,因为即使用户C收到电话、信息等,一般也不会造成对对方不尊重等情况。在服务器维护上述用户状态信息的情况下,客户端就可以通过查询的方式,从服务器获取所需的用户状态信息。例如,某用户打开其联系人列表,准备与其中的某联系人联系,此时,客户端就可以首先向服务器发送获取用户状态信息的请求,这样,服务器可以首先获取该客户端关联用户的联系人列表(该信息一般会在服务器进行保存),然后,判断该联系人列表中是否包括处于所述预置状态的目标用户,如果是,则可以将所述目标用户处于所述预置状态的信息返回,这样,客户端就可以将该信息提供给关联用户。例如,某时刻,收到了某用户客户端的请求,此时,数据库中各个用户的状态如表3所示,而此时用户D恰好出现在请求方用户的联系人列表中,因此,就可以将该“用户D正与其上级领导在一起”这一信息返回给客户端,这样,客户端就可以提示给请求方用户。具体的提示方式可以有多种,例如,在联系人列表对应的条目上 添加文字标识、图片标识,等等。此时,如果请求方用户恰好想要与该用户D联系,在看到该提示信息之后,就可以暂时不要联系,等到该提示信息消失后再行联系,从而避免用户D与上级领导的谈话被打扰,也可以避免造成过多的资源浪费。实施例二该实施例二是与实施例一相对应的客户端实现方式,参见图2,该实施例二从客户端的角度提供了一种提供用户状态信息的方法,该方法具体可以包括以下步骤:S201:客户端接收到打开联系人列表的用户指令时,向服务器发送获取用户状态信息的请求,以便服务器判断所述联系人列表中是否包括处于预置状态的目标用户,如果是,则将所述目标用户处于所述预置状态的信息返回;其中,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起;S202:根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。由于实施例二与实施例一是相对应的,因此,相关的具体实现可以参见实施例一中的介绍,这里不再赘述。实施例三在前述实施例一以及实施例二中,是由服务器从全局的角度,对各用户集合中的用户状态预先进行检测,这样,接收到客户端的请求之后,就可以直接通过查询数据库的方式来返回响应。而在本申请实施例三中,为了降低服务器的工作量,还可以在接收到客户端的具体查询请求后,再进行目的性地判断,并返回判断结果。如图3所示,该实施例三从服务器的角度提供了另一种提供用户状态信息的方法,该方法可以包括以下步骤:S301:服务器预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;该步骤与实施例一中的步骤S101相同。S302:接收客户端发送的获取指定用户的用户状态的请求;在这种实现方式下,对于客户端而言,可以是在用户打开联系人列表,并选择了其中一联系人准备与其联系时,发出的上述请求,因此,所谓的指定用户就可以是指该被选择的联系人。S303:判断所述指定用户是否出现在所述用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息;S304:将所述各个目标用户的地理位置信息进行比对;S305:如果各个目标用户之间的距离小于预置阈值,则向所述客户端返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起。其他各步骤与实施例一类似,因此,详见实施例一中的介绍,这里不再赘述。实施例四该实施例四是与实施例三相对应的,也即从客户端的角度,提供了一种提供用户状态信息的方法,参见图4,该方法可以包括以下步骤:S401:客户端在接收到打开联系人列表并选择指定用户的指令后,向服务器发送获取该指定用户的用户状态的请求,以便服务器判断所述指定用户是否出现在预置的用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息,并将所述各个目标用户的地理位置信息进行比对,如果各个目标用户之间的距离小于预置阈值,则返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起;S402:根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。由于用户已经在联系人列表中选择了指定用户,由此可能触发了该指定用 户详细联系信息界面被打开,或者与该指定用户进行对话的界面被打开,因此,在提供提示信息时,可以是在详细联系信息界面或者对话界面中进行提示。关于该实施例四中其他的具体实现,也可以参见实施例一中的介绍,这里不再赘述。与实施例一提供的提供用户状态信息的方法相对应,本申请实施例还提供了一种提供用户状态信息的装置,应用于服务器,参见图5,该装置具体可以包括:数据库建立单元501,用于预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;位置信息收集单元502,用于收集用户的当前地理位置信息;位置信息比对单元503,用于针对同一用户集合中的各个目标用户,将同一时刻收集到的地理位置信息进行比对;状态信息标注单元504,用于如果某用户集合中各个目标用户之间的距离小于预置阈值,则将该用户集合中的所述目标用户标注为预置状态,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起。具体实现时,该装置还可以包括:标注信息删除单元,用于在监控到处于所述预置状态的各个目标用户之间的距离超出所述预置阈值,且持续预置时间长度后,将所述关于预置状态的标注信息删除。其中,对于非对等的特定关系,所述用户关系数据库中还保存其中一方需要被标注的目标用户;所述状态信息标注单元具体用于:将该用户集合中的所述需要被标注的目标用户标注为预置状态。在实际应用中,该装置还可以包括:第一请求接收单元,用于接收到客户端的获取用户状态信息的请求时,获取所述客户端关联用户的联系人列表;第一判断单元,用于判断所述联系人列表中是否包括处于所述预置状态的目标用户,如果是,则将所述目标用户处于所述预置状态的信息返回,以便所述客户端将该信息提供给所述关联用户。与实施例二提供的提供用户状态信息的方法相对应,本申请实施例还提供了一种提供用户状态信息的装置,应用于客户端,参见图6,该装置具体可以包括:第一请求发送单元601,用于接收到打开联系人列表的用户指令时,向服务器发送获取用户状态信息的请求,以便服务器判断所述联系人列表中是否包括处于预置状态的目标用户,如果是,则将所述目标用户处于所述预置状态的信息返回;其中,所述预置状态用于表示:所述目标用户正与其特定关系用户在一起;第一提示单元602,用于根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。与实施例三提供的提供用户状态信息的方法相对应,本申请实施例还提供了一种提供用户状态信息的装置,应用于服务器,参见图7,该装置具体可以包括:数据库建立单元701,用于预先建立用户关系数据库,所述用户数据库中保存有多个用户集合,每个用户集合中包括具有特定关系的两个用户;第二请求接收单元702,用于接收客户端发送的获取指定用户的用户状态的请求;第二判断单元703,用于判断所述指定用户是否出现在所述用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息;比对单元704,用于将所述各个目标用户的地理位置信息进行比对;返回单元705,用于如果各个目标用户之间的距离小于预置阈值,则向所述客户端返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起。与实施例四提供的提供用户状态信息的方法相对应,本申请实施例还提供了一种提供用户状态信息的装置,应用于客户端,参见图8,该装置具体可以包括:第二请求发送单元801,用于在接收到打开联系人列表并选择指定用户的指令后,向服务器发送获取该指定用户的用户状态的请求,以便服务器判断所述指定用户是否出现在预置的用户集合中,如果是,则确定该用户集合中各个目标用户的当前地理位置信息,并将所述各个目标用户的地理位置信息进行比对,如果各个目标用户之间的距离小于预置阈值,则返回所述指定用户处于预置状态的信息,所述预置状态用于表示:所述指定用户正与其特定关系用户在一起;第二提示单元802,用于根据所述服务器返回的信息,提供提示信息,所述提示信息用于提示所述目标用户处于所述预置状态。通过本申请实施例,能够预先建立其用户关系数据库,并根据对用户所在地理位置信息的比对,确定出具有特定关系的用户是否正在一起,如果是,则可以向这种用户的好友用户等客户端提供相关的通知消息,以便客户端对其好友用户进行提示,这样,如果其中一方的好友用户想要与该用户联系时,可能会由于该提示信息的存在,而暂时不再联系,从而避免该用户被打扰,同时,也可以降低对网络资源的浪费。通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述 得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上对本申请所提供的提供用户状态信息的方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1