Benefit is claimed under 35 U.S.C. 119(a) to Indian Provisional Patent Application Serial No. 4026/CHE/2015 entitled “CONTEXTUAL CONTENT SHARING USING CHAT AS A CONVERSATION MEDIUM IN REAL-TIME ASYNCHRONOUS COLLABORATION” by ITTIAM SYSTEMS (P) LTD, filed on Aug. 3, 2015.
The present disclosure generally relates to content sharing, and particularly to contextual content sharing using chat as a conversation medium in real-time asynchronous collaboration.
With advancement of technology, streaming and sharing content (e.g., voice, video, text, image content, and the like) has significantly increased. Typically, content may be shared using an asynchronous method or a synchronous method. In asynchronous method, the content can be shared between users regardless of whether the users are currently online or offline Example asynchronous content sharing may include sending e-mail with attachments, sharing the content and comments over social networking application (e.g., Facebook and messaging application), and the like. In these applications, a user can access the shared content at available time, however, the context of the shared content may be lost or require some overhead to bring the context of the shared content.
In synchronous method, the content may be shared between users who are simultaneously online. Example synchronous content sharing may include applications such as Cisco's webex application. In this application, the online users who are in conversation may get the complete context of the shared content with less overhead. However, this method involves the logistics of finding people (i.e., online users) to be available at the same time (e.g., especially in consumer centric scenarios). As a result, although some applications may achieve a user experience over synchronous ways of sharing content, they may not be as popular as the asynchronous way of sharing the content.
Embodiments described herein may provide a contextual content sharing using chat as a conversation medium, for instance, asynchronous collaboration. Example content may include digital content such as voice, video, text, image, music, maps, graphics content (e.g., games), documents (e.g., PDF and word) and the like. Upon sharing the content, the users may start to converse about the shared content. For example, the conversation may be accomplished using conversation medium such as text messages (e.g., chat messages), voice tags, gestures, doodle, and the like. Used herein, the user may be an administrator, a participant, a host, an online user, and/or an active user. The term “administrator” may refer to a user who creates an entry of users into the group which will converse in the asynchronous/synchronous manner. The term “participant” may refer to a user who is part of the group that administrator created or may add at a later point in time. The term “host” may refer to a user whoever recently adds a content to the sharing mechanism at any given point in time and continues as the host until another user adds another content. The term “online user” may refer to a user who is online as far as the application is concerned (i.e., the service can delivery messages/notification to user). The term “active user” may refer to a user who is active if he/she is on the activity of interest (i.e., not just active on the application, but seeing the activity of interest, say a picture or a video or a music/speech). The term “offline user” may refer to a user who is offline either if he/she has logged off or if he/she is not connected to the network from the application.
In asynchronous content sharing, content can be shared between users regardless of whether the users are currently online or offline. Example asynchronous content sharing may include e-mail with attachments, sharing the content and comments over social networking application (e.g., Facebook and messaging application), and the like. Active users may send messages (e.g., chat) corresponding to the content that is shared by the host. When an online user (who is offline at the time of sharing) accesses/receives the shared content, the online user may lose the context of the shared content or require some overhead to bring the context of the shared content.
Examples described herein may provide a system technique and a method for contextual content sharing using a conversation medium in asynchronous collaboration. The conversation medium may include chat messages, comments, or voice tags that may be coupled/tagged with a shared content, such that users may get the context of the tags associated with the shared content regardless of whether the users are currently online or offline. For example, a “user A” may tag a message with the content (e.g., while watching a video/seeing a picture). The tagging may be made, e.g., at a particular point in a frame of the image or at a particular time of playback of a video file. In another example, the image may be the content and chat messages may be the conversation medium. Example content may also include graphics, video, music, speech, maps, documents, and the like. Example tagging may also include conversation medium such as text messages, voice tags, gestures, doodle, and the like.
When the host sends/shares a picture (e.g., PIC 1) to at least one user (e.g., active user, online user and offline user), the devices of the active users may display the shared picture (e.g., PIC 1) as a background picture in full-screen mode. In another example, the background picture of the users may remain unchanged until the active/online users receive a message (e.g., MSG-1) that is associated with the shared picture (e.g., PIC 1). At this instance, only an indication may be shown with the message (e.g., MSG-1) that a new picture (e.g., PIC 1) has been added by the host to the users.
Each of the participants (i.e., users) may have the flexibility to change the current picture (i.e., background picture) that they are viewing despite their screen showing the latest added picture from the host. However, the context/synch of chat messages associated with the shared picture, may be accomplished as follows:
For the aforementioned example, consider a user D in the group is offline when the other users (i.e., A, B and C) of the group 1 are simultaneously online. Thereby, the offline user D behavior may be given as follows:
Referring to
In operation, the contextual content sharing modules 106A-N may enable contextual content sharing using chat as a conversation medium in asynchronous collaboration. For example, one participating end-point (e.g., communication device 102A) can act as a transmitting device to send/share images through the contextual content sharing module 106A and the other participating endpoint(s) 1026-N can act as receiving devices to receive the shared images through respective contextual content sharing modules 1066-N. The example operation of contextual content sharing module at the transmitting end and at the receiving end is described with respect to
Referring now to
The contextual content sharing module 106 may perform the contextual content sharing using the PPT block 202 and the MPT block 204 at the transmitting end, and the PRP block 206 and the MRP block 208 at the receiving end. The example operation of PPT block 202 and the MPT block 204 at the transmitting end is described with respect to
The PPT block 202 may generate and associate a unique identifier with a first content (e.g., audio, video, text, and/or image content) to be shared with at least one recipient device. Further, the PPT block 202 may share the first content to the at least one recipient device, for instance, in a group conversation medium. For example, the first content can be shared to the at least one recipient device either by uploading the content to a cloud storage and sharing a uniform resource locator (URL) of the stored content with the at least one recipient device, or directly transferring the content to the at least one recipient device over the internet. Example implementation of the functions of the PPT block 202 is explained in conjunction with
The MPT block 204 may associate at least one first message (e.g., chat message) to the first content using the unique identifier associated with the content and share the at least one first message and the unique identifier to the at least one recipient device to provide the contextual content sharing of the at least one message. Example implementation of the functions of the MPT block 204 is explained in conjunction with
Furthermore, the PRP block 206 may receive second content (e.g., audio, video, text, and/or image content) from the at least one recipient device. In one example, the second content may include a modified version of the first content, the modified version may include editing functions selected from a group consisting of doodling, pointer with zoom, pan, and/or rotate features on the first content. In this case, the PRP block 206 may receive the modified version of the first content as a new content with a different unique identifier or as the first content having the same unique identifier along with the editing functions. The computing device may include a database to store the first content, the second content and unique identifiers associated with the first content and the second content for later use. Example implementation of the functions of the PRP block 206 is explained in conjunction with
The MRP block 208 may receive at least one second message (e.g., chat message) and a unique identifier associated with the second content from the at least one recipient device. Further, the MRP block 208 may associate the at least one second message with the second content using the unique identifier. In one example, the MRP block 208 may associate the at least one second message with the second content by extracting thumbnail associated with the second content using the unique identifier associated with the second content.
Then, the MRP block 208 may render the at least one second message and associated second content on a display of the computing device. In one example, the MRP block 208 may render the at least one second message with the extracted thumbnail substantially simultaneously. The at least one first message, an associated thumbnail of the first content, the at least one second message and the associated thumbnail of the second content are displayed on a display of the computing device. Example implementation of the functions of the MRP block 208 is explained in conjunction with
In one example, thumbnails associated with the first content and the second content may be displayed substantially adjacent to the at least one first message and the at least one second message to provide a context of the at least one first message and the at least one second message. Each thumbnail may indicate a content that a user of a computing device and the at least one recipient device is viewing when the at least one first message and the at least one second message was shared, respectively. Further, the MRP block 208 may render second content associated with the extracted thumbnail as a background on a user interface (e.g., user interface 700A as shown in
In another example, the MRP block 208 may render a set of thumbnails on a user interface. For example, the user interface may display a set of thumbnails and messages that may be shared in the group conversation medium without being associated with any content. Each thumbnail may be associated with a different content shared in a group conversation medium. The MRP block 208 may prompt a user to select one of the set of thumbnails on the user interface. The MRP block 208 may display a set of messages associated with the selected one of the thumbnails along with the content associated with the selected one of the thumbnails on the user interface (e.g., user interface 800B as shown in
The PTGB 306 may receive the hash-map from the PIDGB 302. Further, the PTGB 306 may create a picture tag based on the hash map and associates the picture tag with the corresponding picture 310A-310N. In one example, the picture tagging may be done as a single package as illustrated above or as a secondary channel referring to the corresponding picture. Further, the PTB block 308 may transfer the packaged/tagged picture to the receiving ends over the internet 312. In one example the picture may be uploaded to a cloud storage that either belongs to the user or to service provider (not shown in
For example, during group interaction, users of electronic devices may transmit communications that are shared among the electronic devices. For example, group interaction may correspond to a chat session, video chat session, message (e.g., text message, microblog, forum post, etc.) thread, content-sharing service, social networking service, and/or other network-based communication mechanism used by electronic devices. In addition, the users may use group interaction to share content (e.g., content 1, content 2, and the like) with one another. For example, one or more users may upload images, audio, video, documents, files, and/or other content to the group to share the content with other users in group interaction.
Further, the MPTGB 504 may receive the current messages being typed by the user, and then may allocate a unique ID to the typed message, and perform a look-up of the picture ID associated with the picture that the PVF 502 conveyed. Furthermore, the MPTGB 504 may create a hash-map of message (e.g., MSG1 to MSGN) with a corresponding picture ID (PID-1 to PID-N). For the above example, the active user B may respond to the shared picture 310A by typing a message 510B, at this time the background picture of the active user B is the transmitted picture 301A (having unique identity PID-1). In this case, the message 510B is mapped with the picture 310A using the unique identifier PID 1 so as to indicate that active user B is viewing the picture 310A and sending messages associated with the picture 310A.
Furthermore, the MTB 508 may receive the tagged message with the corresponding picture from the MPTGB 504, and send the tagged message along with the picture ID over the internet 312. The message may be transferred to the participants directly or via a cloud based server. In one example, the MTB 508 may also associate a small thumbnail representation of the picture 310A as part of the message MSG-1 (i.e., 510A) either packed or as a secondary channel and transmits the packed message with the thumbnail to the Internet 312. Appending the small thumbnail representation may ensure a good user experience on the receiver side, thereby the message may be displayed with the small thumbnail (low quality) until the actual high quality picture arrives through the picture transmission and receive block (PPT block 202 at the transmitting end and PRP block 206 at the receiving end) and then get associated with the corresponding message. In one example, each thumbnail may be a representation of different content (e.g., photo) that users shared in a group conversation medium.
Further, the MUTPLB 604 may un-pack the packed message to get the message body 510A-510N and the corresponding picture identity PID-1 to PID-N. Furthermore, the MUTPLB 604 may create a hash-map of the messages 510A-510N and the corresponding picture identities PID-1 to PID-N. The DB 606 may store the hash-map created by the MUTPLB 604 for later use. The PMAB 608 may receive the arrived messages 510A-510N and the picture identities PID-1 to PID-N from the MUTPLB 604. Furthermore, the PMAB 608 may associate the arrived messages 510A-510N and the picture identities PID-1 to PID-N, so as to display a message and a picture that correspond to a picture identity.
In one example, consider a message (MSG-1) 510A corresponds to picture identity PID-1 of picture 310A, received by the active/online user. The PMAB 608 may receive message (MSG-1) 510A and picture identity PID-1 from MUTPLB 604. Further, the PMAB 608 may display the message (MSG-1) 510A on the received picture 310A which is the current background picture. After sometime, another message (MSG-2) 510B may be sent by a same/different host, the message (MSG-2) 510B may correspond to a different picture 310B shared by the same/different host. The MUTPLB 604 may send message (MSG-2) 510B and picture identity PID2 to the PMAB 608. In this case, the PMAB 608 may display message (MSG-2) 510B on picture 310A that was being displayed as background, with an indicator (e.g., thumbnail 6108) or link on the message (MSG-2) 510B to show that the message 510B actually belongs to a different picture 310B instead of current background picture 310A. The user then has a choice to click on the indicator, which may trigger the following sequence of events.
In another example, the messages that arrive, which do not belong to the picture the user is seeing are just put into buckets associated with that particular picture and not displayed to the user chronologically. In this case, all the messages associated with each picture gets displayed whenever the user changes the picture without ensuring order of arrival (chronological order) of the messages across images.
Apart from the pictures/images and messages, the contextual content sharing module 106 can have an additional editing functions such as doodling or pointer with optional zoom, pan, and rotate features for the content. In one example, the edited image is saved as a completely new image and sent across as if it was a new image with a new picture/image ID. In another example implementation, only the edit functions (like co-ordinates of the doodle or pointer and the zoom or pan or rotate factor, etc.) may be sent across to the participants/recipients with an association of the original image ID so that the recipients can regenerate the experience that the sender is experiencing.
The active users 702B and 702C may view the picture 704A as the background picture at the receiving ends, when the active users 702B and 702C click either the message 706A or the thumbnail 708A. Till the active users 702B and 702C view the picture 704A as the background picture, the chat messages (706G, 7060 and 706E) sent by the active users 702B and 702C may be appended with the thumbnail 708A. Further in the example shown in
The active users 802B and 802C may view the first content at the receiving ends, when the active users 802B and 802C click the thumbnail 806A. Till the active users 802B and 802C view the first content as a main content on the user interface, the chat messages (e.g., 854B, 854C, and 854E) sent by the active users 802B and 802C may be classified and put into the thumbnail 806A. In one example, when the user of the host 802A selects a thumbnail 806A, then the messages 854A, 854B, 854C, and 854E associated with the selected thumbnail 806A (e.g., messages related to the shared first content 808) that were shared in the group may be displayed along with the content 808 on the user interface 800B. Similarly, the chat messages corresponding to a second content (e.g., indicated by thumbnail 806B) that are sent by users in the group may be classified and put into the thumbnail 806B and can be displayed upon selecting the thumbnail 806B.
Particularly,
At 904, the content may be shared to the at least one recipient device by the contextual content sharing module. At 906, at least one message (e.g., chat message) associated with the content may be tagged to the unique identifier associated with the content by the contextual content sharing module. At 908, the at least one tagged message and the unique identifier may be shared to the at least one recipient device by the contextual content sharing module to provide the contextual content sharing of the messages. Further, a user of the transmitting device may have an option to send an alert to the at least one recipient device to change a background content for the at least one recipient device to the shared content.
At 958, the at least one tagged message and the unique identifier may be received by the at least one recipient device. At 960, the at least one tagged message may be associated with the content stored in the database based on the unique identifier by the contextual content sharing module residing in the at least one recipient device. In one example, a thumbnail associated with the content may be extracted from the database based on the unique identifier and then the at least one tagged message may be associated with the extracted thumbnail.
At 962, the at least one tagged message and associated content may be rendered on a display of the at least one recipient device by the contextual content sharing module residing in the at least one recipient device. In one example, the at least one message along with the extracted thumbnail of the shared content may be rendered on the display of the at least one recipient device. For example, a thumbnail may represent a content that a user of a recipient device is viewing when the messages were shared in the group conversation medium.
In one example, messages and associated unique identifiers may be received from the at least one recipient device in the group conversation medium (e.g., group chat). Further, thumbnails associated with the content may be extracted from a database based on the unique identifiers. In this case, the database may include content and unique identifiers associated with each content that were previously shared in the group conversation medium. Furthermore, the messages may be displayed with thumbnails substantially adjacent to the messages from the at least one recipient device. Also, the content associated with a thumbnail can be rendered as a background on the at least one recipient device upon selecting the thumbnail or message associated with the thumbnail.
In another example, messages and associated unique identifiers may be received from the at least one recipient device in the group conversation medium. The messages may be classified into a set of thumbnails based on the unique identifiers associated with the content. Each thumbnail may indicate content that a user of a recipient device is viewing when the messages were shared in the group conversation medium. The set of thumbnails may be rendered on a user interface of a computing device (e.g., transmitting or recipient device). Furthermore, a user may be prompted to select one of the set of thumbnails. Upon selecting the one of the set of thumbnails, the messages associated with the selected one of the thumbnails may be displayed along with the content associated with the selected one of the thumbnails.
Machine-readable storage medium 1004 may store instructions 1006-1010. In an example, instructions 1006-1010 may be executed by processor 1002 to provide a contextual content sharing in a group conversation medium. The group conversation medium may be a synchronous conversation medium, asynchronous conversation medium or a combination thereof. The asynchronous conversation medium is a medium in which an interaction is performed without requiring other users of the electronic devices to be online, and the synchronous conversation medium is a medium in which an interaction is performed between the online and active users.
Instructions 1006 may be executed by processor 1002 to receive at least one message (e.g., chat message) and a unique identifier associated with content (e.g., audio, video, text, and/or image content) from the at least one electronic device participating in the group conversation medium. Instructions 1008 may be executed by processor 1002 to identify the content associated with the at least one message by comparing the received unique identifier with a database. For example, the database may include content and unique identifiers associated with the content that were previously shared in the group conversation medium. Instructions 1010 may be executed by processor 1002 to render the at least one message and the identified content on a display of the electronic device.
Also, although certain terms are used primarily herein, other terms could be used interchangeably to yield equivalent embodiments and examples. For example, the term “device” may be used interchangeably with “physical host”, “physical machine”, “physical device”, or “communication device”. Further for example, the terms “host”, “transmitting device” and “sender” may be used interchangeably throughout the document. Furthermore, the terms “client”, “recipient device”, and “receiver” may be used interchangeably throughout the document. The terms “image”, and “picture” may be used interchangeably throughout the document.
It may be noted that the above-described examples of the present solution are for the purpose of illustration only. Although the solution has been described in conjunction with a specific example thereof, numerous modifications may be possible without materially departing from the teachings and advantages of the subject matter described herein. Other substitutions, modifications and changes may be made without departing from the spirit of the present solution. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and/or all of the steps of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and/or steps are mutually exclusive.
The terms “include,” “have,” and variations thereof, as used herein, have the same meaning as the term “comprise” or appropriate variation thereof. Furthermore, the term “based on”, as used herein, means “based at least in part on.” Thus, a feature that is described as based on some stimulus can be based on the stimulus or a combination of stimuli including the stimulus.
The present description has been shown and described with reference to the foregoing examples. It is understood, however, that other forms, details, and examples can be made without departing from the spirit and scope of the present subject matter that is defined in the following claims.
Number | Date | Country | Kind |
---|---|---|---|
4026/CHE/2015 | Aug 2015 | IN | national |