The present invention relates generally to a location based service system, and more particularly to a general purpose mobile location-blogging system.
Modern portable consumer and industrial electronics, especially client devices such as navigation systems, cellular phones, digital cameras, video recorders, portable digital assistants, data logging instrumentation and combination devices, are providing increasing levels of functionality to support modern life including location-based information services. Numerous technologies have been developed to utilize this new functionality. Some of the research and development strategies focus on new technologies while others focus on improving the existing and mature technologies. Research and development in the existing technologies can take a myriad of different directions.
As users become more empowered with the growth of mobile location based service devices, new and old paradigms begin to take advantage of this new device space. There are many technological solutions to take advantage of this new device location opportunity. One existing approach is to add location information to user generated content such as digital photo files on a digital phone camera or other recording device. However, the ability for users to simply add location information to content files does not automatically translate to being an effective means of managing location-specific user generated content. An effective means to manage and store and use such images is still required.
For example, typical uses for location sensitive multimedia information can include a hiker want to identify and comment upon a meandering stream in a mountain valley, a fisherman needs to identify and log fishing records of a particular location at sea, a oil exploration team needs to log exploration data about a location, or a visitor to an amusement park can want to information about which have the best views.
Thus, a need remains for a mobile location based blogging system to efficiently create, populate and manage location-based blogs and to make the process of creating new User Generated Content for those location-blogs. In view of the ever-increasing added features desired by consumers in their mobile client devices, it is more and more critical that answers be found to these problems.
Solutions to these problems have been long sought but prior developments have not taught or suggested any solutions and, thus, solutions to these problems have long eluded those skilled in the art.
The present invention provides a method of operating a general purpose mobile location-blogging system including receiving a location-blog request having multimedia data at a server; managing a location-blog entry parameter with the location-blog request; sending the location-blog entry parameter from the server for: selecting the location-blog entry parameter at a client, and displaying the location-blog entry parameter that has been selected with a multimedia display interface of the client.
Certain embodiments of the invention have other aspects in addition to or in place of those mentioned above. The aspects can become apparent to those skilled in the art from a reading of the following detailed description when taken with reference to the accompanying drawings.
The following embodiments are described in sufficient detail to enable those skilled in the art to make and use the invention. It is to be understood that other embodiments would be evident based on the present disclosure, and that system, process, or mechanical changes can be made without departing from the scope of the present invention.
In the following description, numerous specific details are given to provide a thorough understanding of the invention. However, it can be apparent that the invention can be practiced without these specific details. In order to avoid obscuring the present invention, some well-known circuits, system configurations, and process steps are not disclosed in detail. Likewise, the drawings showing embodiments of the system are semi-diagrammatic and not to scale and, particularly, some of the dimensions are for the clarity of presentation and are shown greatly exaggerated in the drawing FIGs. The term “system” as used herein means and refers to the method and to the apparatus of the present invention in accordance with the context in which the term is used.
Referring now to
The client 102 includes, for example, a control device (not shown), such as a microprocessor, software (not shown), a memory (not shown), communication components (not shown), location monitoring components (not shown), and a user interface. The user interface, such as a display, a key pad, touchpad, softkeys, keyboard, a microphone, and a speaker, allows the user to interact with the client 102 and to provide data and command inputs. The microprocessor executes the software and provides the intelligence of the client 102 for interaction with the server 104 for relevant information, for the user interface, for interaction with the communication path 106, and interaction to the location monitoring system of the client 102, as well as other functions pertinent to a location based service communication device.
The memory, such as volatile, nonvolatile memory, internal only, externally upgradeable, or a combination thereof, can store the software, setup data, multimedia data, photos, text, sounds recordings, video and other data for the operation of the client 102 as a mobile location based service communication device. The memory can also store the relevant information, such as maps, route information, traffic information, advertisement and point of interest (POI), location-blog entries, etc., from the server 104 or can be preloaded. The memory can also store recorded, imaged, sampled or created relevant information to be transmitted to the server 104.
For example, the functions of the client 102 can be performed by software, firmware, hardware, or a combination thereof. The communication components can include active and passive components, such as microelectronics or an antenna, for interaction to the cellular system of the communication path 106. The navigation components can include the active and passive components, such as microelectronics or an antenna, for interaction with the communication path 106.
The communication path 106 can be of any of a variety of telecommunication networks. For example, the communication path 106 can include wireless communication, wired communication, optical, ultrasonic, or the combination thereof. Satellite communication, cellular communication, Bluetooth, Infrared Data Association standard (IrDA), wireless fidelity (WiFi), and worldwide interoperability for microwave access (WiMAX) are examples of wireless communication that can be included in the communication path 106. Ethernet, digital subscriber line (DSL), fiber to the home (FTTH), and plain old telephone service (POTS) are examples of wired communication that can be included in the communication path 106.
Further, the communication path 106 can traverse a number of network topologies and distances. For example, the communication path 106 can include personal area network (PAN), local area network (LAN), metropolitan area network (MAN), and wide area network (WAN).
The server 104 can include a number of devices, for example, a control device (not shown), such as a computer, software (not shown), a memory, communication components (not shown), location monitoring components (not shown), and a user interface. The computer executes the software and provides the intelligence of the server 104 for interaction with the client 102, interaction to the communication system of the communication path 106 and interaction with a server user interface 108.
For illustrative purposes, the server 104 is shown in a single location, although it is understood that the server can be located at different locations. For example, the server 104 can represent servers in a single computer room, and distributed across different rooms or geographical locations. Also for illustrative purposes, the server 104 and the server user interface 108 are shown as separate and discrete components, although it is understood that the server user interface 108 can by included in the server 104.
Further for illustrative purposes, the server user interface 108 is shown coupled to the server 104, although it is understood that the server user interface 108 can couple to the server 104 differently. For example, the server user interface 108 can interact with the communication path 106 to communicate with the server 104.
Yet further for illustrative purposes, the general purpose mobile location-blogging system 100 is shown with the server 104 as a non-mobile computing device, although it is understood that the server 104 can be different types of computing devices. For example, the server 104 can also be a mobile computing device, such as notebook computer, another client device, or a different type of client device.
Yet further for illustrative purposes, the general purpose mobile location-blogging system 100 is shown with the server 104 and the client 102 as end points of the communication path 106, although it is understood that the general purpose mobile location-blogging system 100 can have a different partition between the client 102, the server 104, and the communication path 106. For example, the client 102, the server 104, or a combination thereof can also function as part of the communication path 106.
The server 104 includes a location-blog which is a location-sensitive, multimedia blog data store that allows users to create, populate and manage location-based blogs that are specific to a particular location and can include a variety of information related to that location. Location-blogs are essentially location-based scratchpads where information including video, audio, images, text, cartographic information, physical property measurements, depth soundings, fish and wildlife census information, chemical and pollution measurements, weather information, or other measured or instrumentation data can be stored, associated with a particular location, and retrieved on demand.
Referring now to
Each of the location-blog entry parameters 204 can include a location-blog control parameter 220 and a location-blog data parameter 224 for controlling a multimedia display interface 210 of the client 102. For example, the multimedia display interface 210 can display associated location and the location-blog data parameter 224 received by the client 102 from the server 104 via the communication path 106.
Also, the location-blog entry parameters 204 can control the multimedia display interface 210 in association with a variety of location and navigation events. For example, the multimedia display interface 210 can display images, video, text, or audio of selected location-blog entries notifying a user of nearby location-blog coordinates based upon location of the client 102, navigation directions to POIs associated with a location-blog, and display of additional messaging. The additional messaging can include traffic or navigation data associated with the location blog, the POI, or advertisements, as an example.
Further, the location-blog entry parameters 204 can include any number of parameters. For example, the location-blog entry parameters 204 can include system ID, client ID, device type, location-blog ID, location, datetime stamp, geofence parameters, range, content tags, multimedia data, or any combination thereof.
The client 102 can store the location-blog entry parameters 204 in a local storage 212. The local storage 212 can be implemented in a number of ways. For example, the local storage 212 can be a nonvolatile storage such as non-volatile random access memory (NVRAM), Flash memory, disk storage or a volatile storage such as static random access memory (SRAM). The client 102 can retrieve a current set of the location-blog entry parameters 204 possibly when the multimedia display interface 210 is refreshed.
The client 102 can accept a user input 201 via a user interface 216, such as a key entry, to interact with the location-blog using a variety of command and data methods. Examples of command and data methods include creating a new location-blog, selecting an active location-blog, selecting a location-blog entry, browsing for nearby location-blogs, generating user content, sending content to the server 104, receiving location-blog content from the server 104, navigating within a selected location-blog, or any combination thereof.
The user input 201 can also be associated with multimedia data from a multimedia data unit 214 that can provide multimedia data inputs including digital images, audio recordings, video recordings, text inputs, other multimedia inputs, or any combination thereof. The user input 201 can also be associated with the current location information from a location unit 218, such as a navigation hardware. The user input 201 in association with multimedia data from the multimedia data unit 214 and the current location information from the location unit 218 can be processed by a control device 222, such as a processor or a specialized hardware engine, which can generate the server request 202 from the client 102 to the server 104.
Referring now to
The client 102 preferably receives the location-blog request 318 from the user interface 216 and sends the server request 202 to the server 104 in the block 302. Based on the location-blog request 318, the server request 202 can include the location-blog command information 303. The location-blog command information 303 can include a create location-blog command, an update location-blog command, a fetch location-blog information command, and a manage location-blog command, or other location-blog data and management command structures.
The server 104 receives the location-blog command information 303 from the client 102. The server 104 can decode the location-blog command information 303 and can perform the appropriate command function in a block 312. The create location-blog command can cause the server 104 to initiate the creating a new location-blog. The update location-blog command can cause the server 104 to update the location-blog with the multi-media content included. The fetch location-blog information command can cause the server 104 to retrieve and return a set of location-blog information about one or more location-blogs that fit specified criteria. The manage location-blog command can cause the server 104 to perform a variety of functions related to managing and maintaining a specified location-blog. For example, once a command is completed, status information and location-blog information can be sent from the server 104 to the client 102 in a block 315.
The server request 202 with the create location-blog command from the block 312 can include location-blog header data that can be used to create a new location-blog in a block 313. The location-blog header data can include system ID, user ID, location ID, location tag, blog property information, multimedia content, text, video, images, audio, or any combination thereof Location-blogs include blogs based on information pertaining to a particular location and whose entries are primarily indexed by location and time. The create location-blog command can be processed by the server 104 creating a new location-blog as specified by the location-blog header data on the server 104. The server 104 can send the server response 203 from the block 315 including a location-blog command status to the client 102 upon completion of the create location-blog command in the block 313.
The server request 202 with the update location-blog command from the block 312 can include multimedia data for creating a location-blog entry in a block 314. The location-blog entry includes a multimedia entry that can be retrieved by the client 102. The update location-blog command can be processed by the server 104 and can automatically create a location-blog post for the specified location-blog. The server 104 can send the server response 203 including a location-blog command status, from the block 314, to the client 102 upon completion of the update location-blog command in the block 315.
The server request 202 with a fetch location-blog information command from the block 312 can include a location-blog retrieval request that can cause the server 104 to retrieve and return one or more of the location-blog entry parameters 204 of
The server request 202 with the manage location-blog command from the block 312 can include any number of utility commands to control the server 104 for managing the specified location-blog in a block 316. The manage location-blog commands can include a variety of functions including delete location-blog entry, modify location-blog entry, delete location-blog, edit location-blog header information, copy location-blog, move location-blog, modify location-blog status, or any combination thereof. The server 104 can send the server response 203 including the location-blog command status, from the block 316, to the client 102 upon completion of the manage location-blog command in the block 315.
The client 102 receives the server response 203 including the location-blog entry parameters 204 from the server 104 over the communication path 106 in a block 304. The client 102 preferably detects the location-blog control parameter 220 in
The client 102 also receives the server response 203 including the location-blog status updates from the server 104 over the communication path 106 in the block 304. The client 102 detects the location-blog control parameter 220 for use with the location-blog status from the server response 203 and operates the multimedia display interface 210 of
Referring now to
The client 102 sends, in a block 402, the server request 202 with a location-blog command input 401 and the location-blog multimedia content input 408 via the communication path 106 of
The location-blog multimedia content input 408 is associated with the current location-blog which is associated with the current location of the client 102. The location-blog multimedia content input 408 can include any number of multimedia parameters, such as video recordings, audio recordings, images, text, time, date, or any combination thereof.
For example, the client 102 can include a digital video camera which makes an audiovisual recording at the current location. The location-blog command input 401 can control the client 102 to send the server request 202 with an update location-blog command from the block 312 and the associated audiovisual recording data to the server 104 via the communication path 106. The client 102 can also include a digital camera and send the server request 202 including the digital image from the camera to the server 104.
As another example, the client 102 can receive the location-blog command input 401 from the user input 201 and send the server request 202 including a manage location-blog command, from the block 312, to the server 104 to request the deletion of the current location-blog.
Referring now to
The server 104 can process the server request 202 with the Create New Location-Blog command, from the block 312, in the block 313. The server request 202 can include additional parameters to define and create the new location-blog including parameters such as system ID, client ID, location ID, time, date, video, audio, images, text, multimedia data, command parameter, configuration parameters, security parameters, or any combination thereof. The server 104 can create a new location-blog and an associated location-blog storage entry in a data storage system 505 that can later be used to include the data for the location-blog entries.
The server 104 can process the server request 202 with the update location-blog command, from the block 312, in the block 314. The server request 202 can include additional parameters to update the specified location-blog including parameters such as location-blog ID, system ID, client ID, location ID, time, date, video, audio, images, text, multimedia data, command parameter, configuration parameters, security parameters, or any combination thereof. The server 104 can create a new location-blog entry and store the associated location-blog entry content in the data storage system 505. The location-blog entry can be later retrieved from the location-blog on the server 104 using the fetch location-blog information command from the block 312.
The server 104 can process the server request 202 with the fetch location-blog information command, from the block 312, in the block 310. The server request 202 can include additional parameters to define and create the new location-blog including parameters such as location-blog ID, location-blog entry ID, system ID, client ID, location ID, time, date, video, audio, images, text, multimedia data, command parameter, configuration parameters, security parameters, or any combination thereof. The server 104 can retrieve the location-blog entry parameters 204 of
The server 104 can process the server request 202 with the manage location-blog command, from the block 312, in the block 316. The manage location-blog commands can include a variety of functions including delete location-blog entry, modify location-blog entry, delete location-blog, edit location-blog header information, copy location-blog, move location-blog, modify location-blog status, or any combination thereof. The server 104 can create a new location-blog entry and store the associated location-blog entry content in the data storage system 505. The location-blog entry can be later retrieved from the location-blog on the server 104 using the fetch location-blog information command from the block 312.
In operation, the server request 202 that includes the delete location-blog entry command from the block 312 can delete a specified location-blog entry from the specified location blog and from the data storage system 505. The server request 202 that includes an Edit Location-Blog Header command from the block 312 can modify a specified location-blog header for the specified location blog and from the data storage system 505.
The server request 202 that includes a copy location-blog command from the block 312 can copy a specified location-blog in the data storage system 505 to another location-blog in the data storage system 505 using a specified location-blog ID. The server request 202 that includes a move location-blog command from the block 312 can move a specified location-blog in the data storage system 505 to another location-blog in the data storage system 505 using a specified location-blog ID. The server request 202 that includes a modify location-blog status command can modify a specified location-blog status for the specified location blog in the data storage system 505.
In another example, the server 104 can receive a server user input 504 from the server user interface 108 of
It has been discovered that the present invention provides a general purpose mobile location-blogging system that allows user of clients to create, manage, delete, and select a specific or user selected location-blog. The location-blog can be one out of many location-blogs and can be user-defined allowing the general purpose location-blogs to be used as desired by the user of the client.
Referring now to
For example, either location-blog can be made the current location-blog by selecting the appropriate location-blog using the input means. The client 102 can enter a location-blog selection using a user input control 602 which can include a control input, such as a button, dial, slider, voice input, touch pad, touch screen, virtual button, switch, keypad or similar input device.
In
For example in
In
Referring now to
In another example,
In
For example in
In
In the example shown in
Referring now to
Yet another important aspect of the present invention is that it valuably supports and services the historical trend of reducing costs, simplifying systems, and increasing performance. These and other valuable aspects of the present invention consequently further the state of the technology to at least the next level.
Thus, it has been discovered that the general purpose mobile location-blogging system of the present invention furnishes important and heretofore unknown and unavailable solutions, capabilities, and functional aspects for improving yield, increasing reliability, and reducing cost of using a mobile client having location based services capability. The resulting processes and configurations are straightforward, cost-effective, uncomplicated, highly versatile, accurate, sensitive, and effective, and can be implemented by adapting known components for ready, efficient, and economical manufacturing, application, and utilization.
While the invention has been described in conjunction with a specific best mode, it is to be understood that many alternatives, modifications, and variations can be apparent to those skilled in the art in light of the aforegoing description. Accordingly, it is intended to embrace all such alternatives, modifications, and variations that fall within the scope of the included claims. All matters hithertofore set forth herein or shown in the accompanying drawings are to be interpreted in an illustrative and non-limiting sense.