Chat management system based on user personalized matching
By building user profile data and providing personalized matching, sensitive word detection, and message synchronization functions, the system solves the problems of insufficient matching accuracy and chat management in existing social systems, achieving accurate matching and secure and reliable instant communication, and improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-12
- Publication Date
- 2026-04-07
AI Technical Summary
Existing social matching systems are inadequate in terms of user matching accuracy and chat management functions. They fail to fully consider users' interests, activity types, and active periods, and lack effective sensitive word filtering mechanisms and cross-device message synchronization functions, which affect user experience.
Build user profile data and perform personalized matching based on interest tags, geographical distance, gender and age range. Provide instant messaging, sensitive word detection and message synchronization functions, support text, voice and video communication, and realize message roaming across devices.
It improves the accuracy of user matching, enhances the security of chat content and user experience, and ensures message continuity and communication diversity across different devices.
Smart Images

Figure CN121814722A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of internet social technology, specifically to a user-personalized matching chat management system. Background Technology
[0002] With the rapid development of the mobile internet, social applications have become an indispensable tool in people's daily lives. Although existing stranger social applications can provide users with basic dating functions, they still have many shortcomings in terms of user matching accuracy and chat management.
[0003] Existing social matching systems typically employ simple geolocation matching or random matching methods, failing to fully consider personalized factors such as user interests, activity types, and active times. This results in significant discrepancies between matching results and user expectations, requiring users to spend considerable time filtering to find suitable social partners.
[0004] In addition, existing chat management systems are also inadequate in terms of message security and user experience. Some systems lack effective sensitive word filtering mechanisms and cannot intercept illegal content in a timely manner.
[0005] Some systems do not support cross-device message synchronization, so users cannot view their chat history after switching devices.
[0006] Some systems lack an effective reconnection mechanism when encountering network anomalies during a call, which affects the user's communication experience;
[0007] Therefore, there is a need for a social system that can accurately match users based on their personalized characteristics and provide comprehensive chat management functions. Summary of the Invention
[0008] The purpose of this invention is to provide a user-personalized matching chat management system to solve the technical problems of low user matching accuracy and imperfect chat management functions in the prior art.
[0009] To achieve the above objectives, the present invention provides a user-personalized matching chat management system, including a user management module, a personalized matching module, a chat management module, and a message synchronization module.
[0010] The user management module is used to receive user registration requests and create user accounts. The registration request includes a mobile phone number, verification code, and login password. The user management module encrypts and stores the login password and generates user profile data based on the user's input interest tag information.
[0011] The personalized matching module receives matching filter conditions set by the user, including activity type, geographical distance, gender, and age range. The personalized matching module performs user matching calculations based on the matching filter conditions and user profile data to generate a list of candidate users sorted by matching degree.
[0012] The chat management module is used to establish instant communication connections between matched users, supporting three communication methods: text messages, voice calls, and video calls. The chat management module performs sensitive word detection on the sent message content and blocks the message when sensitive words are detected.
[0013] The message synchronization module is used to synchronize and store the user's session records to the cloud server, realize the message roaming function across devices, and record the read status and unread status of each message.
[0014] The beneficial effects of this invention include:
[0015] First, by constructing user profile data containing interest tags and combining it with multi-dimensional filtering conditions such as activity type, geographical distance, gender, and age range for personalized matching, the accuracy of user matching has been significantly improved and the time cost of user screening has been reduced.
[0016] Secondly, the platform uses a sensitive word detection mechanism to filter chat content in real time, effectively preventing the spread of illegal content and ensuring the platform's content security and user experience.
[0017] Third, by synchronizing and storing messages in the cloud, a cross-device message roaming function is achieved, allowing users to view complete historical chat records even after changing devices, thus improving the continuity of the user experience.
[0018] Fourth, by supporting text, voice, and video communication methods, it meets users' communication needs in different scenarios and enhances the diversity of social interaction. Attached Figure Description
[0019] Figure 1 The system architecture diagram provided for embodiments of the present invention;
[0020] Figure 2 A user registration flowchart provided for an embodiment of the present invention;
[0021] Figure 3 A personalized matching flowchart provided for embodiments of the present invention;
[0022] Figure 4 A flowchart of chat management provided for an embodiment of the present invention;
[0023] Figure 5 This is a structural diagram of the message synchronization module provided in an embodiment of the present invention. Detailed Implementation
[0024] The present invention will now be described in further detail with reference to the accompanying drawings and specific embodiments.
[0025] Example 1: System Overall Architecture
[0026] like Figure 1 As shown, the user-personalized matching chat management system provided by the present invention includes a user management module, a personalized matching module, a chat management module, a message synchronization module, a dynamic publishing module, a dynamic interaction module, an interactive game module, and a red envelope activity module.
[0027] The user management module is responsible for the creation, authentication, and management of user accounts and is the foundation of the entire system. The personalized matching module executes intelligent matching algorithms based on user profile data and filtering conditions to recommend suitable social partners to users. The chat management module provides instant messaging functionality and supports multiple communication methods. The message synchronization module ensures the consistency of messages on different devices. The dynamic publishing module and dynamic interaction module constitute the social content ecosystem. The interactive game module and red envelope activity module enhance user activity and platform stickiness.
[0028] Example 2: User Management Module
[0029] like Figure 2 As shown, the user management module includes a verification code sending unit, a password strength verification unit, and a third-party authorized login unit.
[0030] The workflow of the verification code sending unit is as follows: The user enters their mobile phone number on the client and clicks the "Get Verification Code" button. The client sends a verification code request to the server. The server calls the SMS platform interface to send a six-digit verification code to the user's mobile phone. The validity period of the verification code is set to five minutes, and the cooldown time between two sendings is set to sixty seconds. The maximum number of verification codes that can be sent to the same mobile phone number is three times within one hour. After exceeding this number, the user needs to complete the image verification code verification before sending can continue.
[0031] The password strength verification unit performs strength verification on the login password set by the user. The preset strength policy requires that the password length be no less than eight characters and must contain four character types: uppercase letters, lowercase letters, numbers, and special characters. When the password entered by the user does not meet the strength policy, the system prompts the user with the specific non-compliance and guides the user to set a password that meets the requirements. Before storage, the password is hashed using the bcrypt encryption algorithm to ensure the security of password storage.
[0032] The third-party authorization login unit supports three third-party login methods: WeChat, Alipay, and Apple ID. After the user clicks the third-party login button, the system redirects to the authorization page of the corresponding third-party platform. After the user authorizes, the third-party platform returns authorization credentials. The system obtains the user's unique identifier (OpenID) on the third-party platform based on the authorization credentials. The system checks whether this unique identifier is already bound to the user account of this system. If it is already bound, the user logs in directly. If it is not bound, the user is prompted to bind a mobile phone number or create a new account. Only one third-party account can be bound to the same mobile phone number. When a binding conflict occurs, the system prompts the user to choose to merge accounts or switch accounts.
[0033] After a user completes registration, the system generates user profile data based on the interest tags entered by the user. The user profile data includes the user's selected activity type tags (such as sports, board games, reading), the user's geographical location information, statistics of the user's active time periods, and the user's basic attribute information (such as gender and age). The user profile data is stored in the user database and can be accessed by the personalized matching module.
[0034] Example 3: Personalized Matching Module
[0035] like Figure 3 As shown, the user matching operation performed by the personalized matching module includes three stages: recall, coarse ranking, and fine ranking.
[0036] During the recall phase, the system retrieves candidate users with the same activity type tag from the user database based on the activity type set by the current user. For example, when a user selects "sports" as the activity type, the system retrieves all users whose interest tags contain "sports" as the initial candidate user set. The recall phase uses inverted index technology, with the activity type tag as the key and the user ID list as the value, to achieve millisecond-level candidate user retrieval.
[0037] During the coarse sorting stage, the system calculates the geographical distance between the current user and each candidate user in the candidate user set. The geographical distance is calculated based on the user's latitude and longitude coordinates using the spherical distance formula. The system filters candidate users according to the geographical distance threshold set by the user, removing candidate users whose geographical distance exceeds the threshold from the set. At the same time, the system further filters candidate users according to the gender and age range conditions set by the user.
[0038] During the fine-tuning phase, the system calculates a matching score based on the number of shared interest tags between the current user and the remaining candidate users, and the activity level of the candidate users. The number of shared interest tags refers to the number of intersection elements between the current user's interest tag set and the candidate user's interest tag set. The activity level is calculated based on the candidate user's login frequency, posting frequency, and interaction frequency over the past seven days. The matching score calculation takes into account both the number of shared interest tags and the activity level, with the number of shared interest tags having a higher weight than the activity level. The system sorts the candidate users in descending order of matching score to generate the final candidate user list.
[0039] The personalized matching module also includes a blacklist filtering unit, a privacy setting filtering unit, and a request frequency control unit. Before generating the candidate user list, the blacklist filtering unit removes users from the current user's blacklist from the candidate user set to ensure that the user will not see the blocked individuals. The privacy setting filtering unit removes candidate users who are set as unmatchable from the candidate user set based on the candidate user's privacy settings, respecting the user's privacy choices. The request frequency control unit records the number of matching requests for each user. When the number of matching requests for the same user exceeds 30 within ten minutes, the system rejects the user's subsequent matching requests to prevent malicious spamming of the interface.
[0040] For cold start users (newly registered users with no historical interaction records), the system prioritizes recommending users with higher activity levels on the platform to help new users quickly establish social connections.
[0041] Example 4: Chat Management Module
[0042] like Figure 4 As shown, the chat management module includes a communication connection establishment unit, a call exception handling unit, and an invitation template sending unit.
[0043] The communication connection establishment unit is used to establish a WebSocket long connection between the user initiating the call and the user receiving the call. When user A initiates a chat request to user B, the system first checks user B's online status. If user B is online, the system establishes a WebSocket long connection between the two users' clients to achieve real-time bidirectional data transmission. After the WebSocket connection is established, users can choose from three communication methods: text messages, voice calls, or video calls.
[0044] For text message communication, the user enters the message content in the input box and clicks the send button. The client sends the message to the server via a WebSocket connection, and the server forwards the message to the other client and persists it to the database.
[0045] For voice and video calls, the system uses WebRTC technology to achieve point-to-point real-time audio and video transmission. Before the call is established, the system displays a privacy prompt to the user, informs the user of how the call content will be processed, and obtains the user's consent to the recording.
[0046] The chat management module performs sensitive word detection on the sent message content. The system maintains a sensitive word database, which includes illegal and non-compliant words, advertising and marketing words, and uncivilized language. When a user sends a message, the system matches the message content with the sensitive word database. If a sensitive word is detected, the system intercepts the message and prompts the sender with the reason why the message failed to be sent.
[0047] The call exception handling unit is used to handle network exceptions during a call. When the system detects that the WebSocket connection is interrupted or the audio / video stream transmission is interrupted, the call exception handling unit automatically performs a reconnection operation. If the reconnection is successful, the call returns to normal.
[0048] If reconnection fails, the system will send an SMS notification to the user, informing them that the call was interrupted and providing alternative communication methods.
[0049] The invitation template sending unit provides users with preset invitation message templates. The template content covers common invitation scenarios, such as sports invitations, dining invitations, and entertainment invitations. After the user selects a template, the system fills the template content into the message input box. The user can send it directly or modify it before sending, reducing the user's input cost.
[0050] The chat management module also supports sending location cards and schedule cards. Location cards include the location name, detailed address, and map coordinates, making it easy for users to arrange meeting places. Schedule cards include the event name, event time, and event location, making it easy for users to arrange event schedules.
[0051] Example 5: Message Synchronization Module
[0052] like Figure 5 As shown, the message synchronization module includes a message search unit, a do-not-disturb setting unit, and a message retransmission unit.
[0053] The message synchronization module synchronizes and stores the user's conversation records to the cloud server. After each message is successfully sent, the system stores information such as message content, sending time, sender identifier, receiver identifier, and message type in the cloud database. When a user logs in on a new device, the system automatically retrieves the user's historical conversation records from the cloud database, realizing the message roaming function across devices.
[0054] The message synchronization module records the read and unread status of each message. When the recipient opens the session window to view the message, the client sends a read receipt to the server. The server updates the status of the message to read and notifies the sender. The sender's client displays a read mark next to the message, informing the sender that the message has been read by the recipient.
[0055] The message search unit provides in-session message search functionality. Users can enter search keywords in the search box, and the system will retrieve messages containing the search keywords from the user's session history and display the search results in reverse chronological order. When a user clicks on a message entry in the search results, the system will automatically locate the message's position within the session.
[0056] The Do Not Disturb setting allows users to set a Do Not Disturb state for a specified session. When a session is in Do Not Disturb state, the system will not push notifications to the user when a new message is received in that session. Instead, it will only display the number of unread messages in the message list. Users can cancel the Do Not Disturb state for a session at any time.
[0057] The message resend unit is used to handle message sending failures. When a message fails to send, the system displays a red exclamation mark next to the message to inform the user that the message sending failed. The message resend unit automatically performs a resend operation. The maximum number of resend operations is three. If all three resends fail, the system retains the message and prompts the user to check the network connection and then manually retry.
[0058] Example 6: Dynamic Publishing Module and Dynamic Interaction Module
[0059] The dynamic posting module is used to receive dynamic content submitted by users and publish it to the dynamic square. The types of dynamic content include plain text dynamics, image and text dynamics, and video dynamics. Users can enter text content on the dynamic editing page and choose to add images or videos.
[0060] The dynamic publishing module includes a draft saving unit, a scheduled publishing unit, and a media compression unit. The draft saving unit automatically saves the currently edited content to local storage during the user's editing process. An automatic save is triggered every three seconds. When the user exits and re-enters the editing page, the system automatically restores the previously saved draft content. The scheduled publishing unit allows users to set a scheduled publishing time. After completing dynamic editing, the user selects scheduled publishing and sets the publishing time. The system automatically submits and publishes the dynamic content when the set publishing time is reached. The media compression unit compresses user-uploaded images and videos to reduce file size while maintaining visual quality. The compressed media files are then uploaded to the content distribution network to improve loading speed.
[0061] Before being published, dynamic content must undergo content review. The dynamic publishing module submits the dynamic content to the content review service, which performs sensitive word detection on text content and identifies illegal content in images and videos. Once approved, the dynamic content is published to the dynamic square for other users to browse.
[0062] For posts that fail the review, the system will explain the specific violations to the user and provide suggestions for improvement.
[0063] The dynamic interaction module records other users' likes, comments, and favorites on published posts. When a user clicks the like button below a post, the system records the like relationship and updates the post's like count. When a user enters and submits a comment, the system records the comment and updates the post's comment count. Comments support mentioning other users and inserting emojis. When a user clicks the favorite button, the system adds the post to the user's favorites list.
[0064] The dynamic interaction module calculates the popularity score of a post based on the number of likes, comments, and favorites. Posts with higher popularity scores are given priority in the dynamic square, which supports two display methods: sorting by time and sorting by popularity.
[0065] Example 7: Interactive Game Module
[0066] The interactive game module is designed to facilitate icebreakers and communication between users through lightweight interactive games. The game types supported by the interactive game module include quiz games and charades.
[0067] Taking the tacit understanding quiz game as an example, the game process is as follows: The user enters the game lobby and selects the tacit understanding quiz game type. The system adds the user to the matching queue. The matching service selects two online users from the matching queue and matches them into the same game room. After the game starts, the system shows the same questions to the two users. The two users choose their own answers. After each round of quizzes, the system compares whether the answers of the two users are consistent and records the number of times they are consistent. The game consists of five rounds of quizzes, and the duration of each game is controlled between three and five minutes.
[0068] After the game ends, the system calculates the compatibility score based on the number of times the two users' answers match. The compatibility score is displayed as a percentage; the more times they match, the higher the compatibility score. The system then displays the game results page to both users, including the compatibility score and a comparison of the answers in each round of questions and answers.
[0069] The interactive game module distributes rewards to both users after the game ends. The reward types include points, badges, and exposure coupons. Points can be used to redeem platform items, badges are displayed on the user's profile page, and exposure coupons can increase the user's priority in subsequent matchmaking.
[0070] The interactive game module supports a quick reconnect function. When a user encounters a network interruption during the game, the system retains the game progress, and the game will automatically resume from the previous round after the user reconnects.
[0071] Example 8: Red Envelope Activity Module
[0072] The red envelope activity module is used to increase user activity through red envelope incentives. The red envelope activity module displays the red envelope claiming portal to users within a preset activity time window. The activity time window is configured by the operations staff in the backend, such as from 10:00 to 22:00 every day.
[0073] After a user clicks on the red envelope claiming entry, the system first checks whether the current time is within the activity time window. If it is not within the time window, the system displays a page showing the activity is not open and the next opening time. The system then checks whether the user has reached the daily limit for the number of red envelopes claimed. Each user has a daily limit of three red envelopes to claim. If the limit is reached, the system will notify the user that the number of red envelopes claimed for the day has been used up.
[0074] After the check is passed, the system receives the user's request to claim the red envelope. The red envelope activity module deducts one red envelope from the red envelope inventory through atomic operations in Redis to ensure that there will be no over-issuance of red envelopes in high-concurrency scenarios. The system uses the double mean method to generate random amounts to ensure the fairness of the amount distribution. The types of red envelope rewards include points, coupons and cash red envelopes. Points are directly credited to the user's account, coupons are added to the user's coupon wallet, and cash red envelopes are credited to the user's account balance.
[0075] For cash red envelopes, users need to complete real-name authentication to receive them, and can apply for withdrawal only when their account balance reaches ten yuan. The red envelope activity module calls the accounting service to record the reward deposit information and pushes the winning notification to the user through the message service.
[0076] When the red envelope inventory is insufficient or the user's qualifications are not met, the system will automatically roll back the deduction operation to ensure data consistency.
[0077] Example 9: System Security Mechanism
[0078] This system employs multiple security safeguards.
[0079] Regarding account security, the system detects the login device and location when a user logs in. When a device change or login from a different location is detected, the system triggers a security verification process, requiring the user to complete a graphic verification code or SMS secondary verification. After a user fails to log in five times consecutively, the system triggers a 60-second cooling-off mechanism to prevent brute-force attacks.
[0080] In terms of communication security, data transmission between the client and the server is encrypted using the HTTPS protocol, sensitive user information (such as passwords and mobile phone numbers) is encrypted before transmission, and chat messages are de-identified when stored.
[0081] Regarding privacy protection, users can configure options such as "who can see my profile", "who can send me private messages", and "who can call me" in the privacy settings. The system filters matching results and communication requests based on the user's privacy settings. Users can export personal data at any time, which meets the data portability requirements. Users can apply to cancel their accounts, and the system will use a soft deletion method to process the data and completely clear the user data after a 30-day delay.
[0082] In terms of content security, the system conducts real-time review of user-posted dynamic content and chat messages. The review methods include machine review and manual review. Machine review uses sensitive word matching and image recognition technology to automatically block obviously illegal content. Manual review reviews content that is questionable in the machine review. Users can report illegal content, and the reported information is submitted to the manual review queue for priority processing.
[0083] The technical solution provided by this invention constructs user profile data containing interest tags through a user management module, executes intelligent matching algorithms based on multi-dimensional conditions through a personalized matching module, provides secure and reliable instant messaging functions through a chat management module, and realizes cross-device message roaming through a message synchronization module, forming a complete user personalized matching chat management solution, which effectively improves the accuracy of social matching and the user experience.
Claims
1. A user-personalized matching chat management system, characterized in that, include: The user management module is used to receive user registration requests and create user accounts. The registration request includes a mobile phone number, verification code and login password. The user management module encrypts and stores the login password and generates user profile data based on the user's input interest tag information. The personalized matching module is used to receive matching filter conditions set by the user, which include activity type, geographical distance, gender and age range. The personalized matching module performs user matching calculations based on the matching filter conditions and the user profile data to generate a candidate user list sorted by matching degree. The chat management module is used to establish instant messaging connections between matched users, supporting three communication methods: text messages, voice calls, and video calls. The chat management module performs sensitive word detection on the sent message content and blocks the message when sensitive words are detected. The message synchronization module is used to synchronize and store users' conversation records to the cloud server, enabling message roaming across devices, and recording the read and unread status of each message.
2. The user-personalized matching chat management system according to claim 1, characterized in that, The user management module also includes: The verification code sending unit is used to send SMS verification codes to the user's mobile phone number. The SMS verification code is valid for five minutes and the sending interval cooldown time is sixty seconds. The password strength verification unit is used to verify whether the login password set by the user meets the preset strength policy. The preset strength policy requires that the password length be no less than eight characters and contain four character types: uppercase letters, lowercase letters, numbers, and special characters. The third-party authorization login unit is used to receive authorization credentials returned by a third-party platform, obtain the user's account identifier on the third-party platform based on the authorization credentials, and bind the account identifier to the user account in the system.
3. The user-personalized matching chat management system according to claim 1, characterized in that, The process by which the personalized matching module performs user matching calculations includes: During the recall phase, a set of candidate users with the same activity type tag is retrieved from the user database based on the activity type set by the user. In the coarse sorting stage, the geographical distance between the current user and each candidate user in the candidate user set is calculated, and candidate users whose geographical distance exceeds the geographical distance threshold set by the user are filtered out. In the fine ranking stage, a matching score is calculated based on the number of common interest tags between the current user and the remaining candidate users and the activity level of the candidate users. The candidate user list is then generated in descending order of the matching scores.
4. A user-personalized matching chat management system according to claim 3, characterized in that, The personalized matching module also includes: The blacklist filtering unit is used to remove users from the current user's blacklist from the candidate user set before generating the candidate user list; The privacy settings filtering unit is used to remove candidate users who are set to be unmatchable from the candidate user set based on their privacy settings information. The request frequency control unit records the number of matching requests for each user. If the number of matching requests for the same user exceeds 30 within ten minutes, the user's subsequent matching requests will be rejected.
5. A user-personalized matching chat management system according to claim 1, characterized in that, The chat management module also includes: The communication connection establishment unit is used to establish a WebSocket long connection between the user initiating the call and the user receiving the call, and maintain a real-time bidirectional data transmission channel. The call exception handling unit is used to automatically perform a reconnection operation when a call connection interruption is detected. If the reconnection fails, an SMS notification is sent to the user. The invitation template sending unit is used to provide users with preset invitation message templates. After the user selects a template, the template content is sent as a message to the other party.
6. A user-personalized matching chat management system according to claim 1, characterized in that, Also includes: The dynamic publishing module is used to receive dynamic content submitted by users. The dynamic content includes one of text, images and videos. The dynamic publishing module submits the dynamic content to the content review service for compliance review. After the review is passed, the dynamic content is published to the dynamic square. The dynamic interaction module records other users' likes, comments, and favorites on published posts, and calculates the post's popularity based on the number of likes, comments, and favorites.
7. A user-personalized matching chat management system according to claim 6, characterized in that, The dynamic publishing module also includes: The draft saving unit is used to automatically save the currently edited content to local storage while the user is editing dynamic content; The scheduled publishing unit is used to receive the scheduled publishing time set by the user and automatically submit and publish the dynamic content when the scheduled publishing time is reached. The media compression unit is used to compress user-uploaded images and videos, and then upload the compressed media files to the content delivery network.
8. A user-personalized matching chat management system according to claim 1, characterized in that, Also includes: The interactive game module is used to match two online users into the same game room, conduct multiple rounds of interactive Q&A, calculate the compatibility score based on the consistency of the two users' answers, and issue points and exposure coupons to the two users after the game ends.
9. A user-personalized matching chat management system according to claim 1, characterized in that, Also includes: The red envelope activity module is used to display the red envelope claiming portal to users within a preset activity time window, receive users' red envelope claiming requests, deduct one red envelope from the red envelope inventory through atomic operations and generate a random amount, and record the random amount into the user's account balance.
10. A user-personalized matching chat management system according to claim 1, characterized in that, The message synchronization module also includes: The message search unit is used to receive search keywords input by the user, retrieve messages containing the search keywords from the user's session records, and return the search results; The Do Not Disturb setting unit is used to receive the Do Not Disturb state set by the user for a specified session, and not to push notifications to the user when the specified session receives a new message; The message retransmission unit is used to automatically resend a message when the message transmission fails. The maximum number of retransmission operations is three.