The present disclosure relates to web toolbars, and more specifically to a dynamic web toolbar.
Toolbars facilitate the navigation of the World Wide Web (“web”). In particular, a toolbar is displayed on a web browser and is used to navigate to web pages. Toolbars may contain a search box enabling a user to search the web for information about one or more terms using a particular search engine, such as Yahoo!® or Google®. Some toolbars also enable a user to customize the toolbar with one or more icons that are shortcuts to different web pages. For example, if a user often goes to the web page www.cnn.com, the user may add an icon to the user's toolbar that is a shortcut to this web site.
Even with this customization, however, toolbars generally remain static. Once a user customizes a toolbar with one or more icons, the toolbar does not typically change until the user decides to customize the toolbar again.
The present disclosure relates to an enhanced toolbar. The enhanced toolbar is not static but is rather updated dynamically. In one aspect, the enhanced toolbar has a bounded perimeter and comprises a plurality of icons visibly displayed on a display of a computing device. Each icon occupies a first space within the bounded perimeter of the toolbar. The first space associated with a first icon expands horizontally along a longitudinal axis of the toolbar to display information in a second bounded space within the perimeter. The expanding can occur upon a selection of the first icon by a user or automatically upon alert. The information is not visible absent the expansion.
The information can include text, a web link, and/or one or more additional icons. The information displayed can be based on past activity of a user accessing the toolbar or past activity of one or more other users different than the user. In one embodiment, the information displayed by the toolbar changes (e.g., after a period of time). The toolbar can indicate an alert to a first user that an activity has been performed by a second user. The alert may include an indication that an email has been sent from the second user to the first user. In one embodiment, the alert is configured based on one or more settings received from or associated with the first user. In one embodiment, the first icon (or any other icon of the toolbar) is received from a third party, such as an advertiser.
In another aspect, a method comprises determining, via one or more processors on a network, that an activity has occurred and determining, via the one or more processors, whether the activity is an activity that a user of a first device wants to be alerted to upon its occurrence. If the activity is an activity that the user of the first device wants to be alerted to upon its occurrence, the user is alerted by expanding, in a toolbar having a bounded perimeter and comprising a plurality of icons being visibly displayed to the user on the first device, a space associated with an icon in the plurality of icons horizontally along a longitudinal axis of the toolbar for a predetermined amount of time. In one embodiment, the determining that an activity has occurred includes determining that the first device has received an email. In one embodiment, the determining whether the activity is an activity that a user of the first device wants to be alerted to upon its occurrence further includes determining that the email was sent from a sender on a list of senders. In one embodiment, the expanding of the space associated with the icon further comprises displaying the name of the sender.
The determining that an activity has occurred can include determining that a photograph was posted to a social networking site, determining that a photograph was commented on, and/or determining that an on-line music channel was accessed.
In one aspect, a method comprises determining, via one or more processors on a network, that an activity has occurred and determining, via the one or more processors, whether the activity is an activity that a user of a first device wants to be alerted to upon its occurrence. If the activity is an activity that the user of the first device wants to be alerted to upon its occurrence, the user is alerted by changing a display of an icon of a toolbar. The toolbar has a bounded perimeter and comprises a plurality of icons visibly displayed on the first device. Each icon occupies a first space within the bounded perimeter of the toolbar. Upon a selection of the icon by the user (or automatically, such as upon alert), the first space is expanded horizontally along a longitudinal axis of the toolbar to display information in a second bounded space within the perimeter, the information not being visible absent the expansion. In one embodiment, the changing of the display of an icon further includes changing the display of the icon based on settings associated with the user.
These and other aspects and embodiments will be apparent to those of ordinary skill in the art by reference to the following detailed description and the accompanying drawings.
In the drawing figures, which are not to scale, and where like reference numerals indicate like elements throughout the several views:
Embodiments are now discussed in more detail referring to the drawings that accompany the present application. In the accompanying drawings, like and/or corresponding elements are referred to by like reference numbers.
Various embodiments are disclosed herein; however, it is to be understood that the disclosed embodiments are merely illustrative of the invention that can be embodied in various forms. In addition, each of the examples given in connection with the various embodiments is intended to be illustrative, and not restrictive. Further, the figures are not necessarily to scale, some features may be exaggerated to show details of particular components (and any size, material and similar details shown in the figures are intended to be illustrative and not restrictive). Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the disclosed embodiments.
In one embodiment, and referring to
For the purposes of this disclosure, a server such as the toolbar provider server 110 comprises software and/or hardware executing on one or more computers which receives information requests from other servers or computers, and responds to such requests. A number of program modules and data files can be stored on a computer readable medium of the server. They can include an operating system suitable for controlling the operation of a networked server computer, such as the WINDOWS VISTA, WINDOWS XP, or WINDOWS 2003 operating system published by Microsoft Corporation of Redmond, Wash., or the Ubuntu operating system distributed by Canonical Ldt. of Douglas, Isle of Mann.
For the purposes of this disclosure, a computer readable medium is a medium that stores computer data in machine readable form. By way of example, and not limitation, a computer readable medium can comprise computer storage media for tangibly storing data, as well as communication media, methods or signals. Computer storage media for tangible storage includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology; CD-ROM, DVD, or other optical storage; cassettes, tape, disk, or other magnetic storage devices; or any other medium which can be used to tangibly store the desired information and which can be accessed by the computer or processor.
In one embodiment, the first computer 105 accesses a web page and downloads an enhanced toolbar 120. Specifically, the toolbar provider server 110 transmits the enhanced toolbar 120 to the first computer 105. In one embodiment, the first computer 105 downloads the enhanced toolbar 120 once and stores the enhanced toolbar 120 locally after its initial download. Thus, after downloading the enhanced toolbar 120, the first computer 105 can display the toolbar 120 each time the browser is displayed and the toolbar provider server 110 can provide updates to the toolbar 120 to the first computer 105, such as periodically or at predetermined times.
In one embodiment, the first computer 105 establishes a network connection 130 with a second computer 125. In another embodiment, the first computer 105 determines that a network connection 130 with the second computer 125 was previously established. As used herein, a network connection 130 between the first computer 105 and the second computer 125 occurs when the user of the first computer (i.e., first user) can determine the status of the user of the second computer (i.e., second user).
For example, this network connection 130 may include, but is not limited to, an instant messaging (IM) friend or contact. In particular, and for example, in an instant messaging system, two users are able to communicate with each other in real time or near real time by passing messages as well as other information, such as files, over the Internet. In an instant messaging system, the messages are generated and displayed using an instant messaging client software program that resides on each user's computer. In some instant messaging systems, other information about the user, such as a profile or his or her status (e.g., whether the user is online, offline, or busy) can be shared with other users of the instant messaging system. This sharing of information between users (e.g., of the first computer and the second computer) is one non-limiting example of a network connection 130 shown in
Typically, the sharing of information between users utilizes and is displayed within the instant messaging system. For example, if the first user is sharing information with the second user via an instant messaging system, the information being shared is typically displayed via an instant messaging client software program that resides on the first computer 105 and the second computer 125. In one embodiment, the enhanced toolbar 120 displays the shared information (e.g., status of the user of the second computer 125). Thus, once a network connection 130 is established, the enhanced toolbar 120 can display information associated with the network connection 130.
The network connection 130 can be used to pass any information between users. For example, social networking activity associated with one or more web pages or web sites may be passed. For example, people can share photographs and/or post comments about photographs. When the second user performs one of these events, the enhanced toolbar 120 can notify the first user that the event occurred. In another embodiment, if the second user begins listening to a particular on-line music channel, the enhanced toolbar 120 can notify the first user that the second user is listening to that particular on-line music channel.
As yet another example, suppose that the second user transmits an email to the first user. In one embodiment, the enhanced toolbar 120 on the first computer displays to the first user that an email has been received from the second user. Thus, unlike existing email notifications in toolbars, which typically display only the number of emails in a user's email inbox, the enhanced toolbar 120 displays the name of the sender of the email and/or at least a portion of the content of the email. Further, once the email is received, the enhanced toolbar 120, in one embodiment, displays this alert for a predetermined amount of time thereafter (or, e.g., until another email is received, for a few seconds or minutes, or after another desired triggering event).
In one embodiment and as described in greater detail below, an advertisement server 140 transmits or pushes an icon 145 to the first computer 105 alone or in cooperation with or via the toolbar provider server 140, to be included in the enhanced toolbar 120. The pushed icon 145 may be an icon associated with an advertisement or an advertiser. As described in more detail below, the pushed icon 145 may be configured in any position in the enhanced toolbar 120. Further, the advertisement server 140 may itself transmit or may work in cooperation with toolbar provider server 140 to transmit multiple icons to the first computer 105 for inclusion in the toolbar 120, such as a new icon 145 every week. In yet another embodiment, the advertisement server 140 transmits information to the first computer 105 for inclusion in the toolbar 120, such as text or graphics (e.g., an advertisement or promotional message).
In one embodiment, the enhanced toolbar 200 includes one or more notification buttons or icons, such as notification button 225. The notification button 225 can be, for example, a displayed image of a light that turns on (e.g., a solid light or a flashing light) when there is a notification and is dark (or a different color) when there is no notification. In one embodiment, the notification button 225 provides an alert as to when an activity has been performed by another user (e.g., a second user) that corresponds to a matching activity found in a set of matching activities selected by the first user. The set of matching activities is a list of activities that are selected by the first user. When an activity is performed by the second user, the enhanced toolbar 200 provides a notification if the activity matches one of the activities in the set of matching activities selected by the first user. For example, suppose that the first user wants to be alerted when receiving an email from the second computer 125. The first user can select this activity from a set or list of activities. Examples of other such activities a user may desire to be alerted to include, but are not limited to, updates to social networking sites, updates to a user's blog, updates to a photograph site, updates to a community web page, to provide just a few examples. Then, once the first computer 105 receives an email from the second computer 125, the notification button 225 can alert the first user that a selected activity in the list of activities has occurred. In one embodiment (and as shown in
In another embodiment, the enhanced toolbar 200 provides a notification of the IM status of the user of the second computer, such as whether the user is online, offline, or busy. In yet a further embodiment, if the user of the second computer 125 is listening to music (e.g., a particular song), the enhanced toolbar 200 can provide a notification to the user of the first computer as to what music the user of the second computer 125 is listening. Although shown with one notification button 225, the enhanced toolbar 200 can have any number of notification buttons. The notification button 225 can therefore provide notifications or alerts based on the user's social graph, mail updates, and/or from other notification engines, such as Yahoo!® Alerts provided by Yahoo! Inc. of Sunnyvale, Calif. Thus, the enhanced toolbar 200 provides information to a user dynamically, regardless of the web page that the browser 205 is displaying.
Although illustrated as appearing to the right of the icon 310, the expanded space 315 can appear to the left of the icon 310 or to both the right and the left of icon 310 (e.g., icon 310 is within the expanded space 315). Thus, the expanded space 315 can be used to increase the toolbar space in which icons can be displayed, or to give that impression, or fewer but more topical or specific icons may be displayed in the expanded region. In an embodiment, the expanded space 315 remains within a bounded perimeter of the displayed toolbar 300, that is it does not extend beyond edges 360, 370, 380 and 390. As a result, the expanded space 315 can increase or decrease the number of icons that can be displayed at any time via toolbar 300.
In one embodiment, the icons displayed in the expanded space 315 may vary over time, such as a first icon being displayed for three months and then a second icon being displayed where the first icon was displayed after the three months are over. This change from the first icon to the second icon can be a result of the actions performed by a user of the toolbar 300. For example, suppose, over a three month period, that a first icon is being displayed in the expanded space 315. The first icon is a shortcut to www.cnn.com. Suppose further that during these three months, the user does not click on the first icon once but does navigate to www.yahoo.com frequently during the same three month period. In one embodiment, the toolbar provider server 110 can update the enhanced toolbar 300 by replacing the first icon from the expanded space 315 with a new icon being a shortcut for www.yahoo.com because the first icon is not being utilized by the user of the toolbar. In embodiments, the icons can change as a result of breaking news, new blog postings or RSS feed updates subscribed to by the user, stock price fluctuations, new music releases or other subscribed-to alerts or notifications. Also, the provider of the toolbar can periodically push icons that represent sponsored or paid-for advertising by third parties. Thus, as further described below, advertisers or sponsors can pay to have icons inserted into the toolbar, and when clicked reveal messages or offers in the expanded space.
In one embodiment, the toolbar provider server 110 includes a relevancy engine that determines what icons the expanded space 315 should include. For example, the relevancy engine determines over a period of time what actions the user takes, and configures the expanded space 315 to contain icons associated with the user's actions. In a further embodiment, the relevancy engine determines what the toolbar 200, 300 displays (e.g., the expanded space 315) based on other people's (e.g., an IM friend's) actions. For example, suppose that the user of the first computer 105 is interested in sports. The relevancy engine can determine that the user of the second computer 125 also likes sports and often utilizes a particular icon to traverse to a particular web page (e.g., www.espn.com). The relevancy engine (i.e., toolbar provider server 110) can recommend this icon (associated with www.espn.com) to the user of the first computer 105. In one embodiment, the relevancy engine changes the toolbar 200, 300 dynamically over time based on this inference that the user of the first computer will use an icon associated with www.espn.com. The toolbar 200, 300 can be updated dynamically based on what the user of the first computer 105 has done in the past and/or based on what other people having similar interests to the first user have done in the past.
Thus, a user's behavioral information, gathered explicitly by user preference polling or response to questionnaire(s), or implicitly from observed behavior, can be used to push icons that relate to information relevant to the user. This information can be leveraged by the toolbar provider by using it to offer to advertisers who would pay to have certain icons pushed to users based on behavioral information. The pushed icon, when selected by the user, would result in the expanded region displaying a message or link to a site related to the advertisement.
In one embodiment, the icons 320 displayed in the expanded space 315 can be changed via expanded space controls (e.g., arrow buttons). For example, a right arrow button may be provided in the expanded space 315 that, when pressed once, displays one new icon and moves the other icons 320 over one space. In one embodiment, this carousal movement can occur on either side of the enhanced icon space 315.
In one embodiment, the web browsing history from within the web browser 305 can be processed to provide customized recommendations across a set of objects/toolbar icons. Such recommendations would be specifically tailored to that user's interests and based on the user's web browsing history. In one embodiment, a web site is utilized to enable the first user to select one or more icons or buttons that the first user would like to include in the enhanced toolbar 200, 300.
In one embodiment and as described in more detail below with respect to enhanced toolbar 515, the alert icon 525 is in the form of a bulb or light emitting diode image that “lights up” or changes color when an activity selected by the first user occurs. In one embodiment, the first user has a list of activities to choose from. Once an activity is selected from the list, the alert icon 525 alerts the first user of its occurrence.
In one embodiment and as described in more detail below with respect to enhanced toolbar 515, the applications icon 530 provides access to a plurality of additional icons. Specifically, when the applications icon 530 is selected, the space associated with or surrounding or proximate the applications icon 530 expands horizontally in one or both directions along a longitudinal axis of the enhanced toolbar to display the additional icons. In one embodiment, the icons displayed when the applications icon 530 is selected are a predetermined set of icons.
In one embodiment, the links icon 535 enables access to a plurality of additional icons. Referring to the enhanced toolbar 510, the links icon 550 has been selected by the first user (e.g., by using the mouse pointer to click on the links icon 550 or by hovering with the mouse pointer over the links icon 550). The selection of the links icon 550 results in a plurality of additional icons 552 being displayed. In one embodiment, one or more of the plurality of additional icons 552 are selected by the first user for display when the links icon 550 is selected.
Referring to the enhanced toolbar 515, in one embodiment alert icon 553 alerts the first user that the selected activity or one of a plurality of selected activities has occurred. For example and as described above, suppose the first user selects to be notified when receiving an email. The enhanced toolbar 515 illustrates this embodiment with an email alert 554 indicating that the first user (shown as Tb_tester) has received an email from second user Joe Friend. In one embodiment, the core icon(s) typically adjacent to the alert icon 553 are pushed to the right of the email alert 554. In another embodiment, when an alert occurs (such as the email alert) or when additional icons are displayed (such as additional icons 565, 570), the core icons typically next to the selected icon (in enhanced toolbar 515, the alert icon 553) are covered by the alert (e.g., email alert) and are visible again after a predetermined time has elapsed or the expanded section is closed by the first user.
Enhanced toolbar 515 illustrates an embodiment when applications icon 555 is selected. In one embodiment, common icons 565, 570 are displayed. In one embodiment, common icons 565, 570 include an email icon 565 indicating how many email messages the first user has in his or her inbox or how many email messages the first user has received that have not yet been read. Common icons 565, 570 may also be associated with web links, such as a weather icon 570 indicating the current temperature and/or associated with a weather web page. Although shown with four core icons, the enhanced toolbar may have any number of core icons providing any number of notification(s) and/or access to any number of other icons.
Those skilled in the art will recognize that the methods and systems of the present disclosure can be implemented in many manners and as such are not to be limited by the foregoing exemplary embodiments and examples. In other words, functional elements being performed by single or multiple components, in various combinations of hardware and software or firmware, and individual functions, can be distributed among software applications at either the first or second computers or server or both. In this regard, any number of the features of the different embodiments described herein can be combined into single or multiple embodiments, and alternate embodiments having fewer than, or more than, all of the features described herein are possible. Functionality can also be, in whole or in part, distributed among multiple components, in manners now known or to become known. Thus, myriad software/hardware/firmware combinations are possible in achieving the functions, features, interfaces and preferences described herein. Moreover, the scope of the present disclosure covers conventionally known manners for carrying out the described features and functions and interfaces, as well as those variations and modifications that can be made to the hardware or software or firmware components described herein as would be understood by those skilled in the art now and hereafter.
The foregoing Description is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Description, but rather from the claims as interpreted according to the full breadth permitted by the patent laws. It is to be understood that the embodiments shown and described herein are only illustrative of the principles of the present invention and that various modifications may be implemented by those skilled in the art without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention.