Written in the front: the notification system is an important part of the information dissemination mechanism of the website, enough to write a large chapter to explain. This article only combs the design principle, the subsequent related content will continue to update. Notifications here include, but are not limited to, announcements, reminders, or messages (different function definitions under different usage scenarios). About the client platform (iOS, Android, WP, etc.) notification mechanism, in its interactive design guide has more detailed description, we can refer to their own.
I. Notification System definition
The notification system, as its name implies, is the communication processing system of the notification information. The purpose is to allow users to get the messages and reminders they need and to process them.
Here the "need to get" has two layers of meaning: 1, users interact with each other triggered the flow of information (messages, comments or replies, DMS, etc.) 2, the site wants users to understand the concerns of the message (System bulletin, etc.)
The principle of the notification system design can be summed up as follows: 1, the highest message efficiency (acquisition, processing, information transmission, user feedback efficiency) 2, to avoid harassment (noise, frequent prompts)
Ii. Classification of notices
The unused platform and the product itself are different because of the needs of the business.
Can be roughly divided into the following:
Iii. the realization mechanism of notification logic
The logic of the notification is streamlined as follows:
The following sections are explained separately:
(i) Notification of merger
Notifications need to be consolidated before push to improve messaging efficiency, reduce harassment, reduce noise, and balance server pressure. 1) Consolidation cycle:
All messages in fixed time are aggregated (within 24 hours/30 days, etc.);
No fixed time (summary as long as not processed/unread)
Of course they are all grouped together: The message was not processed within 24 hours of merging
2) Classification Merging
Merge with the same kind (such as n-message merged into 1 articles)
The same initiator merges (such as John sent to you by the N bar DMS)
Merge at the same time period (for example, 24-hour total received n comments)
(ii) Notification of distribution
When the notification is completed in accordance with the rule, the system pushes it through the notification pipeline to the user so that the user can process it.
1) Distribution mode
The distribution method is similar to the feed system, which adopts the push method, which is to push to the user in a specified time. Some of the specific types require a user request (Pull) to pull the unread message.
Most of the current notifications give priority to the total number of unhandled notifications merged, reminding the user that new messages need to be processed. Users click on the number and then go to the server to request specific message content. This approach combines cost, stress, and experience into consideration. Of course, some extreme conditions need to be optimized: If the unread message exceeds 1000, the user requests the first 50 or into the cache medium. Technical children's shoes will have various means, here do not elaborate.
2) Distribution frequency (time)
The distribution time is mainly based on the priority of the message to do the partition:
3) Distribution Pipeline
Distribution pipeline is the specific push channel of message notification, according to the type of business can be divided into: Web, App, sms, mail and so on.
(iii) User handling
According to the distribution method mentioned above, the processing of notifications can be logically divided into two levels: the processing of notification status and the processing of notification content.
1 The state of the processing of the narrow sense is whether read (processed).
Usually the initial number is the system pushed over the total amount of unread, the user clicks into the list of related functions, read the action completed, the unread number decreased accordingly.
There are several situations that need to be modified:
If the user has not read more information (m=100), but the first page list can only display (n=10), the unread number is m-n=90;
Some products will equate clicks with read. That is, the user simply clicks on whether or not to open a list to view all considered read.
Such processing is typically used for lower-level messages. Clicking on that has been read can effectively reduce harassment.
Some of the higher-level messages that have been processed can be defined to be processed, not consulted, after the user has done the relevant action.
If the user comments, replies, click to ignore or click on the deletion of the action to think that has been handled.
2 The content of the processing of a narrow sense of understanding is the user whether or not to operate.
Depending on the type of message and the needs of the business, the operation can be divided into:
Processing: The user must click on the function link for processing. For example: Your password is too simple, click here to modify;
Reply: If reply DMs, reply to comment;
Confirmation: Make sure feedback on the message, such as some system prompts to set the "I know, no longer prompt" option;
Ignore: User to ignore or no action;
Delete: The user deletes this message.
3 The state of message processing needs to be unified.
The message needs to be marked with a status that is handled, and the state is opened at different terminals.
For example, when a user views a message on the client, this message should be automatically marked as read on the Web site.
(iv) Notification of recycling
Reclaims operations that are primarily intended for user-processed messages.
Messages that are triggered between users typically need to be saved for file retention.
such as comments/replies/Messages/DMS. The product provides an option to ask whether the user is automatically cleaned over a certain period.
In some products, you also need to consider the priority of functionality.
If you remove a buddy or blacklist, automatically deletes both DMS records.
A system-triggered message generally sets a certain amount of time to reclaim.
such as system reminders, notices, announcements, etc. Automatically delete the product after it expires. Physically, you can set whether to back up.
Expired but the user does not process the message (the user is not logged in for a long time but receives a reply from others) can be processed according to business requirements.
such as unread DMS/comments/reply to permanent reservation. Important unread messages can be tried two times to push or use other means (mailbox, APP, SMS, etc.) notification.
Iv. Interactive mode of notification (read not read)
Note: Specific interactions need to take account of their business characteristics and target needs. Specific business may need to emphasize that some businesses need to consider harassment, so it is shameless to put aside specific situations to talk about interactions.
This is only for the general community site, describe the way individuals like to interact.
1. Reminder interaction when new message arrives
When a new message arrives, you can use the following reminders
Caption Flashing
Sound reminds the new message to automatically trigger the sound when it arrives
Bubbles + Numbers
New Message floating Layer
Bullet Window Tips
2, notice processing
At present, many messages use the current trigger, instant processing similar to "WYSIWYG" interaction.
The need to take this approach into account:
Message notification is located in global navigation, access to any channel to ensure timely receipt of new messages;
After the message is processed in the floating layer, the user can continue to do the previous operation without causing interruption;
Due to limited navigation area, the message types need to be unified and planned; (Facebook is classified as a friend request, DMS, notification.) )
Provides access to history (more, all messages) (level two pages)
Mark read unread state, handle good message reminder number relationship
V. Prevention of harassment (interruption)
Due to the nature of the message itself, too much useless notice is bound to cause noise, disturbing to the user. Therefore, it is reasonable to set the notification frequency and channel of the message to avoid the loss of the morning experience and efficiency.
1, the provision of notification frequency and channel management functions
such as common message unsubscribe management, message notification type management.
Facebook notification set number notification channel notification Type 1 on Facebook (web) you are involved in Dynamic 2 email (email) Friends Dynamic 3 Push notification (APP) tags 4 SMS notification group dynamic 5 application requests and dynamic remarks: Notification channel The way and the notification types can be combined in a comprehensive use. 2, increase the shielding function message shielding function in the business should belong to the first notification type management, when the business module is more and before the association dispersed, or open platform function access to the third party application notice, you can use the shielding function.
3, the combination of permission System 1, the use of privacy settings to define specific access permissions, scope and so on 2, combined with the blacklist function blacklist can be used to mask the specific user or keyword message.
Vi. other 1, message pull back: When users do not log on for a long time or do not deal with the message, you can use other channels to push notifications, has reached the purpose of pulling back. Marking 1 trigger Condition 1 The user does not log in for a long time 2 2) A long time does not process the message 3 3) The main notice mode expiration (blocked or blocked) 3 4) There is secondary notification Mode 4 Notice Channel 1 Web 5 2) Email 6 3) SMS 7 4) APP 8 Memo 1) sync read unread status 9 2) pull back for related guidance 10 3 control frequency and mode to prevent causing harassment
2, DMS and Webim