Users are often presented with the inconvenience of accessing information on one computing device that would be useful on a second computing device. The accessed information may be more useful on the second computing device, more convenient, or the like. For example, a user may perform a search for directions to a local restaurant on a desktop computer. The directions may be more useful if they were transferred to a second computing device such as, for example, the user's mobile phone. Currently, there is no way to seamlessly transfer the accessed information from one computing device to a second computing device. Instead, users typically turn to another method such as repeating the steps on the second computing device that were previously completed on the first computing device to access the information, printing the accessed information, emailing the accessed information to a destination accessible on a second computing device, or the like. All of these alternate methods are less efficient and require greater time to accomplish than would a seamless transfer of the data to the second computing device.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Embodiments of the present invention relate to systems, methods, and computer-readable storage media for, among other things, utilizing tags to transfer data. A tag, as used herein, refers generally to a digital image having tag content embedded therein. Tag content, as used herein, refers generally to content that has been identified as relevant and/or useful to a tag. Tags may be generated for presentation on a display device of a first computing device. In embodiments, tag content may include information relevant to actions performed by a second computing device. The tags may be generated such that, upon selection thereof by the second computing device, the tag content may be communicated to the second computing device. Accordingly, the actual content is transferred from the tag displayed on the display device of the computing device to the second computing device.
The present invention is illustrated by way of example and not limited in the accompanying figures in which like reference numerals indicate similar elements and in which:
The subject matter of the present invention is described with specificity herein to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventors have contemplated that the claimed subject matter might also be embodied in other ways, to include different steps or combinations of steps similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the terms “step” and/or “block” may be used herein to connote different elements of methods employed, the terms should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described.
Various aspects of the technology described herein are generally directed to systems, methods, and computer-readable media for, among other things, utilizing tags to transfer data. Tags may be generated for presentation on a display device of a first computing device. The tags may include tag content, which is content identified as desirable to communicate to a second computing device. The tag content may include information relevant to actions to be performed by the second computing device. The tags are generated such that, upon selection by the second computing device, the tag content is communicated to the second computing device. Accordingly, the actual content is transferred from the tag displayed on the display device of the computing device to the second computing device.
Accordingly, one embodiment of the present invention is directed to one or more computer-readable storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method for utilizing tags to transfer data. The method comprises receiving a user input indicating at least one target item on a first computing device. Tag content associated with the at least one target item is then identified. The tag content may be content identified as desirable to transfer to a second computing device. The tag, including the tag content, is associated with the at least one target item. The tag is then presented in association with the at least one target item such that selection of the tag by a second computing device triggers the tag content to be communicated to the second computing device.
Another embodiment of the present invention is directed to a tag generating system. The system comprises a computing device and a data store. The system further comprises a tagging engine that receives an indication of a target item, identifies tag content associated with the target item, and presents the tag in association with the target item on a display device of the computing device.
In yet another embodiment, the present invention is directed to one or more computer-readable storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method for utilizing tags to transfer data. The method comprises receiving a search query input at a first computing device and displaying a plurality of search results in response to receiving the search query input. A user selection of at least one search result is received and tag content associated with the at least one search result is identified. The tag is associated with the at least one search result such that the tag is configured for selection by a mobile phone. The tag is presented on a display device of the computing device is association with the at least one search result. Selection of the tag by the mobile phone triggers communication of the tag content from the computing device to the mobile phone.
Having briefly described an overview of embodiments of the present invention, an exemplary operating environment in which embodiments of the present invention may be implemented is described below in order to provide a general context for various aspects of the present invention. Referring initially to
Embodiments of the present invention may be described in the general context of computer code or machine-useable instructions, including computer-executable instructions such as program modules, being executed by a computer or other machine, such as a personal data assistant or other handheld device. Generally, program modules including routines, programs, objects, components, data structures, etc., refer to code that performs particular tasks or implements particular abstract data types. Embodiments of the invention may be practiced in a variety of system configurations, including hand-held devices, consumer electronics, general-purpose computers, more specialty computing devices, and the like. Embodiments of the invention may also be practiced in distributed computing environments where tasks are performed by remote-processing devices that are linked through a communications network.
With reference to
The computing device 100 typically includes a variety of computer-readable media. Computer-readable media can be any available media capable of being accessed by the computing device 100 and includes both volatile and nonvolatile media, 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-readable media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computing device 100. Combinations of any of the above should also be included within the scope of computer-readable media.
The memory 112 includes computer-storage media in the form of volatile and/or nonvolatile memory. The memory may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard drives, optical-disc drives, etc. The computing device 100 includes one or more processors that read data from various entities such as the memory 112 or the I/O component(s) 120. The presentation component(s) 116 present data indications to a user or other device. Exemplary presentation components include a display device, speaker, printing component, vibrating component, and the like.
The I/O ports 118 allow the computing device 100 to be logically coupled to other devices including the I/O component(s) 120, some of which may be built in. Illustrative components include a microphone, joystick, game pad, satellite dish, scanner, printer, wireless device, and the like.
As indicated previously, embodiments of the present invention are directed to utilizing tags to transfer data. In embodiments, tags are utilized to transfer data between two computing devices. Turning now to
Among other components not shown, the computing system 200 generally includes a personal computing device 210, a data store 220, a tagging engine 230, and a tag service 240. The personal computing device 210 may include any type of computing device, such as the computing device 100 described with reference to
In some embodiments, one or more of the illustrated components/modules may be implemented as stand-alone applications. In other embodiments, one or more of the illustrated components/modules may be implemented via the personal computing device 210, as an Internet-based service, or as a module inside a search engine. It will be understood by those of ordinary skill in the art that the components/modules illustrated in
It should be understood that this and other arrangements described herein are set forth only as examples. Other arrangements and elements (e.g., machines, interfaces, functions, orders, and groupings of functions, etc.) can be used in addition to or instead of those shown, and some elements may be omitted altogether. Further, many of the elements described herein are functional entities that may be implemented as discrete or distributed components or in conjunction with other components/modules, and in any suitable combination and location. Various functions described herein as being performed by one or more entities may be carried out by hardware, firmware, and/or software. For instance, various functions may be carried out by a processor executing instructions stored in memory.
Generally, the computing system 200 illustrates an environment in which customized tags are generated to transfer data. As will be described in further detail below, embodiments of the present invention provide tags, including tag content, that are associated with a target item such that selection of the tag causes the tag content to be communicated to a computing device separate from the device that is displaying the tag.
The tagging engine 230 is configured to create customized tags for the transfer of data and associate the tags with a corresponding target item within a display device of a computing device such as, for example, the computing device 210. As previously stated, a tag, as used herein, refers generally to a digital image having tag content embedded therein. A target item, as used herein, refers generally to an item associated with a received user input. For example, a target item may be a search results page in response to a search query input, a particular search result within a search results page in response to a selection of the search result, and the like.
The tagging engine 230 includes a receiving component 231, an identifying component 232, a communicating component 233, and an integrating component 234. The receiving component 231 is configured to receive input from, for example, the computing device 210. The input may be a search query input, a web address input, selection of an item within a search results page, and the like. The input is associated with a target item. A target item, as used herein, refers generally to a destination location associated with an input. Target items may include, for example, a search results page associated with a search query input, a specific search result associated with a selection of the specific search result, a web page associated with a web address input, and the like. The receiving component 231 is further configured to receive customized tags from the tag service 240, as described in detail below.
The identifying component 232 is configured to identify tag content within a target item associated with the input received by the receiving component 231. Tag content may be determined by a content provider, a web service provider, or the like. In embodiments, tag content is identified as content that is desirable to transfer to a second computing device based on historical data. For example, a user's browsing session and subsequently executed actions may indicate that driving directions, for instance, would be useful if transferred to a second computing device.
In another embodiment, tag content is identified as content that is related to actions executed by a mobile phone. For example, common mobile phone actions may include placing telephone calls, sending short-message-service (SMS) text messages, accessing navigation tools, and the like. Accordingly, content that is identified as being related to mobile phone actions, such as telephone numbers (to make telephone calls) and addresses (for navigation) may be identified as tag content. While mobile phone actions are indicated herein as an exemplary tag content criterion, it should be understood that the present invention may be directed to any criteria desired for identifying tag content.
Tag content may be retrieved from a database, such as the data store 220, or may, alternatively, be generated once a user input is received and the target item is identified. Such real-time generation allows for the most up-to-date tag content to be used in tags since tag content may change periodically. For instance, a selection of a local restaurant from a search results page may prompt the identifying component 232 to identify tag content including, for example, a phone number for the local restaurant. Phone numbers change on a periodic basis for several reasons. Thus, by identifying the tag content once the input is received, use likelihood of the tag including up-to-date tag content may be increased.
The communicating component 233 is configured to communicate tag content to the tag service 240 for generation of a custom tag that includes the tag content. The tag service 240 receives the tag content from the tagging engine 230 and generates a custom tag that includes the tag content communicated by the communicating component 233. Once the custom tag is generated, the tag service 240 communicates the tag to the receiving component 231 of the tagging engine 230.
The integrating component 234 is configured to integrate the tag, received from the tag service 240, into a display with target item. For example, if a user has selected a search result within a search results page, the selection of the search result (i.e., the user input) is associated with a target item such (i.e., the destination location outputted upon selection of the search result). The integrating component 234 is configured to integrate the tag into the display of the target item such that the tag is presented in association with the target item. The communicating component 233 is further configured to communicate the target item with the integrated tag to the computing device 210 for presentation to a user.
The above-described example is relevant to generating a tag and presenting the tag on a first computing device (e.g., the computing device 210). Once presented by the first computing device, the tag is configured such that it may be selected by a second computing device. The second computing device may be any computing device capable of selecting a tag. In embodiments, the second computing device is a mobile phone.
The tag may be selected directly from the display device of the first computing device. The tag may be selected by the second computing device by, for example, scanning the tag. Upon selection thereof, the tag content that is embedded in the tag may be communicated to the second computing device. Thus, the actual content of the tag may be communicated to the second computing device.
In application, utilizing the exemplary system illustrated in
The user input is communicated to the receiving component 231 of the tagging engine 230 via a network (not shown). Upon receiving the user input, the identifying component 232 then identifies tag content within the target item. The tag content may be identified according to any content preferences, established criteria, or the like of, for example, any tag administrator. In embodiments, the tag content is identified as content that is related to actions executed by a mobile phone.
Once the tag content is identified by the identifying component 232, the communicating component 233 communicates the tag content to the tag service 240. The tag service 240 generates a customized tag that includes the tag content and communicates the customized tag back to the receiving component 231 of the tagging engine 230.
Upon receiving the customized tag, the integrating component 234 integrates the customized tag into a display of the target item such that the target item is displayed in association with the tag. Continuing with the above example, if a user selected a specific search result from within a search results page, the integrating component 234 would integrate the tag into a display of the destination location outputted upon selection of the specific search result. The communicating component 233 then communicates the integrated tag, via a network (not shown), to the computing device 210 for presentation to a user. The user can then utilize a second computing device to select the tag directly from a display device of the computing device 210.
In other embodiments of the present invention, the tagging engine 230 is configured to integrate tags into search results. Thus, instead of associating tags with particular items within a search results page, as previously described, the entire search results page itself may be associated with a tag that allows a user, upon selection thereof, to access the search results page on a second computing device. Alternatively, the tagging engine 230 is configured to integrate tags into search results pages that are associated with a particular item within the search results page such that a user would not have to select the item in order to generate a tag for the item.
Turning now to
A user may utilize a second computing device to select the tag 303 presented in the GUI 300. Once the tag 303 has been selected by the second computing device, the tag content associated with the search result 302 is communicated to the second computing device.
Once communicated to the second computing device, the tag content is displayed on the second computing device.
In additional embodiments, tags may be generated and presented on a display device of a first computing device such that, upon selection thereof by a second computing device, the tag automatically causes the second computing device to execute an action. For example, a tag may be associated with a mobile phone application that a user discovered while browsing on the first computing device. Rather than the user being required to re-browse for the mobile phone application on their mobile phone, the user can select the tag from the first computing device with their mobile phone (i.e., the second computing device). The tag may be configured to perform as described above and communicate tag content to the mobile phone that would allow the user to download the mobile phone application (e.g., the tag content may include a selectable download button such that a user could select the button and download the application). Alternatively, the tag may be configured to, upon selection thereof, automatically execute a download of the mobile phone application on the mobile phone.
Additional capabilities of tags include, but are not limited to, downloading product specifications from online stores such that the product specifications are readily accessible on a mobile device while shopping offline, communicating search results to a second computing device such that a subsequent search is not required to achieve the same results, communicating a search history to a second computing device, communicating movie show-times and/or directions to a second computing device, and the like. This list is merely exemplary and is not intended to be exhaustive.
Turning now to
With reference to
The present invention has been described in relation to particular embodiments, which are intended in all respects to be illustrative rather than restrictive. Alternative embodiments will become apparent to those of ordinary skill in the art to which the present invention pertains without departing from its scope.
While the invention is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. It should be understood, however, that there is no intention to limit the invention to the specific forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions, and equivalents falling within the spirit and scope of the invention.
It will be understood by those of ordinary skill in the art that the order of steps shown in the method 500 of