The disclosure relates to systems and methods for generating three-dimensional geofeeds, orientation-based geofeeds, and geofeeds based on ambient conditions, where the geofeed comprises content that is related to geographically definable locations and is aggregated from a plurality of social media or other content providers.
The availability of content such as videos, audio files, photos, text, and/or other content over networks such as the Internet has grown at impressive rates. Many Internet and other online service providers make this type of content available to enable users to post and share such content through their services. However, various limitations exist with respect to how this vast amount of information can be effectively monitored and/or selectively displayed.
Because of the large amount of information available from social networks and other information providers, organizing, and displaying the organized content in a meaningful way can be difficult.
The disclosure relates to systems and methods for generating a geofeed based on one or more geofeed parameters including altitude parameters, ambient condition parameters, and orientation parameters, where the geofeed comprises content that is related to geographically definable locations and is aggregated from a plurality of social media or other content providers.
In some embodiments, the system may include a computer that facilitates generating a geofeed based on one or more geofeed parameters. The computer may include one or more processors configured to perform some or all of a functionality of a plurality of modules. For example, the one or more processors may be configured to execute a geofeed creation module, an altitude module, an ambient condition module, an orientation module, a communication module, a user interface module, and/or other modules.
The geofeed creation module may be configured to receive a request to create a geofeed based on a specification of one or more geo-locations. The request may include one or more geofeed parameters which may include an altitude parameter (e.g., at a certain altitude, within a certain altitude range, below/above a certain altitude, etc.), an ambient condition parameter (e.g., at a certain temperature, within a certain temperature range, below/above a certain temperature, etc.), and an orientation parameter (e.g., “facing Southeast,” “Azimuth of 125 degrees,” “facing the White House,” etc.), and/or other parameters. The one or more geofeed parameters may be used to filter content into the geofeed and/or out of the geofeed.
The geofeed creation module may generate a geofeed definition that includes the specification of the one or more geo-locations, the one or more geofeed parameters, and/or other information related to the geofeed. The geofeed definition may be updated. For example, the specification of the one or more geo-locations, the one or more geofeed parameters, and/or other information of the geofeed definition may be updated. In this manner, various parameters related to geofeeds may be defined or updated at the time of specifying the geofeeds and/or after the geofeeds have been specified.
To create the geofeed, the geofeed creation module may obtain the specification of the one or more geo-locations from the geofeed definition and generate requests that specify the one or more geo-locations specifically for individual ones of the plurality of content providers. In some embodiments, the geofeed creation module may create a single geofeed having a plurality of geo-locations that are grouped with respect to one another. In other embodiments, the geofeed creation module may create multiple distinct geofeeds, which may each be associated with one or more geo-locations that are grouped with respect to one another. In these embodiments, each set of individual content may correspond to a single geofeed.
The altitude module may be configured to identify and/or obtain one or more altitude parameters that specify one or more altitude attributes related to content. An altitude parameter may be specified in various forms. It may be defined as a value of a particular altitude (e.g., at 50 feet), as an altitude range (e.g., from 50 feet to 100 feet), and/or as a minimum/maximum altitude (e.g., below/above 50 feet).
In some implementations, a content provider may determine or otherwise provide one or more altitude attributes associated with content. In this manner, the content provided by the content provider and received by the computer may already have altitude attributes embedded in the content. One or more altitude attributes may be generated and/or embedded into the content by obtaining altitude data from a device equipped with a barometric pressure sensor and/or based on user input.
In some implementations, a content provider may not determine or otherwise provide one or more altitude attributes associated with content. In other words, the computer may receive from the content provider the content not yet associated with an altitude attribute. In such a case, the altitude module may be configured to determine one or more altitude attributes related to the content.
In some implementations, the altitude module may determine the one or more altitude attributes related to the content based on a correlation between the content and other content that are currently associated with one or more altitude attributes. In some implementations, the altitude module may determine the one or more altitude attributes related to the content based on address information where the address information may identify a particular floor level of a building on which the place is located.
The ambient condition module may be configured to identify and/or obtain one or more ambient condition parameters that specify one or more ambient condition attributes related to content. Ambient conditions may include weather-related information such as temperature, humidity, air pressure, wind velocity and/or other environmental conditions. An ambient condition parameter may be specified in various forms. It may be defined as a value of a particular ambient condition (e.g., temperature of 90° F.), as a range (e.g., from 30° F. to 40° F.), and/or as a minimum/maximum threshold (e.g., below/above 90° F.).
In some implementations, a content provider may determine or otherwise provide one or more ambient condition attributes associated with content. In this manner, the content provided by the content provider and received by the computer may already have ambient condition attributes embedded in the content. One or more ambient condition attributes may be generated and/or embedded into the content by obtaining ambient condition data from a device equipped with one or more sensors, by querying an external database based on one or more geo-locations and/or a creation/update time of the content, and/or based on user input.
In some implementations, a content provider may not determine or otherwise provide one or more ambient condition attributes associated with content. The computer may receive from the content provider the content not yet associated with an ambient condition attribute. In such a case, the ambient condition module may be configured to determine one or more ambient condition attributes related to the content by accessing an external database based on geo-locations and/or a creation/update time of the content.
The orientation module may be configured to identify and/or obtain one or more orientation parameters that specify one or more orientation attributes related to the content. For example, a content consumer may request a geofeed having content that was created with respect to a particular spatial orientation. An orientation parameter may be specified in various forms. It may be defined as a reference point from which content was created. The reference point may include a particular point of interest (e.g., “facing the White House”), a particular reference direction (e.g., “facing Southeast”), and/or a particular azimuth value (e.g., “Azimuth of 125 degrees”).
In some implementations, a content provider may determine or otherwise provide one or more orientation attributes associated with content. In this manner, the content provided by the content provider and received by the computer may already have orientation attributes embedded in the content. One or more orientation attributes may be generated and/or embedded into the content by obtaining orientation data from a device equipped with a GPS unit and a compass and/or accelerometer/tilt angle sensor, and/or based on user input.
In some implementations, a content provider may not determine or otherwise provide one or more orientation attributes to be associated with content. The computer may receive from the content provider the content not yet associated with an orientation attribute. In such a case, the orientation module may be configured to determine one or more orientation attributes related to the content based on analyzing the content and determining whether the content itself indicates a particular reference point.
The communication module may be configured to communicate the geofeed comprising the content that is associated with one or more altitude attributes, ambient condition attributes, and/or orientation attributes, and/or other attributes that meet the criteria defined by the one or more geofeed parameters. The geofeed may be communicated to the content consumer via the user interface communicated via the user interface module and/or other communication channel.
Various other objects, features, and advantages of the invention will be apparent through the detailed description of the preferred embodiments and the drawings attached hereto. It is also to be understood that both the foregoing general description and the following detailed description are exemplary and not restrictive of the scope of the invention.
The content providers may include, for example, social media platforms (e.g., FACEBOOK, TWITTER, INSTAGRAM, FLICKR, etc.), online knowledge databases, and/or other providers that can distribute content that may be relevant to a geo-location. The geo-location may be specified by a boundary, geo coordinates (e.g., latitude, longitude, altitude/depth), an address, a school, a place name, a point of interest, a zip code, a city, a state, a country, and/or other information that can spatially identify an area. The content may be generated by content sources such as individuals, corporations, and/or other entities that may create content. As used hereinafter, “a location,” “a geo-location,” “a geographically definable location,” and similar language is not limited to a single location but may also refer to one or more such locations.
In many instances the created content can be automatically tagged with information such as user identifications, date/time information or geographic information (e.g., hereinafter, a “geo-tag”) that specifies a location where the content was created. For example, cameras equipped with Global Positioning Satellite (“GPS”) units or other location-aware systems may embed into an image file latitude/longitude coordinates that indicate where a picture was taken. In addition, modern hand-held devices such as smartphones may be equipped with a GPS sensor, which allows users to generate content (text, photos and videos) with their devices and immediately share the content through a plurality of social networks. Moreover, some devices allow users to manually input the foregoing and other information for embedding into the content. Furthermore, editing software may allow a user to embed or otherwise associate information along with the content after the content was created.
System 100 may include a computer 110, a geofeed API 122, a content consumer device 160, provider APIs 140, content providers 150, and/or other components. In some implementations, computer 110 may include one or more processors 120 configured to perform some or all of a functionality of a plurality of modules, which may be stored in a memory 121. For example, the one or more processors may be configured to execute a geofeed creation module 111, an altitude module 112, an ambient condition module 113, an orientation module 114, a communication module 115, a user interface module 116, and/or other modules 119.
Geofeed creation module 111 may be configured to create one or more geofeeds 101 (illustrated in
Co-pending U.S. patent application Ser. No. 13/708,516, filed Dec. 7, 2012, entitled “SYSTEM AND METHOD FOR LOCATION MONITORING BASED ON ORGANIZED GEOFEEDS,” co-pending U.S. patent application Ser. No. 13/708,466, filed Dec. 7, 2012, entitled “SYSTEM AND METHOD FOR GENERATING AND MANAGING GEOFEED-BASED ALERTS,” co-pending U.S. patent application Ser. No. 13/708,404, filed Dec. 7, 2012, entitled “SYSTEM AND METHOD FOR RANKING GEOFEEDS AND CONTENT WITHIN GEOFEEDS,” co-pending U.S. patent application Ser. No. 13/788,843, filed Mar. 7, 2013, entitled “SYSTEM AND METHOD FOR DIFFERENTIALLY PROCESSING A LOCATION INPUT FOR CONTENT PROVIDERS THAT USE DIFFERENT LOCATION INPUT FORMATS,” U.S. patent application Ser. No. 13/788,760, filed Mar. 7, 2013, entitled “SYSTEM AND METHOD FOR CREATING AND MANAGING GEOFEEDS,” and U.S. patent application Ser. No. 13/788,909, filed Mar. 7, 2013, entitled “SYSTEM AND METHOD FOR TARGETED MESSAGING, WORKFLOW MANAGEMENT, AND DIGITAL RIGHTS MANAGEMENT FOR GEOFEEDS,” are all incorporated by reference in their entireties herein. are all incorporated by reference in their entireties herein.
U.S. patent application Ser. No. 13/843,949 (issued as U.S. Pat. No. 8,862,589), filed on Mar. 15, 2013, entitled “SYSTEM AND METHOD FOR PREDICTING A GEOGRAPHIC ORIGIN OF CONTENT AND ACCURACY OF GEOTAGS RELATED TO CONTENT OBTAINED FROM SOCIAL MEDIA AND OTHER CONTENT PROVIDERS,” and U.S. provisional patent application No. 61/800,951, , filed on Mar. 15, 2013, entitled “VIEW OF A PHYSICAL SPACE AUGMENTED WITH SOCIAL MEDIA CONTENT ORIGINATING FROM A GEO-LOCATION OF THE PHYSICAL SPACE,” are all incorporated by reference in their entireties herein.
Geofeed creation module 111 may format a request for a geofeed specific for different provider APIs 140 (illustrated in
In some implementations, geofeed creation module 111 may receive a request to create a geofeed based on a specification of one or more geo-locations. The request may include one or more geofeed parameters which may include an altitude parameter (e.g., at a certain altitude, within a certain altitude range, below/above a certain altitude, etc.), an ambient condition parameter (e.g., at a certain temperature, within a certain temperature range, below/above a certain temperature, etc.), and an orientation parameter (e.g., “facing Southeast,” “Azimuth of 125 degrees,” “facing the White House,” etc.), and/or other parameters. For example, a content consumer may search for geofeed content that have been created when the temperature of that location of creation was over 90 degrees Fahrenheit (° F.). The request may include a plurality of geofeed parameters in some instances. For example, a content consumer may be interested in receiving geofeed content that have been created at a certain specified altitude below a certain specified temperature. The geofeed parameters which accompany the request may be used to request from content providers content that satisfies both of the geofeed parameters. On the other hand, the geofeed parameters may be used to filter content into the geofeed and/or out of the geofeed after computer 110 receives the content from content providers.
In some implementations, geofeed creation module 111 may obtain the one or more geofeed parameters after computer 110 receives the geofeed content from content providers. For example, once the geofeed content related to one or more geo-locations have been retrieved, a content consumer may specify, via a user interface, an altitude parameter (e.g., at 50 feet of altitude), an ambient condition parameter (e.g., above 90° F.), an orientation parameter (e.g., facing the “White House”), and/or other parameters to filter content into the geofeed and/or out of the geofeed.
In some implementations, the geofeed parameters including altitude parameters, ambient condition parameters, orientation parameters, and/or other parameters may be stored in and/or retrieved from geofeed parameters database 136.
Altitude module 112 may be configured to identify and/or obtain one or more altitude parameters that specify one or more altitude attributes related to content. The one or more altitude parameters may be user-specified and/or system-generated. For example, a content consumer may specify an altitude parameter to search for geofeed content that is associated with one or more altitude attributes that meet the criteria defined by the altitude parameter.
An altitude parameter may be specified in various forms. It may be defined as a value of a particular altitude (e.g., at 50 feet), as an altitude range (e.g., from 50 feet to 100 feet), and/or as a minimum/maximum altitude (e.g., below/above 50 feet). In some implementations, altitude parameters may be defined based on a map input. For example, a content consumer may specify a three-dimensional geo-location via a map interface by drawing a circle, cylinder, or sphere above (or below) ground level. In other implementations, an altitude parameter may be specified as a text input by entering a particular altitude value, altitude range, altitude threshold, etc.
In some implementations, an altitude parameter may include one or more keywords, phrases, addresses, and/or other information that may be used to identify an altitude. For example, if an altitude parameter includes a phrase such as “at the highest point of Washington D.C.,” altitude module 112 may convert this phrase to an altitude value, range, and/or threshold that corresponds to the description provided by that phrase. In doing so, altitude module 112 may access an external database and/or other database storage that may store and/or maintain altitude data of various buildings, mountains, etc. of the specified region. In another example, an altitude parameter may include an address that may specify a place located on a certain floor level (e.g., 17th floor) of a building. In such a case, altitude module 112 may convert this address to an altitude value, range, and/or threshold related to that floor level based on the altitude data stored in an external database and/or other database storage.
In some implementations, a content provider may determine or otherwise provide one or more altitude attributes associated with content. In this manner, the content provided by the content provider and received by computer 110 may already have altitude attributes embedded in the content. For example, the content may have been created using a device (e.g., a mobile device) with a barometric pressure sensor that may be used to capture one or more altitude attributes at the time of creation of the content. In this case, the captured altitude attributes may be embedded into the content. In another example, the creator of the content may manually input one or more altitude attributes which may be embedded into the content.
In some implementations, a content provider may not determine or otherwise provide one or more altitude attributes associated with content. Computer 110 may receive from the content provider the content not yet associated with an altitude attribute. In such a case, altitude module 112 may be configured to determine one or more altitude attributes related to the content.
In some implementations, altitude module 112 may determine the one or more altitude attributes related to the content based on a correlation between the content and other content that are currently associated with one or more altitude attributes. For example, a content creator may have created content via a content provider at a particular geographical location and manually tagged the content with one or more altitude attributes. The content consumer subsequently posts new content at the same geographical location but does not provide altitude information related to the new content. In this case, altitude module 112 may determine that the subsequent content should be associated with the same altitude attributes as the previous content because they share a common geographical location with one another and have been created by the same content creator.
In some implementations, altitude module 112 may determine the one or more altitude attributes related to the content based on address information related to the content. For example, the geo-tag of the content and/or the content itself may include address information from which altitude module 112 may retrieve one or more altitude attributes. If the address specifies a particular floor level of a building, altitude module 112 may convert this address to an altitude value corresponding to that floor level based on altitude data stored in an external database and/or other database storage.
Ambient condition module 113 may be configured to identify and/or obtain one or more ambient condition parameters that specify one or more ambient condition attributes related to content. Ambient conditions may include weather-related information such as temperature, humidity, air pressure, wind velocity and/or other environmental conditions. The one or more ambient condition parameters may be user-specified and/or system-generated. For example, a content consumer may specify an ambient condition parameter to search for geofeed content that is associated with one or more ambient condition attributes that meet the criteria defined by the ambient condition parameter.
An ambient condition parameter may be specified in various forms. It may be defined as a value of a particular ambient condition (e.g., temperature of 90° F.), as a range (e.g., from 30° F. to 40° F.), and/or as a minimum/maximum threshold (e.g., below/above 90° F.). In some implementations, an ambient condition parameter may specify a condition caused by weather variations (e.g., heat wave). For example, a content consumer may request geofeed content created during a heat wave.
In some implementations, a content provider may determine or otherwise provide one or more ambient condition attributes associated with content. In this manner, the content provided by the content provider and received by computer 110 may already have ambient condition attributes embedded in the content. For example, the content provider may access an external database and/or other database storage to acquire one or more ambient condition attributes related to the content. Ambient conditions may be location-specific and/or time-specific, which means that ambient conditions may be conditions measured at a particular location and/or at a particular time. Thus, the content provider may query the external database (and/or other database storage) based on one or more geo-locations specified for a geofeed (and/or the geo-tag associated with the content) and/or a creation/update time of the content. In another example, one or more ambient condition attributes related to content may be manually input by the creator of the content. In yet another example, the content may have been created using a device (e.g., a mobile device) including one or more sensors that may capture one or more ambient condition attributes of where the device is located. In this case, the captured ambient condition attributes may be embedded into the content.
In some implementations, a content provider may not determine or otherwise provide one or more ambient condition attributes associated with content. Computer 110 may receive from the content provider the content not yet associated with an ambient condition attribute. In such a case, ambient condition module 113 may be configured to determine one or more ambient condition attributes related to the content.
In some implementations, ambient condition module 113 may determine the one or more ambient condition attributes related to the content by accessing an external database and/or other database storage that stores and/or maintains information related to ambient conditions. Ambient condition module 113 may obtain the one or more ambient condition attributes from the external database and/or other database storage based on the geo-locations specified for creating a geofeed (and/or the geo-tag associated with the content) and/or a creation/update time of the content.
In some implementations, when an ambient condition parameter specifies a condition caused by weather variations (e.g., a heat wave), a content provider and/or ambient condition module 113 may search the external database and/or other database storage to obtain average ambient conditions (e.g., seasonal average temperature) based on one or more geo-locations specified for the geofeed (and/or the geo-tag associated with the content). The average ambient conditions may be compared to ambient conditions measured at a creation/update time of the content. For example, if the difference between the average temperature and the temperature measured at the creation/update time of the content is sufficiently large (e.g., above a certain threshold), ambient condition module 113 may determine that the content was created during a heat wave. In this example, the resulting geofeed content may include only the content that was created during a heat wave, allowing the content consumer to track this type of variation in weather.
Orientation module 114 may be configured to identify and/or obtain one or more orientation parameters that specify one or more orientation attributes related to the content. The one or more orientation parameters may be user-specified and/or system-generated. For example, a content consumer may specify an orientation parameter to search for geofeed content that is associated with one or more orientation attributes that meet the criteria defined by the orientation parameter. In other words, the content consumer may request a geofeed having content that was created with respect to a particular spatial orientation.
An orientation parameter may be specified in various forms. It may be defined as a reference point from which content was created. The reference point may include a particular point of interest (e.g., “facing the White House”), a particular reference direction (e.g., “facing Southeast”), and/or a particular azimuth value (e.g., “Azimuth of 125 degrees”). For example, videos taken while facing a reference point or images of celestial object viewed from a location at particular angles may be included in the geofeed content.
In some implementations, a content provider may determine or otherwise provide one or more orientation attributes associated with content. In this manner, the content provided by the content provider and received by computer 110 may already have orientation attributes embedded in the content. For example, the content provider may obtain one or more orientation attributes from a device (e.g., a mobile device) that is used to create the content. In this example, the device location may be determined by a GPS unit of the device. Based on the device location, the device orientation may be determined by obtaining compass data and/or accelerometer data from a compass and/or accelerometer/tilt angle sensor linked to the device. In this case, the device location and orientation information may be embedded into the content. In another example, the creator of the content may manually input one or more orientation attributes which may be embedded into the content. The content creator may indicate that the content has been created while facing the White House, for example.
In some implementations, a content provider may not determine or otherwise provide one or more orientation attributes to be associated with content. Computer 110 may receive from the content provider the content not yet associated with an orientation attribute. In such a case, orientation module 114 may be configured to determine one or more orientation attributes related to the content. For example, orientation module 114 may analyze the content and determine whether the content itself indicates a particular reference point. In this example, if the content shows a picture of the White House while the geo-location specified for creating a geofeed (and/or the geo-tag associated with the content) is near the location of the White House, orientation module 114 may determine that that the picture was taken while facing the White House.
Communication module 115 may be configured to communicate the geofeed comprising the content that is associated with one or more altitude attributes, ambient condition attributes, and/or orientation attributes, and/or other attributes that meet the criteria defined by the one or more geofeed parameters. The geofeed may be communicated to the content consumer via the user interface communicated via user interface module 116 and/or other communication channel.
Exemplary screenshots of interfaces for generated by user interface module 116 are illustrated in
Those having skill in the art will recognize that computer 110 and content consumer device 160 may each comprise one or more processors, one or more interfaces (to various peripheral devices or components), memory, one or more storage devices, and/or other components coupled via a bus. The memory may comprise random access memory (RAM), read only memory (ROM), or other memory. The memory may store computer-executable instructions to be executed by the processor as well as data that may be manipulated by the processor. The storage devices may comprise floppy disks, hard disks, optical disks, tapes, or other storage devices for storing computer-executable instructions and/or data.
One or more applications, including various modules, may be loaded into memory and run on an operating system of computer 110 and/or consumer device 160. In one implementation, computer 110 and consumer device 160 may each comprise a server device, a desktop computer, a laptop, a cell phone, a smart phone, a Personal Digital Assistant, a pocket PC, or other device.
Network 102 may include any one or more of, for instance, the Internet, an intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a SAN (Storage Area Network), a MAN (Metropolitan Area Network), a wireless network, a cellular communications network, a Public Switched Telephone Network, and/or other network.
In an operation 201, process 200 may include obtaining content associated with a geofeed. The geofeed may be created and/or retrieved by computer 110.
In an operation 202, process 200 may include identifying and/or selecting one or more geofeed parameters which may include an altitude parameter (e.g., at a certain altitude, within a certain altitude range, below/above a certain altitude, etc.), an ambient condition parameter (e.g., at a certain temperature, within a certain temperature range, below/above a certain temperature, etc.), and an orientation parameter (e.g., “facing Southeast,” “Azimuth of 125 degrees,” “facing the White House,” etc.), and/or other parameters. The one or more geofeed parameters may be used to filter content into the geofeed and/or out of the geofeed.
In an operation 203, process 200 may include determining whether the one or more geofeed parameters include an altitude parameter. If process 200 determines that the one or more geofeed parameters include an altitude parameter, process 200 may include determining one or more altitude attributes related to the content in an operation 204. On the other hand, if the one or more geofeed parameters do not include an altitude parameter, process 200 may include determining whether the one or more geofeed parameters include an ambient condition parameter in an operation 213.
In operation 213, if process 200 determines that the one or more geofeed parameters include an ambient condition parameter, process 200 may include determining one or more ambient condition attributes related to the content in an operation 214. On the other hand, if the one or more geofeed parameters do not include an ambient condition parameter, process 200 may include determining whether the one or more geofeed parameters include an orientation parameter in an operation 223.
In operation 223, if process 200 determines that the one or more geofeed parameters include an orientation parameter, process 200 may include determining one or more orientation attributes related to the content in an operation 224. On the other hand, if the one or more geofeed parameters do not include an orientation parameter, process 200 may proceed to an operation 250.
In an operation 205, process 200 may include filtering the content into the geofeed and/or out of the geofeed based on the altitude parameter and the one or more altitude attributes related to the content. For example, if a content item is associated with an altitude value that falls outside of the altitude range identified by the altitude parameter, the content item may be filtered out (or excluded) from the geofeed.
In an operation 215, process 200 may include filtering the content into the geofeed and/or out of the geofeed based on the ambient condition parameter and the one or more ambient condition attributes related to the content. For example, if a content item is associated with a temperature value that does not satisfy the ambient condition parameter (e.g., above 95° F.), the content item may be filtered out (or excluded) from the geofeed.
In an operation 225, process 200 may include filtering the content into the geofeed and/or out of the geofeed based on the orientation parameter and the one or more orientation attributes related to the content. For example, if a content item has been created while facing a particular direction that is not the same as the direction identified by the orientation parameter, the content item may be filtered out (or excluded) from the geofeed.
In an operation 250, process 200 may include communicating the geofeed comprising the filtered content. The geofeed having filtered content may be communicated via one or more communication channels such as, for example, SMS text, email, content delivered to a client application such as a mobile application, a website, and/or other communication channel. In some implementations, the geofeed may be communicated via a user interface such as a web page, mobile application, and/or other interface.
Interface 300 and other interfaces described herein may be implemented as a web page communicated from computer 110 to a client, an application such as a mobile application executing on the client that receives generates the interface based on information communicated from computer 110, and/or other interface. Whichever type of interface is used, computer 110 may communicate the data and/or formatting instructions related to the interface to the client, causing the client to generate the various interfaces of
Referring to
When a content consumer makes a request to create a geofeed based on one or more geo-locations, the content consumer may also specify an altitude parameter which indicates a particular altitude value. Interface 300 may include a circle 302 (in dotted line) that may indicate the geofeed having content items 311-315 (shown in solid line) that are associated with the particular altitude value identified by the altitude parameter. Content items 321-325 and 331-332 associated with altitude values that are different from the altitude parameter may be displayed differently (e.g., in dotted line) from content items 311-315 and/or may be filtered out (or excluded) from the geofeed. The geofeed comprising the filtered content (as illustrated as circle 302 and content items 311-315) may be communicated via interface 300 to the content consumer.
Referring to
When a content consumer makes a request to create a geofeed based on one or more geo-locations, the content consumer may also specify an altitude parameter which indicates a particular altitude range. Interface 400 may include a cylinder 402 (in dotted line) that may indicate the geofeed having content items 411-416 where content items 411-416 (shown in solid line) may be associated with altitude values that are within the particular altitude range identified by the altitude parameter. Content items 421-425 and 431-432 associated with altitude values that fall outside of the altitude range identified by the altitude parameter may be displayed differently (e.g., in dotted line) from content items 411-416 and/or may be filtered out (or excluded) from the geofeed. The geofeed comprising the filtered content (as illustrated as cylinder 402 and content items 411-416) may be communicated via interface 400 to the content consumer.
Referring to
When a content consumer makes a request to create a geofeed based on one or more geo-locations, the content consumer may also specify an ambient condition parameter (e.g., at a certain temperature, within a certain temperature range, below/above a certain temperature, etc.). For example, a content consumer may search for geofeed content that have been created when the temperature was above 95° F. In this example, interface 500 may display a geofeed having content items 521, 522, and 523 (shown in solid line) where content items 521, 522, and 523 are associated with a temperature value that is above 95° F. (therefore satisfies the ambient condition parameter). On the other hand, content items 511 and 512 associated with temperature values that are below 95° F. (therefore does not satisfy the ambient condition parameter) may be displayed differently (e.g., in dotted line) from content items 521, 522, and 523 and/or may be filtered out (or excluded) from the geofeed. The geofeed comprising the filtered content (as illustrated as circle 501 and content items 521, 522, and 523) may be communicated via interface 500 to the content consumer.
Referring to
When a content consumer makes a request to create a geofeed based on one or more geo-locations, the content consumer may also specify an orientation parameter (e.g., “facing the White House,” “facing Southeast,” “Azimuth of 125 degrees,” etc.). For example, a content consumer may search for geofeed content that have been created while facing the White House (illustrated as reference point 620). In this example, interface 600 may display a geofeed having content items 621 and 622 (shown in solid line) where content items 621 and 622 were created while content creators 611 and 612 were facing the White House (therefore satisfies the orientation parameter). On the other hand, content item 631 which has been created by content creator 613 while facing the Lafayette Square (illustrated as a reference point 630) (therefore does not satisfy the orientation parameter) may be displayed differently (e.g., in dotted line) from content items 621 and 622 and/or may be filtered out (or excluded) from the geofeed. The geofeed comprising the filtered content (as illustrated as circle 601 and content items 621 and 622) may be communicated via interface 600 to the content consumer.
Referring to
A content consumer 710 visits the President's Park in Washington D.C. and searches for geofeed content around the area using a mobile device. Based on the device location (which may be determined by a GPS unit of the device) and the device orientation (which may be determined by obtaining compass data and/or accelerometer data from a compass and/or accelerometer/tilt angle sensor linked to the device), content consumer 710 may obtain different views of the geofeed content. For example, if content consumer 710 holds the device facing the White House (illustrated as reference point 720), content consumer 710 may get a front-view 711 which displays content items 721 and 722, a rear-view 712 which displays content item 731, and/or other views.
Other embodiments, uses and advantages of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. The specification should be considered exemplary only, and the scope of the invention is accordingly intended to be limited only by the following claims.
This application is a continuation of U.S. patent application Ser. No. 14/500,832, filed Sep. 29, 2014 (Granted U.S. Pat. No. 9,258,373), which is a continuation of U.S. patent application Ser. No. 13/843,832 filed Mar. 15, 2013 (Granted U.S. Pat. No. 8,849,935), the entireties of which are hereby incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
6026368 | Brown | Feb 2000 | A |
6363320 | Chou | Mar 2002 | B1 |
6591266 | Li | Jul 2003 | B1 |
7522940 | Jendbro | Apr 2009 | B2 |
7680796 | Yeh | Mar 2010 | B2 |
7698336 | Nath | Apr 2010 | B2 |
7912451 | Eckhart | Mar 2011 | B2 |
7974983 | Goeldi | Jul 2011 | B2 |
8103741 | Frazier | Jan 2012 | B2 |
8341223 | Patton | Dec 2012 | B1 |
8428228 | Baxter, Jr. | Apr 2013 | B1 |
8484224 | Harris | Jul 2013 | B1 |
8595317 | Harris | Nov 2013 | B1 |
8612533 | Harris | Dec 2013 | B1 |
8639767 | Harris | Jan 2014 | B1 |
8655873 | Mitchell | Feb 2014 | B2 |
8655983 | Harris | Feb 2014 | B1 |
8812951 | White | Aug 2014 | B1 |
8843515 | Burris | Sep 2014 | B2 |
8849935 | Harris | Sep 2014 | B1 |
8850531 | Harris | Sep 2014 | B1 |
8862589 | Harris | Oct 2014 | B2 |
8990346 | Harris | Mar 2015 | B2 |
9055074 | Harris | Jun 2015 | B2 |
9077675 | Harris | Jul 2015 | B2 |
9077782 | Harris | Jul 2015 | B2 |
9258373 | Harris | Feb 2016 | B2 |
9307353 | Harris | Apr 2016 | B2 |
9317600 | Harris | Apr 2016 | B2 |
9369533 | Harris | Jun 2016 | B2 |
9436690 | Harris | Sep 2016 | B2 |
9443090 | Harris | Sep 2016 | B2 |
20020029226 | Li | Mar 2002 | A1 |
20020029384 | Griggs | Mar 2002 | A1 |
20020116505 | Higgins | Aug 2002 | A1 |
20020128908 | Levin | Sep 2002 | A1 |
20020188669 | Levine | Dec 2002 | A1 |
20030018607 | Lennon | Jan 2003 | A1 |
20030025832 | Swart | Feb 2003 | A1 |
20030040971 | Freedenberg | Feb 2003 | A1 |
20030088609 | Guedalia | May 2003 | A1 |
20040203854 | Nowak | Oct 2004 | A1 |
20040205585 | McConnell | Oct 2004 | A1 |
20040225635 | Toyama | Nov 2004 | A1 |
20050034074 | Munson | Feb 2005 | A1 |
20060002317 | Punaganti Venkata | Jan 2006 | A1 |
20060106778 | Baldwin | May 2006 | A1 |
20060184968 | Clayton | Aug 2006 | A1 |
20060200305 | Sheha | Sep 2006 | A1 |
20070043721 | Ghemawat | Feb 2007 | A1 |
20070112729 | Wiseman | May 2007 | A1 |
20070121843 | Atazky | May 2007 | A1 |
20070143345 | Jones | Jun 2007 | A1 |
20070210937 | Smith | Sep 2007 | A1 |
20070276919 | Buchmann | Nov 2007 | A1 |
20070294299 | Goldstein | Dec 2007 | A1 |
20080092054 | Bhumkar | Apr 2008 | A1 |
20080104019 | Nath | May 2008 | A1 |
20080125969 | Chen | May 2008 | A1 |
20080147674 | Nandiwada | Jun 2008 | A1 |
20080162540 | Parikh | Jul 2008 | A1 |
20080189099 | Friedman | Aug 2008 | A1 |
20080192934 | Nelger | Aug 2008 | A1 |
20080250031 | Ting | Oct 2008 | A1 |
20080294603 | Ranjan | Nov 2008 | A1 |
20090005968 | Vengroff | Jan 2009 | A1 |
20090102859 | Athsani | Apr 2009 | A1 |
20090132435 | Titus | May 2009 | A1 |
20090138497 | Zavoli | May 2009 | A1 |
20090210426 | Kulakov | Aug 2009 | A1 |
20090217232 | Beerel | Aug 2009 | A1 |
20090222482 | Klassen | Sep 2009 | A1 |
20090297118 | Fink | Dec 2009 | A1 |
20090300528 | Stambaugh | Dec 2009 | A1 |
20090327232 | Carter | Dec 2009 | A1 |
20100010907 | Dasgupta | Jan 2010 | A1 |
20100030648 | Manolescu | Feb 2010 | A1 |
20100076968 | Boyns | Mar 2010 | A1 |
20100079338 | Wooden | Apr 2010 | A1 |
20100083124 | Druzgalski | Apr 2010 | A1 |
20100145947 | Kolman | Jun 2010 | A1 |
20100149399 | Mukai | Jun 2010 | A1 |
20100153386 | Tysowski | Jun 2010 | A1 |
20100153410 | Jin | Jun 2010 | A1 |
20100174998 | Lazarus | Jul 2010 | A1 |
20100177120 | Balfour | Jul 2010 | A1 |
20100180001 | Hardt | Jul 2010 | A1 |
20110007941 | Chen | Jan 2011 | A1 |
20110010674 | Knize | Jan 2011 | A1 |
20110035284 | Moshfeghi | Feb 2011 | A1 |
20110040894 | Shrum | Feb 2011 | A1 |
20110055176 | Choi | Mar 2011 | A1 |
20110072106 | Hoffert | Mar 2011 | A1 |
20110072114 | Hoffert | Mar 2011 | A1 |
20110078584 | Winterstein | Mar 2011 | A1 |
20110083013 | Nice | Apr 2011 | A1 |
20110113096 | Long | May 2011 | A1 |
20110123066 | Chen | May 2011 | A9 |
20110131496 | Abram | Jun 2011 | A1 |
20110137561 | Kankainen | Jun 2011 | A1 |
20110142347 | Chen | Jun 2011 | A1 |
20110153368 | Pierre | Jun 2011 | A1 |
20110202544 | Carle | Aug 2011 | A1 |
20110227699 | Seth | Sep 2011 | A1 |
20110270940 | Johnson | Nov 2011 | A1 |
20110288917 | Wanek | Nov 2011 | A1 |
20110307307 | Benmbarek | Dec 2011 | A1 |
20120001938 | Sandberg | Jan 2012 | A1 |
20120047219 | Feng | Feb 2012 | A1 |
20120077521 | Boldyrev | Mar 2012 | A1 |
20120078503 | Dzubay | Mar 2012 | A1 |
20120084323 | Epshtein | Apr 2012 | A1 |
20120101880 | Alexander | Apr 2012 | A1 |
20120124161 | Tidwell | May 2012 | A1 |
20120150901 | Johnson | Jun 2012 | A1 |
20120158536 | Gratton | Jun 2012 | A1 |
20120166367 | Murdock | Jun 2012 | A1 |
20120212398 | Border | Aug 2012 | A1 |
20120221687 | Hunter | Aug 2012 | A1 |
20120232939 | Pierre | Sep 2012 | A1 |
20120233158 | Braginsky | Sep 2012 | A1 |
20120239763 | Musil | Sep 2012 | A1 |
20120254774 | Patton | Oct 2012 | A1 |
20120259791 | Zoidze | Oct 2012 | A1 |
20120276848 | Krattiger | Nov 2012 | A1 |
20120276918 | Krattiger | Nov 2012 | A1 |
20120323687 | Schuster | Dec 2012 | A1 |
20120330959 | Kretz | Dec 2012 | A1 |
20130013713 | Shoham | Jan 2013 | A1 |
20130018957 | Parnaby | Jan 2013 | A1 |
20130051611 | Hicks | Feb 2013 | A1 |
20130054672 | Stilling | Feb 2013 | A1 |
20130060796 | Gilg | Mar 2013 | A1 |
20130073388 | Heath | Mar 2013 | A1 |
20130073389 | Heath | Mar 2013 | A1 |
20130073631 | Patton | Mar 2013 | A1 |
20130110631 | Mitchell | May 2013 | A1 |
20130110641 | Ormont | May 2013 | A1 |
20130124437 | Pennacchiotti | May 2013 | A1 |
20130131918 | Hahne | May 2013 | A1 |
20130132194 | Rajaram | May 2013 | A1 |
20130150015 | Valk | Jun 2013 | A1 |
20130159463 | Bentley | Jun 2013 | A1 |
20130201182 | Kuroki | Aug 2013 | A1 |
20130238599 | Burris | Sep 2013 | A1 |
20130238652 | Burris | Sep 2013 | A1 |
20130238658 | Burris | Sep 2013 | A1 |
20130268558 | Burris | Oct 2013 | A1 |
20130290554 | Chen | Oct 2013 | A1 |
20130325964 | Berberat | Dec 2013 | A1 |
20130346563 | Huang | Dec 2013 | A1 |
20140025911 | Sims | Jan 2014 | A1 |
20140040371 | Gurevich | Feb 2014 | A1 |
20140089296 | Burris | Mar 2014 | A1 |
20140089343 | Burris | Mar 2014 | A1 |
20140089461 | Harris | Mar 2014 | A1 |
20140095509 | Patton | Apr 2014 | A1 |
20140164368 | Mitchell | Jun 2014 | A1 |
20140195918 | Friedlander | Jul 2014 | A1 |
20140207893 | Harris | Jul 2014 | A1 |
20140222950 | Rabel | Aug 2014 | A1 |
20140236882 | Rishe | Aug 2014 | A1 |
20140256355 | Harris | Sep 2014 | A1 |
20140258451 | Harris | Sep 2014 | A1 |
20140259113 | Harris | Sep 2014 | A1 |
20140274148 | Harris | Sep 2014 | A1 |
20140280103 | Harris | Sep 2014 | A1 |
20140280278 | Harris | Sep 2014 | A1 |
20140280569 | Harris | Sep 2014 | A1 |
20140297740 | Narayanan | Oct 2014 | A1 |
20150019648 | Harris | Jan 2015 | A1 |
20150019866 | Braness | Jan 2015 | A1 |
20150020208 | Harris | Jan 2015 | A1 |
20150032739 | Harris | Jan 2015 | A1 |
20150172396 | Longo | Jun 2015 | A1 |
20150256632 | Harris | Sep 2015 | A1 |
20150381380 | Harris | Dec 2015 | A1 |
20160006783 | Harris | Jan 2016 | A1 |
20160014219 | Harris | Jan 2016 | A1 |
20160219403 | Harris | Jul 2016 | A1 |
20160232182 | Harris | Aug 2016 | A1 |
Number | Date | Country |
---|---|---|
1045345 | Oct 2000 | EP |
2187594 | May 2010 | EP |
2293566 | Mar 2011 | EP |
9915995 | Apr 1999 | WO |
2010049918 | May 2010 | WO |
2013133870 | Sep 2013 | WO |
2013134451 | Sep 2013 | WO |
Entry |
---|
U.S. Appl. No. 14/180,845, a final Office Action, mailed Feb. 22, 2016, 43 pages. |
U.S. Appl. No. 14/512,293, a Final Office Action, mailed Apr. 6, 2016, 9 pages. |
U.S. Appl. No. 14/733,715, a non-final Office Action, mailed Mar. 11, 2016, 25 pages. |
U.S. Appl. No. 14/792,538, a non-final Office Action, mailed Feb. 26, 2016, 20 pages. |
U.S. Appl. No. 14/813,031, a final Office Action, mailed Mar. 21, 2016, 41 pages. |
U.S. Appl. No. 14/813,039, a Final Office Action, mailed May 16, 2016, 14 pages. |
Amitay et al., “Web-a-Where: Geotaqqinq Web Content”, Proceedings of the 27th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR), 2004, pp. 273-280. |
Bao, Jie, et al.. “GeoFeed: A Location-Aware News Feed System”, IEEE Xplore Digital Library, Published in 2012 IEEE 28th International Conference on Data Engineering, Apr. 1-5, 2012, 14 pages. |
Chow et al., “Towards Location-Based Social Networking Services”, LBSN 2010 Proceedings of the 2nd ACM SIGSPATIAL International Workshop on Location Based Social Networks, Nov. 2, 2010, pp. 31-38. |
Lee et al., “Tag-Geotag Correlation in Social Networks”, Proceedings of the 2008 ACM Workshop on Search in Social Media, 2008, pp. 59-66. |
Sarwat, Mohamed, et al., “Sindbad: A Location-Based Social Networking System”, SIGMOD '12, Scottsdale, Arizona, May 20-24, 2012, 4 pages. |
U.S. Appl. No. 13/788,843, a Notice of Allowance, mailed Dec. 3, 2015, 18 pages. |
U.S. Appl. No. 14/500,881, a non-final Office Action, mailed Sep. 21, 2015, 5 pages. |
U.S. Appl. No. 13/284,455, a non-final Office Action, mailed Jan. 7, 2013, 18 pages. |
U.S. Appl. No. 13/284,455, a non-final Office Action, mailed Jun. 4, 2013, 28 pages. |
U.S. Appl. No. 13/284,455, a Notice of Allowance, mailed Oct. 4, 2013, 17 pages. |
U.S. Appl. No. 13/619,888, a non-final Office Action, mailed Mar. 1, 2013, 15 pages. |
U.S. Appl. No. 13/619,888, a Notice of Allowance, mailed Jul. 9, 2013, 10 pages. |
U.S. Appl. No. 13/708,404, a Notice of Allowance, mailed May 24, 2013, 12 pages. |
U.S. Appl. No. 13/708,466, a non-final Office Action, mailed Apr. 17, 2013, 15 pages. |
U.S. Appl. No. 13/708,466, a Notice of Allowance, mailed Sep. 3, 2013, 11 pages. |
U.S. Appl. No. 13/708,516, a non-final Office Action, mailed May 15, 2013, 11 pages. |
U.S. Appl. No. 13/708,516, a Notice of Allowance, mailed Jun. 7, 2013, 14 pages. |
U.S. Appl. No. 13/788,760, a Notice of Allowance, mailed Jul. 26, 2013, 12 pages. |
U.S. Appl. No. 13/788,843, a final Office Action, mailed Jan. 21, 2014, 25 pages. |
U.S. Appl. No. 13/788,843, a non-final Office Action, mailed Aug. 5, 2013, 17 pages. |
U.S. Appl. No. 13/788,843, a non-final Office Action, mailed Feb. 20, 2015, 26 pages. |
U.S. Appl. No. 13/788,909, a non-final Office Action, mailed Aug. 12, 2013, 17 pages. |
U.S. Appl. No. 13/788,909, a Notice of Allowance, mailed Jan. 24, 2014, 12 pages. |
U.S. Appl. No. 13/788,909, a Notice of Allowance, mailed Jun. 24, 2014, 11 pages. |
U.S. Appl. No. 13/843,832, a non-final Office Action, mailed Sep. 13, 2013, 12 pages. |
U.S. Appl. No. 13/843,832, a Notice of Allowance, mailed Jan. 24, 2014, 6 pages. |
U.S. Appl. No. 13/843,832, a Notice of Allowance, mailed May 20, 2014, 7 pages. |
U.S. Appl. No. 13/843,949, a non-final Office Action, mailed Aug. 29, 2013, 12 pages. |
U.S. Appl. No. 13/843,949, a Notice of Allowance, mailed Feb. 3, 2014, 11 pages. |
U.S. Appl. No. 13/843,949, a Notice of Allowance, mailed May 9, 2014, 10 pages. |
U.S. Appl. No. 14/089,631, a final Office Action, mailed Jan. 2, 2015, 8 pages. |
U.S. Appl. No. 14/089,631, a non-final Office Action, mailed Jul. 8, 2014, 21 pages. |
U.S. Appl. No. 14/089,631, a Notice of Allowance, mailed Feb. 2, 2015, 10 pages. |
U.S. Appl. No. 14/108,301, a non-final Office Action, mailed Sep. 11, 2014, 10 pages. |
U.S. Appl. No. 14/108,301, a Notice of Allowance, mailed Feb. 20, 2015, 13 pages. |
U.S. Appl. No. 14/164,362, a non-final Office Action, mailed Oct. 23, 2014, 15 pages. |
U.S. Appl. No. 14/164,362, a Notice of Allowance, mailed Feb. 24, 2015, 22 pages. |
U.S. Appl. No. 14/180,473, a final Office Action, mailed Jan. 5, 2015, 7 pages. |
U.S. Appl. No. 14/180,473, a non-final Office Action, mailed Jul. 8, 2014, 18 pages. |
U.S. Appl. No. 14/180,473, a Notice of Allowance, mailed Jan. 27, 2015, 8 pages. |
U.S. Appl. No. 14/180,845, a final Office Action, mailed Feb. 25, 2015, 32 pages. |
U.S. Appl. No. 14/180,845, a non-final Office Action, mailed Aug. 27, 2015, 43 pages. |
U.S. Appl. No. 14/180,845, a non-final Office Action, mailed Oct. 23, 2014, 32 pages. |
U.S. Appl. No. 14/215,612, a final Office Action, mailed Nov. 28, 2014, 31 pages. |
U.S. Appl. No. 14/215,612, a non-final Office Action, mailed Jul. 11, 2014, 16 pages. |
U.S. Appl. No. 14/215,612, a non-final Office Action, mailed Aug. 18, 2015, 27 pages. |
U.S. Appl. No. 14/500,832, a non-final Office Action, mailed May 21, 2015, 13 pages. |
U.S. Appl. No. 14/500,881, a non-final Office Action, mailed Dec. 21, 2015, 24 pages. |
U.S. Appl. No. 14/512,293, a final Office Action, mailed Aug. 14, 2015, 15 pages. |
U.S. Appl. No. 14/512,293, a non-final Office Action, mailed Dec. 9, 2015, 14 pages. |
U.S. Appl. No. 14/512,293, a non-final Office Action, mailed Jan. 28, 2015, 18 pages. |
U.S. Appl. No. 14/666,056, a Final Office Action, mailed Jan. 4, 2016, 11 pages. |
U.S. Appl. No. 14/666,056, a non-final Office Action, mailed Aug. 10, 2015, 17 pages. |
U.S. Appl. No. 14/813,031, a non-final Office Action, mailed Nov. 24, 2015, 23 pages. |
U.S. Appl. No. 14/813,039, a non-final Office Action, mailed Jan. 20, 2016, 20 pages. |
U.S. Appl. No. 14/180,845, a non-final Office Action, mailed Jul. 7, 2016, 51 pages. |
U.S. Appl. No. 14/733,715, a Final Office Action, mailed Aug. 17, 2016, 21 pages. |
U.S. Appl. No. 14/813,031, a non-final Office Action, mailed Aug. 5, 2016, 46 pages. |
U.S. Appl. No. 15/130,289, a non-final Office Action, mailed Aug. 10, 2016, 42 pages. |
Number | Date | Country | |
---|---|---|---|
20160182656 A1 | Jun 2016 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14500832 | Sep 2014 | US |
Child | 15018767 | US | |
Parent | 13843832 | Mar 2013 | US |
Child | 14500832 | US |