|Publication number||US20070136428 A1|
|Application number||US 11/298,197|
|Publication date||Jun 14, 2007|
|Filing date||Dec 8, 2005|
|Priority date||Dec 8, 2005|
|Also published as||US8495148, US20080189378|
|Publication number||11298197, 298197, US 2007/0136428 A1, US 2007/136428 A1, US 20070136428 A1, US 20070136428A1, US 2007136428 A1, US 2007136428A1, US-A1-20070136428, US-A1-2007136428, US2007/0136428A1, US2007/136428A1, US20070136428 A1, US20070136428A1, US2007136428 A1, US2007136428A1|
|Inventors||Irwin Boutboul, Jessica Ramirez|
|Original Assignee||International Business Machines Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Referenced by (14), Classifications (6), Legal Events (1)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present disclosure relates generally to messaging services and, in particular, to methods, systems, and computer program products for implementing community messaging services.
For new real-time applications that reach a large community in a broadcast fashion (e.g., community messaging tools), there is a need to distribute messages to potentially everyone in the community in order to obtain a response as quickly as possible. However, the community in general typically does not want to be disturbed by inappropriate or excessive messages. Current solutions include having the right to publish a message on selected channels. This involves being in an Access Control List (ACL). Only authorized people in the ACL are permitted to send messages. One drawback to this solution is that the sender must be authorized in order to be able to broadcast to his/her community. Thus, if only a few people are authorized, most of the community would not benefit from the application broadcasting features. If too many people are authorized to broadcast, then it is difficult to prevent people from sending inappropriate broadcasts or from receiving excessive broadcasts.
Another solution is to provide a means for filtering messages upon receipt, in which a filtering system on the receiving end will determine whether or not to display the message to the user based on user-set criteria. However, if everyone in the community filters messages, then the community purpose may be defeated as very few messages may be permitted to pass through the filter. Moreover, the creation of a filter is not an automatic and friendly process. If a user wants to restrict the quantity and content of messages he receives, he will have to do all the work to setup filters such as listing keywords that need to be in messages received by him. Further, even if filters are used, and the messages are determined to be filter compliant, the potential problem remains that everyone in the community will receive all messages.
Another solution is to obtain feedback on a broadcast (i.e., is the broadcast appropriate or inappropriate) after the transmission. If the broadcast message is inappropriate, negative points are placed on the sender's profile, which would prevent him/her from sending future broadcasts. One drawback, however, is that everyone in the community will still receive the inappropriate message.
What is needed, therefore, is a broadcast messaging solution that provides fast and effective responses, while balancing the needs and desires of the entire community (i.e., preventing excessive and/or inappropriate messages).
Exemplary embodiments include a method, system, and computer program product for implementing community messaging services. The method includes calculating a receiver pool for receiving a message, the receiver pool being a subset of a messaging community. The method also includes transmitting the broadcast message to the receiver pool and tracking any feedback from the receiver pool to determine if a satisfactory response has been received. A satisfactory response results when a response is received that addresses or resolves an issue or question presented in the broadcast message. The method further includes re-calculating the receiver pool to receive the broadcast message if the satisfactory response has not been reached after a specified period of time, the re-calculated receiver pool being a subset of the messaging community who have not yet received the broadcast message.
The system includes a computer processor executing a community messaging services application. The community messaging services application performs a method. The method includes calculating a receiver pool for receiving a message, the receiver pool being a subset of a messaging community. The method also includes transmitting the broadcast message to the receiver pool and tracking any feedback from the receiver pool to determine if a satisfactory response has been received. A satisfactory response results when a response is received that addresses or resolves an issue or question presented in the broadcast message. The method further includes re-calculating the receiver pool to receive the broadcast message if the satisfactory response has not been reached after a specified period of time, the re-calculated receiver pool being a subset of the messaging community who have not yet received the broadcast message.
The computer program product includes instructions for implementing a method. The method includes calculating a receiver pool for receiving a message, the receiver pool being a subset of a messaging community. The method also includes transmitting the broadcast message to the receiver pool and tracking any feedback from the receiver pool to determine if a satisfactory response has been received. A satisfactory response results when a response is received that addresses or resolves an issue or question presented in the broadcast message. The method further includes re-calculating the receiver pool to receive the broadcast message if the satisfactory response has not been reached after a specified period of time, the re-calculated receiver pool being a subset of the messaging community who have not yet received the broadcast message.
Other systems, methods, and/or computer program products according to embodiments will be or become apparent to one with skill in the art upon review of the following drawings and detailed description. It is intended that all such additional systems, methods, and/or computer program products be included within this description, be within the scope of the present invention, and be protected by the accompanying claims.
The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other objects, features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
The detailed description explains the exemplary embodiments of the invention, together with advantages and features, by way of example with reference to the drawings.
In accordance with exemplary embodiments, community messaging services are provided. The community messaging services are designed to limit or target the distribution of broadcast messages to a subset of a messaging community in order to provide a least intrusive means of acquiring information from community members. The community messaging services provide a systematic approach to broadcast message distribution within a messaging community that facilitates fast and effective responses to broadcast messages while preventing the disturbance of an entire community. The community messaging services may relate to any type of broadcast communications (e.g., email, mail, etc.) or other type of real time communications occurring over an open channel.
Turning now to
Messaging community 104 includes a number of user systems similar to the user system 102 described above. Messaging community 104 and user system 102 represent members of a community that interact with one another via broadcasting messages (e.g., requests for information, surveys/polls, etc.) in a real-time networking environment. Each of the members in the community executes software for implementing the community-based communications. Members of messaging community 104 may have selected the particular community for membership based upon a subject matter area that is serviced by the community members. Members of messaging community 104 may also belong to more than one community depending upon their needs and interests. The communities may provide a subscription base for determining scope and content of messages a user receives. Instead of having a single channel for broadcasting messages, multiple communities or channels may be defined to allow users to subscribe to receive messages of their interest.
Also shown in the system of
The host system 107 may also operate as an application server. The host system 107 executes one or more computer programs to provide communications and messaging services. As shown in the system of
As indicated above, a portion of the community messaging services may be implemented by a community messaging services application 108 that is executing on the user system 102 as well as the computer processing devices of the messaging community 104. The community messaging application 108 may be a standalone software application or may be an add-on or plug-in to an existing community tool. The community messaging application 108 may further include a user interface for enabling a user at user system 102, messaging community 104 users, and/or host system 107 to configure various options provided by the application 108 as described further herein. A sample user interface screen for use by a user system is shown and described in
The user system 102 also includes memory 110 for storing information elements as described above with respect to the host system 107.
Network 106 may be any type of known network including, but not limited to, a local area network (LAN), a wide area network (WAN), a global network (e.g. the Internet), a private network (e.g. an Intranet), and a virtual private network (VPN). The network 106 may be implemented using a wireless network or any kind of physical network implementation known in the art.
Messaging community 104 includes a receiver pool 112, which is a subset of the messaging community 104. The user systems from messaging community 104 are selected to be in a receiver pool via the community messaging application 108. Receiver pool 112 is described further herein.
As indicated above, the community messaging services are designed to limit or target the distribution of broadcast messages to a subset of a messaging community in order to provide a least intrusive means of acquiring information from community members. The community messaging services provide a systematic approach to broadcast message distribution within a messaging community that facilitates fast and effective responses to broadcast messages while preventing the disturbance of an entire community.
Turning now to
The number of user systems in the receiver pool may alternatively be a number or percentage of the members in the messaging community who are online at the time of the broadcast transmission. This solution might be useful in producing quicker responses for the broadcast sender. Alternatively, the user systems in the receiver pool may be selected based upon demonstrated knowledge of subject matter of the particular broadcast message. This may be accomplished, for example, by selecting key words from the broadcast message and comparing them to the content of past responses received by the community messaging application 108 and stored in memory 110. The results of the comparisons would determine the identities of those responders who are likely to have knowledge of the particular subject matter in the broadcast message.
In another example of selecting a receiver pool, the determination may be made based upon the members' willingness to respond (e.g., non-lurkers, or people who are active in the community instead of just listening to messages and not responding or sending). Again, searching the responses in the memory 110 would yield the number of responses provided by each member of the messaging community 104, which would provide insight as to which members are more likely to respond.
Alternatively, the receiver pool selection may be an automated process implemented by the community messaging application that utilizes, for example, an algorithmic equation. For example, if ‘n’ is the number of members in the community, a function f(t) would return a number of targets based upon time. The function may be exponential. The broadcast message would then be transmitted to a limited number of members, and depending upon the feedback received, the process may either continue to broadcast until f(t)=n or stop the distribution.
Once the receiver pool has been ascertained, the community messaging application 108 sends the broadcast message to the receiver pool at step 206. At step 208, the community messaging application 108 tracks incoming messages or feedback from members of the receiver pool if such incoming messages exist (e.g., not every message recipient is likely to respond). The community messaging application 108 tracks the feedback in order to determine if a threshold number or percentage of responses are received. The threshold number or percentage of responses reflects a number or percentage of responses that are satisfactory to the sender. A satisfactory response is one that adequately addresses and resolves the question or issue presented in the message transmitted by the sender.
The community messaging application 108 may set limits on the period of time in which a threshold number or percentage of responses should be received. The period of time may be seconds, minutes, hours, etc. The application 108 may track satisfactory responses via the sender's feedback. For example, the sender may set the threshold to three satisfactory responses or until 100% of the messaging community 104 has been contacted. Application 108 monitors not only the determination of the threshold pool but also feedback from the sender to deem whether a response was satisfactory or not. When a response is not satisfactory, the sender may close the connection with the non-responsive responder and then the number of current responses tracked by the application 108 would decrease by one. The application 108 continues broadcasting the message because the number of responses falls below the threshold.
When the sender is satisfied with a response, he/she marks the response as satisfactory by giving feedback. The application 108 detects this feedback and ends the broadcasting. Likewise, in determining whether the threshold has been met, the application 108 also tracks the appropriateness of responses received from the receiver pool 112. This may be implemented by an indicator provided by the sender and/or the members of the receiver 112. The messaging community takes responsibility for notifying individuals if they are in violation of business conduct guidelines or if their message could be more appropriately sent to a different community. Inappropriate messages may also include those that use offensive language. If the message is a poll, determining appropriateness may include assessing the validity of the questions presented in the poll. For example, in a software community, a poll “are you using Lotus Notes™ 7.0?” is appropriate. A poll “will you watch the football game tonight” is not appropriate.
At step 210, it is determined whether the threshold has been met. If so, the process ends at step 212. Otherwise, the process returns to step 204 whereby the community messaging application 108 attempts to re-calculate the receiver pool (i.e., selects new members of the messaging community to send the broadcast message) and the process repeats until the user of user system 102 has received the appropriate number of satisfactory responses.
As described above, the features provided by the community messaging application 108 may be automatically set (e.g., default values) via users of user systems 102, messaging community 104 and/or host system 107, or may be selected by a user of the community messaging application 108 via a user interface. Turning now to
A user at user system 102 may access a user interface of the community messaging application 108 whereby the user interface screen 300 of
Using option 308, the user may set a time limit for receiving the responses before the receiver pool is re-calculated and the message is transmitted to the new receiver pool. This option 308 may be particularly useful in situations where the user needs an immediate response to a question.
By selecting the filter options 310, a sub-window 312 is presented to the user, which allows the user to facilitate the receiver pool selection process. For example, as described above, a receiver pool may be determined based upon those members of the messaging community 104 that are currently online. This feature is configured using option 314. If the user desires to create a receiver pool based upon the subject matter of the broadcast (as described above), the user selects option 316. Finally, if the user desires to create a receiver pool that includes members who are likely to respond to a broadcast (non-lurkers), then option 318 is selected. It will be understood that these and other parameters may be considered in selecting a receiver pool. The options presented in screen 300 are for illustrative purposes and are not to be construed as limiting in scope.
As described above, embodiments can be embodied in the form of computer-implemented processes and apparatuses for practicing those processes. In exemplary embodiments, the invention is embodied in computer program code executed by one or more network elements. Embodiments include computer program code containing instructions embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other computer-readable storage medium, wherein, when the computer program code is loaded into and executed by a computer, the computer becomes an apparatus for practicing the invention. Embodiments include computer program code, for example, whether stored in a storage medium, loaded into and/or executed by a computer, or transmitted over some transmission medium, such as over electrical wiring or cabling, through fiber optics, or via electromagnetic radiation, wherein, when the computer program code is loaded into and executed by a computer, the computer becomes an apparatus for practicing the invention. When implemented on a general-purpose microprocessor, the computer program code segments configure the microprocessor to create specific logic circuits.
While the invention has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims. Moreover, the use of the terms first, second, etc. do not denote any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another. Furthermore, the use of the terms a, an, etc. do not denote a limitation of quantity, but rather denote the presence of at least one of the referenced item.
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7913287||Feb 12, 2003||Mar 22, 2011||Decisionmark Corp.||System and method for delivering data over an HDTV digital television spectrum|
|US8010981||Aug 23, 2006||Aug 30, 2011||Decisionmark Corp.||Method and system for creating television programming guide|
|US8166407 *||Jan 25, 2007||Apr 24, 2012||Social Concepts, Inc.||Apparatus for increasing social interaction over an electronic network|
|US8180852||Jan 25, 2007||May 15, 2012||Social Concepts, Inc.||Apparatus for increasing social interaction over an electronic network|
|US8291026||Oct 26, 2009||Oct 16, 2012||Vaporstream Incorporated||Reduced traceability electronic message system and method for sending header information before message content|
|US8413059||Jan 3, 2007||Apr 2, 2013||Social Concepts, Inc.||Image based electronic mail system|
|US8473553 *||Feb 19, 2009||Jun 25, 2013||International Business Machines Corporation||Management of multiple synchronous responses to single question in community-based instant messaging|
|US8495148 *||Apr 3, 2008||Jul 23, 2013||International Business Machines Corporation||Methods, systems, and computer program products for implementing community messaging services|
|US8626828||Mar 27, 2012||Jan 7, 2014||Social Concepts, Inc.||Apparatus for increasing social interaction over an electronic network|
|US8738719||Feb 28, 2013||May 27, 2014||Social Concepts, Inc.||Image based electronic mail system|
|US8886739||Dec 19, 2013||Nov 11, 2014||Vaporstream, Inc.||Electronic message content and header restrictive send device handling system and method|
|US8935351||Dec 19, 2013||Jan 13, 2015||Vaporstream, Inc.||Electronic message content and header restrictive recipient handling system and method|
|US20060271949 *||Jun 9, 2006||Nov 30, 2006||Decisionmark Corp.||Method and apparatus for limiting access to video communications|
|US20140173004 *||Oct 22, 2013||Jun 19, 2014||International Business Machines Corporation||Low latency messaging chat server|
|Cooperative Classification||G06Q10/107, H04L12/1886|
|European Classification||G06Q10/107, H04L12/18T|
|Dec 21, 2005||AS||Assignment|
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BOUTBOUL, IRWIN;RAMIREZ, JESSICA WU;REEL/FRAME:017137/0095;SIGNING DATES FROM 20051207 TO 20051208