发明内容
本发明涉及向即时消息传送(IM)用户提供信息的方法。
在本发明的一个示例实施例中,可以根据用户提供的兴趣信息,通过即时消息把信息发送给所述用户。所述兴趣信息可以不限于预定的集合;例如由服务供应商所确定的集合。而是可以由所述用户自由指定所述兴趣信息。
在本发明的另一个示例实施例中,即时消息传送用户可以通过第一即时消息发送兴趣信息,通过第二即时消息接收根据所述兴趣信息的信息。所述兴趣信息可以不限于预定的集合;例如由服务供应商所确定的集合。而是可以由所述用户自由指定所述兴趣信息。
文本字符串可以定义可以收到的所述兴趣信息的至少一部分,所述文本字符串的至少一部分可以用于定义兴趣项。可以根据所述信息项把所述信息发送给所述用户。
从所述兴趣信息可以接收并且可以获取一个或多个兴趣项的优先级信息。可以根据所述兴趣项和所述优先级信息发送所述信息。
根据所述兴趣项和所述兴趣项的优先级,可以确定信息项(如条款、网站等)对用户的关联度。可以根据所述确定的关联度,向所述用户发送所述信息项。
每个兴趣项都可以包括表示所述兴趣信息的至少一个关键字。可以确定至少一个信息项中每个关键字的频率,而且根据所述兴趣项的所述确定的频率和所述优先级确定对所述用户的所述关联度。
所述优先级信息可以与兴趣项关联,并且可以包括优先级值。所述优先级值可以与所述兴趣项中的所述关键字关联。可以形成用户向量和来源向量,所述信息项的所述关联度可以确定为所述用户和来源向量的点积。所述用户向量中的每个位置都可以与关键字关联,并且可以包括与所述关键字相关联的优先级值。所述来源向量之内的每个位置都可以与所述用户向量中的关键字关联,并且可以包括一个数值,它等于所述信息项中所述关键字的所述确定的频率。
可以按照关联度的顺序以及/或者根据所述确定的关联度与关联度阈值的对比结果,向所述用户发送所述信息项。
可以根据所述确定的关联度过滤所述信息项,如果所述信息项通过了所述过滤步骤,就可以向所述用户发送所述信息项。
具体实施方式
图1展示了根据本发明示例实施例的即时消息传送系统。即时消息传送用户100可以使用客户设备110通过即时消息服务器200访问即时消息服务。即时消息服务及其组件在业内周知。
即时消息传送(IM)通信可以涉及两个用户之间的瞬时通信。所述通信中涉及的每个用户都可以发送、接收和显示所通信的信息。即时消息通信可以涉及关于其他选定的用户在线信息的显示。不过,即时消息通信也可以发生在没有在线信息时。
如图1所展示的、其中包括的所述系统和组件的所述示例实施例可以适于但是不限于实施本文介绍之所述方法的所述示例实施例。
参考图1,所述即时消息传送系统可以通过一台或多台中间即时消息服务器200,在所述即时消息传送用户100和信息传递部件(IDP)300之间传递和交换数据。所述信息传递部件300可以包括即时消息协调器(IMC)310和一个或多个信息主体(IA)320。所述即时消息传送用户100和所述信息传递部件300可以在地理上分开,可以由网络相互连接,比如一个或多个LAN(“局域网”)或WAN(“广域网”)。
所述即时消息传送用户100的所述客户设备110和所述信息传递部件300可以包括硬件组件和软件组件。客户设备110的一个实例是包括执行所需操作所用之软件的PDA。所述信息传递部件300的实例可以是计算机设备,其中安装着适于执行所需操作的操作系统。所述客户设备110和所述信息传递部件300可以包括若干设备,它们也许能够建立例如对等通信。在所述客户设备110上可以加载软件应用程序,以便启用由所述客户设备110启动的通信。
所述即时消息传送用户100和所述信息传递部件300之间的通信连接500形成了传递通道,它可以提供所述即时消息传送用户100和所述信息传递部件300之间的直接和/或间接通信,无论实际分离多远。可以使用例如TCP/IP协议来建立所述通信连接500。
所述客户设备110可以具有内部或外部存储器,以便存储数据和程序,比如操作系统和/或一个或多个客户程序。
在所述客户设备110的所述内部或外部存储器中可以安装一个或多个应用程序。所述客户设备110可以进一步包括例如发送和接收数据所用的低层硬件设备,例如调制解调器、机顶盒、通信卡、卫星天线等。客户设备110也可以是个人计算机、移动电话、个人数字助理(PDA)或者可以操作为所述客户设备110的任何其他适宜的设备。例如,移动电话或PDA可以包括若干性能,而且通过访问传递网络(如无线传递网络)和与所述信息传递部件300通信,能够以与所述客户设备110相同或基本相同的方式发挥功能。
一台或多台即时消息传送和在场服务器200的功能可以涉及即时消息的登录/注销操作、指明即时消息传送用户消息网络上出现以及在所述即时消息传送用户之间接收和发送即时消息,所有这些都是即时消息之内的或与之相关联的众所周知的操作。即时消息和在场服务器200可以位于任何地点,并且可以通过例如一个或多个IP网络相互通信。
如上所述,所述消息传递部件300可以进一步包括即时消息协调器(IMC)310、一个或多个信息主体(IA)320。实施所述即时消息协调器310可以使用例如仅仅是计算机硬件和软件,或者人力操作员和计算机硬件及软件。所述人力操作员可以作为所述即时消息协调器310。
所述信息传递部件300也可以可选地包括信息源(IS)400。图4把所述信息源400展示为所述信息传递部件300的一部分;不过,所述信息源400可以与所述信息传递部件300在地理上分开,可以由网络与之连接,比如一个或多个LAN(“局域网”)或WAN(“广域网”)。所述信息源400可以位于电子数据所在之处,例如网络服务器或因特网。信息源400也可以是数据库,它保存着信息项的若干记录。可以由所述即时消息协调器310的示例实施例执行的若干功能,以及一个或多个信息主体320将分别关于图2和图3更加详细地讨论。
如上所述,在示例实施例中,人力操作员可以位于并且可以控制/维护所述即时消息协调器310。在这个示例实施例中,所述即时消息协调器310和所述人力操作员将一并称为所述即时消息协调器310。
关于图2,在步骤S200所述即时消息协调器310可以确定用户兴趣项和对应的优先级。例如通过即时消息通信,所述即时消息传送用户100可以与所述即时消息协调器310交流兴趣和和对应的优先级信息。所述即时消息传送用户100可以通过一条或多条即时消息,向所述即时消息协调器310提供兴趣信息。从所述即时消息传送用户100发送的所述即时消息中包括的所述兴趣信息可以包括例如一个或多个文本字符串。文本字符串的实例可以是“我很喜欢棒球,有点喜欢篮球,有些喜欢足球。”
所述即时消息协调器310可以产生表示所述兴趣项的关键字,它可以包括所述兴趣信息。例如,从所述即时消息传送用户100通过即时消息提供的(以上所示的)所述文本字符串,可以产生“棒球”、“篮球”和“足球”。所述即时消息协调器310可以根据例如所述即时消息传送用户100发送的所述即时消息中同时包括的前后字,对所述关键字中的每一个分配对应的优先级值。换言之,所述即时消息协调器310可以产生与所述前后字“很”、“有点”和“有些”可以对应的优先级值。例如,优先级值70、21和40可以分别对应于“很”、“有点”和“有些”。所述即时消息协调器可以对“棒球”、“篮球”和“足球”分别分配优先级值70、21和40。
所述即时消息协调器310也可以通过与所述即时消息传送用户100的互动来获得优先级信息和/或另外的兴趣信息。例如,所述用户可以提供兴趣信息,它可以不包括优先级信息。在响应时,所述即时消息协调器310例如通过另一条即时消息,可以向所述即时消息传送用户100请求优先级信息。
所述即时消息协调器310使用从所述即时消息传送用户100提供的所述文本字符串产生的所述关键字,可以创建用户兴趣向量[棒球,足球,篮球]。然后,所述即时消息协调器310使用根据所述即时消息传送用户100提供的所述即时消息中包括的所述前后字产生的所述对应优先级值,可以产生用户优先级向量[70,21,40]。创建所述用户优先级向量也可以称为“所述用户兴趣向量的向量化”。不过,本文所用的所述术语“向量化”不应当限于以上的实例。
在步骤S210中,所述即时消息协调器310可以创建用户概况,它可以包括所述用户兴趣向量[棒球,足球,篮球]和所述对应的用户优先级向量[70,21,40]。所述用户概况可以表示为例如所述用户兴趣向量和所述用户优先级向量的结合(如[棒球:70,足球:20,篮球:10])。
在步骤S220中,可以把所述用户概况(即所述用户兴趣向量和所述用户优先级向量)发送到所述信息主体320。
如上所述,在另一个示例实施例中,所述即时消息协调器310可以实施为没有人力操作员,例如仅仅使用硬件和软件。在这个示例实施例中,在步骤S200,所述即时消息协调器310可以与所述即时消息传送用户100发出的兴趣项或关键字一起接收优先级信息,它们可以是用户概况的形式。如上所述,所述用户概况可以包括一系列兴趣项或关键字,跟随着优先级值,例如,“棒球:70,篮球:21,足球:40”。
在这个示例实施例中,所述过程可以跳过步骤S210,并且在步骤S220,已经由所述即时消息传送用户100提供的所述用户概况(即所述用户兴趣向量和所述用户优先级向量)可以发送到所述信息主体320。
下面将关于图3,更加详细地讨论可以由所述信息主体320执行的若干功能。
关于图3,在步骤S300,所述信息主体320可以从所述即时消息协调器310接收所述用户概况(即所述用户兴趣向量和所述用户优先级向量)。在步骤S310,所述信息主体320可以在所述信息源400中搜索信息项。如上所述,所述信息源400可以是例如因特网或数据库,它保存着信息项的若干记录。所述信息主体320可以在所述信息源400中搜索信息项,它们可以包括从所述即时消息协调器310收到的所述用户概况(如[棒球,篮球,足球])中包含的所述关键字。所述信息主体320可以确定所述信息主体320找到的所述信息项中(所述用户概况中)每个关键字的所述频率。
在步骤S320,所述信息主体320可以产生来源向量(如[32,40,10]),它可以把所述用户概况中的每个关键字与信息项中该关键字的所述确定的频率相匹配。图4的元素440中展示了根据本发明的示例实施例之来源向量的实例。在所述来源向量440中,数值32、40和10可以是频率,它们分别对应于所述关键字棒球、篮球和足球。尽管在图4中仅仅显示了所述数值32、40和10,但是同时展示的变量f1、f2和f3使得它将被理解为这些频率可以取任何确定的频率。所述信息主体320可以在例如数据库(未显示)之内的表格中存储信息项(如图4所展示的)的所述来源向量,或者几个信息项所对应的来源向量。
在步骤S330,如上所述,所述用户优先级向量可以与所述来源向量进行向量匹配,以便获得关联值。例如,用户优先级向量(如X1=[70 21 40])和来源向量(如X2=[32 40 10])的“内积”可以产生一个数值,它可以指明所述信息项对所述即时消息传送用户100的所述关联度。下面显示出内积计算的实例。
假设两个向量X1和X2之间的夹角是θ,那么这两个向量X1和X2的所述“内积”(如两个向量形成之夹角的余弦值)可以是:
在步骤S340,所述信息主体320可以判断所述确定的关联度是否大于或等于关联度阈值。所述关联度阈值可以是从0到1的闭区间中所述即时消息协调器310设定的任意数值。不过,所述即时消息传送用户100通过例如发送到所述即时消息协调器310的所述即时消息,也可以指定或调整所述数值。如果所述确定的关联度小于所述关联度阈值,所述信息主体320就可以在步骤S350滤出所述信息项,不向所述即时消息传送用户100发送。
返回步骤S360,如果所述确定的关联度大于或等于关联度阈值所述信息主体320就可以通过例如即时消息,把所述信息项发送给所述即时消息传送用户100。
尽管已经介绍的示例实施例是关于单一信息项,但是也可以一次检索不止一个信息项。例如,从单一信息源400可以检索不止一个信息项,或者从多个信息源400可以检索多个信息项。从所述信息源400检索不止一个信息项时,可以创建消息字矩阵。实例消息字矩阵显示如下:
棒球 足球 篮球 …
第1项 2 3 1 …
第2项 5 2 3 …
第3项 4 8 2 …
第4项 7 3 5 …
… … … …
所述信息主体320可以使用逐行匹配,以便确定每个信息项的所述关联度值。换言之,所述消息字矩阵的每一行都可以按照以上关于图3介绍的方式进行向量匹配。确定为其关联度值大于或等于所述关联度阈值的所述信息项可以按照关联度下降或上升的顺序进行排序并且发送给所述即时消息传送用户100。
尽管本文公开的所述过滤已经关联到确定的关联度与关联度阈值的对比结果,但是它将被理解为可以使用任何适宜的过滤技术。例如,可以使用频率阈值来取代或结合所述关联度确定。
尽管已经讨论的本发明的示例实施例是关于使用即时消息通信来提供用户兴趣信息,但是它将被理解为能够以任何适宜的方式提供用户兴趣信息。例如,所述即时消息协调器310向所述即时消息传送用户100提供信息的方式可以是使所述即时消息传送用户能够通过比如“喜欢”和/或“不喜欢”的字段而概括其兴趣。在另一个实例中,所述兴趣信息的形式可以是一个或多个字和/或句。
如上所述,本发明的所述示例实施例将为用户提供更好的/定制的特性。即时消息传送用户可以订阅其兴趣,它们可以在信息传递部件中处理并形成在用户概况中。即时消息传送用户也可以动态改变其用户概况。向量化的用户概况可以提供经济的方式来匹配所述信息源中的用户概况。
对于本领域的普通技术人员显而易见,至此介绍的本发明的示例实施例能够以多种方式改变。这些改变不视为脱离本发明,所有此类修改都要包括在本发明的范围之内。