Information communication technology operable to provide users with a means for sharing information and comments is disclosed. The information communication technology provides a means for participants to place chat comments on an interactive graphic such as a dynamically rendered map that participants can track, edit and collaboratively work with in order to decide on a suitable meeting location.
|
1. A non-transitory computer-readable storage medium for tangibly storing thereon computer readable instructions for a processor to generate an interface comprising:
an interactive map of an area of interest;
at least one conversational commentary submission area generated at selected locations on the interactive map; and
the at least one conversational commentary submission area receiving user text input of the conversational commentaries, each respective conversational commentary submission area of the at least one conversation commentary submission area being visually associated with a respective one of the selected locations on the interactive map and supporting a synchronous communication session between a respective two users of a plurality of users.
18. Non-transitory computer readable storage media for tangibly storing thereon computer readable instructions for a method comprising:
receiving a query relating to a map from a first user device associated with a first user;
generating a list of locations on the map that relate to the query;
receiving via the first user device, an indication that the first user has selected a second user for synchronous communication;
sending an invitation to a second user device associated with the second user to initiate the synchronous communication session between the first user device and the second user device;
receiving an acceptance of the invitation from the second user device;
receiving a selection of a first one location of the list of locations from the first user device;
creating a synchronous communication session between the first user device and the second user device, where the first user device and the second user device each are caused to display the map, the list of locations and a first chat bubble on the map visually associated with the first one location of the list of locations, the first chat bubble supporting the synchronous exchange of messages between the first user device and the second user device.
12. A method comprising:
receiving, by a computing device, a query relating to a map from a first user device associated with a first user;
generating, by the computing device, a list of locations on the map that relate to the query;
receiving, by the computing device, an indication that the first user has selected a second user for synchronous communication via the first user device;
sending, by the computing device, an invitation to a second user device associated with the second user to initiate the synchronous communication session between the first user device and the second user device;
receiving, by the computing device, an acceptance of the invitation from the second user device;
receiving, by the computing device, a selection of a first one location of the list of locations from the first user device;
creating, by the computing device, a synchronous communication session between the first user device and the second user device, where the first user device and the second user device each are caused to display the map, the list of locations and a first chat bubble on the map visually associated with the first one location of the list of locations, the first chat bubble supporting the synchronous exchange of messages between the first user device and the second user device.
24. A computing device comprising:
processor;
a storage medium for tangibly storing thereon program logic for execution by the processor, the program logic comprising:
logic executed by the processor for receiving a query relating to a map from a first user device associated with a first user;
logic executed by the processor for generating a list of locations on the map that relate to the query;
logic executed by the processor for receiving via the first user device, an indication that the first user has selected a second user for synchronous communication;
logic executed by the processor for sending an invitation to a second user device associated with the second user to initiate a synchronous communication session between the first user device and the second user device;
logic executed by the processor for receiving an acceptance of the invitation from the second user device;
logic executed by the processor for receiving a selection of a first one location of the list of locations from the first user device;
logic executed by the processor for creating a synchronous communication session between the first user device and the second user device, where the first user device and the second user device each are caused to display the map, the list of locations and a first chat bubble on the map visually associated with the first one location of the list of locations, the first chat bubble supporting the synchronous exchange of messages between the first user device and the second user device.
2. The non-transitory computer-readable storage medium of
3. The non-transitory computer-readable storage medium of
4. The non-transitory computer-readable storage medium of
5. The non-transitory computer-readable storage medium of
6. The non-transitory computer-readable storage medium of
7. The non-transitory computer-readable storage medium of
8. The non-transitory computer-readable storage medium of
9. The non-transitory computer-readable storage medium of
10. The non-transitory computer-readable storage medium of
11. The non-transitory computer-readable storage medium of
13. The method of
receiving, by the computing device, a selection of a second one location of the list of locations from the second user device; and
causing, by the computing device, the first user device and the second user device to display the map, the list of locations and a second chat bubble in association with the second one location of the list of locations, the chat bubble supporting the synchronous exchange of messages between the first user device and the second user device.
14. The method of
receiving, by the computing device, via the synchronous communication session, a first plurality of comments from the first user device and the second user device relating to the first one location of the list of locations;
causing, by the computing device, each comment of the first plurality of comments to be displayed in the first chat bubble;
receiving, by the computing device, via the synchronous communication session, a plurality of comments from the first user device and the second user device relating to the second one location of the list of locations; and
causing, by the computing device, each comment of the second plurality of comments to be displayed in the second chat bubble.
15. The method of
16. The method of
sending, by the computing device, invitations to each user of a plurality of third users to join the first user and the second user at the first one location of the list of locations.
17. The method of
19. The non-transitory computer readable storage media of
receiving a selection of a second one location of the list of locations from the second user device; and
causing the first user device and the second user device to display the map, the list of locations and a second chat bubble in association with the second one location of the list of locations, the chat bubble supporting the synchronous exchange of messages between the first user device and the second user device.
20. The non-transitory computer readable storage media of
receiving via the synchronous communication session, a first plurality of comments from the first user device and the second user device relating to the first one location of the list of locations;
causing each comment of the first plurality of comments to be displayed in the first chat bubble;
receiving via the synchronous communication session, a plurality of comments from the first user device and the second user device relating to the second one location of the list of locations; and
causing each comment of the second plurality of comments to be displayed in the second chat bubble.
21. The non-transitory computer readable storage media of
22. The non-transitory computer readable storage media of
sending invitations to each user of a plurality of third users to join the first user and the second user at the first one location of the list of locations.
23. The non-transitory computer readable storage media of
25. The computing device of
logic executed by the processor for receiving a selection of a second one location of the list of locations from the second user device; and
logic executed by the processor for causing the first user device and the second user device to display the map, the list of locations and a second chat bubble visually associated with the second one location of the list of locations, the chat bubble supporting the synchronous exchange of messages between the first user device and the second user device.
26. The computing device of
logic executed by the processor for receiving via the synchronous communication session, a first plurality of comments from the first user device and the second user device relating to the first one location of the list of locations;
logic executed by the processor for causing each comment of the first plurality of comments to be displayed in the first chat bubble;
logic executed by the processor for receiving via the synchronous communication session, a plurality of comments from the first user device and the second user device relating to the second one location of the list of locations; and
logic executed by the processor for causing each comment of the second plurality of comments to be displayed in the second chat bubble.
27. The computing device of
28. The computing device of
logic executed by the processor for sending a plurality of third users to join the first user and the second user at the first one location of the list of locations.
29. The computing device of
|
The present invention relates generally to internet communication and more particularly to internet community communication.
People setting up meetings and events often need to negotiate a meeting location. There are usually many issues to consider when making such an arrangement including local amenities, specific settings, nearby freeways, traffic, and personal preferences. If they do not have detailed knowledge of potential meeting and event locations, they may need to spend time exchanging resources such as maps and travel routes and suggestions over email or instant messaging.
Existing communication methods are not always adequate. For example, instant messaging applications are generally limited to text exchanges and explanations. Mapping mashups (a mashup is a web application that combines data from more than one source into a single integrated tool) exist, but are limited to static data from a database. Services for meeting with new people serendipitously have been offered by companies like Meetro, Dodgeball, and Loopt, but these operate through alerts and text notification services to mobile phones only when another user is near. Furthermore, previous work has been done on internet relay chat (IRC)—for example, for discussion during preparation of electronic documents. This work does not describe the dynamic integration of content from multiple sources; neither do actions taken in the chat log affect the underlying documents into which the IRC chat channels are placed. Previous work also describes a series of visualizations for email. Again, the underlying content (email messages) is not dynamically drawn from multiple disparate sources, and the interactivity on the map itself is not dynamic. As another example, “chat bubbles”, are graphical bubbles around text associated with a visual object such as an avatar, but these are also not dynamically drawn from multiple sources. Furthermore, present applications do not locate instant-messenger conversations over any relevant dynamic, backdrop-content context.
The aforementioned services are of limited help for pre-arrangement of a meeting location. Currently, no application locates instant-messenger conversations within a relevant dynamic, backdrop-content context for arranging the details of rendezvous setting, group events and social meetings. Therefore, there is a need for systems and methods that provide help for arranging meetings dynamically.
Information communication technology operable to provide users with a means for sharing location relevant event (e.g. maps, routes, events, and place recommendations) information and comments is disclosed. The map and event planning information communication technology provides a means for participants to place chat comments on an interactive map that participants can edit and collaboratively work with in order to decide on a suitable meeting location. Embodiments of the invention, allow synchronous conversation (e.g., via text, voice, video, or sound) by providing multiple bubbles from different people to be available on a map simultaneously, thereby allowing meetings to be arranged dynamically.
A first embodiment comprises a map information communication system. The system comprises logic for providing an interactive graphic suitable for presentation on a webpage display, and receiving a first text string from a first user who is one of a plurality of users, wherein the first text string is associated with a first location on the interactive graphic. The system further comprises logic for providing the first text string from the first user to the interactive graphic for presentation on the interactive graphic at the first location on the interactive graphic with which the first text string is associated. The interactive graphic may comprise a map.
A second embodiment of the invention comprises a method for map information communication. The method comprises receiving a first text string from a first user who is one of a plurality of users, and receiving a first location on a graphic for the first text string from the first user. The method further comprises providing the first text string for presentation on an interface at the first location on the graphic.
A third embodiment of the invention comprises a computer-readable medium comprising program code for map information communication. The program code comprises receiving a first text string from a first user who is one of a plurality of users, and receiving a map location for the first text string from the first user. The program code further comprises providing the first text string for presentation on a webpage at a location on an interactive graphic in a relation to the map location.
A fourth embodiment of the invention comprises an interface for presentation on a webpage. The interface comprises an interactive graphic of an area of interest operable for presentation of conversational commentaries in relation to locations on the interactive graphic; and a plurality of commentary submission areas for input of the conversational commentaries.
Further features and advantages of the invention, as well as the structure and operation of various embodiments of the invention, are described in detail below with reference to the accompanying drawings.
The present disclosure, in accordance with one or more various embodiments, is described in detail with reference to the following figures. The drawings are provided for purposes of illustration only and merely depict exemplary embodiments of the disclosure. These drawings are provided to facilitate the reader's understanding of the disclosure and should not be considered limiting of the breadth, scope, or applicability of the disclosure. It should be noted that for clarity and ease of illustration these drawings are not necessarily made to scale.
In the following description of exemplary embodiments, reference is made to the accompanying drawings which form a part hereof, and in which it is shown by way of illustration specific embodiments in which the disclosure may be practiced. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the exemplary embodiments of the invention.
Embodiments of the invention allow participants to place chat comments on an interactive map that participants can edit and collaboratively work with in order to decide on a suitable meeting location. Furthermore, a feature of embodiments of the invention is the information sources from which the chat background is drawn (e.g., dynamic, zoom-able maps with targeted number arrows that link to the corresponding location listing). A further feature is the integration of content from a number of services, and a database of activity and resource selection to provide an asynchronous component to the decision making. Another feature is collaborative production of a meeting place using resources from multiple sources.
A specific content search problem that is solved according to embodiments of the invention is the reduction of effort on the part of the end-users by providing an automatic marshalling of relevant information from various sources into a “mash-up” like visualization. The visualization solves a communication problem by providing a way for people to achieve common ground in a synchronous conversation easily and interactively. Embodiments of the invention provide a framework upon which several commonly used products which are currently separate may be brought together. Specifically, a new integrated communication centered on a focused social interaction that was previously not well supported in the separate tools. Instant messaging and maps are tied together to create an interactive map upon which people post chat messages.
Other related forms of information from other products may also be included to enhance the discussion. For example, further integration can occur with content drawn from Locals and Traffic. In order to provide better support for groups larger than dyads or small groups of friends working synchronously, the embodiments of the invention support creation of an event instance with a map associated and others invited, and recommendations placed on the map asynchronously and selections made later.
The present disclosure is directed toward systems and methods for arranging meetings and events. Embodiments of the invention are described herein in the context of one practical application, namely, arranging a meeting for coffee. Embodiments of the invention, however, are not limited to such coffee meeting applications, and the methods described herein may also be utilized in other applications such as business, sports, or other social meetings. As would be apparent to one of ordinary skill in the art after reading this description, these are merely examples and the invention is not limited to operating in accordance with these examples.
The client 102 comprises a software module that may operate on various devices such as a mobile device such as a cell phone, a desktop computer webpage, overhead monitor, kiosk, or other devices with various forms of display. The client 102 may comprise an interface 108 which includes a map and commentary selection webpage or component 110. The interface 108 is operable to accept user input (via devices such as a mouse, keyboard, or stylus, or via touch screen, or via gestures such as when a user moves her/his mouse or stylus in a predefined way that indicates an input). The component 110 may also change content and/or actions at user specified predefined times. The user can access and manipulate a map and commentary selection webpage 110 as explained in more detail in context with
The client 102 may communicate with the server 104 using suitable communication interfaces via the network 106, such as the Internet. The clients 102 and the server 104 may communicate, in part or in whole, via wireless or hardwired communications, such as an Ethernet, IEEE 802.11b wireless, or the like. Additionally, communication between the client 102 and the server 104 may include various servers such as a mail server, mobile server, and the like.
The server 104 may be programmed to format data, accessed from local or remote databases or other sources of data, for presentation to users 101 of the client 102, for example, in the formats discussed in detail below. The server 104 may utilize various web data interface techniques such as the Common Gateway Interface (CGI) protocol and associated applications (or “scripts”), Java™ “servlets”, e.g., Java™ applications running on the server 104, or the like to present information and receive input from the client 102. The server 104 may be implemented as, for example, a computer program, and may include a web server module, e.g., Apache™ or the like. The server 104, although described herein in the singular, may actually comprise plural computers, programs, devices, backends, and the like, communicating (wired or wireless) and cooperating to perform the functions described herein.
The server 104 can be a centralized facility, or any or all of its various functions can be distributed across a plurality of facilities or locations in a geographically diverse manner. Further, the various functions described herein as attributable to map information communication can be distributed to and among the various facilities the server 104 services. Various elements of the server 104 may communicate in part or in whole via wireless or hardwired communications links, such as an Ethernet, IEEE 802.11b wireless, or the like. Server 104 may include: an instant message (IM) spooler 116 operable to provide instant messages from buddies, a local information database 118, a maps database 120, an instant message bubble generator 122 (buddy bubble), a meta-data generator 124, a map information page generator 126, a search results database 128, and a rendering engine 130.
The instant message spooler 116 is operable to provide instant messages from buddies. Buddies are users selected by a user to have access to maps selected by the user. The instant message spooler 116 is operable to receive instant messages from the buddies and transmit them to the instant message bubble generator 122 for viewing. The message may include text, voice, video, or sound data.
The local information database 118 stores information on, for example, shops, stores, restaurants, and other places where meetings may be held. The information may be locally stored or referenced from other services like yahoo.com, and thereby supporting a collaborative production of a meeting place using resources from multiple data sources.
The maps database 120 stores on-line maps that can be used by the user for reference and discussion with the buddies. The users can use the maps as shared visual spaces. The maps may be typographical, roadmaps, street maps, reference maps, satellite photos, documents, and the like.
The instant message bubble generator 122 receives instant messages from the instant message spooler 116, associates the messages with a map location, stores a log of the messages, and sends the messages to the meta-data generator 124 for preparation for presentation (by the rendering engine 130) as a chat bubble on the map at the map location. The instant message bubble generator 122 may also associate the chat bubble with an icon representing the buddy who sent the message. Users can save a chat session in the instant message bubble generator 122 and share it with others. This save function would happen automatically in chat sessions as users move from one map view to another (as explained in the context of discussion of
The map information page generator 126 can encapsulate map information with interaction display elements suitable for display on a map. For example, a map may be sourced from the maps database 120, which may store a variety of local, regional or other maps, and the map may be encapsulated in an interaction display element such as a box covering the entire area of the map and commentary selection webpage 110. For another example, a “text bubble” data structure may encapsulate map related discussion and data such as timestamps, communication identifiers, geo-position, and map identifiers. For a further example, local information from the locals database 118 such as a local restaurant may be encapsulated with search results 128 from the internet, such as numbers of stars from the Michelin Guide, user generated comments, or on-line traffic data for streets near the restaurant.
The meta-data generator 124 may encapsulate data from the instant message bubble generator 122 and map information page generator 126 into meta-data of map visible structures to show on a map. For example, bubbles, information about local events, local facilities, stores, businesses, places of interest, and the like may be prepared for presentation on the map by meta-data generator 124. The meta-data generator 124 can then send the meta-date to the rendering engine 130 for presentation.
The rendering engine 130 receives meta-data encapsulated and collated from the above sources 116/118/120/122/124/126/128 by the meta-data generator 124, and presents them on the interface 108 of client 102. The rendering engine 130 creates graphical representation on the map (e.g., any “map visible meta-data structure”) that is then associated with the meta-data. The meta-data flows from the server 104 to the client 102 and from the client 102 to the sever 104 via the network 106. For example, the user interface 108 on the client 102 (e.g., on a user's device) communicates the user's interest in a location area to the server 104. The rendering engine 130 registers the selected map location selection(s) when the user activates or clicks on the map, and uses this meta-data to place a bubble which is populated with map discussion contents on the map. The map discussion content may include, without limitation, text, voice, video, or audio data. The audio and video conversations may be performed via video and audio streaming techniques. The rendering engine 130 is between the general data sources 116/118/120/122/124/126/128 and the client 102, and mediates the presentation of the meta-data. It thereby forms a filter on the general data sources to present only the currently relevant information in combination with the user's preferences and interests.
The product identity area 202 identifies the service provider (e.g., Yahoo!™). It may include a trademark or an explanation of services. The product identity area 202 may also identify the user, and provide other service options.
The interactive map display area 204 presents a map showing the location of the meeting place such as a restaurant or shopping center. The interactive map display area 204 may also show approach roads or alternative meeting locations. The interactive map display area 204 includes user and buddy chat bubbles (e.g., buddy chat bubble 212 and user chat bubble 214) as explained below. The interactive map may be dynamically rendered, and furthermore, may be dynamically rendered to show a map area that is under discussion.
The comment log area 206 (also referred as a chat log) lists the comments by the user and any buddies in a time sequential order, such as user comment 208 and buddy comment 210. The user comment 208 and buddy comment 210 duplicate at least a portion of the text included in the user chat bubble 214 and buddy chat bubble 212, respectively. The comment log area 206 appears on the map information communication interface 200 to give a sense of the progression of the conversation between the user and his/her buddies. The user chat bubble 214 is displayed on the interactive map display area 204 pointing to the location of interest on the map, as specified by the user. The user chat bubble 214 also includes a text bubble displaying the text entered by the user, which in this example is “But I like the coffee here”. The buddy chat bubble 212 is also displayed on the interactive map display area 204, and in this example indicates the buddy's preference for the second location. The buddy chat bubble 212 also includes a text bubble displaying the text entered by the buddy, which in this example is “this place looks close to the 101”.
The user and buddies may have the option of displaying subsets of the comments, such as all comments, the last 20 comments, and the like. Participants of the chat can select any comment listed in the comment log area 206. For example, by selecting an earlier comment, the map may zoom to the old conversational location, and the map may present the text bubbles with the earlier comments at the old conversational location. The users can then share the views as described in the context of discussion of
The comments chat log area 302 includes a buddy icon list area 304 which includes visual representations (e.g., icons, photo images, or live videos) chosen by the user and buddies to represent themselves. The comments chat log area 302, presents chat logs/comments from users relative to a particular map location shown in the search results area 306. The search results area 306 provides additional information from the local information database 118 that may be referenced for deciding on a meeting location.
For example, Jane and Joseph are trying to find a place to meet some friends for coffee. They open up the map information communication interface 300 and select a general location. For example, in the search area 311 the search term “San Francisco, Calif.” is entered into a search field 314 and a search is initiated by activating or clicking on the search button 316. Jane is not familiar with the city, but Joseph is. Jane types in “Sushi” in the search window 312 to search the local information database 118, and selects one of the possible locations shown in the search results area 306. For example, she can select a map location A by activating or clicking on the A icon. Once she selects the map location A, the map information communication interface 300 then highlights the map location A on the reviews section (e.g., search results area 306), displays the A icon on the interactive map display area 308, and displays more detail information about the map location A on the detail location information area 320. By activating or clicking on the A icon on the interactive map display area 308, the name of the map location A, for example, “Ta Ta Pizza” can appear on the chat bubble 330.
Joseph may then start typing in an open field 322 “Trust me, this place is great . . . just like NYC”. Then Joseph can submit the text message that he has inserted in the open field 322 by activating or clicking on the submit button 324. Once Joseph submits his comments/text, an icon representing Joseph along with Joseph's comments can be presented on Joseph's comments area 316 on the chat bubble 330. Similarly, Jane can type a response for the same map location A on her map information communication interface 300 (on her client 102 device). For example, Jane can type “It's too close to Fisherman's Wharf”. Once Jane submits her comments/text, an icon representing Jane along with her comments can be presented on the Jane's comment area 318 on the chat bubble 330. Both comments from areas 316 and 318 can also appear on the comments chat log area 302 to indicate what conversation is occurring on the interactive map display area 308.
Conversations are logged in the comments chat log area 302 and persistent so decisions and comments can be “replayed”, and comments can be added as review meta-data to selected locations as explained in the context of
Users can track a history of conversations. For example, Joseph and Jane may chat about map locations A-G as shown on the search results area 306, and can use the scroll bar 303 to scroll up and down in the comments chat log area 302 to see the chat history of the map locations A-G. In another embodiment, a user (Jane/Joseph) can click on a location icon (e.g., icon A) on the interactive map display area 308 to see a chat history of location A appear on the comments chat log area 302.
Users can invite other users (friends/buddies) to join a chat session. For example, in one embodiment, once Joseph and Jane have decided on a location, they can invite their selected buddies to the location, by activating or clicking on the invite button 310. In another embodiment, users can continue inviting friends or a group of friends to participate in the chat by activating or clicking on the invite button 310, thus leaving the map information communication interface 300 to be a further “place” for conversation. The map information communication interface 300 can invite friends/buddies by using the instant message (IM) spooler 116 of system 100 to provide instant messages in the form of invitations to the buddies.
In one embodiment, while friends are chatting about a location on the interactive map display area 308, a user or a plurality of users may want to temporarily navigate away from the current chat session to find other locations on the map and share other map view(s) with the friends.
For sharing the views, a user can redraw an old location and if other users (buddies) accept the redrawing, then various map viewing is possible according to embodiments of the invention: (1) split or stacked panes, (2) zoomed out view with all locations and time stamps, or (3) page views, with one location per screen, but stacked like pages that can be turned through as snapshots in conversational/locational time. Alternatively, other views can be that of traditional television, picture in picture view, and the like.
During a chat session, the initial user and his/her buddy can navigate to different locations on the interactive map display area 308, or even off the interactive map display area 308 by zooming out to a map showing a larger or different area such as the new map view 332. For example, while Joseph (user) and Jane (buddy) are chatting about the map location A, Jane may want to navigate away to find another map location. Jane may then start looking around for a new map location on her map information communication interface 300 on her client device 102. A live icon (not shown in
If Jane finds a new location such as Chinatown, she activates or clicks on her interactive map display area presented on her client 102 device (not shown in
If Joseph, accepts the new map location D, system 100 then registers a new chat location on the interactive map display area 308 for the user (Joseph), fades the existing first chat bubble 330, creates a new chat bubble icon (not shown in
If Joseph doesn't want to change his map view (e.g., interactive map display area 308), he can, for example, type a message to Jane in the comments chat log area 302 (as explained above in the context of discussion of
Alternatively, Joseph may also zoom the map out and find a new location as well. System 100 then sends a request to zoom to Jane in the form of a dialog box. If Jane accepts the new map location, system 100 registers a new location for Jane, fades the chat bubble 330, creates a new chat bubble in the new map location (not shown in
Generally, a hand off action from one user to another is accomplished by clicking/activating “Enter” or “Return” after typing-in text for a chat bubble; activating or clicking (mouse up/down) on the map location; and/or activating or clicking (mouse up/down) on the list of recommended items. If two people are typing at the same time, timestamps may be used to show when the person clicks/activates Enter/Return. According to embodiments of the invention, each chat bubble 330 has a timestamp also, and there may be only one active chat bubble per person on the interactive map display area 204/308 at any given time. Clicking on the interactive map display area 204/308 will result in chat bubbles 212/214/330 appearing coded by color or icon to determine whose chat bubble it is. The icon/colors also should be reflected in the comment chat log area 206/302 so that a correspondence can be established. Selecting a location on the map that is associated with an item on the list of recommended items results in that item being selected and highlighted.
Users (Joseph and Jane) can view a chronological history of the chat(s) for each location. In one embodiment, for example, users can click or activate the chat number 334 of the location icons such as the icon D on the interactive map display area 308 to see a chat history related to Chinatown. In another embodiment, users can view a chronological history of the chats related to a map location by clicking on any of the icons in the chat history area 326. For example, users can activate or click on a chat history icon 336 to see a chat history as related to location A (TaTa Pizza). Users can also scroll to the left and to the right of the chat history area 326 by activating or clicking on buttons 338/340 respectively to see more chat history icons. The chat history, may include, without limitation, time sequence of the chats, history of locations as map view changes, names or identity of user and buddies (who is chatting) from instant message (IM) spooler 116 of system 100, and the like.
Each of systems 100 and 400 unifies the subject of discussion—a dynamic representation of physical space—with the discussion itself. Unifying these pieces of information saves discussion participants effort in relating their discussions to separate sets of content. For a notable example, the spatial representation with the map as the consistent backdrop to all the interactions. Further, addition of locale-based information (café, restaurant, movies) offers opportunities for presenting users and buddies with options that are relevant to the place under discussion to further seed the conversation, and support the collaborative selection of activities. This offers an advantage to advertisers as well as the users and buddies. A mobile smart phone version of this application may use chat over a map to allow better use of the limited space that is available.
Computing system 500 can also include a main memory 508, such as random access memory (RAM) or other dynamic memory, for storing information and instructions to be executed by processor 504. Main memory 508 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 504. Computing system 500 may likewise include a read only memory (“ROM”) or other static storage device coupled to bus 502 for storing static information and instructions for processor 504.
The computing system 500 may also include information storage system 510, which may include, for example, a media drive 512 and a removable storage interface 520. The media drive 512 may include a drive or other mechanism to support fixed or removable storage media, such as a hard disk drive, a floppy disk drive, a magnetic tape drive, an optical disk drive, a CD or DVD drive (R or RW), or other removable or fixed media drive. Storage media 518 may include, for example, a hard disk, floppy disk, magnetic tape, optical disk, CD or DVD, or other fixed or removable medium that is read by and written to by media drive 512. As these examples illustrate, the storage media 518 may include a computer-readable storage medium having stored therein particular computer software or data.
In alternative embodiments, information storage devices 510 may include other similar components for allowing computer programs or other instructions or data to be loaded into computing system 500. Such components may include, for example, a removable storage unit 522 and a storage unit interface 520, such as a program cartridge and cartridge interface, a removable memory (for example, a flash memory or other removable memory module) and memory slot, and other removable storage units 522 and interfaces 520 that allow software and data to be transferred from the removable storage unit 518 to computing system 500.
Computing system 500 can also include a communications interface 524. Communications interface 524 can be used to allow software and data to be transferred between computing system 500 and external devices. Examples of communications interface 524 can include a modem, a network interface (such as an Ethernet or other NIC card), a communications port (such as for example, a USB port), a PCMCIA slot and card, etc. Software and data transferred via communications interface 524 are in the form of signals which can be electronic, electromagnetic, optical, or other signals capable of being received by communications interface 524. These signals are provided to communications interface 524 via a channel 528. This channel 528 may carry signals and may be implemented using a wireless medium, wire or cable, fiber optics, or other communications medium. Some examples of a channel include a phone line, a cellular phone link, an RF link, a network interface, a local or wide area network, and other communications channels 528 to perform features or functions of embodiments of the invention. Note that the code may directly cause the processor to perform specified operations, be compiled to do so, and/or be combined with other software, hardware, and/or firmware elements (e.g., libraries for performing standard functions) to do so.
If the user has more comments 611 in response to the feedback from the buddy, then process 600 leads back to task 608, otherwise the users decide on a location. Once the users decide on a location, they can invite their selected buddies to the location. The map information communication process 600 receives the location selection (task 612), and sends an invitation to selected buddies (task 614), leaving the map to be a further “place” for conversation. The conversations are logged, as explained above in the context of
Process 700 may start by activating the map information communication system (task 702) and selecting a general location of interest on the map (task 704, also see task 604 in
Process 700 then selects a second user (“buddy” in
Process 700 then populates a chat bubble on the map with comments from the first user (user) (task 716, also see task 608 in
Process 700 may then receive synchronous feedback comments from the second user (buddy) (task 726, also see task 610 in
For example, after task 724, process 700 may hand off (as explained above) the map chatting to the second user (buddy) client interface. Handing-off the map chatting to the second user client interface comprises rendering a map and recommendation list, and opening an instant messaging chat entry box and log. The second user (buddy) reviews the location and chat text entered by the first user (user), and replies, for example, by typing a reply text. Process 700 then generates a bubble for the second user (buddy), second user (buddy) hits enter, and process 700 places text in instant messaging text log and in the chat bubble icon of second user (buddy).
The first and second users may continue choosing new map locations and engaging in the chat session (not shown in
Although embodiments of the invention are described herein in terms of map information communication, it should be understood that the present disclosure is not limited to map information communication, but is generally applicable to community communication. The embodiments of the invention are not limited to maps, they may apply to, for example, digital photographs, spreadsheet, and the like. Furthermore, although the present disclosure has been fully described in connection with embodiments thereof with reference to the accompanying drawings, it is to be noted that various changes and modifications will become apparent to those skilled in the art. Such changes and modifications are to be understood as being included within the scope of the present disclosure as defined by the appended claims.
While various embodiments of the invention have been described above, it should be understood that they have been presented by way of example only, and not of limitation. Likewise, the various diagrams may depict an example architectural or other configuration for the disclosure, which is done to aid in understanding the features and functionality that can be included in the disclosure. The disclosure is not restricted to the illustrated example architectures or configurations, but can be implemented using a variety of alternative architectures and configurations. Additionally, although the disclosure is described above in terms of various exemplary embodiments and implementations, it should be understood that the various features and functionality described in one or more of the individual embodiments are not limited in their applicability to the particular embodiment with which they are described, but instead can be applied, alone or in some combination, to one or more of the other embodiments of the disclosure, whether or not such embodiments are described and whether or not such features are presented as being a part of a described embodiment. Thus the breadth and scope of the present disclosure should not be limited by any of the above-described exemplary embodiments.
In this document, the term “module” as used herein, refers to software, firmware, hardware, and any combination of these elements for performing the associated functions described herein. Additionally, for purpose of discussion, the various modules are described as discrete modules; however, as would be apparent to one of ordinary skilled in the art, two or more modules may be combined to form a single module that performs the associated functions according embodiments of the invention.
In this document, the terms “computer program product”, “computer-readable medium”, and the like may be used generally to refer to media such as, for example, memory 508, storage devices 510, or storage unit 522. These and other forms of computer-readable media may be involved in storing one or more instructions for use by processor 504 to cause the processor 504 to perform specified operations. Such instructions, generally referred to as “computer program code” (which may be grouped in the form of computer programs or other groupings), when executed, enable the computing system.
It will be appreciated that, for clarity purposes, the above description has described embodiments of the invention with reference to different functional units and processors. However, it will be apparent that any suitable distribution of functionality between different functional units, processors or domains may be used without detracting from the invention. For example, functionality illustrated to be performed by separate processors or controllers may be performed by the same processor or controller. Hence, references to specific functional units are only to be seen as references to suitable means for providing the described functionality, rather than indicative of a strict logical or physical structure or organization.
Terms and phrases used in this document, and variations thereof, unless otherwise expressly stated, should be construed as open ended as opposed to limiting. As examples of the foregoing: the term “including” should be read as mean “including, without limitation” or the like; the term “example” is used to provide exemplary instances of the item in discussion, not an exhaustive or limiting list thereof; and adjectives such as “conventional,” “traditional,” “normal,” “standard,” “known” and terms of similar meaning should not be construed as limiting the item described to a given time period or to an item available as of a given time, but instead should be read to encompass conventional, traditional, normal, or standard technologies that may be available or known now or at any time in the future. Likewise, a group of items linked with the conjunction “and” should not be read as requiring that each and every one of those items be present in the grouping, but rather should be read as “and/or” unless expressly stated otherwise. Similarly, a group of items linked with the conjunction “or” should not be read as requiring mutual exclusivity among that group, but rather should also be read as “and/or” unless expressly stated otherwise. Furthermore, although items, elements or components of the disclosure may be described or claimed in the singular, the plural is contemplated to be within the scope thereof unless limitation to the singular is explicitly stated. The presence of broadening words and phrases such as “one or more,” “at least,” “but not limited to” or other like phrases in some instances shall not be read to mean that the narrower case is intended or required in instances where such broadening phrases may be absent. The use of the term “module” does not imply that the components or functionality described or claimed as part of the module are all operable in a common package. Indeed, any or all of the various components of a module, whether control logic or other components, can be combined in a single package or separately maintained and can further be distributed across multiple locations.
Additionally, memory or other storage, as well as communication components, may be employed in embodiments of the invention. It will be appreciated that, for clarity purposes, the above description has described embodiments of the invention with reference to different functional units and processors. However, it will be apparent that any suitable distribution of functionality between different functional units, processing logic elements or domains may be used without detracting from the invention. For example, functionality illustrated to be performed by separate processing logic elements or controllers may be performed by the same processing logic element or controller. Hence, references to specific functional units are only to be seen as references to suitable means for providing the described functionality, rather than indicative of a strict logical or physical structure or organization.
Furthermore, although individually listed, a plurality of means, elements or method steps may be implemented by, for example, a single unit or processing logic element. Additionally, although individual features may be included in different claims, these may possibly be advantageously combined, and the inclusion in different claims does not imply that a combination of features is not feasible and/or advantageous. Also, the inclusion of a feature in one category of claims does not imply a limitation to this category, but rather the feature may be equally applicable to other claim categories, as appropriate.
O'Sullivan, Joseph, Churchill, Elizabeth F., Goodman, Elizabeth
Patent | Priority | Assignee | Title |
10331863, | Oct 02 2012 | Banjo, Inc. | User-generated content permissions status analysis system and method |
10360352, | Oct 02 2012 | Banjo, Inc | System and method for event-based vehicle operation |
10375129, | Jun 17 2014 | Microsoft Corporation | Facilitating conversations with automated location mapping |
10678815, | Oct 02 2012 | Banjo, Inc. | Dynamic event detection system and method |
10824687, | Jun 13 2012 | Sony Corporation | Information processing apparatus, information processing method and program |
11490232, | Aug 01 2016 | Microsoft Technology Licensing, LLC | Location-based conversation identifier |
11902287, | Mar 18 2015 | Snap Inc. | Geo-fence authorization provisioning |
12127068, | Jan 12 2014 | Investment Asset Holdings LLC | Map interface with icon for location-based messages |
8521679, | Dec 20 2010 | R2 SOLUTIONS LLC | Classification recommendation based on social actions |
9098590, | Jul 14 2008 | GOOGLE LLC | Content item selection |
9262058, | Feb 26 2013 | BlackBerry Limited | System and methods for navigating social networks |
9495128, | May 03 2011 | International Business Machines Corporation | System and method for simultaneous touch and voice control |
9881179, | Oct 02 2012 | Banjo, Inc | User-generated content permissions status analysis system and method |
ER1815, | |||
ER5285, | |||
ER8696, | |||
ER9262, |
Patent | Priority | Assignee | Title |
20070192168, | |||
20070288164, | |||
20080086368, | |||
20090041227, | |||
20090288012, |
Date | Maintenance Fee Events |
Apr 29 2016 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Jul 06 2020 | REM: Maintenance Fee Reminder Mailed. |
Nov 06 2020 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Nov 06 2020 | M1555: 7.5 yr surcharge - late pmt w/in 6 mo, Large Entity. |
Jul 01 2024 | REM: Maintenance Fee Reminder Mailed. |
Dec 16 2024 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Nov 13 2015 | 4 years fee payment window open |
May 13 2016 | 6 months grace period start (w surcharge) |
Nov 13 2016 | patent expiry (for year 4) |
Nov 13 2018 | 2 years to revive unintentionally abandoned end. (for year 4) |
Nov 13 2019 | 8 years fee payment window open |
May 13 2020 | 6 months grace period start (w surcharge) |
Nov 13 2020 | patent expiry (for year 8) |
Nov 13 2022 | 2 years to revive unintentionally abandoned end. (for year 8) |
Nov 13 2023 | 12 years fee payment window open |
May 13 2024 | 6 months grace period start (w surcharge) |
Nov 13 2024 | patent expiry (for year 12) |
Nov 13 2026 | 2 years to revive unintentionally abandoned end. (for year 12) |