The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also correspond to implementations of the claimed inventions.
The technology disclosed relates to embedding private comments in public messages. In particular, it relates to customizing public messages by including private comments that are directed to specific recipients. The private comments are included in the context of the public messages sent to their intended recipients but excluded from the public message when it is sent to other recipients. The private comments can be viewable only to their intended recipients and in the context of the public response. The public response as seen by recipients not intended to receive private comments does not include the private comments. This enables a sender of a private comment to efficiently communicate selected information to specific recipients without burdening all recipients with information which may not be relevant for them. Furthermore, it preserves the overall context of the original message.
Traditional email services and online social environments display messages, posts and responses to all their addressees and subscribers. In this sense, a user's responses are public in that they are seen in total by all recipients. However, a user may wish to send a general response to all of the original recipients but include comments directed only to specific recipients.
Accordingly, it is desirable to provide systems and methods that allow a user to embed private comments into public responses. Improved communication and user experience may result.
The technology disclosed relates to embedding private comments in public messages. In particular, it relates to customizing public messages by including private comments that are directed to specific recipients. The private comments are included in the context of the public messages sent to their intended recipients but excluded from the public message when it is sent to other recipients. The private comments can be viewable only to their intended recipients and in the context of the public response. The public response as seen by recipients not intended to receive private comments does not include the private comments. This enables a sender of a private comment to efficiently communicate selected information to specific recipients without burdening all recipients with information which may not be relevant for them. Furthermore, it preserves the overall context of the original message.
The included drawings are for illustrative purposes and serve only to provide examples of possible structures and process operations for one or more implementations of this disclosure. These drawings in no way limit any changes in form and detail that may be made by one skilled in the art without departing from the spirit and scope of this disclosure. A more complete understanding of the subject matter may be derived by referring to the detailed description and claims when considered in conjunction with the following figures, wherein like reference numbers refer to similar elements throughout the figures.
The following detailed description is made with reference to the figures. Sample implementations are described to illustrate the technology disclosed, not to limit its scope, which is defined by the claims. Those of ordinary skill in the art will recognize a variety of equivalent variations on the description that follows.
The technology disclosed relates to redactive messaging, i.e., redacting messages in the sense of editing and preparing them for publication and distribution in a computer-implemented system. The technology disclosed can be implemented in the context of any computer-implemented system including a database system, a multi-tenant environment, or the like. Moreover, this technology can be implemented using two or more separate and distinct computer-implemented systems that cooperate and communicate with one another. This technology may be implemented in numerous ways, including as a process, a method, an apparatus, a system, a device, a computer readable medium such as a computer readable storage medium that stores computer readable instructions or computer program code, or as a computer program product comprising a computer usable medium having a computer readable program code embodied therein.
The technology disclosed relates to editing and preparing messages for publication and distribution in networked systems. In particular, it relates to customizing public messages by allowing an author to add comments directed specifically to one or more individual recipients. This is done in a private manner so as not to burden all recipients with the comments, which may not apply or be of interest to them. The term “redactive messaging” is used to describe this capability.
The technology disclosed relates to selecting and identifying specific user-desired text within a larger text message, selecting and identifying desired message recipients of the specific user-desired text and sending the specific user-desired text in the context of the larger text message to the desired message recipients while sending only the larger text message without the specific user-desired text to other message recipients. The specific user-desired text is effectively redacted from the public message.
Advantages that may accrue in some implementations include reducing content in public messages that may be relevant for only a small number of recipients, calling attention to specific information in a public message that is of particular interest to a subset of recipients, posing questions to specific recipients about selected items and information in a public message, reducing the number of additional messages that may be required to communicate about specific content in a public message that applies only to a subset of recipients, creating separate message threads within the context of a public message thread, etc. These advantages may not be present in all implementations of the technology disclosed.
Redactive Messaging Engines and Datastores
In some implementations, the engines can be of varying types including workstations, servers, computing clusters, blade servers, server farms, or any other data processing systems or computing devices. In other implementations, the data stores can be relational database management systems (RDBMSs), object oriented database management systems (OODBMSs), distributed file systems (DFS), or any other data storing systems or computing devices.
In some implementations, environment 100 may not have the same elements as those listed above and/or may have other/different elements instead of, or in addition to, those listed above. The different elements can be combined into single software modules and multiple software modules can run on the same hardware.
The public message store 104 can include messages being sent to members of a group, also called recipients. A public message can also be one that is sent to a public website for viewing by anyone who may access that site. The messages can include text created by a user, and other data as well. Examples of messages include posts, status updates, likes, replies, shares, mentions, and comments.
The private comment store 106 can include comments which are sent to a specific subset of recipients in a group as opposed to public comments which are sent to all members of the group. Private comments can be used to avoid burdening unintended recipients with information that may not be relevant to them. Private comments can also be used to coordinate actions among a subset of a group: for instance if a project involves multiple sub-projects then it can be more efficient to send specific private comments to members of the sub-projects as part of an overall public message. This retains the overall context of the public message, while informing selected recipients of information targeted specifically to them. In some implementations, the public message store 104 and private comments store 106 can be part of a single database or message store with private comments specifically marked.
The thread management store 108 can be used to track message threads and the private comments associated with them. A message thread can be a continuous collection of messages related to one topic, question, post, and/or comment. The messages can be collected and stored in the public message store 104. Private comments, which can also be messages, can be stored in the private comment store 106. Thread tracking can be done using a schema such as the one shown in
The recipient and identifier store 148 can include a unique identifier for each user. The identifier can be used to associate a user with messages, threads and comments. Entries in the recipient and identifier store 148 can include a display name for the corresponding user as well as their email addresses and online social handles or usernames. This information can enable a user interface to display a convenient user name while routing messages and comments to users via their email addresses and online social handles.
The social data store 188 can include social media content like social media sources, social accounts, social personas, social profiles, social handles, content shared, feed items, posts, and the like. It can also include a user profile that includes data about the user of a database system. The data can include general information, such as title, phone number, a photo, and biographical summary. The data can include messages created by other users.
Social data store 188 can include a feed that is a combination (e.g. a list) of feed items. A feed item or feed element can include information about a user of the database referred to as a profile feed or about a record referred to as record feed. A user following the user or record can receive the associated feed items. The feed items from all of the followed users and records can be combined into a single feed for the user.
An information feed in the context of a social network is a collection of information selected from the social network for presentation in a user interface. The information presented in the information feed can include entries posted to a user's wall or any other type of information accessible within the social network. For example, a user's news feed can include text inputs such as comments (e.g., statements, questions, emotional expressions), responses to comments (e.g., answers, reactionary emotional expressions), indications of personal preferences, status updates, and hyperlinks. As another example, a news feed can include file uploads, such as presentations, documents, multimedia files, and the like.
A feed item can be a message, post, update stream, and/or a story (also called a feed tracked change). A feed can be a combination of messages and stories. Messages can include text created by a user, and other data as well. Examples of messages include posts, status updates, likes, replies, shares, and comments. Messages can be created for a user's profile or for a record. Posts can be created by various users, potentially any user, although some restrictions can be applied. As an example, posts can be made to a wall section of a user's profile (which can include a number of recent posts) or a section of a record that includes multiple posts. The posts can be organized in chronological order. A comment can be made on any feed item. In one implementation, comments can be organized as a list explicitly tied to a particular story, post, or status update.
Social data store 188 can include a group, which is a collection of users. The group can be defined as users with a same or similar attribute, or by membership. In one implementation, a group feed can include any feed item about any user in a group. In another implementation, a group feed can include feed items that are about the group as a whole. In one implementation, the feed items for a group are only posts and comments.
Social data store 188 can include an entity feed or record feed that refers to a feed of feed items about a particular record in the database, such as stories about changes to the record and posts made by users about the record. An entity feed can be composed of any type of feed item. Such a feed can be displayed on a page (e.g. a web page) associated with the record (e.g. a home page of the record). In other implementations, a profile feed is a feed of feed items about a particular user.
In one implementation, the feed items for a profile feed can be posts and comments that other users make about or send to the particular user, and status updates made by the user. Such a profile feed can be displayed on a page associated with the particular user. In another implementation, feed items in a profile feed can include posts made by the particular user and feed tracked changes (stories) initiated based on actions of the particular user.
In one implementation, a user can make a comment within a user's news feed. Such a comment can propagate to the appropriate profile feed or record feed, and then to the news feeds of the following users. Thus, feeds can include what people are saying, as well as what they are doing. In another implementation, feeds are a way to stay up-to-date (e.g., on users, opportunities, etc.) as well as an opportunity to reach out to co-workers/partners and engage them around common goals.
The message processing engine 140 can be used to send and receive messages and comments. Messages can be formatted using the formatting engine 120. For instance, if a public message includes private comments, then the message processing engine 140 can remove these and use the formatting engine 120 to omit any blank space or processing artifacts so that it is not apparent to viewers that private comments were present.
In one implementation, the message processing engine 140 can be used with the embedding engine 160 and forwarding engine 184 to send messages including private comments to their intended recipients. In one implementation, a public message is retrieved from the public message store 104 and a related private comment is retrieved from the private comment store 106. The embedding engine embeds the private comment into the public message and the forwarding engine 184 send this version of the message to its intended recipients.
The user computing device 185 can include an application 186 that provides a user interface for a user to interact with the other components of the redactive messaging environment 100. For example, the application 186 can include software to communicate with the message processing engine 140 and with an email service such as Outlook, Gmail or Hotmail, or an online social environment like Facebook, Twitter or Chatter.
Social Interface
In one implementation, social interface 200A-C can take one of a number of forms, including a dashboard interface, engagement console, and other interface, such as a mobile interface or summary interface. Social interface 200A-C can be hosted on a web-based or cloud-based application running on a computing device such as a personal computer, laptop computer, mobile device, and/or any other hand-held computing device. It can also be hosted on a non-social local application running in an on-premise environment. In one implementation, social interface 200A-C can be accessed from a browser running on a computing device. The browser can be Chrome, Internet Explorer, Firefox, Safari, etc. In another implementation, social interface 200A-C as can run an engagement console on a computer desktop application primarily used for sending redactive messages.
In this example, user named ‘Ben Jacob’, who was not a recipient of a private comment, responded with post 240 that he is “In the office today.” Another user named ‘Ken Brown’ responded to the public message with the post 245 including text “Visiting First St. Financial today” and with the private comment “Seeing Second St. Financial tomorrow.” Finally, user named ‘Jillian Nemaen’ responded with the post 250 to both the public message and private comment.
Responses to the private comments are identified using identifier “@BPC” and each response is delimited by square brackets according to one implementation. Other identifiers can be used in some implementations, including different text strings such as “#PRIVATE” to identify a private comment, and using parentheses or other special characters to delimit the private comment. In other implementations, private comments can be identified using different colors or fonts.
Business Interface
In one implementation, business interface 300 can take one of a number of forms, including a dashboard interface, engagement console, and other interface, such as a mobile interface or summary interface. Business interface 300 can be hosted on a web-based or cloud-based application running on a computing device such as a personal computer, laptop computer, mobile device, and/or any other hand-held computing device. It can also be hosted on a non-social local application running in an on-premise environment. In one implementation, business interface 300 can be accessed from a browser running on a computing device. The browser can be Chrome, Internet Explorer, Firefox, Safari, etc. In another implementation, business interface 300 can run as an engagement console on a computer desktop application primarily used for sending redactive messages.
Redactive Messaging Schema
Public message objects 420 can provide a list of public messages being sent and received among many authors and recipients. It can include columns that specify a thread ID for a related collection of public messages, a message ID for each individual message, a time stamp for each message, an author ID for each message, and the actual content of the public message.
Public message objects 420 can have one or more of the following variables with certain attributes: ThreadID being CHAR(15 BYTE), MessageID being CHAR(15 BYTE), Timestamp being CHAR(15 BYTE), AuthorID being CHAR(15 BYTE) and PublicMessage being TEXT(65535 BYTE).
New entries can be added chronologically with a new record ID, which can be incremented in order. The “thread ID” variable can provide a unique ID for each message thread. The “message ID” variable can provide a unique ID for each message within a thread. The “timestamp” variable can provide the time at which a message is sent. The “author ID” can provide a link to the name of the message author. The “public message” can store the actual message content.
Private message objects 440 can provide a list of private comments with links to their corresponding public message objects. For instance, row 442 links a specific private comment to its parent public message. In particular, the corresponding public message is given by a compound key including a “thread ID” and “message ID”: “0123” and “0054” respectively, which map to row 402 in the public message objects 420. The “BPC ID” column in the private message objects 440 shown in the example is used to uniquely identify a private comment. In the example of row 442, the “BPC ID” is “0001.” Likewise, row 444 maps the private comment identified having “BPC ID” equal to “0002” to the same row 402 in the public message objects 420.
Private message objects 440 can have one or more of the following variables with certain attributes: ThreadID being CHAR(15 BYTE), MessageID being CHAR(15 BYTE), BPC_ID being CHAR(15 BYTE) and PrivateComments being TEXT(65535 BYTE).
Recipient objects 460 can provide a list of recipients with their corresponding private message objects by using a compound key including a “thread ID” plus a “message ID” plus a “BPC ID.” This mapping allows all private comments to be tracked to each of their intended recipients. As can be seen in this example, the first row 464 maps “recipient ID” “1002”, Ken Brown to row 482 of the user objects 480 and to the private comment in row 442 of the private message objects 440. Rows 466 and 468 map, respectively, to rows 486 and 488 in the user objects 480. Likewise, rows 466 and 468 map, respectively, to rows 442 and 444 in the private message objects 440.
Recipient objects 460 can have one or more of the following variables with certain attributes: ThreadID being CHAR(15 BYTE), MessageID being CHAR(15 BYTE), BPC_ID being CHAR(15 BYTE) and RecipientID CHAR(15 BYTE).
User objects 480, can provide a list of the recipients with their corresponding user IDs, display names, email addresses, Chatter name, Facebook name, and Twitter name. These names and email addresses can be used to send public messages and private comments to users. The user IDs provide a concise way to link users to specific private message objects as described above for the recipient objects 460.
User objects 480 can have one or more of the following variables with certain attributes: UserID being CHAR(15 BYTE), DisplayName being CHAR(80 BYTE), EmailAddress being CHAR(80 BYTE), ChatterName being CHAR(80 BYTE), FB_Name being CHAR(80 BYTE) and TW_Name being CHAR(80 BYTE).
New entries can be added chronologically with a new record ID, which can be incremented in order. The “UserID” variable can provide a unique ID for each recipient and can be synonymous with the RecipientID variable in the recipient objects 460 and “AuthorID” in the public message objects 420. Furthermore, the “UserID” variable can be used to relate all of the other variables, being names and email addresses to entries in the public message objects 420 and the recipient objects 460.
Flowchart of Embedding Private Comments in Public Messages
Input that represents private comments is received at action 510. The input can include any type of input used in the messaging environment. For instance, in a Chatter environment, the input may consist of text like that shown in
At action 515, private comments and intended recipients embedded within the public message are identified. The use of the “@” symbol helps to make private comments unique and easily recognized by both humans and machines. There is also specific syntax used in this example, as shown below:
PCID is the private comment identifier, “@BPC” in this example. RIDs are the recipient identifiers, “Ken Brown” and “Al Smith” in this example.
The recipients are given as a list: “Ken Brown, Al Smith.” The start and end delimiters that surround the private comment are open “[” and close “]” brackets. The message content is included between the delimiters. Other syntax arrangements are possible, for instance using a different identifier for the PCID and different start and end delimiters. In some implementations, different fonts and colors may be used. In yet other implementations, the delimiters may be made more implicit, by automatically setting the end of a comment at the end of a line or paragraph.
At action 520, the private comments can be linked with their intended recipients. Recipients can be identified using their display names as in the above example, by their handles in an environment which provides ongoing comment and information feeds, by their email addresses, by usernames, by tags, and by social handles, etc. Private comments that correspond to particular recipients can be associated with these recipients by using delimiters that follow the recipient identifiers as in the above example. In another implementation this can be done by using additional identifiers that link recipients to their corresponding comments. This allows specific private comments to be restricted to specific recipients. The identifiers can direct the private comments to restricted recipients via active hyper-links, allowing the restricted recipients to access additional private information. In some implementations, selecting the active hyper-links can immediately open a website, document, image, or video.
At action 525, private comments can be directed privately to their corresponding recipients. This can be done by removing private comments from a public message and sending that version of the public message to all recipients who are not restricted recipients of the private comments. Then, the private comments for restricted recipients can be embedded, or left in place, in the message as sent to particular recipients. Thus, there can be many versions of a public message with embedded private comments. Each version can be sent to only those recipients for whom it is intended, based on the links created between the private comments and restricted recipients in action 520.
At action 530, a user interface application that visually distinguishes private comments can be provided. This can be done by using font enhancements like italics or bold lettering, or increasing font size, or using a font color that differs from the surrounding text.
At action 535, the public message can be formatted to remove the blank spaces resulting from excising the private comments. This can result in rendering the public message such that it is not apparent to a viewer that private comments were inserted for other viewers.
Flowchart of Posting Private Comments in Online Social Environments
Electronic messaging systems can be passive in nature. While online social environments are more interactive and instantaneous in terms of responses or reaction times. The system is not necessarily part of the method.
At action 610, a request to post a feed item is received. This request can take many forms and can be specific to the online social environment. For instance, in a web-based environment it can be received as an HTTP request.
At action 615, private comments and intended recipients embedded within the feed item are identified. This can be done as described in action 515 above using the “@” symbol and specific syntax as used in this example, as shown below:
PCID is the private comment identifier, “@BPC” in this example. RIDs are the recipient identifiers, “Ken Brown” and “Al Smith” in this example.
The recipients are given as a list: “Ken Brown, Al Smith.” The start and end delimiters that surround the private comment are open “[” and close “]” brackets. The message content is contained between the delimiters. Other syntax arrangements are possible, for instance using a different identifier for the PCID and different start and end delimiters. In some implementations, different fonts and colors may be used. In yet other implementations, the delimiters may be made more implicit, by automatically setting the end of a comment at the end of a line or paragraph. Yet other alternatives for are possible and will be apparent to those skilled in the art.
At action 620, the private comments can be linked with their intended recipients. Recipients can be identified using their display names as in the above example, by their handles in an environment which provides ongoing comment and information feeds, by their email addresses, by usernames, by tags, etc. Private comments that correspond to particular recipients can be associated with these recipients by using delimiters that follow the recipient identifiers as in the above example. In another implementation this can be done by using additional identifiers that link recipients to their corresponding comments. This allows specific private comments to be restricted to specific recipients.
At action 625, private comments can be directed privately to their corresponding recipients. This can be done by removing all private comments from a public message and sending that version of the public message to all recipients who have no associated private comments. Then, private comments for restricted recipients can be embedded, or left in place, in the message as sent to particular recipients. Thus, there may be many versions of a public message with embedded private comments. Each version can be sent to only those recipients for whom it is intended, based on the links created between the private comments and intended recipients in action 620.
At action 630, the private comments can be embedded in a profile feed. This can be done by noting that the profile is that of a recipient intended to receive a private comment, and inserting the private comment in that recipient's profile feed. Similarly, recipients not intended to receive a specific private comment may not have that comment embedded into their profile feed.
At action 635, a similar approach can be used as in action 630: private comments intended for specific recipients can be embedded into their individual versions of the feeds and omitted from versions sent to other recipients.
At action 640, a version of a public feed without private comments can be reformatted to remove blank spaces that could remain after removing the private comments.
At action 645, authoring of private comments in a first online social environment can be supported. This can be accomplished by using an application programming interface provided by the online environment or by providing a custom application that interfaces with the first online social environment.
At action 650, a feed item posted in a first online social environment can be cross-posted in a second online environment. This can be done by linking the two social environments. For instance, Twitter offers an interface that can automatically forward any Twitter posts to Facebook. Conversely, cross-posting can be done manually. For proprietary online social environments, cross-posting can be done using custom scripts or interfaces.
At action 655, threaded private conversations can be supported among intended recipients of private comments. For instance, in the example given in
Flowchart of Privately Appreciating Content Posted in an Online Social Environment
Privately appreciating content refers to private posting of non-textual appreciative feed items as opposed to textual private comments described in
At action 710, a request to post a feed item that appreciates content is received. This request can take many forms and is specific to the environment. For instance, in a web-based environment it may arrive as an HTTP request. Another implementation can use an application 186 as in
At action 715, the feed item and its intended viewers are identified. This can be done by simply allowing the viewers to be given as a list that precedes the feed item content as in the “TO:” line of an email or it can be entered into a text box intended for this purpose. Viewers can be identified by using their display names, by their handles in an environment which provides information feeds, by their email addresses, by usernames, by tags, etc. Thus, the feed item and its viewers are readily identified and linked with each other.
At action 720, the feed item that appreciates content can be privately posted to the intended viewer's profile on which the content was originally posted. This can be done by noting that the profile is that of a recipient intended to receive the private appreciation, and inserting the private appreciation in that recipient's profile feed. Similarly, recipients not intended to receive a specific private appreciation may not have that appreciation embedded into their profile feed.
At action 725, the feed item can be created in a second online social environment via using an interface provided specifically for that purpose by the second online social environment. Twitter and Facebook provide interfaces for this purpose and for use in cross-posting.
At action 730, the feed item from the first online social environment can be cross-posted in a second online social environment. Again, environments like Twitter and Facebook provide interfaces for this purpose.
Computer System
User interface input devices 822 can include a keyboard; pointing devices such as a mouse, trackball, touchpad, or graphics tablet; a scanner; a touch screen incorporated into the display; audio input devices such as voice recognition systems and microphones; and other types of input devices. In general, use of the term “input device” is intended to include all possible types of devices and ways to input information into computer system 810.
User interface output devices 820 can include a display subsystem, a printer, a fax machine, or non-visual displays such as audio output devices. The display subsystem can include a cathode ray tube (CRT), a flat-panel device such as a liquid crystal display (LCD), a projection device, or some other mechanism for creating a visible image. The display subsystem can also provide a non-visual display such as audio output devices. In general, use of the term “output device” is intended to include all possible types of devices and ways to output information from computer system 810 to the user or to another machine or computer system.
Storage subsystem 824 stores programming and data constructs that provide the functionality of some or all of the modules and methods described herein. These software modules are generally executed by processor 814 alone or in combination with other processors.
The memory subsystem 826 used in the storage subsystem 824 can include a number of memories including a main random access memory (RAM) 834 for storage of instructions and data during program execution and a read only memory (ROM) 832 in which fixed instructions are stored. A file storage subsystem 828 can provide persistent storage for program and data files, and can include a hard disk drive, a floppy disk drive along with associated removable media, a CD-ROM drive, an optical drive, or removable media cartridges. The modules implementing the functionality of certain implementations can be stored by file storage subsystem 828 in the storage subsystem 824, or in other machines accessible by the processor.
Bus subsystem 812 provides a mechanism for letting the various components and subsystems of computer system 810 communicate with each other as intended. Although bus subsystem 812 is shown schematically as a single bus, alternative implementations of the bus subsystem can use multiple busses.
Computer system 810 can be of varying types including a workstation, server, computing cluster, blade server, server farm, or any other data processing system or computing device. Due to the ever-changing nature of computers and networks, the description of computer system 810 depicted in
Particular Implementations
In one implementation, a method is described from the perspective of a system receiving messages from user software. The method includes addressing private comments to restricted recipients in a context of a public message. It includes receiving input that represents private comments embedded in a public message during authoring of the public message. It also includes identifying the private comments and restricted recipients of the private comments using identifiers that link the private comments with the restricted recipients. It further includes directing the private comments privately to the restricted recipients when the public message is dispatched.
This method and other implementations of the technology disclosed can include one or more of the following features and/or features described in connection with additional methods disclosed. In the interest of conciseness, the combinations of features disclosed in this application are not individually enumerated and are not repeated with each base set of features. The reader will understand how features identified in this section can readily be combined with sets of base features identified as implementations such as redactive messaging environment, social interface, business interface, redactive messaging schema, etc.
The method further includes providing a user interface application that visually distinguishes the private comments embedded in the public message from public comments which can include a user interface application that displays the private comments and any private responses as one or more supplemental threads. These identifiers, when displayed in a user interface application, can actively hyper-link the private comments to the restricted recipients at various electronic messaging systems. The method further includes using identifiers that include at least tags, usernames and handles.
The method further includes formatting the public message without blank spaces where a private comment has been removed, whereby it is not apparent to viewers who are not the restricted receipts of the private comments where the private comments were embedded. It also includes forwarding of the public message by the restricted recipients without forwarding the private comments, unless an addressee of forwarded public message was also one of the restricted recipients.
Other implementations may include a non-transitory computer readable storage medium storing instructions executable by a processor to perform any of the methods described above. Yet another implementation may include a system including memory and one or more processors operable to execute instructions, stored in the memory, to perform any of the methods described above.
In another implementation, a method is described from the perspective of a system receiving messages from user software. The method includes privately commenting on a public feed item posted in an online social environment. The method includes receiving a request to post a feed item that includes private comments authored in response to a public feed item posted in an online social environment. It includes identifying private comments and intended recipients of the private comments using identifiers that link the private comments with their intended recipients. It also includes directing the private comments privately to the intended recipients when the feed item is posted in the online social environment.
This method and other implementations of the technology disclosed can include one or more of the following features and/or features described in connection with additional methods disclosed.
The method further includes supporting authoring of the private comments in a first online social environment and cross-posting the feed item that includes the private comments in a second online social environment by using identifiers that are specific to the second online social environment. It also includes supporting threaded private conversations with the intended recipients when they respond to the private comments.
The method further includes embedding private content in a profile feed of a user by receiving a feed item that holds private content addressed to a user with a profile feed in the online social environment. It includes that the profile feed is a stream of feed items posted on a user's profile at the online social environment. It also includes linking the private content with the user's profile using identifiers that identify the private content and the user. It further includes privately posting the feed item in the profile feed of the user so that the feed item is viewable only to the user.
The method further includes supporting creation of the feed item that holds the private content in a first online social environment and cross-posting the feed item in a user's profile at a second online social environment by using identifiers that are specific to the second online social environment.
The method further includes embedding private comments in the public feed item by receiving input that represents private comments embedded in a public feed item during authoring of the public feed item. It includes identifying the private comments and intended recipients of the private comments by using identifiers that link the private comments with their intended recipients. It also includes directing the private comments privately to the intended recipients when the public feed item is dispatched. It further includes formatting text of the public feed item without blank spaces where a private comment has been removed, whereby it is not apparent to viewers who are not the restricted receipts of the private comments where the private comments were embedded.
The method further includes forwarding of the public feed item by the intended recipients of the private comments does not forward the private comments, unless an address of forwarded public feed item was also that of an intended recipient of the private comments. It includes identifiers including at least tags, usernames and handles. It also includes identifiers that are links to accounts that represent the intended recipients at various online social environments.
Other implementations may include a non-transitory computer readable storage medium storing instructions executable by a processor to perform any of the methods described above. Yet another implementation may include a system including memory and one or more processors operable to execute instructions, stored in the memory, to perform any of the methods described above.
In yet another implementation, a method is described from the perspective of a system receiving messages from user software. The method includes privately appreciating content posted in an online social environment. It includes receiving a request to post a feed item that appreciates content posted in an online social environment. It also includes identifying the feed item and intended viewers of the feed item using identifiers that link the feed item with its intended recipients and privately posting the feed item in profile feeds of the intended recipients so that the feed item is viewable only to the intended recipients. It further includes identifiers including at least tags, usernames and handles.
This method and other implementations of the technology disclosed can include one or more of the following features and/or features described in connection with additional methods disclosed.
This method further includes supporting creation of the feed item in a second online social environment that appreciates content originally posted in a first online social environment and cross-posting the feed item in the first online social environment by using identifiers that are specific to the first online social environment. It also includes identifiers including at least tags, usernames and handles.
Other implementations may include a non-transitory computer readable storage medium storing instructions executable by a processor to perform any of the methods described above. Yet another implementation may include a system including memory and one or more processors operable to execute instructions, stored in the memory, to perform any of the methods described above.
While the present technology is disclosed by reference to the preferred implementations and examples detailed above, it is to be understood that these examples are intended in an illustrative rather than in a limiting sense. It is contemplated that modifications and combinations will readily occur to those skilled in the art, which modifications and combinations will be within the spirit of the invention and the scope of the following claims.
The application is a continuation of US Application No. claims the benefit of U.S. provisional patent application Ser. No. 14/015,989, titled SYSTEMS AND METHODS OF REDACTIVE MESSAGING, filed Aug. 30, 2013, now U.S. Pat. No. 9,634,977, issued Apr. 25, 2017 which claims the benefit of No. 61/708,385, entitled, “System and Method for Message Management System,” filed on Oct. 1, 2012. The priority applications are hereby incorporated by reference for all purposes.
Number | Name | Date | Kind |
---|---|---|---|
5577188 | Zhu | Nov 1996 | A |
5608872 | Schwartz et al. | Mar 1997 | A |
5649104 | Carleton et al. | Jul 1997 | A |
5715450 | Ambrose et al. | Feb 1998 | A |
5761419 | Schwartz et al. | Jun 1998 | A |
5819038 | Carleton et al. | Oct 1998 | A |
5821937 | Tonelli et al. | Oct 1998 | A |
5831610 | Tonelli et al. | Nov 1998 | A |
5873096 | Lim et al. | Feb 1999 | A |
5918159 | Fomukong et al. | Jun 1999 | A |
5963953 | Cram et al. | Oct 1999 | A |
6083083 | Nishimura | Jul 2000 | A |
6092083 | Brodersen et al. | Jul 2000 | A |
6161149 | Achacoso et al. | Dec 2000 | A |
6168534 | Schultz | Jan 2001 | B1 |
6169534 | Raffel et al. | Jan 2001 | B1 |
6178425 | Brodersen et al. | Jan 2001 | B1 |
6189011 | Lim et al. | Feb 2001 | B1 |
6216135 | Brodersen et al. | Apr 2001 | B1 |
6233617 | Rothwein et al. | May 2001 | B1 |
6266669 | Brodersen et al. | Jul 2001 | B1 |
6295530 | Ritchie et al. | Sep 2001 | B1 |
6324568 | Diec | Nov 2001 | B1 |
6324693 | Brodersen et al. | Nov 2001 | B1 |
6336137 | Lee et al. | Jan 2002 | B1 |
D454139 | Feldcamp | Mar 2002 | S |
6367077 | Brodersen et al. | Apr 2002 | B1 |
6393605 | Loomans | May 2002 | B1 |
6396605 | Heflinger et al. | May 2002 | B1 |
6405220 | Brodersen et al. | Jun 2002 | B1 |
6434550 | Warner et al. | Aug 2002 | B1 |
6446089 | Brodersen et al. | Sep 2002 | B1 |
6535909 | Rust | Mar 2003 | B1 |
6549908 | Loomans | Apr 2003 | B1 |
6553563 | Ambrose et al. | Apr 2003 | B2 |
6560461 | Fomukong et al. | May 2003 | B1 |
6574635 | Stauber et al. | Jun 2003 | B2 |
6577726 | Huang et al. | Jun 2003 | B1 |
6601087 | Zhu et al. | Jul 2003 | B1 |
6604117 | Lim et al. | Aug 2003 | B2 |
6604128 | Diec | Aug 2003 | B2 |
6609150 | Lee et al. | Aug 2003 | B2 |
6621834 | Scherpbier et al. | Sep 2003 | B1 |
6654032 | Zhu et al. | Nov 2003 | B1 |
6665648 | Brodersen et al. | Dec 2003 | B2 |
6665655 | Warner et al. | Dec 2003 | B1 |
6684438 | Brodersen et al. | Feb 2004 | B2 |
6711565 | Subramaniam et al. | Mar 2004 | B1 |
6724399 | Katchour et al. | Apr 2004 | B1 |
6728702 | Subramaniam et al. | Apr 2004 | B1 |
6728960 | Loomans | Apr 2004 | B1 |
6732095 | Warshavsky et al. | May 2004 | B1 |
6732100 | Brodersen et al. | May 2004 | B1 |
6732111 | Brodersen et al. | May 2004 | B2 |
6754681 | Brodersen et al. | Jun 2004 | B2 |
6763351 | Subramaniam et al. | Jul 2004 | B1 |
6763501 | Zhu et al. | Jul 2004 | B1 |
6768904 | Kim | Jul 2004 | B2 |
6772229 | Achacoso et al. | Aug 2004 | B1 |
6782383 | Subramaniam et al. | Aug 2004 | B2 |
6804330 | Jones et al. | Oct 2004 | B1 |
6826565 | Ritchie et al. | Nov 2004 | B2 |
6826582 | Chatterjee et al. | Nov 2004 | B1 |
6826745 | Coker et al. | Nov 2004 | B2 |
6829655 | Huang et al. | Dec 2004 | B1 |
6842748 | Warner et al. | Jan 2005 | B1 |
6850895 | Brodersen et al. | Feb 2005 | B2 |
6850949 | Warner et al. | Feb 2005 | B2 |
7062502 | Kesler | Jun 2006 | B1 |
7069231 | Cinarkaya et al. | Jun 2006 | B1 |
7069497 | Desai | Jun 2006 | B1 |
7181758 | Chan | Feb 2007 | B1 |
7289976 | Kihneman et al. | Oct 2007 | B2 |
7340411 | Cook | Mar 2008 | B2 |
7356482 | Frankland et al. | Apr 2008 | B2 |
7401094 | Kesler | Jul 2008 | B1 |
7412455 | Dillon | Aug 2008 | B2 |
7508789 | Chan | Mar 2009 | B2 |
7603483 | Psounis et al. | Oct 2009 | B2 |
7620655 | Larsson et al. | Nov 2009 | B2 |
7698160 | Beaven et al. | Apr 2010 | B2 |
7779475 | Jakobson et al. | Aug 2010 | B2 |
7851004 | Hirao et al. | Dec 2010 | B2 |
7870204 | LeVasseur et al. | Jan 2011 | B2 |
7945629 | Kritt | May 2011 | B2 |
8014943 | Jakobson | Sep 2011 | B2 |
8015495 | Achacoso et al. | Sep 2011 | B2 |
8032297 | Jakobson | Oct 2011 | B2 |
8073850 | Hubbard et al. | Dec 2011 | B1 |
8082301 | Ahlgren et al. | Dec 2011 | B2 |
8095413 | Beaven | Jan 2012 | B1 |
8095594 | Beaven et al. | Jan 2012 | B2 |
8098800 | Piatt | Jan 2012 | B2 |
8209308 | Rueben et al. | Jun 2012 | B2 |
8209333 | Hubbard et al. | Jun 2012 | B2 |
8275836 | Beaven et al. | Sep 2012 | B2 |
8457545 | Chan | Jun 2013 | B2 |
8484111 | Frankland et al. | Jul 2013 | B2 |
8490025 | Jakobson et al. | Jul 2013 | B2 |
8504945 | Jakobson et al. | Aug 2013 | B2 |
8510045 | Rueben et al. | Aug 2013 | B2 |
8510664 | Rueben et al. | Aug 2013 | B2 |
8566301 | Rueben et al. | Oct 2013 | B2 |
8646103 | Jakobson et al. | Feb 2014 | B2 |
8756275 | Jakobson | Jun 2014 | B2 |
8769004 | Jakobson | Jul 2014 | B2 |
8769017 | Jakobson | Jul 2014 | B2 |
8959440 | Pike et al. | Feb 2015 | B2 |
20010027388 | Beverina et al. | Oct 2001 | A1 |
20010044791 | Richter et al. | Nov 2001 | A1 |
20020002986 | Jones et al. | Jan 2002 | A1 |
20020013850 | Mitchell et al. | Jan 2002 | A1 |
20020022986 | Coker et al. | Feb 2002 | A1 |
20020029161 | Brodersen et al. | Mar 2002 | A1 |
20020029376 | Ambrose et al. | Mar 2002 | A1 |
20020035577 | Brodersen et al. | Mar 2002 | A1 |
20020042264 | Kim | Apr 2002 | A1 |
20020042843 | Diec | Apr 2002 | A1 |
20020072951 | Lee et al. | Jun 2002 | A1 |
20020074418 | Smith | Jun 2002 | A1 |
20020082892 | Raffel et al. | Jun 2002 | A1 |
20020129352 | Brodersen et al. | Sep 2002 | A1 |
20020140731 | Subramaniam et al. | Oct 2002 | A1 |
20020143997 | Huang et al. | Oct 2002 | A1 |
20020152102 | Brodersen et al. | Oct 2002 | A1 |
20020161734 | Stauber et al. | Oct 2002 | A1 |
20020162090 | Parnell et al. | Oct 2002 | A1 |
20020165742 | Robins | Nov 2002 | A1 |
20030004971 | Gong et al. | Jan 2003 | A1 |
20030018705 | Chen et al. | Jan 2003 | A1 |
20030018830 | Chen et al. | Jan 2003 | A1 |
20030066031 | Laane | Apr 2003 | A1 |
20030066032 | Ramachandran et al. | Apr 2003 | A1 |
20030069936 | Warner et al. | Apr 2003 | A1 |
20030070000 | Coker et al. | Apr 2003 | A1 |
20030070004 | Mukundan et al. | Apr 2003 | A1 |
20030070005 | Mukundan et al. | Apr 2003 | A1 |
20030074418 | Coker | Apr 2003 | A1 |
20030088545 | Subramaniam et al. | May 2003 | A1 |
20030120675 | Stauber et al. | Jun 2003 | A1 |
20030151633 | George et al. | Aug 2003 | A1 |
20030159136 | Huang et al. | Aug 2003 | A1 |
20030187321 | Hoffmann et al. | Oct 2003 | A1 |
20030187921 | Diec | Oct 2003 | A1 |
20030189600 | Gune et al. | Oct 2003 | A1 |
20030191743 | Brodersen et al. | Oct 2003 | A1 |
20030204427 | Gune et al. | Oct 2003 | A1 |
20030206192 | Chen et al. | Nov 2003 | A1 |
20030225730 | Warner et al. | Dec 2003 | A1 |
20040001092 | Rothwein et al. | Jan 2004 | A1 |
20040010489 | Rio | Jan 2004 | A1 |
20040015981 | Coker et al. | Jan 2004 | A1 |
20040027388 | Berg et al. | Feb 2004 | A1 |
20040128001 | Levin et al. | Jul 2004 | A1 |
20040186860 | Lee et al. | Sep 2004 | A1 |
20040193510 | Catahan et al. | Sep 2004 | A1 |
20040199489 | Barnes-Leon et al. | Oct 2004 | A1 |
20040199536 | Barnes Leon et al. | Oct 2004 | A1 |
20040199543 | Braud et al. | Oct 2004 | A1 |
20040249854 | Barnes-Leon et al. | Dec 2004 | A1 |
20040260534 | Pak et al. | Dec 2004 | A1 |
20040260659 | Chan et al. | Dec 2004 | A1 |
20040268299 | Lei et al. | Dec 2004 | A1 |
20050050555 | Exley et al. | Mar 2005 | A1 |
20050091098 | Brodersen et al. | Apr 2005 | A1 |
20060021019 | Hinton et al. | Jan 2006 | A1 |
20060041562 | Paczkowski et al. | Feb 2006 | A1 |
20070219958 | Park et al. | Sep 2007 | A1 |
20070266097 | Harik | Nov 2007 | A1 |
20080005240 | Knighton et al. | Jan 2008 | A1 |
20080104128 | Drayer | May 2008 | A1 |
20080249972 | Dillon | Oct 2008 | A1 |
20090063415 | Chatfield et al. | Mar 2009 | A1 |
20090100342 | Jakobson | Apr 2009 | A1 |
20090177744 | Marlow et al. | Jul 2009 | A1 |
20100064015 | Sacks et al. | Mar 2010 | A1 |
20110218958 | Warshavsky et al. | Sep 2011 | A1 |
20110247051 | Bulumulla et al. | Oct 2011 | A1 |
20120042218 | Cinarkaya et al. | Feb 2012 | A1 |
20120130910 | Al-Alami | May 2012 | A1 |
20120173550 | Boullery et al. | Jul 2012 | A1 |
20120233137 | Jakobson et al. | Sep 2012 | A1 |
20120284618 | Bailor et al. | Nov 2012 | A1 |
20120290407 | Hubbard et al. | Nov 2012 | A1 |
20130031162 | Willis et al. | Jan 2013 | A1 |
20130212497 | Zelenko et al. | Aug 2013 | A1 |
20130247216 | Cinarkaya et al. | Sep 2013 | A1 |
20140095597 | McNeil et al. | Apr 2014 | A1 |
20140149887 | Bejar et al. | May 2014 | A1 |
20140207611 | Cleary et al. | Jul 2014 | A1 |
Entry |
---|
U.S. Appl. No. 13/093,478—Office Action dated May 3, 2013, 13 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Response to Office Action dated May 3, 2013 filed Jul. 31, 2013, 9 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Final Office Action dated Oct. 16, 2013, 13 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Response to Final Office Action dated Oct. 16, 2013 filed Nov. 12, 2016, 10 pages (non-HBW). |
Twitter Facebook Integration (Sep. 14, 2011) (retreived by Examiner from the Internet Archve.). |
U.S. Appl. No. 13/093,478—Response to Advisory Action filed Feb. 18, 2014, 11 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Office Action dated Mar. 21, 2016, 34 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Response to Office Action dated Mar. 21, 2016 filed Jun. 21, 2016, 14 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Final Office Action dated Aug. 26, 2016, 34 pages (non-HBW). |
U.S. Appl. No. 13/093,478—Response to Final Office Action dated Aug. 26, 2016 filed Nov. 18, 2016, 21 pages (non-HBW). |
U.S. Appl. No. 14/015,989—Non Final Office Action dated Nov. 2, 2015, 35 pages. |
U.S. Appl. No. 14/015,989—Response to Non Final Office Action dated Nov. 2, 2015 filed Mar. 3, 2016, 13 pages. |
U.S. Appl. No. 14/015,989—Notice of Allowance dated Dec. 20, 2016, 19 pages. |
U.S. Appl. No. 14/015,989—Supplemental Response to Non Final Office Action dated Nov. 2, 2015 filed Mar. 10, 2016, 6 pages. |
U.S. Appl. No. 14/015,989—Final Office Action dated Oct. 26, 2016, 12 pages. |
U.S. Appl. No. 14/015,989—Response to Final Office Action dated Oct. 26, 2016 filed Dec. 2, 2016, 15 pages. |
Number | Date | Country | |
---|---|---|---|
20180069824 A1 | Mar 2018 | US |
Number | Date | Country | |
---|---|---|---|
61708385 | Oct 2012 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14015989 | Aug 2013 | US |
Child | 15494417 | US |