发明内容
鉴于上述问题,提出了本发明,以便提供一种克服上述问题或者至少部分地解决上述问题的网站消息告知方法以及相应的装置。
依据本发明的一个方面,提供了一种网站消息告知方法,包括以下步骤:获取用户在一个或者多个网站的登录信息;将所述登录信息提交至所述一个或者多个网站并且接收网站返回的信息;利用网站返回的所述信息对网站消息进行轮询;向用户通知通过轮询获取的网站消息;以及响应于用户对于所述网站消息的请求,利用所述登录信息登录到网站,并且跳转到所述网站消息所在的网址。
可选地,根据本发明的实施例的通知网站消息的方法还包括:向所述一个或者多个网站验证所述登录信息,在验证成功的情况下存储所述登录信息。
可选地,在根据本发明的实施例的通知网站消息的方法中,在所述将所述登录信息提交至所述一个或者多个网站的步骤中,将所述登录信息提交至所述一个或者多个网站的登录网址上。
可选地,在根据本发明的实施例的通知网站消息的方法中,网站返回的所述信息包括对于所述登录信息的验证结果、查询链接、用户信息、以及消息格式。
可选地,在根据本发明的实施例的通知网站消息的方法中,所述利用网站返回的所述信息对网站消息进行轮询的步骤包括:利用所述查询链接来对网站消息进行轮询;以及接收所述网站对于轮询的按照所述消息格式的响应结果。
可选地,在根据本发明的实施例的通知网站消息的方法中,在所述向用户通知通过轮询获取的网站消息的步骤中,在计算机操作系统的用户界面中通过画面和/或声音的方式向用户通知所述网站消息。
可选地,在根据本发明的实施例的通知网站消息的方法中,其中所述网站包括社交网站,所述网站消息包括以下信息中的至少一个:社交网站中的用户日志消息、用户间交互消息、网站通知消息。
可选地,在根据本发明的实施例的通知网站消息的方法中,上述各步骤是通过浏览器插件执行的。
可选地,在根据本发明的实施例的通知网站消息的方法中,在所述向用户通知通过轮询获取的网站消息的步骤中,在所述浏览器插件中或其他客户端应用插件中通过画面和/或声音的方式向用户通知所述网站消息。
依据本发明的另一方面,提供了一种网站消息告知装置,包括:登录信息获取模块,适于获取用户在一个或者多个网站的登录信息;登录信息提交模块,适于将所述登录信息提交至所述一个或者多个网站并且接收网站返回的信息;轮询模块,适于利用网站返回的所述信息对网站消息进行轮询;通知模块,适于向用户通知通过轮询获取的网站消息;以及网站消息访问模块,适于响应于用户对于所述网站消息的请求,利用所述登录信息登录到网站,并且跳转到所述网站消息所在的网址。
可选地,根据本发明的实施例的网站消息告知装置还可以包括:登录信息验证和存储模块,适于向所述一个或者多个网站验证所述登录信息,在验证成功的情况下存储所述登录信息。
可选地,在根据本发明的实施例的网站消息告知装置中,所述登录信息提交模块将所述登录信息提交至所述一个或者多个网站的登录网址上。
可选地,在根据本发明的实施例的网站消息告知装置中,网站返回的所述信息包括对于所述登录信息的验证结果、查询链接、用户信息、以及消息格式。
可选地,在根据本发明的实施例的网站消息告知装置中,所述轮询模块包括:轮询子模块,适于利用所述查询链接来对网站消息进行轮询;以及响应结果接收模块,适于接收所述网站对于轮询的按照所述消息格式的响应结果。
可选地,在根据本发明的实施例的网站消息告知装置中,所述通知模块适于在计算机操作系统的用户界面中通过画面和/或声音的方式向用户通知所述网站消息。
可选地,在根据本发明的实施例的网站消息告知装置中,所述网站包括社交网站,所述网站消息包括以下信息中的至少一个:社交网站中的用户日志消息、用户间交互消息、网站通知消息。
可选地,根据本发明的实施例的网站消息告知装置包含在浏览器插件中。
可选地,在根据本发明的实施例的网站消息告知装置中,所述通知模块适于在所述浏览器插件中或其他客户端应用插件中通过画面和/或声音的方式向用户通知所述网站消息。
本发明提供了上述网站消息告知方法和装置。根据本发明的实施例,将获取的用户在一个或多个网站的登录信息提交至相应网站并接收网站返回的信息,利用此信息对网站消息进行轮询,并且向用户通知通过轮询获取的网站消息,从而实现了用户在多个网站的登录信息和网站消息的整合和管理,能够自动向用户通知和提示用户各种网站消息,免去了用户需要反复登录多个网站以获知是否有新消息的烦恼,极大地减轻了用户的操作负担,显著提高了用户获取网站消息的效率和用户体验。利用本发明,用户可以同时管理多个网站账户,实时获得各种网站消息和信息。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示意性地图示了根据本发明的实施例的网站消息告知方法100的流程图。如图1所示,根据本发明的实施例的网站消息告知方法100始于步骤S101,在步骤S101中,获取用户在一个或者多个网站的登录信息。之后,执行步骤S103,其中将所述登录信息提交至所述一个或者多个网站并且接收网站返回的信息。在步骤S103之后,执行步骤S105:利用网站返回的所述信息对网站消息进行轮询。最后,执行步骤S107:向用户通知通过轮询获取的网站消息。
根据本发明的实施例,所述网站包括用户以注册的用户名和密码登录并且接收各种信息和消息的社交网站、论坛等各种网站,例如,新浪微博、人人网、开心网、Facebook、Twitter、天涯论坛等等。下面以新浪微博为例,对本发明的原理进行示例性地描述,然而,本发明的范围并不限于此,而是同样适用于上述各种网站。
图2示意性地图示了根据本发明的实施例的获取用户在网站的登录信息时显示的界面的视图。如图2所示,用户可以在该界面中输入其用户名和密码,然后点击“授权”。由此,在步骤S101中,获取了用户在新浪微博网站的登录信息。同样,可以以类似的方式获取用户在其它多个网站的登录信息。具体地,在此获取过程中会对用户的登录信息进行加密处理。
根据本发明的实施例,可以在步骤S101之后执行步骤S102:向所述一个或者多个网站验证所述登录信息,在验证成功的情况下存储所述登录信息。同样,在存储登录信息之前会对其进行加密处理。
根据本发明的实施例,上述步骤S101、步骤S102、步骤S103、步骤S105、以及步骤S107是通过浏览器插件执行的,例如360安全浏览器的消息盒子插件。然而,本发明的范围并不限于此,而是也可以通过其它应用程序来执行,例如独立于浏览器的应用程序。
下面以浏览器插件为例,对本发明的原理进行描述。在上述步骤S101和步骤S102中,浏览器页面可以通过Javascript的external接口将数据传递给浏览器插件。在浏览器中,可以通过以下三个接口来交互信息:
1.setwindowsize:用于告知浏览器插件窗口的大小;
2.openurl:用于告知浏览器打开一个网址链接;以及
3.setuserinfo:用于将经确认后的用户信息告知浏览器插件。
所述网址例如可以是URL(UniformResourceLocator,统一资源定位符),下文中以URL为例进行描述,但网址并不仅限于URL,而是可以包括任何标识网站地址的方式。
接口setwindowsize支持2个整数参数(宽度、高度)。例如,以下示例可以告知浏览器插件开启窗口的宽度是450像素、高度是300像素:
<scripttype="text/javascript">
window.external.setwindowsize(450,300);
</script>
此处应当注意,高度、宽度是指实际显示的区域,不包括操作系统窗口的标题栏。
接口openurl可以用于告知浏览器插件打开一个URL链接。例如,当用户点击浏览器插件中的“忘记密码”按钮时,可以打开浏览器页面,并跳转到对应的URL。该接口支持1个字符串参数。例如:
当用户输入用户名和密码,点击“授权”,并且经过服务器验证、确认用户名和密码正确后,浏览器页面就可以通过setuserinfo接口,将用户的登录信息告知浏览器插件。例如:
<scripttype="text/javascript">
window.external.setuserinfo('XXXX');
</script>
setuserinfo接口支持1个字符串参数。上面的'XXXX'的算法如下:
Base64(username=AAAA&password=BBBB)。
其中AAAA是指登录用户名(username),BBBB是指加密后的密码(password),算法是md5(username+md5(password))。应注意,此处的md5算法仅为加密算法的一种示例,本发明的范围并不限于此,任何其它适当的加密算法同样适用于本发明。对用户名和密码进行加密的示例如下:
在步骤S101(或者步骤S101和步骤S102)之后,执行步骤S103,其中,将所述登录信息提交至所述一个或者多个网站并且接收网站返回的信息。例如,可以将用户名和加密后的密码(例如md5(username+md5(password)))发送到所述一个或者多个网站的登录URL上,然后接收网站所返回的信息。根据本发明的实施例,网站返回的信息可以包括对于所述登录信息的验证结果、查询链接、用户信息、以及消息格式。
接下来,执行步骤S105:利用网站返回的所述信息对网站消息进行轮询。可选地,可以利用所述查询链接来对网站消息进行轮询(子步骤S105a),例如,轮询请求可以为如下形式:
http:∥www.weibo.com/../querymsg?userid=XXXXX&session=360plugin
其中,querymsg即为查询连接,而在session部分可以看到这是通过360安全浏览器的插件进行的轮询。
随后,就可以接收所述网站对于轮询的按照所述消息格式的响应结果(子步骤S105b)。响应结果可以是JSON(JavascriptObjectNotation,Javascript对象符号),主要内容例如为:
在上面的按照消息格式的响应结果中,
"msgtypeid":"type1",
"msgtypename":"系统消息",
"navigateurl":"http:∥xxx/xxx/xx"
这部分内容表示存在未读的新系统消息,并且提供了与该消息对应的URL;
"msgtypeid":"type2",
"msgtypename":"私信",
"navigateurl":"http:∥xxx/xxx/xx"
这部分内容则表示存在未读的新的私信,并且提供了与该消息对应的URL。
根据本发明的实施例,所述网站消息包括以下信息中的至少一个:社交网站中的用户日志消息、用户间交互消息、网站通知消息。仍以新浪微博为例,用户日志消息可以例如是所关注的用户新发布的微博,用户间交互消息可以例如是用户之间的私信、评论、提到彼此的微博、以及新的关注信息,而网站通知消息可以是网站发布的各种通知。然而,上述网站消息仅仅为示例,本发明的范围不限于此,而是适用于各种网站消息。
在步骤S105之后,执行步骤S107:向用户通知通过轮询获取的网站消息。根据本发明的实施例,可以在计算机操作系统的用户界面中通过画面和/或声音的方式向用户通知所述网站消息。例如,可以在用户界面中弹出一个对话框,通知通过轮询获取的网站消息;也可以通过计算机的扬声器以声音的方式通知通过轮询获取的网站消息。可选地,可以在浏览器插件中或其他客户端应用插件中通过画面和/或声音的方式向用户通知所述网站消息。例如,在浏览器插件中显示通过轮询获取的网站消息的类型和数量。所述其他客户端应用插件例如可以是微件(Widget)等应用插件。
可选地,在步骤S107之后,还可以执行步骤S109:响应于用户对于所述网站消息的请求,利用所述登录信息登录到网站,并且跳转到所述网站消息所在的网址。仍以新浪微博为例,在用户点击浏览器插件中的例如“新微博(1)”时,可以通过如下方式登录到新浪微博网站,并且跳转到该条新微博所在的网址。
其中接口可以例如为http:∥www.weibo.com/api/360/redirecturl,通过GET和/或POST指令实现操作。请参见以下示例:
GET
http://www.weibo.com/api/360/redirecturl?username=weibo360&password=a40d7179f9d08d67bfc2beef83a32ea0&redirecturl=http%3A%2F%2Fwww.weibo.com%2Fmessage%2Finbox×tamp=1234567&signature=7beea18a1df24595c1d7caacba85d7f1
其中username参数表示用户名,password参数表示加密后的密码(md5(username+md5(password))),redirecturl参数表示登录成功后所要跳转到的网址,timestamp为unix时间戳,而signature是对于以上参数的md5签名,具体的签名算法例如为:
md5(username=weibo360&password=a40d7179f9d08d67bfc2beef83a32ea0&redirecturl=http:∥www.weibo.com/message/inbox×tamp=1234567)
应注意,此处的md5算法仅为加密和签名算法的一种示例,本发明的范围并不限于此,任何其它适当的加密和签名算法同样适用于本发明。
其中username参数可以利用httpencode来编码。
对于上述登录网站并且跳转到相应网址的请求,该网站所返回的结果例如为:
即,表示上述登录网站并且跳转到相应网址的请求成功,并且返回了相应的URL。
本发明提供了一种网站消息告知方法。根据本发明的实施例,将获取的用户在一个或多个网站的登录信息提交至相应网站并接收网站返回的信息,利用此信息对网站消息进行轮询,并且向用户通知通过轮询获取的网站消息,从而实现了用户在多个网站的登录信息和网站消息的整合和管理,能够自动向用户通知和提示用户各种网站消息,免去了用户需要反复登录多个网站以获知是否有新消息的烦恼,极大地减轻了用户的操作负担,显著提高了用户获取网站消息的效率和用户体验。利用本发明,用户可以同时管理多个网站账户,实时获得各种网站消息和信息。
与上述的方法100相对应,本发明还提供了一种网站消息告知装置200。图3示意性地图示了根据本发明的实施例的网站消息告知装置的框图。参见图3,网站安全检测设备200包括登录信息获取模块201、登录信息提交模块203、轮询模块205、通知模块207。在下面的描述中,仍以社交网站新浪微博作为网站的示例来对本发明的原理进行描述。
根据本发明的实施例,登录信息获取模块201适于获取用户在一个或者多个网站的登录信息,其可以用于执行上述根据本发明的通知网站消息的方法100中的步骤S101;登录信息提交模块203适于将所述登录信息提交至所述一个或者多个网站并且接收网站返回的信息,其可以用于执行上述方法100中的步骤S103;轮询模块205适于利用网站返回的所述信息对网站消息进行轮询,其可以用于执行上述方法100中的步骤S105;通知模块207适于向用户通知通过轮询获取的网站消息,其可以用于执行上述方法100中的步骤S107。
根据本发明的实施例,网站消息告知装置200还可以包括登录信息验证和存储模块202,其适于向所述一个或者多个网站验证所述登录信息,在验证成功的情况下存储所述登录信息。登录信息验证和存储模块202可以用于执行上述方法100中的步骤S102。
根据本发明的实施例,包括上述登录信息获取模块201、登录信息验证和存储模块202、登录信息提交模块203、轮询模块205、通知模块207的网站消息告知装置200包含在浏览器插件中,例如360安全浏览器的消息盒子插件。
登录信息获取模块201可以通过参照图2所描述的步骤S101那样的方式来获取用户在一个或者多个网站的登录信息,在此不再赘述。
随后,登录信息提交模块203将所述登录信息提交至所述一个或者多个网站的登录网址上。例如,登录信息提交模块203可以将用户名和加密后的密码(md5(username+md5(password)))发送到一个或者多个网站的登录URL上,然后接收网站所返回的信息。根据本发明的实施例,网站返回的信息可以包括对于所述登录信息的验证结果、查询链接、用户信息、以及消息格式。
根据本发明的实施例,轮询模块205可以包括:轮询子模块205a,适于利用所述查询链接来对网站消息进行轮询,其可以执行上述方法100中的步骤S105中的子步骤S105a;以及响应结果接收模块205b,适于接收所述网站对于轮询的按照所述消息格式的响应结果,其可以执行上述方法100中的步骤S105中的子步骤S105b。
根据本发明的实施例,所述网站消息包括以下信息中的至少一个:社交网站中的用户日志消息、用户间交互消息、网站通知消息。仍以新浪微博为例,用户日志消息可以例如是所关注的用户新发布的微博,用户间交互消息可以例如是用户之间的私信、评论、提到彼此的微博、以及新的关注信息,而网站通知消息可以是网站发布的各种通知。然而,上述网站消息仅仅为示例,本发明的范围不限于此,而是适用于各种网站消息。
通知模块207适于向用户通知通过轮询获取的网站消息。根据本发明的实施例,通知模块207可以在计算机操作系统的用户界面中通过画面和/或声音的方式向用户通知所述网站消息。例如,通知模块207可以在用户界面中弹出一个对话框,通知通过轮询获取的网站消息;通知模块207也可以通过计算机的扬声器以声音的方式通知通过轮询获取的网站消息。可选地,通知模块207可以在浏览器插件中或其他客户端应用插件中通过画面和/或声音的方式向用户通知所述网站消息。例如,通知模块207在浏览器插件中显示通过轮询获取的网站消息的类型和数量。所述其他客户端应用插件例如可以是微件(Widget)等应用插件。
可选地,所述装置200还可以包括网站消息访问模块209,其适于响应于用户对于所述网站消息的请求,利用所述登录信息登录到网站,并且跳转到所述网站消息所在的网址,所述网站消息访问模块209可以用于执行上述方法100中的步骤S109。
由于上述各装置实施例与前述各方法实施例相对应,因此不再对各装置实施例进行详细描述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的装置中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个装置中。可以把实施例中的若干模块组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者模块中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个装置实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的装置中的一些或者全部模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。