The systems and methods disclosed herein relate to Instant Messaging (IM) systems and in particular to configurable IM systems.
Current IM solutions offer one-to-one and group chat features. In a typical group chat, different topics are discussed. As a result, conversations on the different topics become intermixed within the IM session. This makes it difficult to follow a transcript of the IM session because a particular topic may be fragmented throughout the IM session. If a person wants to review a specific topic in the IM session, the person has to search through the whole transcript and pick out specific conversations on the topic of interest. This can be cumbersome if the transcript is long and there are numerous different topics discussed in the IM session.
Systems and methods are provided to solve these and other problems and disadvantages of the prior art. To discuss multiple topics separately in an electronic chat session, a request to discuss one or more topics in the electronic chat session is detected. In response to detecting the request to discuss the one or more topics in the electronic chat session, a sub-chat session for each of the one or more topics is created within the electronic chat session. Information associated with each sub-chat session is sent to the participants of the electronic chat session. This allows each participant to chat separately on each topic via the separate sub-chat sessions; thus, creating an individual transcript for each topic.
The communication device 101 can be or may include any device that can communicate on the network 110, such as a Personal Computer (PC), a telephone, a video system, a cellular telephone, a Personal Digital Assistant (PDA), a tablet device, a notebook device, a smart phone, and/or the like. As shown in
The network 110 can be or may include any collection of communication equipment that can send and receive electronic communications, such as the Internet, a Wide Area Network (WAN), a Local Area Network (LAN), a Voice over IP Network (VoIP), the Public Switched Telephone Network (PSTN), a packet switched network, a circuit switched network, a cellular network, a combination of these, and the like. The network 110 can use a variety of electronic protocols, such as Ethernet, Internet Protocol (IP), Session Initiation Protocol (SIP), Integrated Services Digital Network (ISDN), Instant Messaging (IM) protocols, text messaging protocols, Hypertext Transfer Protocol (HTTP), and/or the like. Thus, the network 110 is an electronic communication network that allows for sending of messages via packets and/or circuit switched communications.
The communication system 120 can be or may include any hardware/software that can manage communications on the network 110, such as, a Private Branch Exchange (PBX), a router, an IM server, an IM router, a chat server, a text messaging server, and/or the like. The communication system 120 further comprises a chat server 121, a chat monitor 122, a network interface 123, and a web server 124.
The chat server 121 can be or may include any software/hardware that can manage chat communications on the network 110, such as an IM server, a text messaging server, and/or the like. The chat server 121 can manage chat communications between the communication devices 101A-101N. A chat communication can be or may include an IM communication, a text communication, and/or the like. In one embodiment, the chat server 121 may be on a communication device 101 or distributed between the communication system 120 and a communication device 101.
The chat monitor 122 can be or may include any hardware/software that can monitor communications in a chat session. For example, the chat monitor 122 can monitor a chat session for keywords. In one embodiment, the chat monitor may 122 be on a communication device 101 or distributed between the communication system 120 and the communication device 101.
The network interface 123 is a hardware interface for communicating on the network 110, such as an Ethernet interface, a fiber optic interface, a wireless interface, an ISDN interface, and/or the like. In one embodiment, the network interface may be in a communication device 101. For example, the chat server 121, the chat monitor 122, the network interface 123, and optionally the web server 124 may all reside in the communication device 101. In this embodiment, the communication device 101 works in a peer-to-peer configuration.
The web server 124 can be or may include any hardware/software that can provide web services to the communication devices 101A-101N. For example, the web server 124 can provide an electronic chat session between the communication devices 101A-101N. In one embodiment, the web server 124 is on a separate server from the communication system 120.
The chat session window 200 comprises a text message send box 201, a text message send button 202, a define topic button 203, and a chat message area 206. The new topic window 210 comprises a cancel button 211, an add button 212, and an enter topic message box 213. The sub-chat session window 220 comprises sub-chat message areas 221A-221C, a text message send button 222, a text message send box 223, topic selection buttons 224A-224C, a new topic button 225, and a chat message area 227. The topic selection buttons 224A-224C are based on defined topics, in this example, for the topics: 1) project updates, 2) project timeline, and 3) organizational updates. The sub-chat message areas 221A-221C further comprises add/remove participant buttons 226A-226C.
The windows 200, 210, and 220 of
The process starts when an electronic chat session is established, by the chat server 121, via the network 110, between two or more (a plurality) participants at the communication devices 101A-101N. This brings up the chat session window 200. In this exemplary embodiment, the chat session window 200 displays an electronic chat session between three participants: 1) John (who is the moderator), 2) Sally, and 3) Fred. The electronic chat session is displayed in the chat message area 206. The electronic chat session displayed in
The chat monitor 122 detects a request to discuss a topic in the electronic chat session. The chat monitor 122 can detect a request to discuss a topic(s) in the electronic chat session in various ways. For example, the chat monitor 122 can detect a keyword or phrase in the electronic chat session. In
Alternatively, the chat monitor 122 can detect a request to discuss the topic in the electronic chat session based on the participant (John the moderator) clicking on a button or menu. In this example, the participant can click on the define topic button 203 in step 204. When the participant clicks on the define topic button 203 in step 204, the new topic window 210 is displayed to the participant. The participant can then enter the topic in the enter topic message box 213 and click on the add button 212 to bring up the sub-chat session window 220 in step 214. The new topic window 210 is one of many ways that would be obvious to one of skill in the art to enter one or more topics. For example, the participant may be able to add multiple topics in the new topic window 210. Alternatively, the participant may cancel defining a topic for the electronic chat session by clicking on the cancel button 211.
In another embodiment, the chat monitor 122 can detect a request to discuss the topic in the electronic chat session based on another participant sending a request in the electronic chat session to discuss a topic(s). For example, the chat monitor 122 can detect a message from another participant based on a keyword in an individual chat from one of the other participants in the electronic chat session. The moderator can then approve the request to discuss the topic(s).
When the chat monitor 122 detects the request to discuss the topic in the electronic chat session, the chat server 121 creates one or more sub-chat sessions based on the topic(s). In this example, the chat monitor 122 creates sub-chat sessions for each topic (three sub-chat sessions). The three sub-chat sessions are shown in the sub-chat session window 220. In this embodiment, the three sub-chat sessions are created using the same participants (John, Sally, and Fred) that were in the electronic chat session. However, in other embodiments, the moderator (John) can determine which of the other participants may be included in the individual ones of the sub-chat sessions. For example, John may exclude Fred from the sub-chat session for organizational updates.
The sub-chat session window 220 shows the original electronic chat session (in chat message area 227) and the three sub-chat sessions for the three topics in the sub-chat message areas 221A-221C. The first sub-chat session for the project updates sub-chat session is displayed in the sub-chat message area 221A. The second sub-chat session for the project timeline sub-chat session is displayed in the sub-chat message area 221B. The third sub-chat session for the organizational updates sub-chat session is displayed in the sub-chat message area 221C.
The participants can select a topic to chat on with other participants in various ways. In this embodiment, the participant can select one of the topic selection buttons 224A-224C to select a particular sub-chat session. Alternatively, the participant may click on one of the sub-chat message areas 221A-221C to select a particular topic to converse with the other participants. In this illustrative example, the participant has selected the organizational updates sub-chat session (indicated by the grey background). To send a chat on the organizational updates sub-chat session (the currently selected sub-chat session), the participant can enter text in the text message send box 223 and click on the text message send button 222.
If a particular participant wants to send a chat on the project updates sub-chat session, the participant can select the topic selection button 224A to select the project updates sub-chat session. The participant can then enter text in the text message send box 223 and click on the text message send button 222 to send a chat for the project updates sub-chat session. Likewise, the participant can select the topic selection button 224B to select the project timeline sub-chat session. The participant can then enter text in the text message send box 223 and click on the text message send button 222 to send a chat for the project timeline sub-chat session.
A new participant can be added to a sub-chat session by clicking on the add/remove participant buttons 226A-226C for each respective sub-chat session. For example, John can add a new participant (Jane) to the project timeline sub-chat session by clicking on the add/remove participant button 226B. John is presented with a window (not shown) that allows John to add Jane to the sub-chat session for the project timeline. Likewise, John could remove a participant in a similar manner from one of the sub-chat sessions.
If the moderator wants to discuss an additional topic, the moderator can select the new topic button 225. Selecting the new topic button 225 brings up a window (similar to the new topic window 210) to add a new sub-chat session to the sub-chat session window 220.
The process starts in step 300. The process establishes an electronic chat session between two or more communication devices 101 in step 302. The process determines if a request to discuss a topic in the electronic chat session has been detected in step 304. If a request to discuss the topic in the electronic chat session has not been detected in step 304, the process determines in step 306 if the electronic chat session is over. If the electronic chat session is over in step 306, the process ends in step 312. Otherwise, if the electronic chat session is not over in step 306, the process goes back to step 304.
If the request to discuss one or more topics has been detected in step 304, the process creates a sub-topic session for each topic in step 308. The process sends information associated with the sub-chat sessions to the communication devices 101A-101N. For example, the web server 124 can send the sub-chat session window 220 with the sub-chat sessions to the communication devices 101A-101N. The process goes back to step 304 to see if an additional request to discuss topics (e.g., if the moderator wants to add an additional topic).
Otherwise, if a sub-chat session has been created in step 400, the process determines in step 402 if a participant wants to add a document to a sub-chat session. If the participant does not want to add a document to a sub-chat session in step 402, the process goes to step 406. Otherwise, if the participant wants to add a document to the sub-chat session in step 402, the process adds the document to the sub-chat session in step 404 and goes to step 406. The participant can add a document to a sub-chat session based on a button or menu. For example, the sub-chat message areas 221A-221C may have an add document button for the participant to add a document to the individual sub-chat session.
The type of document that can be added to the sub-chat session can be any type of electronic document, such as a text document, a slide presentation, a read-only document, an editable document, a spreadsheet, a photograph, an audio file, a video file, and/or the like. Individual participants may be limited on which types or sizes of documents that can be added to the sub-chat session. For example, a moderator may only allow a specific participant to be able to add spreadsheets to a sub-chat session. In addition, individual participants, based on a defined rule, may or may not be able to add a document to any sub-chat session (or an individual sub-chat session).
The process determines if a participant, such as a moderator, wants to merge two or more sub-chat sessions in step 406. If the participant does not want to merge sub-chat sessions in step 406, the process goes to step 410. Otherwise, if the participant wants to merge sub-chat sessions in step 406, the process allows the participant to select the sub-chat sessions and merge the selected sub-chat session into a single sub-chat session in step 408 and the process goes to step 410. In one embodiment, the selected sub-chat sessions are merged in a serial manner (i.e., one right after the other). Alternatively, the selected sub-chat sessions are merged based on a time of individual messages within the selected sub-chat sessions.
The process determines if a participant, such as the moderator, wants to selectively mute another participant in a sub-chat session in step 410. When a participant is muted, the muted participant will be unable to view any chat messages in the sub-chat session by other participants for a period of time. For example, if John, Sally, and Fred were in a sub-chat session and John muted Sally, Sally would be unable to see any messages sent by John and Fred during the time that Sally was muted. If the process determines that a participant has been selectively muted in step 410, the process mutes the participant from the sub-chat session in step 412 and the process goes to step 306. Otherwise, if the process determines in step 410 that there is not a selective mute request for a participant of the sub-chat session, the process goes to step 306. Although not shown, the process can selectively unmute a participant.
If a selection of an individual chat has not been received in step 502, the process waits at step 502. Otherwise, if a selection of an individual chat has been received in step 502, the process determines which sub-chat session (if necessary) to associate the individual chat with in step 504. For example, if there is only a single sub-chat session, the step of 504 is unnecessary because there is only a single sub-chat session. Step 504 can be based on a window that allows the user to select a particular sub-chat session if there are multiple sub-chat sessions. The process modifies sub-chat session to include the selected individual chat and any intervening chats in step 506. For example, if the moderator John of
By allowing the participant to add text from the chat message area 206 to a sub-chat session overcomes the problem of where a topic was discussed prior to creating the sub-chat session for the topic. For example, if the participants discussed the project timeline in detail before creating the project timeline sub-chat session, a participant can bring in the text from the chat message area into a sub-topic session.
The above process brings in the selected individual chat and any intervening chats. However, in other embodiments, the participant may be able to select specific individual chats to bring into the sub-chat session.
Otherwise, if the process determines that the request to transfer the sub-chat session(s) to the voice device has been received in step 602, the process transfers the sub-chat session(s) to the voice device in step 604. For example, if there are three sub-chat sessions(s) as shown in
The process converts voice to text and text to voice for the current sub-chat session in step 606. For example, if the organizational updates sub-chat session was the currently selected sub-chat session (e.g., as shown in
The process determines if a request to switch between sub-chat sessions has been received (if there are multiple sub-chat sessions) in step 608. Switching between sub-chat sessions can be accomplished in various ways. For example, the process can detect Dual Tone Multifunction (DTMF) tones to indicate a particular sub-chat session. Alternatively, the participant can use a DTMF tone to be directed to an Interactive Voice Response (IVR) system to select a sub-chat session from a menu in the IVR system. In one embodiment, the participant can use voice commands to switch between the different sub-chat sessions. For example, the participant can say “switch to organizational updates chat” to switch to the organizational updates sub-chat session.
If a request to switch between sub-chat sessions has not been received in step 608, the process determines in step 614 of the chat session is over. If the chat session is over in step 614, the process ends in step 616. Otherwise, if the chat session is not over in step 614, the process goes to step 606.
If the request to switch between sub-chat sessions has been received in step 608, the process switches to the new sub-chat session in step 610. The process plays any missed text of the new sub-chat session and goes to step 614. For example, referring to
Of course, various changes and modifications to the illustrative embodiment described above will be apparent to those skilled in the art. These changes and modifications can be made without departing from the spirit and the scope of the system and method and without diminishing its attendant advantages. The following claims specify the scope of the invention. Those skilled in the art will appreciate that the features described above can be combined in various ways to form multiple variations of the invention. As a result, the invention is not limited to the specific embodiments described above, but only by the following claims and their equivalents.
The present application is a divisional of U.S. patent application Ser. No. 14/622,668, filed Feb. 13, 2015, entitled “SYSTEM AND METHOD FOR TOPIC BASED SEGREGATION IN INSTANT MESSAGING”, which is incorporated herein by this reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5597312 | Bloom | Jan 1997 | A |
6557027 | Cragun | Apr 2003 | B1 |
6747970 | Lamb et al. | Jun 2004 | B1 |
8006191 | Anderson | Aug 2011 | B1 |
8060565 | Swartz | Nov 2011 | B1 |
8843835 | Busey | Sep 2014 | B1 |
9195739 | Imig et al. | Nov 2015 | B2 |
1011052 | Badge et al. | Oct 2018 | A1 |
20030126027 | Nelson | Jul 2003 | A1 |
20040078435 | Dunbar et al. | Apr 2004 | A1 |
20050149622 | Kirkland et al. | Jul 2005 | A1 |
20050262199 | Chen | Nov 2005 | A1 |
20060235932 | Celi, Jr. et al. | Oct 2006 | A1 |
20070079249 | Pall et al. | Apr 2007 | A1 |
20070288560 | Bou-Ghannam et al. | Dec 2007 | A1 |
20090307319 | Dholakia et al. | Dec 2009 | A1 |
20140222429 | DeLand | Aug 2014 | A1 |
20150288633 | Ogundokun et al. | Oct 2015 | A1 |
Number | Date | Country |
---|---|---|
101075983 | Nov 2007 | CN |
101094195 | Dec 2007 | CN |
101345718 | Jan 2009 | CN |
104113470 | Oct 2014 | CN |
2000-267976 | Sep 2000 | JP |
2004-272568 | Sep 2004 | JP |
2006-227711 | Aug 2006 | JP |
2010-152813 | Jul 2010 | JP |
2011-41246 | Feb 2011 | JP |
Entry |
---|
Official Action with English Translation for China Patent Application No. 201610206034.5, dated Aug. 26, 2019 13 pages. |
Official Action with English Translation for China Patent Application No. 201610206034.5, dated Aug. 27, 2018 23 pages. |
Official Action for United Kingdom Patent Application No. GB1602575.1, dated Sep. 21, 2016 7 pages. |
Intention to Grant for United Kingdom Patent Application No. GB1602575.1, dated Mar. 3, 2017 2 pages. |
English Translation of Official Action for Japan Patent Application No. 2016-024461, dated Jun. 6, 2017 4 pages. |
Official Action with English Translation for Japan Patent Application No. 2016-024461, dated Nov. 14, 2017 4 pages. |
Decision to Grant for Japan Patent Application No. 2016/024461, dated May 8, 2018 3 pages. |
Official Action for U.S. Appl. No. 14/622,668, dated Dec. 22, 2016 9 pages. |
Official Action for U.S. Appl. No. 14/622,668, dated May 22, 2017 13 pages. |
Official Action for U.S. Appl. No. 14/622,668, dated Dec. 8, 2017 11 pages. |
Notice of Allowance for U.S. Appl. No. 14/622,668, dated Jun. 6, 2018 5 pages. |
Official Action with English Translation for China Patent Application No. 201610206034.5, dated Mar. 29, 2019 18 pages. |
Number | Date | Country | |
---|---|---|---|
20190036854 A1 | Jan 2019 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14622668 | Feb 2015 | US |
Child | 16148609 | US |