WO2021212476A1 - Communication method, device and system - Google Patents

Communication method, device and system Download PDF

Info

Publication number
WO2021212476A1
WO2021212476A1 PCT/CN2020/086723 CN2020086723W WO2021212476A1 WO 2021212476 A1 WO2021212476 A1 WO 2021212476A1 CN 2020086723 W CN2020086723 W CN 2020086723W WO 2021212476 A1 WO2021212476 A1 WO 2021212476A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
condition
user
client
conditions
Prior art date
Application number
PCT/CN2020/086723
Other languages
French (fr)
Chinese (zh)
Inventor
孙建
Original Assignee
Sun Jian
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Jian filed Critical Sun Jian
Priority to PCT/CN2020/086723 priority Critical patent/WO2021212476A1/en
Priority to CN202080004657.9A priority patent/CN113841173A/en
Publication of WO2021212476A1 publication Critical patent/WO2021212476A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Definitions

  • the present disclosure relates to the field of computing technology, in particular to a communication method, equipment and system.
  • Some existing instant messaging applications can send messages regularly. However, in other cases, for example, the sender sets a certain position when sending the message, and the message can be displayed only when the terminal device of the recipient reaches the position. At this time, it is possible that because the GPS of the receiver's terminal device is not turned on or damaged, the correct position of the receiver's terminal device cannot be obtained, so that the receiver cannot receive the corresponding message even if it reaches the set position. At this time, the sender does not know that it is impossible to send the message, and therefore fails to take other measures.
  • the technical problem to be solved by the present disclosure is to provide a communication method that can ensure the integrity and accuracy of communication and improve the efficiency of the communication process.
  • the present disclosure proposes a communication method, which is applied to the client, and includes:
  • the message indicating that the creation of the condition is unsuccessful is displayed; in the case that the creation of the user setting condition is successful, when the user setting condition is satisfied, the message is received
  • the client of the party displays the message.
  • the present disclosure proposes a terminal device including a memory and a processor, where the memory is used to store executable instructions; the processor is used to execute the instructions to implement the method according to the above communication.
  • the present disclosure also proposes a server device, including a memory, for storing computer program instructions for executing the above-mentioned communication method for downloading.
  • the present disclosure also proposes a communication method applied to a server, including:
  • the client displays the information that the creation is unsuccessful; in the case that the creation of the user setting conditions is successful, when the user setting conditions are met, the The client of the recipient of the above condition displays the message.
  • the present disclosure also proposes a server device, including a memory and a processor, where the memory is used to store executable instructions; the processor is used to execute the instructions to implement the above communication method.
  • the present disclosure also proposes a communication method, including:
  • the present disclosure also proposes a communication system, which is characterized in that it includes at least a client and a server, and executes the above-mentioned communication method.
  • the communication method, terminal device and server device described in the present disclosure enable the sender to reliably send condition-based messages by adopting the above technical solutions, thereby enhancing the reliability of condition-based messages.
  • FIG. 1 is a schematic diagram of a computer architecture of an embodiment of the present disclosure
  • FIG. 2 is a schematic diagram of a system constituted by a terminal device and a server according to an embodiment of the present disclosure
  • 3 to 11 are schematic diagrams of the interface of the first embodiment of the present disclosure.
  • FIG. 20 is a diagram of a friend display list interface in an embodiment of the present disclosure.
  • Figure 21 is a flowchart of three main core links in an embodiment of the present disclosure.
  • FIG. 22 is a flowchart of a client sending a condition message in an embodiment of the present disclosure
  • FIG. 23 is a processing flowchart of a message server in an embodiment of the present disclosure.
  • FIG. 24 is a flowchart of a conditional message system in an embodiment of the present disclosure.
  • FIG. 25 is a flowchart of a general method of an embodiment of the present disclosure.
  • 26 to 29 are schematic diagrams of the interfaces of the fourth and fifth embodiments of the present disclosure.
  • the computer system 10 includes a central processing unit (CPU) 12, a random access memory (RAM) 13, a storage unit 14, a communication unit 15, an input unit 16, and a display unit 17 connected via a communication bus 11.
  • CPU central processing unit
  • RAM random access memory
  • storage unit 14 a storage unit 14
  • communication unit 15 an input unit 16, and a display unit 17 connected via a communication bus 11.
  • the central processing unit CPU12 can comprehensively control the processing executed by the computer system 10.
  • RAM13 is volatile memory.
  • the storage unit 14 may be a non-volatile storage medium, including, for example, a readable storage medium such as a magnetic hard disk, a solid state hard disk, an optical disk, or a flash memory disk.
  • common flash memories include NAND, NOR, and the like.
  • programs or codes can be stored in the storage unit 14 in advance, and after being loaded into the RAM 13 by the CPU 12, the CPU 12 executes the program instructions to complete corresponding functions.
  • the communication unit 15 may include, for example, an RJ45 module for a network adapter, a WIFI module, a 2G-5G mobile communication module, or a Bluetooth module.
  • the computer system can be connected to the network through the communication unit 15 and communicate with other computer systems on the network.
  • the input unit 16 includes a keyboard, a mouse, or a touch screen, etc. On the client, the user can issue instructions to the computer system 10 through operations performed on the input unit 16.
  • the display unit 17 may include a graphics controller and a display device connected to the graphics controller, and specifically may include a liquid crystal (LCD), a light emitting diode (LED) display, a cathode ray tube (CRT) display, or a touch screen.
  • LCD liquid crystal
  • LED light emitting diode
  • CRT cathode ray tube
  • the computer system 10 may use operating systems such as Windows, Andriod, iOS, or Linux.
  • the terminal device of the embodiment of the present disclosure may be a mobile device such as a mobile phone, a tablet computer (PAD), or a notebook computer, as well as a desktop computer.
  • a mobile device such as a mobile phone, a tablet computer (PAD), or a notebook computer, as well as a desktop computer.
  • FIG. 2 is a schematic diagram of the structure of a network system 20 composed of a terminal device 21 and a server 23 used in an embodiment of the disclosure.
  • the terminal device 21 and the server 23 are connected through the network 22.
  • the network 22 may be a local area network or the Internet, etc., and protocols such as Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), or Wireless Internet (WIFI) are used for communication.
  • the server 23 may have the same computer architecture as FIG. 1, and the storage device in its storage unit 14 contains instructions capable of implementing the method provided by the embodiment of the present disclosure.
  • the server 23 may adopt server frameworks such as Tomcat, Nginx, Spring Boot, Spring Cloud, etc., so that the server can communicate with its clients.
  • the terminal device 21 can download the instruction from the storage device of the server 23 via the network 22, and after execution, the method provided in the embodiment of the present disclosure can be implemented.
  • the method of sending a message disclosed in the present disclosure does not directly send the message to the receiving user, but when certain conditions are met, it is finally transmitted to the receiving user and displayed on the client.
  • This article calls this kind of message a conditional message.
  • FIG. 3 is the communication interface 300 with the manager on the Emily client.
  • 311 items are the user names of their managers, and items 321 and 322 are the usual conversations between the two, and the specific content is omitted.
  • the 301 vertical bar on the far right indicates that the area on its left can be slid.
  • item 332 is a message input box
  • item 333 is a send button
  • item 331 is an extension button.
  • buttons 341 to 344 are buttons corresponding to voice input, video input, photo input, and transfer instructions, which can be clicked to send corresponding messages.
  • item 511 indicates that the interface name is "Set Condition”.
  • the interface includes a message input area 520, of which item 521 is an enlarged message input box, and below are the aforementioned icons 341-344.
  • the interface also includes a condition setting area 530.
  • item 531 displays “Condition”
  • item 532 is "Name”, which means that the input in the input box behind it is the name of the condition message, so that the user can use this name to search for the condition message. The user may not enter this name.
  • the following items 533, 534, and 535 are buttons for adding conditions, corresponding to "increase time”, “increase position", and “increase other” respectively.
  • Timing includes the date setting in the area 620 and the specific time setting in the date in the area 630.
  • item 621 displays “Day Setting”, item 622 to item 625 are four setting interfaces that can only be single-selected. Item 622 is to set a specific date; item 623 is to set the date range; item 624 indicates that the date is set to "every day”; item 625 indicates that the date is set to "every working day”. Emily selected the above 622 items and set the date as "September 4, 2019".
  • item 631 displays "Hour&Minute Setting", and the four checkboxes below are used to input hours and minutes.
  • the 632 items and 633 items are used to input the specific time; and the upper and lower input boxes of the 634 item are used to input the time period, which respectively indicate the start time and the end time.
  • Emily selects the above 634 items and sets the time from "9:00" to "10:30".
  • Item 821 in Figure 8 is the time when this message was sent, which is 6:36 pm on September 3.
  • Item 827 is the specific message content, which is the same as item 521 in Figure 7.
  • 822 items indicating that this is a conditional message (“Condition Message") have been added
  • 824 items indicating its status (“Satus”) .
  • the condition is not established (“No Established")
  • the 825 item in the next row shows that the reason (“Reason”) is a time conflict ("Time Conflict”).
  • 911 is the title, which displays "Reason: Time Conflict”.
  • 921 items show “In the plan, September 4, 2019 is scheduled from 9:00 to 10:00.”
  • 922 items show that the existing arrangement is "hosting a technical meeting in room 807". That is, in the previously set condition message of the same name "Schedule", a meeting to be held from 9:00 to 10:00 on the same day has been set. Since the start time is the same as the new setting, it starts at 9:00, so the time of the two conflicts, so the above information is displayed.
  • the error message is displayed as items 824 and 825 in Figure 8. In this way, the rationality of the time arrangement is ensured. If the logic error is not checked and the error prompt is not displayed, Emily will not revise the work plan, which will eventually lead to confusion in the work.
  • Davis is Emily's husband. On September 6th or 7th, Emily will go shopping at Wal-Mart, but she is not sure when. Since Davis was going on a business trip, in order to remind Emily, he sent a conditional message in the dialogue with Emily. That is, in the condition setting interface 500 shown in FIG. 5, click 534 item "add position", and the position selection interface 1200 shown in FIG. 12 appears.
  • the top 1211 item displays "Select Place”.
  • the map display area 1230 is automatically located to the nearest Wal-Mart supermarket, as shown in the figure 1231 As shown in the item.
  • the dialogue interface with Emily on Davis' client will display the information of the condition message as shown in items 1422 to 1425 in Figure 14.
  • the status of the 1422 display conditions ("Status") is not established ("No EstAblished")
  • the 1423 display reason (“Reason") is that the other party's GPS is not turned on (“GPS Not Opned”). Therefore, after Davis clicks 1424 "Reminder” (reminder), the client automatically generates and sends an instant message to Emily as shown in item 1431 for the user Davis, and the content is "Please be the condition The message turns on GPS”.
  • Davis' client will not display the message that the condition creation is unsuccessful, and thus will not be processed further. In this way, when Emily arrives at the Wal-Mart supermarket, she will not receive a message from Davis.
  • Emily can also send conditional messages triggered by other events to Davis in the interface shown in Figure 5.
  • the other event setting interface 1600 shown in FIG. 16 is obtained.
  • 1611 items display “Select Other Events”
  • 1621 items display “Weather” (weather)
  • the following three options correspond to “Rain” ( ⁇ ), "Snow” ( ⁇ ) and “Cold wave” ( ⁇ ).
  • the message is pre-set according to conditions, where "[&Time]” represents the forecasted time when it will rain, which is replaced by the system according to the actual time. .
  • 1831 items show that the message source is "System Messages”
  • 1832 items show that the status of conditional messages is "Failed”, indicating that the condition monitoring is invalid
  • 1833 items show that the reason for the failure is "Weather Server Error” ( Server error)
  • Item 1834 displays “Reminder” (reminder)
  • item 1835 is the original message content, the same as item 1822.
  • Davis When Davis usually goes out to work at about 8:00 in the morning.
  • Davis’ client receives Emily’s conditional message as shown in item 1941 in Figure 19, reminding "this afternoon It's going to rain, please bring an umbrella.”
  • "[&Time]” in item 521 in Figure 17 is replaced by "this afternoon” (this afternoon) by the system.
  • the sender Emily receives the information that the successfully created condition is invalid, she chooses to send a reminder message to the receiver Davis. Therefore, even if the message server is not restored, Davis can determine whether it is raining or not by going directly to other weather service websites. If the failure message is not displayed when the weather server fails, both parties believe that the conditions are still valid, which will cause Davis to not bring an umbrella because he does not know it is going to rain.
  • Davis can send himself a message about the weather conditions.
  • the condition in the condition message may be related to time and location, or other events.
  • the conditions may have parameter settings, such as specific time, location, etc., or there may be no parameters.
  • the conditions preset by the user are met, for example, the weather forecast in the third embodiment is about to rain, the conditions are triggered, and the common terminology in this field is the occurrence of the event.
  • a listener can be established to monitor the event.
  • the communication system adopting the method of the present disclosure is referred to as a conditional message communication system in this article.
  • the system at least includes a client and a message server.
  • the client may be installed on the terminal device 21 of the network system shown in FIG. 2
  • the message server may be installed on the server device 23 in FIG. 2.
  • the two can be connected through the network 22 so that the system can send and receive conditional messages.
  • instant messaging can also be carried out.
  • the communication system in order to ensure the normal and effective operation of the conditional message communication system, compared with the existing instant messaging, the communication system at least realizes three main core links as shown in FIG. 21.
  • the first core link S1 is to issue an instruction to establish a corresponding listener according to the conditions selected by the user.
  • the system first identifies the condition selected by the user, and issues an instruction to monitor whether the condition is met, that is, to monitor the event, such as an instruction to establish a listener that can monitor the event.
  • a listener is a component that listens to a state change of a domain object, that is, a monitoring mechanism established to detect whether the conditions are met.
  • the interface EventListener can be used as the base class to establish the class and object of the listener; in the environment of using PHP, the event binding mechanism can be used to realize the monitoring and so on.
  • the system should determine the source of the condition according to the condition, that is, the location where the condition is generated or triggered, and the type of listener corresponding to the condition. For example, the system in the first embodiment recognizes that a time listener can be established in the message server. In the second embodiment, the system recognizes that a location listener is to be established on the receiver's device. According to the third embodiment, the system can identify whether it is raining or not on the weather server according to the conditions. In this link, the system can first identify the location of the condition, such as the sender client, receiver client or weather server, and then send the condition over, and finally determine the corresponding condition at the specific location. The type of listener.
  • the second core link is S2, which is the establishment of a listener and monitoring.
  • the first step is to ensure that the listener can be established according to the instructions of the above S1 link.
  • the weather server can establish a corresponding listener, such as whether it is raining, according to the instructions issued by the message server in the above S1 link. If the weather server receives the instruction but cannot establish a listener according to the instruction, the condition cannot be monitored. This requires the cooperation of the weather server with corresponding modules to complete the function of establishing a listener.
  • the listener makes sure that the listener can successfully listen.
  • the working mechanism of the listener is to judge the specific data related to the condition. Therefore, in order to achieve successful monitoring, it is also necessary that the data can be provided normally.
  • the time data for judging whether the conditions are met can be stably provided, and there is the right of access at any time, so the time conditions can be regarded as the internal conditions of the conditional message communication system of the present disclosure.
  • the received message is monitored, it is checked if a certain preset keyword is contained in the message, and then the message is forwarded.
  • the message in this embodiment is the internal data of the conditional message communication system, which can be fully grasped, so the conditions established on the message data also belong to the internal conditions of the communication system. Since the data of the internal conditions can be obtained completely, it is always possible to effectively monitor whether the internal conditions are triggered according to the data.
  • condition data of external conditions may not always be provided normally and stably.
  • the GPS on the mobile phone of the receiver client since there is no location data provided by the GPS, it is impossible to determine whether Emily has reached the Wal-Mart supermarket. Location.
  • Another example is the weather event in the third embodiment. If the weather data sensor connected to the weather server is faulty, it will not be able to successfully monitor whether there is a preset rainy weather. These situations are not solvable by the conditional message communication system itself, and belong to the situation where an external condition error cannot be successfully monitored. Therefore, when establishing a listener for external conditions, it is also necessary to check whether the data of the external conditions can be provided normally.
  • logic error checking steps can be added as in the first embodiment.
  • the logic error generally refers to an error caused by resource conflicts caused during setting, such as time resources, office resources, and so on. If there is a logical error, even if a preset message is received after the condition is triggered, it will be meaningless to the receiving user due to the existence of the error. So check for logic errors when creating conditions. If a logical error is found and the condition creation is unsuccessful, it will be reported back to the user in time, so that the user can correct the error in time and avoid the loss caused by the error. See the situation in Example 1.
  • the listener can be established directly according to user instructions, ignoring logic errors. This situation is artificially canceling logical errors.
  • the third core link S3 is to process monitoring signals.
  • the listener detects that the event occurs, that is, when the user setting condition is met, it will send a signal, indicating that the user setting condition corresponding to the listener has been met.
  • the system can identify this signal, find the message corresponding to the signal, and send the message to the recipient client and display it.
  • the listener when the weather forecast is raining as set in advance, the listener established on the weather server sends a monitoring signal to the message server. After receiving the signal, the message server finds the corresponding message and sends it to the client of the recipient.
  • the realization position of each of the above three links can be on the sender, server or receiver respectively.
  • the positions of the three links can be different or the same.
  • the timer of the sender device can be used, and all the steps are completed in the sender client; or the timer of the message server device can be used to complete all the steps in the message server; The timer of the receiver's device is all completed in the receiver's client.
  • the S1 and S3 links can be completed in the message server, and the GPS listener can be set on the receiver's client to realize the S2 link; S1 can also be completed in the message server, and the S1 link can be completed in the receiver's client.
  • the message is first sent to the recipient's client, and the message is displayed only when it is monitored that the mobile phone where the recipient's client is located arrives at the Wal-Mart supermarket.
  • the S1 and S3 links can be completed in the message server, and the listener can be established in the weather server to realize the S2 link.
  • the S1 and S3 links can be set in the message server.
  • the listener in the S2 link is set at a position suitable for monitoring, that is, where the monitoring event occurs; if there are multiple positions to choose from, such as the monitoring time, try to set it on the server.
  • the steps of sending a condition message on the client can refer to the flowchart of the client shown in FIG. 22.
  • a message determined by the user is obtained, where the message includes the recipient and content of the message.
  • the determination of the message recipient includes that when the user enters the dialogue interface with a friend, the friend is selected as the message recipient by default.
  • the message content determined by the user includes the message directly input by the user, such as the content in item 521 in Fig. 5, or the message sent by the user through the interface of items 341 to 344 in Fig. 5; messages preset according to conditions, such as Fig. 17 Of the 521 items in the content, of course the sending user can also modify the preset message.
  • the content of the message may also include, for example, the shared content mentioned in the following embodiments.
  • Step S2202 Acquire the conditions set by the user.
  • the client terminal displays one or more conditions to the user, allowing the user to select and set parameters.
  • the one or more conditions that are displayed to the user are actually a promise to the user and a requirement for the displayed conditions: when the conditions selected by the user are met, it is possible to send the user's message to Recipient and display the possibility.
  • the above-mentioned conditions can at least meet the realization of the above-mentioned core links S1 and S3.
  • the core link S2 cannot be realized temporarily, a message that the condition creation is unsuccessful can be sent to the receiving user, and the receiving user can adopt other communication methods or wait for the successful realization of the link S2.
  • the receiving user can receive the message.
  • the client can directly display its interface according to pre-determined and settable conditions.
  • the internal conditions that can be provided by the conditional message system itself such as the time-related conditions shown in items 621 to 634 in Figure 6, can meet the above S1 to S3 links, so the conditions are used as a module of the client. Called directly by the client and displayed.
  • the client can also request the message server to obtain conditionable data stored in the server database, and after receiving the conditional data, display the conditional interface for the user to select.
  • the conditions displayed by the terminal can also be changed according to the change of the settable condition data in the message server, which is more flexible.
  • the server stores the conditions of a certain shopping mall’s promotional activities during the discount season. Emily can choose to send the promotional information to Davis when there are mobile phone products instead of other products such as notebook promotional information. After the discount season is over, clear the promotional condition data in the server, and the outdated promotional conditions will not be displayed on the user client.
  • this step may further include sending a request to the message server to obtain and display the settable condition information for the user to select, such as items 1221 and 1232 in FIG. 12, items 1621 and 1622 in FIG. 16, and so on.
  • the displayed condition can realize the above-mentioned core links S1 and S3 within the message system, and at least provides the user with a most basic possibility to send a message according to the condition.
  • the conditions are displayed for the user to choose, so that the user can more intuitively view the conditions that can be set.
  • the user's setting of the conditions includes selecting one or more conditions; setting the parameters of the conditions, directly confirming the default parameters, or directly confirming the conditions without parameters, etc.
  • the conditions selected by the user for parameter setting or direct confirmation become user setting conditions.
  • Step S2203 Send an instruction to create the condition set by the user, or send the condition set by the user.
  • the condition of a certain condition message is a specific location of the sender's client
  • the aforementioned core link S2 is located on the sender's client, so the core link S1 can also be set on the sender's client.
  • the sender client directly issues an instruction to create the user setting condition.
  • the above core link S1 is placed on the message server, or on the receiver's client, the message content and conditions can be sent to the message server, or first sent to the message server and then forwarded to the receiver Party client.
  • Step S2204 Obtain information about whether the user setting condition is successfully created, wherein in the case that the user setting condition is not successfully created, the information indicating that the condition creation is unsuccessful is displayed; in the case that the user setting condition is successfully created Next, when the conditions set by the user are satisfied, the message is displayed on the client of the recipient of the message.
  • a message indicating that the condition creation is unsuccessful is displayed on the sender's client, as shown in item 1422 in FIG. 14. If there is no such processing mechanism, that is, an error occurs when the listener is created to monitor the condition without corresponding information feedback, the sender Emily does not know whether the condition in the condition message she sent has been successfully monitored. There may be situations where the conditions are not successfully monitored but Emily believes that they are successfully monitored, so Emily’s message cannot be sent to Davis in time according to the conditions set by him, which delays the matter.
  • the sender user when there is an error feedback, the sender user can have the opportunity to correct the error or use other communication methods to deliver the message; and in the absence of error feedback, the sender can also determine the sent The conditional message can be correctly sent to the recipient as expected.
  • Figure 23 shows an implementation method applied to a message server.
  • Step S2301 Obtain the message and the set conditions determined by the user. That is, the condition message sent by the client in step S2203 in FIG. 22 is received.
  • the message server may first store the condition information and the corresponding message content.
  • step S2302 an instruction to create a condition is issued. That is, according to the condition message received in the previous step, the aforementioned core link S1 is executed.
  • Step S2303 It is determined whether the user setting condition is successfully created.
  • the sending end, receiving end or other application server that executes the above core link S2 sends information about whether a listener is created and working normally to the message server, so that the message server determines whether the user setting condition is created success.
  • the aforementioned core link S2 is located on the message server, it is directly determined whether the user setting conditions are successfully created. In this step, it can also include checking for logic errors.
  • Step S2304 Send information about whether the user setting conditions are successfully created to the client.
  • the client displays the message that the creation is unsuccessful; in the case that the creation of the user setting condition is successful, when the user setting condition is satisfied, The message is displayed on the client of the recipient of the message.
  • Figure 24 shows the implementation flow chart of a specific conditional message system.
  • a table with settable conditions is added to the database of the message server, where each record has a settable condition, expressed as follows according to the java data structure, in which the keyword private is omitted, and the meaning of each member variable See note.
  • ConditionParamArray represents an array of parameters to which the condition belongs, where each array member represents a pointer to a specific parameter object, and the class to which the parameter object belongs may have a common base class, and the common base class may include parameter names And other shared information.
  • the condition parameter array also includes information about how each parameter is combined, such as logical AND, logical OR, and so on.
  • the nIDConditionSource in the above definition represents the ID of the condition source. For example, when the value is 1, 2, 3, 4, it means that the trigger position of the condition is located at the sender client, receiver client, message server or other application server.
  • the specific information of the condition source is stored in the strParamOfConditionSource variable. For example, when the value is "GPS”, it means the GPS location is to be monitored; when the value is "http:: ⁇ www.weather.com", it means the location of the weather server to be monitored. These two variables are used together to determine the location of the condition.
  • a table of conditional messages set by the user is also added to store the conditional messages submitted by the user.
  • Each record is represented as follows according to the java data structure:
  • nSelected_Conditiion_RecordID represents the ID number selected by the user that can set conditions, that is, the nID in the above Conditiion_Record.
  • the array class SelecedParamArray is used to store the parameters of the above conditions selected or input by the user. For example, the parameters corresponding to the 534 conditions in Figure 13 are the contents of the 5341 items under it. Its internal structure can be similar to ConditionParamArray in Condition_Record.
  • the last bStatus variable represents the status of the condition, the default value is 0, which means that the condition is created unsuccessfully or fails after being created successfully, 1 means that the condition is created successfully, and 2 means that the condition has been met.
  • the bStatus, nSelected_Conditiion_RecordID and arraySelParam in the above Condition_Message definition realize one condition together, and can refer to realize multiple conditions.
  • 24100 is the sender client
  • 24200 is the message server
  • 24300 is the receiver client.
  • the client 24100 determines the settable conditions of the message (S24101), such as reading from the above-mentioned settable database in the server, and displays the interface of the conditions (S24102).
  • Receiving a condition message determined by the user includes not only the recipient, the sender, and the specific message content of the message, but also information about the conditions set by the user. Then send the condition message to the message server (S24104).
  • the message server 24200 receives the condition message (S24201), and first saves the condition message in the condition message table set by the user in the database (S24202). At this time, the record in the table corresponds to the default value of the bStatus data in the Condition_Message 0, that is, the condition has not been created successfully.
  • an instruction to create a listener is issued (S24203). For example, firstly, search the settable condition table according to the nSelected_Conditiion_RecordID in the user set condition record to obtain the corresponding settable condition record. Then obtain nIDConditionSource and strParamOfConditionSource from the settable condition record, such as "2" and "GPS", respectively, indicating that the receiver's client should monitor GPS. After determining the trigger location of the condition, send an instruction to establish a listener to the location, such as the recipient client.
  • the instruction may include condition message identification data idConditon_Message in Condition_Message, and data representing the condition itself, nSelected_Conditiion_RecordID, arraySelParam.
  • the sender client 24100 receives the information (S24104), and displays information about whether the condition is successfully created (S24105). For example, when the establishment is unsuccessful, the client displays the 824 items in Figure 8 and the 1422 items in Figure 14 to the user; if the creation is successful, the above bStatus data must be set to 1, and then the sender client will send the condition creation Success information is displayed, such as 1024 items in Figure 10.
  • the listener When the listener detects that the condition is met, it sends a monitoring signal to the server 24200.
  • the signal may be in the form of a message, Http or Tcp request, etc., which includes the nSelected_Conditiion_RecordID data that identifies the condition and the idConditon_Message that identifies the condition message. data.
  • the message server 24200 After receiving the service request or message (S24206), the message server 24200 first determines whether the above-mentioned monitoring signal is received (S24207), for example, whether the signal contains a keyword indicating that this is a monitoring signal, etc.
  • step S24210 If not, perform general processing on the service request (S24210), and then return to the above step S24206; if yes, search the condition message table set by the user according to the idConditon_Message number of the condition message in the signal, and find all The message corresponding to the above condition (S24208). In the found records, the bStatus corresponding to the nSelected_Conditiion_RecordID condition is set to 2, that is, the condition is satisfied. If it is found that all the conditions have been met, then read idReceiver or strMessage respectively to get the message content and receiver. Then send the message (S24209), and finally return to step (S24206).
  • the recipient client 24300 After the recipient client 24300 receives the message (S24301) sent in step S24209, it can display the message (S24302). In this way, the recipient user sees the sender's condition message.
  • step S24202 of saving the condition message the parameters of the conditions set by the user can also be checked logically.
  • the time set by Emily in the first embodiment is different from the time set by her manager. If there is a conflict, it returns a message that the listener cannot be established successfully, and directly executes steps S24204 and S24205.
  • FIG. 25 is a flowchart of a general method of the present disclosure.
  • Step S2501 Obtain a message determined by the user, where the message includes the recipient and content of the message.
  • Step S2502 Acquire the conditions set by the user.
  • Step S2503 According to the condition set by the user, an instruction to create the condition is issued.
  • Step S2504 Create the condition. For example, a listener is established for the condition. If the server of the third-party application establishes the listener according to the instructions of the previous step, the third-party server also needs to have corresponding functional modules.
  • Step S2505 Determine whether the creation of the user setting condition is successful, where: in the case that the creation of the user setting condition is unsuccessful, display the unsuccessful creation information on the user's client; and set the condition in the user In the case of a successful creation, when the user setting conditions are met, the message is displayed on the client of the recipient of the message.
  • the following further extended methods can also be included.
  • the extended method is also applicable to the method of the client shown in FIG. 22 or the method of the message server shown in FIG. 23, for example.
  • the method further includes obtaining and displaying information about the invalidation of the condition when the successfully created condition fails when the user-set condition is successfully created.
  • the client also obtains and displays the information of the successful creation. This allows the sender to be more certain that the condition has been created successfully.
  • the information showing the unsuccessful creation of the condition includes an interface for sending a reminder message, and the interface for the reminder message is used to trigger the reception of the message
  • the party sends information related to the message.
  • the information may be, for example, item 1424 in FIG. 14 for reminding to correct errors; or, in another embodiment, it is directly the content of the message.
  • it also includes acquiring the settable conditions of the message and displaying the conditions.
  • the conditions include the internal conditions of the communication system using the method of the present disclosure or the external conditions of the system.
  • the reasons for the unsuccessful creation of the conditions include logic errors or errors in the external conditions of the communication system using the method of the present disclosure.
  • the trigger position of the user setting condition is located in any of the following positions: the terminal where the message sender client is located, the terminal where the message receiver client is located, the message server, or the third-party application server. Listeners can be established in these locations to monitor whether the conditions set by the user are triggered.
  • a reliable conditional message communication system can be realized, that is, when the user obtains the information that the condition setting is unsuccessful or invalid, they will know that even if the condition is met, the message corresponding to the condition will not be received ; When the user does not receive the above-mentioned unsuccessful or invalid information, they will know that the condition is in a state of being effectively monitored, and when the condition occurs, the message will be received. If there is no such feedback information, the user is not sure whether the message can be received when the condition actually occurs.
  • the directly sent message can be set with conditions, but the shared message can also be set with conditions.
  • the two-dimensional code contains the web address of the webpage, and ordinary real-time sharing can be performed through the webpage.
  • the client After scanning by the client using the method of the present disclosure, the client sends the web address to the message server and recognizes that it is an Amazon website.
  • the sales page of Amazon.com has a code similar to the following to indicate the sales price of the product:
  • the message server finds a field with “id” as “priceblock_ourprice” in the webpage file, and can read the price of the commodity as "$628.40" in it, and monitor it.
  • the message server when it recognizes that this is a commodity sales page that can monitor price changes, it sends relevant information to the sender's client, and Emily's client displays the interface 2800 in FIG. 28.
  • item 2811 indicates that this is a "Web Page Shere Setting" interface.
  • Item 2821 displays "Content”, and the input box of item 2822 is the URL of the web page shown in Figure 26 automatically filled in by the client.
  • the following 2831 items represent the recipient users of the sharing. Davis clicks on the 2832 item to the right of the 2831 item, and a user list selection interface as shown in Figure 20 will pop up. Emily returned after selecting the 2011 Davis item, showing the selected name in the 2,833 item.
  • the client on Emily's mobile phone sends the above condition message to the message server.
  • the message server adds a new monitoring thread, or adds a new task to another existing monitoring thread to monitor the price change. For example, in the monitoring thread, through a loop statement, every certain time, such as one minute, one hour, or one day, visit the URL of the webpage shown in Figure 26, after obtaining the webpage code of the webpage, look for the id as the above "priceblock_ourprice" The corresponding price. In this process, for example, due to resource constraints, the newly added monitoring thread fails to be created successfully, or the existing monitoring thread is cancelled or suspended, the message server will send a conditional creation unsuccessful to the sender client information.
  • a dialog box shown in 2700 in FIG. 27 pops up.
  • the title of the 2701 display window is "Condition”
  • the following item 2711 represents the single option of "direct sharing", that is, common and unconditional sharing.
  • Item 2712 indicates that only when the price of the commodity is less than or equal to the price entered by the user in Item 2713, the sharing will be performed.
  • a two-dimensional code is also popped up. Different from the sixth embodiment, this two-dimensional code not only contains website information but also condition information.
  • Emily’s client obtains the above information and transmits the above information to the message server.
  • the message server checks the above-mentioned information, such as whether the website is an authenticated website or the like. After checking that there is no problem, the client displays an interface 2800 such as that shown in Figure 28, and the interface automatically displays the data filled in by Emily in Figure 27, such as the 2842 item price "570". Emily also selects Davis as the receiving user by clicking on item 2832.
  • the server receives the condition message sent by the Emily client, it goes through steps S24201 and S24202 in Figure 24 and in step S24203, because it detects that the condition is related to the pre-authenticated Amazon website, it sends the establishment to the Amazon website. The request of the relevant listener.
  • the server of the Amazon website can recognize the request and establish a corresponding listener.
  • the server of the Amazon website does not use the method of checking the price every other time used in the fourth embodiment, but whenever the price modification function is called to modify the price of the product, it checks whether the URL of the product whose price is modified is Figure 26 shows the URL of the Apple mobile phone.
  • the server of the Amazon website returns information about whether the listener is successfully set to the message server, and forwards it to the sender's client, and displays information about whether the condition is successfully created on it.
  • the delisting information will be sent to the message server at the same time, and the message server will send the message server to the sender customer.
  • the terminal sends a message that the monitoring is over, and finally displays on the client terminal that the product is out of stock, that is, the message that the condition is invalid after being successfully created.
  • the fourth embodiment adopts the establishment of a query listener on the message server to monitor specific fields in a specific URL, and it is possible to implement sending and receiving conditional messages without changing the existing application server, such as the server of the Amazon website.
  • the fifth implementation enables Amazon.com to receive the request of the message server to establish a listener and return the listener message. The advantage is that the monitoring task is placed at the location of the event, that is, the Amazon website server, which also reduces the burden of the message server, and the overall configuration is more reasonable.
  • the interface shown in FIG. 26 is an interface on a mobile terminal such as a tablet computer or a mobile phone. After clicking on 2604 items, the interface shown in Figure 28 will pop up directly for the user to set conditions.
  • the process used can be the same as in the fourth or fifth embodiment.
  • this article also discloses a terminal device, which is characterized by comprising a memory and a processor, wherein the memory is used to store executable instructions; the processor is used to execute the instructions to implement According to Figure 22, the method of communication and its extended method.
  • a server device which is characterized by comprising a memory for storing computer program instructions for executing the communication method and its expansion method described in FIG. 22 for downloading.
  • server device which is characterized by comprising a memory and a processor, wherein the memory is used to store executable instructions; the processor is used to execute the instructions to implement the communication according to FIG. 23 Method and its extension method.
  • This article also discloses a communication system, which is characterized in that it includes at least a client and a server, and executes the communication method and the extended method described in FIG. 25.
  • the system further includes a third-party application server, such as the weather server in the third embodiment of this document.
  • the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment.
  • the device embodiments described above are only illustrative.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Disclosed are a communication method, a device and a system. Said method comprises: acquiring a message determined by a user; acquiring a condition set by a user; issuing an instruction for creating the condition; creating the condition; determining whether the condition set by the user is created successfully, the information of the unsuccessful creation being displayed on a client of the user in cases where the condition set by the user is not created successfully, and the message being displayed on a client of a receiver of the message after the condition set by the user is satisfied in cases where the condition set by the user is created successfully. By means of the present disclosure, condition messages that are trustworthy to users are sent.

Description

一种通讯的方法、设备及系统A communication method, equipment and system 技术领域Technical field
本公开涉及计算计技术领域,特别涉及一种通讯的方法、设备及系统。The present disclosure relates to the field of computing technology, in particular to a communication method, equipment and system.
背景技术Background technique
现有的一些即时通讯应用,可以定时发送消息。但在其它情况下,比如发送方在发送消息时设定了某位置,当接收方的终端设备到达所述位置时,才能显示所述消息。此时,则有可能因为接收方终端设备的GPS未打开或损坏,不能获取接收方终端设备的正确位置,因而使得接收方即使到达了所述设定位置,也不能接收到对应的消息。而此时对于发送方而言,却不知道所述消息已不可能发送,因而未能采取其它办法。Some existing instant messaging applications can send messages regularly. However, in other cases, for example, the sender sets a certain position when sending the message, and the message can be displayed only when the terminal device of the recipient reaches the position. At this time, it is possible that because the GPS of the receiver's terminal device is not turned on or damaged, the correct position of the receiver's terminal device cannot be obtained, so that the receiver cannot receive the corresponding message even if it reaches the set position. At this time, the sender does not know that it is impossible to send the message, and therefore fails to take other measures.
发明内容Summary of the invention
本公开所要解决的技术问题是提供一种通讯的方法,能够保证通讯完整性与准确性,提高通讯过程的高效性。The technical problem to be solved by the present disclosure is to provide a communication method that can ensure the integrity and accuracy of communication and improve the efficiency of the communication process.
本公开提出一种通讯的方法,应用于客户端,包括:The present disclosure proposes a communication method, which is applied to the client, and includes:
获取用户确定的消息,其中,所述消息包括消息的接收方及内容;Acquiring a message determined by the user, where the message includes the recipient and content of the message;
获取用户设置的条件;Get the conditions set by the user;
发出创建所述用户设置的条件的指令,或者发送所述用户设置的条件;Issue an instruction to create the condition set by the user, or send the condition set by the user;
获取所述用户设置条件是否成功创建的信息,其中,Obtain the information about whether the user setting condition is successfully created, where:
在所述用户设置条件创建不成功的情况下,显示所述条件创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。In the case that the creation of the user setting condition is unsuccessful, the message indicating that the creation of the condition is unsuccessful is displayed; in the case that the creation of the user setting condition is successful, when the user setting condition is satisfied, the message is received The client of the party displays the message.
与上述方法相对应,本公开提出一种终端设备,包括存储器和处理器,其中,存储器,用于存储可执行的指令;处理器,用于执行所述指令,以实施根据上述通讯的方法。Corresponding to the above method, the present disclosure proposes a terminal device including a memory and a processor, where the memory is used to store executable instructions; the processor is used to execute the instructions to implement the method according to the above communication.
本公开还提出一种服务器设备,包括存储器,用于存储执行上述通讯的方法的计算机程序指令,以供下载。The present disclosure also proposes a server device, including a memory, for storing computer program instructions for executing the above-mentioned communication method for downloading.
本公开还提出一种通讯的方法,应用于服务器,包括:The present disclosure also proposes a communication method applied to a server, including:
获取客户端发送的用户确定的消息、以及用户设置的条件,其中所述消息包括消息的接收方及内容;Obtain a user-determined message sent by the client and conditions set by the user, where the message includes the recipient and content of the message;
根据所述用户设置的条件,发出创建所述条件的指令;Issue an instruction to create the condition according to the condition set by the user;
确定所述用户设置条件是否创建成功;Determine whether the user setting condition is successfully created;
发送所述用户设置条件是否成功创建的信息至所述客户端,其中,Sending information about whether the user setting conditions are successfully created to the client, where:
在所述用户设置条件创建不成功的情况下,在所述客户端显示所述创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述条件的接收方的客户端显示所述消息。In the case that the creation of the user setting conditions is unsuccessful, the client displays the information that the creation is unsuccessful; in the case that the creation of the user setting conditions is successful, when the user setting conditions are met, the The client of the recipient of the above condition displays the message.
与上述方法相对应,本公开还提出一种服务器设备,包括存储器和处理器,其中,存储器,用于存储可执行的指令;处理器,用于执行所述指令,以实施上述通讯的方法。Corresponding to the above method, the present disclosure also proposes a server device, including a memory and a processor, where the memory is used to store executable instructions; the processor is used to execute the instructions to implement the above communication method.
本公开还提出一种通讯的方法,包括:The present disclosure also proposes a communication method, including:
获取用户确定的消息,其中,所述消息包括消息的接收方及内容;Acquiring a message determined by the user, where the message includes the recipient and content of the message;
获取用户设置的条件;Get the conditions set by the user;
根据所述用户设置的条件,发出创建所述条件的指令;Issue an instruction to create the condition according to the condition set by the user;
创建所述条件;Create the conditions;
确定所述用户设置条件是否创建成功,其中,在所述用户设置条件创建不成功的情况下,在所述用户的客户端显示所述创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。It is determined whether the creation of the user setting condition is successful, wherein, in the case that the creation of the user setting condition is unsuccessful, the message that the creation is unsuccessful is displayed on the client of the user; and the creation of the user setting condition is successful In this case, when the conditions set by the user are satisfied, the message is displayed on the client of the recipient of the message.
本公开还提出一种通讯系统,其特征在于,至少包括客户端和服务器,并且执行上述通讯的方法。The present disclosure also proposes a communication system, which is characterized in that it includes at least a client and a server, and executes the above-mentioned communication method.
本公开所述一种通讯的方法及终端设备与服务器设备,采用以上技术方案与现有技术相比,使发送方能够可信赖地发送基于条件的消息,增强了基于条件的消息的可靠性。Compared with the prior art, the communication method, terminal device and server device described in the present disclosure enable the sender to reliably send condition-based messages by adopting the above technical solutions, thereby enhancing the reliability of condition-based messages.
附图说明Description of the drawings
图1是本公开实施例的一种计算机体系结构示意图;FIG. 1 is a schematic diagram of a computer architecture of an embodiment of the present disclosure;
图2是本公开实施例的一种终端设备与服务器所构成系统示意图;FIG. 2 is a schematic diagram of a system constituted by a terminal device and a server according to an embodiment of the present disclosure;
图3至图11是本公开实施例一的界面示意图;3 to 11 are schematic diagrams of the interface of the first embodiment of the present disclosure;
图12至图15是本公开实施例二的界面示意图;12 to 15 are schematic diagrams of the interface of the second embodiment of the present disclosure;
图16至图19是本公开实施例三的界面示意图;16 to 19 are schematic diagrams of the interface of the third embodiment of the present disclosure;
图20是本公开实施例中好友显示列表界面图;FIG. 20 is a diagram of a friend display list interface in an embodiment of the present disclosure;
图21是本公开实施例中三个主要核心环节流程图;Figure 21 is a flowchart of three main core links in an embodiment of the present disclosure;
图22是本公开实施例中客户端发送条件消息的流程图;FIG. 22 is a flowchart of a client sending a condition message in an embodiment of the present disclosure;
图23是本公开实施例中消息服务器的处理流程图;FIG. 23 is a processing flowchart of a message server in an embodiment of the present disclosure;
图24是本公开一个实施例中条件消息系统的流程图;FIG. 24 is a flowchart of a conditional message system in an embodiment of the present disclosure;
图25是本公开实施例一个总的方法的流程图;FIG. 25 is a flowchart of a general method of an embodiment of the present disclosure;
图26至图29是本公开实施例四和五的界面示意图;26 to 29 are schematic diagrams of the interfaces of the fourth and fifth embodiments of the present disclosure;
具体实施方式Detailed ways
下面结合说明书附图对本公开的具体实施方式作进一步详细的说明。The specific embodiments of the present disclosure will be described in further detail below in conjunction with the accompanying drawings of the specification.
本公开实施例所使用的终端设备或服务器,可参见图1所示的计算机结构示意图。图中计算机系统10包括经由通信总线11连接的中央处理器(CPU)12、随机存取存储器(RAM)13、存储单元14、通讯单元15、输入单元16及显示单元17。For the terminal device or server used in the embodiments of the present disclosure, refer to the schematic diagram of the computer structure shown in FIG. 1. In the figure, the computer system 10 includes a central processing unit (CPU) 12, a random access memory (RAM) 13, a storage unit 14, a communication unit 15, an input unit 16, and a display unit 17 connected via a communication bus 11.
中央处理器CPU12可以全面地控制计算机系统10执行的处理。RAM13为易失性内存。而存储单元14可以是非易失性的储存介质,包括例如磁性硬盘、固态硬盘、光盘或者闪存盘等可读存储介质,其中,常见的闪存有NAND、NOR等。一般地,程序或代码都可以预先存储在所述存储单元14中,由CPU12加载到RAM13中后,再由CPU12执行所述程序指令以完成相应的功能。The central processing unit CPU12 can comprehensively control the processing executed by the computer system 10. RAM13 is volatile memory. The storage unit 14 may be a non-volatile storage medium, including, for example, a readable storage medium such as a magnetic hard disk, a solid state hard disk, an optical disk, or a flash memory disk. Among them, common flash memories include NAND, NOR, and the like. Generally, programs or codes can be stored in the storage unit 14 in advance, and after being loaded into the RAM 13 by the CPU 12, the CPU 12 executes the program instructions to complete corresponding functions.
通讯单元15可以包括比如用于网络适配器的RJ45模块、WIFI模块、2G~5G移动通讯模块、或者蓝牙模块等。通过所述通讯单元15可以将所述计算机系统连接在网络上,并与网络上其它的计算机系统通信。The communication unit 15 may include, for example, an RJ45 module for a network adapter, a WIFI module, a 2G-5G mobile communication module, or a Bluetooth module. The computer system can be connected to the network through the communication unit 15 and communicate with other computer systems on the network.
输入单元16,包括键盘、鼠标、或者触摸屏等。在客户端上,用户可以通过对所述输入单元16执行的操作,向计算机系统10发出指令。The input unit 16 includes a keyboard, a mouse, or a touch screen, etc. On the client, the user can issue instructions to the computer system 10 through operations performed on the input unit 16.
显示单元17可以包括图形控制器以及与所述图形控制器相连的显示装置,具体可以包括液晶(LCD)、发光二极管(LED)显示器、阴极射线管(CRT)显示器、或触摸屏等。The display unit 17 may include a graphics controller and a display device connected to the graphics controller, and specifically may include a liquid crystal (LCD), a light emitting diode (LED) display, a cathode ray tube (CRT) display, or a touch screen.
所述计算机系统10,可以使用Windows、Andriod、iOS、或Linux等操作系统。The computer system 10 may use operating systems such as Windows, Andriod, iOS, or Linux.
应当注意的是,该硬件配置仅仅是示例。除此之外,还可以采用与图1所示硬件不同的计算机系统,例如有的服务器可以移除显示单元,某些终端设备具有摄像头等。具体地,本公开实施例的终端设备可能是手机、平板电脑(PAD)、或者笔记本电脑等移动设备,以及台式电脑等。It should be noted that this hardware configuration is only an example. In addition, a computer system with different hardware than that shown in FIG. 1 can also be used. For example, some servers can remove the display unit, and some terminal devices have cameras. Specifically, the terminal device of the embodiment of the present disclosure may be a mobile device such as a mobile phone, a tablet computer (PAD), or a notebook computer, as well as a desktop computer.
图2为本公开实施例所使用的终端设备21与服务器23所构成的网络系统20结构示意图,终端设备21与服务器23通过网络22连接。所述网络22可以是局域网或互联网等,通信时采用比如超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)或无线上网(WIFI)等协议。服务器23可具有与图1相同的计算机体系结构,并且在其存储单元14中的存储设备包含能够实施本公开实施例提供的方法的指令。服务器23可采用Tomcat、Nginx、Spring Boot、Spring Cloud等服务器框架,使得服务器与其客户端可进行通讯。FIG. 2 is a schematic diagram of the structure of a network system 20 composed of a terminal device 21 and a server 23 used in an embodiment of the disclosure. The terminal device 21 and the server 23 are connected through the network 22. The network 22 may be a local area network or the Internet, etc., and protocols such as Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), or Wireless Internet (WIFI) are used for communication. The server 23 may have the same computer architecture as FIG. 1, and the storage device in its storage unit 14 contains instructions capable of implementing the method provided by the embodiment of the present disclosure. The server 23 may adopt server frameworks such as Tomcat, Nginx, Spring Boot, Spring Cloud, etc., so that the server can communicate with its clients.
在另一个图2所示的网络系统中,所述终端设备21可以通过网络22从所述服务器23的存储设备下载所述指令,执行后能够实施本公开实施例提供的方法。In another network system shown in FIG. 2, the terminal device 21 can download the instruction from the storage device of the server 23 via the network 22, and after execution, the method provided in the embodiment of the present disclosure can be implemented.
本公开实施例中所有附图上的省略号,都代表具体的内容。因其与本公开实施例要保护的主题无关,为突出重点,故用省略号表示。The ellipsis in all the drawings in the embodiments of the present disclosure represent specific content. Because it has nothing to do with the subject matter to be protected by the embodiments of the present disclosure, and to highlight the key point, it is indicated by an ellipsis.
本公开披露的发送消息的方法,不是直接将消息发送给接收用户,而是当满足一定条件后,才最终传送给接收用户并在其客户端显示出来。本文称这种消息为条件消息。The method of sending a message disclosed in the present disclosure does not directly send the message to the receiving user, but when certain conditions are met, it is finally transmitted to the receiving user and displayed on the client. This article calls this kind of message a conditional message.
首先描述实施例一。First, the first embodiment will be described.
艾米丽(Emily)住在美国加州,是一家公司的秘书,工作比较忙,所以只好通过预先设置消息,来提醒其经理第二天的会议。Emily lives in California, USA. She is a secretary of a company. She is busy at work, so she had to set a message in advance to remind her manager of the meeting the next day.
图3是艾米丽客户端上的与其经理的通讯界面300。其中311项为其经理的用户名,321和322项分别为二人通常的对话,具体内容省略。在最右侧的301竖条,表示其左侧的区域是可以滑动的。在底部区域中,332项为消息输入框,333项为发送按钮,331为一扩展按钮。FIG. 3 is the communication interface 300 with the manager on the Emily client. Among them, 311 items are the user names of their managers, and items 321 and 322 are the usual conversations between the two, and the specific content is omitted. The 301 vertical bar on the far right indicates that the area on its left can be slid. In the bottom area, item 332 is a message input box, item 333 is a send button, and item 331 is an extension button.
点击此331项扩展按钮,界面300的底部区域扩大变成图4所示。其中,341~344项分别为语音输入、视频输入、照片输入和转账指令对应的按钮,点击后可进行发送相应消息的操作。这些都属于现有技术。Click this 331 item expansion button, the bottom area of the interface 300 expands and becomes as shown in FIG. 4. Among them, items 341 to 344 are buttons corresponding to voice input, video input, photo input, and transfer instructions, which can be clicked to send corresponding messages. These are all existing technologies.
点击345项的“Condition”(条件)按钮,会出现图5所示的条件消息的设置界面500。其中,511项表示界面名称为“Set Condition”(设置条件)。所述界面中包括消息输入区域520,其中521项是扩大的消息输入框,下面为前述的341~344图标。所述界面中还包括条件设置区域530。其中,531项显示“Condition”(条件),532项为“Name”(名称),表示在其后面输入框中的输入,为条件消息的名称,以便用户用此名称查找条件消息。用户也可不输入此名称。下面的533项、534项、535项是增加条件的按钮,分别对应“增加时间”、“增加位置”、“增加其它”。Click the "Condition" button of item 345, and the setting interface 500 of the condition message shown in FIG. 5 will appear. Among them, item 511 indicates that the interface name is "Set Condition". The interface includes a message input area 520, of which item 521 is an enlarged message input box, and below are the aforementioned icons 341-344. The interface also includes a condition setting area 530. Among them, item 531 displays "Condition", item 532 is "Name", which means that the input in the input box behind it is the name of the condition message, so that the user can use this name to search for the condition message. The user may not enter this name. The following items 533, 534, and 535 are buttons for adding conditions, corresponding to "increase time", "increase position", and "increase other" respectively.
艾米丽在输入框521中输入消息“在您的办公室听取财务汇报”,然后为了设置此消息的发送时间,点击533项,出现图6所示界面600。其中顶部611项显示“Timing”(定时)。定时设置包括区域620中的日期设置,以及区域630中的在所述日期中具体的时刻设置。Emily enters the message "Listen to the financial report in your office" in the input box 521, and then in order to set the sending time of this message, click item 533, and the interface 600 shown in Figure 6 appears. The top 611 item shows "Timing" (timing). The timing setting includes the date setting in the area 620 and the specific time setting in the date in the area 630.
在区域620中,621项显示“Day Setting”(日期设置),622项~625项是四项只能单选的 设置接口。622项是设置具体的日期;623项是设置日期范围;624项表示日期设置为“每天”;625项表示日期设置为“每个工作日”。艾米丽选中上述622项,并设日期为“2019年9月4日”。In area 620, item 621 displays “Day Setting”, item 622 to item 625 are four setting interfaces that can only be single-selected. Item 622 is to set a specific date; item 623 is to set the date range; item 624 indicates that the date is set to "every day"; item 625 indicates that the date is set to "every working day". Emily selected the above 622 items and set the date as "September 4, 2019".
在区域630中,631项显示“Hour&Minute Setting”(小时和分钟设置),下面的四个可复选输入框用于输入小时和分钟。其中,的632项和633项用于输入具体的时刻;而634项的上下两个输入框用于输入时段,分别表示开始时刻和结束时刻。艾米丽选中上述634项,并设置时间为从“9:00”至“10:30”。In the area 630, item 631 displays "Hour&Minute Setting", and the four checkboxes below are used to input hours and minutes. Among them, the 632 items and 633 items are used to input the specific time; and the upper and lower input boxes of the 634 item are used to input the time period, which respectively indicate the start time and the end time. Emily selects the above 634 items and sets the time from "9:00" to "10:30".
艾米丽在图6所示界面600中设置好时间后,点击图6中641项“增加时间”的按键,就回返回到图7所示的上一界面500。相比图5中的界面,图7中在533项下面增加了5331项显示用户设置条件,表示的时间为上述设置时间,即2019年9月4日从9:00至10:30。艾米丽在532项后输入此条件消息的名称“Schedule”(计划)后,点击541项按钮“Send”(发送),客户端返回到如图8所示艾米丽与其经理对话界面300。After Emily sets the time in the interface 600 shown in FIG. 6, she clicks the "Increase Time" button in item 641 in FIG. 6 to return to the previous interface 500 shown in FIG. 7. Compared with the interface in Figure 5, Figure 7 has added 5331 items under 533 to display user setting conditions, and the time indicated is the above set time, that is, from 9:00 to 10:30 on September 4, 2019. After Emily enters the name of the conditional message "Schedule" after item 532, and clicks the item button "Send" of item 541, the client terminal returns to the dialogue interface 300 between Emily and the manager as shown in FIG. 8.
图8中821项为此条消息的发出时间,为9月3日下午6:36。827项为具体的消息内容,同图7中521项。相比一般的即时消息,增加了表示此为条件消息(“Condition Message”)的822项,表示其名称为“Schedule”(计划)的823项,以及表示其状态(“Satus”)的824项。在所述824项中,还显示所述条件没有建立(“No Established”),下一行的825项显示其原因(“Reason”)为时间冲突(“Time Conflict”)。艾米丽点击所述825项,弹出图9所示窗口。其中911为标题,显示“原因:时间冲突”。下面显示具体的原因,其中921项显示“在计划中,2019年9月4是9:00至10:00已有安排”。922项显示已有的安排是“在807房间主持技术会议”。即在先前设置的相同名称“Schedule”的条件消息中,已设置了一场在同日9:00至10:00举行的会议。由于其开始时间与新的设置一样都是在9:00开始,所以二者的时间冲突,故显示上述信息。 Item 821 in Figure 8 is the time when this message was sent, which is 6:36 pm on September 3. Item 827 is the specific message content, which is the same as item 521 in Figure 7. Compared with general instant messages, 822 items indicating that this is a conditional message ("Condition Message") have been added, 823 items indicating its name is "Schedule" (plan), and 824 items indicating its status ("Satus") . Among the 824 items, it is also shown that the condition is not established ("No Established"), and the 825 item in the next row shows that the reason ("Reason") is a time conflict ("Time Conflict"). Emily clicks on the 825 item, and the window shown in Figure 9 pops up. Among them, 911 is the title, which displays "Reason: Time Conflict". The specific reasons are shown below, of which 921 items show "In the plan, September 4, 2019 is scheduled from 9:00 to 10:00." 922 items show that the existing arrangement is "hosting a technical meeting in room 807". That is, in the previously set condition message of the same name "Schedule", a meeting to be held from 9:00 to 10:00 on the same day has been set. Since the start time is the same as the new setting, it starts at 9:00, so the time of the two conflicts, so the above information is displayed.
艾米丽点击923项确认键,又回到图8所示界面,并点击其中的826项“Reset”(重置)。这时客户端再显示前述图6的界面,艾米丽修改634项的时间为从“14:30”至“16:00”。艾米丽确认好修改的时间后,客户端又回到与经理的对话界面300中,如图10所示。图中增加了1022~1026项,与上面的822~827项相比,不同之处在于,1024项的状态显示为“Estalished”(已建立),表示条件已创建成功,1025项显示“No Show”,表示因条件还未满足,即未达到上述设定时间,因此在接收方、即艾米丽的经理的客户端上还没有显示出来。Emily clicks the 923 item confirmation button, returns to the interface shown in Figure 8, and clicks the 826 item "Reset" (reset). At this time, the client terminal displays the interface shown in Figure 6 again, and Emily changes the time of item 634 from "14:30" to "16:00". After Emily confirms the modified time, the client returns to the dialog interface 300 with the manager, as shown in Figure 10. 1022~1026 items are added in the figure. Compared with the above 822~827 items, the difference is that the status of 1024 items is displayed as "Estalished" (established), indicating that the condition has been created successfully, and the 1025 items display "No Show". "Means that because the conditions have not been met, that is, the above set time has not been reached, it has not been displayed on the client of the recipient, that is, Emily’s manager.
在第二天,即9月4日上午9:00,在艾米丽经理客户端中与艾米丽的对话窗口内,如图11所示,首先接收到了更早设置的条件消息1121项,为“在807房间主持技术会议”。然后在下午2:30,接收到到前一天设置的条件消息1122项,内容同上述图10中的1026项,即“在您的办公室听取财务汇报”。On the second day, at 9:00 am on September 4, in the dialog window with Emily in the Emily manager client, as shown in Figure 11, the condition message 1121 item set earlier was first received. "Host a technical meeting in room 807". Then at 2:30 in the afternoon, I received 1122 items of the condition message set the day before, the content is the same as item 1026 in Figure 10 above, that is, "listen to the financial report in your office".
在设置条件时当发现有逻辑错误时,比如此实施例中的时间冲突,显示错误信息如图8中824、825项。这样,就保证了时间安排的合理性。如果不检查逻辑错误并且不显示所述错误的提示,则艾米丽不会修订工作计划,最终会导致工作混乱。When a logic error is found when setting the conditions, such as the time conflict in this embodiment, the error message is displayed as items 824 and 825 in Figure 8. In this way, the rationality of the time arrangement is ensured. If the logic error is not checked and the error prompt is not displayed, Emily will not revise the work plan, which will eventually lead to confusion in the work.
在另一个实施例中,艾米丽的其它同事要使用上述807房间,并且时间上与艾米丽的经理主持会议的时间冲突,这时也会引发逻辑错误。In another embodiment, other colleagues of Emily want to use the above room 807, and the time conflicts with the time when Emily’s manager presides the meeting, this will also cause logic errors.
下面为实施例二,采用位置条件。The following is the second embodiment, using position conditions.
戴维斯(Davis)是艾米丽的丈夫。在9月6日或7日,艾米丽要去沃尔玛超市购物,但不 确定具体的时间。由于戴维斯要去外地出差,所以为了提醒艾米丽,就在与艾米丽对话界中,发送条件消息。即在图5所示条件的设置界面500中,点击534项“增加位置”,出现了图12所示位置选择界面1200。顶部1211项显示“Select Place”(选择位置),戴维斯在其下面的1221项输入框中输入“Wallmart”(沃尔玛)后,地图显示区域1230自动定位到最近的沃尔玛超市,如图中1231项所示。这些都属于现有技术。最后,戴维斯点击1241项按键确认。Davis is Emily's husband. On September 6th or 7th, Emily will go shopping at Wal-Mart, but she is not sure when. Since Davis was going on a business trip, in order to remind Emily, he sent a conditional message in the dialogue with Emily. That is, in the condition setting interface 500 shown in FIG. 5, click 534 item "add position", and the position selection interface 1200 shown in FIG. 12 appears. The top 1211 item displays "Select Place". After Davis enters "Wallmart" in the 1221 item input box below, the map display area 1230 is automatically located to the nearest Wal-Mart supermarket, as shown in the figure 1231 As shown in the item. These are all existing technologies. Finally, Davis clicked the 1241 button to confirm.
此时回到图13所示界面500中。图中增加了5341项显示地址,即“沃尔玛,美国加州圣莱安德罗市戴维斯街1919号”。戴维斯在图中的521项输入框中输入消息内容“亲爱的,帮我买个刮胡刀”,然后点击541项,发出此条件消息。At this time, return to the interface 500 shown in FIG. 13. In the figure, a display address of 5341 has been added, namely "Wal-Mart, 1919 Davis Street, San Leandro, California". Davis enters the message content "Dear, buy me a razor" in the 521 entry box in the picture, and then clicks 541 to send this conditional message.
发出后,在戴维斯的客户端上与艾米丽的对话界面中,显示如图14中1422~1425项所示的条件消息的信息。其中,1422项显示条件的状态(“Status”)为未建立(“No EstAblished”),1423项显示原因(“Reason”)为对方的GPS未打开(“GPS Not Opned”)。所以,戴维斯点击1424项“Reminder”(提醒)后,客户端为用户戴维斯自动产生并发送一条如图中1431项所示的给艾米丽的即时消息,内容为“请为条件消息打开GPS”。After it is sent, the dialogue interface with Emily on Davis' client will display the information of the condition message as shown in items 1422 to 1425 in Figure 14. Among them, the status of the 1422 display conditions ("Status") is not established ("No EstAblished"), and the 1423 display reason ("Reason") is that the other party's GPS is not turned on ("GPS Not Opned"). Therefore, after Davis clicks 1424 "Reminder" (reminder), the client automatically generates and sends an instant message to Emily as shown in item 1431 for the user Davis, and the content is "Please be the condition The message turns on GPS".
当第二天中午艾米丽看到上述消息后,打开了GPS,系统检测到后,在戴维斯的客户端中与艾米丽的对话界面中,显示了1441~1443项的条件消息。所述条件消息的状态如1442项所示:对方的GPS打开了,条件建立成功,未显示。所述消息的内容为1443项,同上述1425项。When Emily saw the above message at noon the next day, she turned on the GPS. After the system detected it, the dialogue interface with Emily in Davis' client showed the conditional messages of 1441~1443. The status of the condition message is as shown in item 1442: the other party's GPS is turned on, the condition is successfully established, and it is not displayed. The content of the message is 1443 items, the same as the above 1425 items.
最终,艾米丽决定在戴维斯出差的最后一天、即9月7日下去超市。当下午3:05分时艾米丽开车到达沃尔玛超市,系统检测到符合位置条件,此时在艾米丽的客户端中与戴维斯的对话界面中,接收到如图15所示的三条条件消息。由于触发条件都相同,所以都显示在一个大方框中。其中,1521项为图14中1443项内容,1531项和1541项是戴维斯在后来、比如9月5日和6日增加的消息,内容分别为“还有面包”、“牛肉和牛奶”。In the end, Emily decided to go to the supermarket on September 7th, the last day of Davis's business trip. When Emily drove to the Wal-Mart Supermarket at 3:05 pm, the system detected that the location conditions were met. At this time, in the dialogue interface between Emily’s client and Davis, three items as shown in Figure 15 were received. Conditional message. Since the trigger conditions are the same, they are all displayed in a large box. Among them, 1521 items are 1443 items in Figure 14, 1531 items and 1541 items are the news that Davis added later, such as September 5 and 6, and the contents are "and bread", "beef and milk" respectively. .
在此实施例中,如果不检测艾米丽的GPS是否打开,戴维斯的客户端不会显示条件创建不成功的信息,从而不会进一步处理。这样,当艾米丽在到达沃尔玛超市时,就不会收到戴维斯的消息。In this embodiment, if it is not detected whether Emily's GPS is turned on, Davis' client will not display the message that the condition creation is unsuccessful, and thus will not be processed further. In this way, when Emily arrives at the Wal-Mart supermarket, she will not receive a message from Davis.
下面为实施例三。The following is the third embodiment.
除了时间和位置,艾米丽还可在图5所示界面中,向戴维斯发送由其它事件触发的条件消息。艾米丽当击图5中的535项“增加其它”,得到图16所示的其它事件设置界面1600。其中,1611项显示“Select Other Events”(选择其它事件),1621项显示“Weather”(天气),下面的三个选项,分别对应“Rain”(下雨)、“Snow”(下雪)及“Cold wave”(寒潮)。艾米丽选择了第一项即1622项“Rain”(下雨)后,点击底部的1691项“增加”按键,于是在图17所示的界面500中,增加5351项的“天气,下雨”事件,并且客户端在所述界面中的521的消息输入框中自动增加了“将要在[&Time]时刻下雨。带伞”。所述消息根据条件预先设定,其中“[&Time]”表示预报的将要下雨的时间,由系统根据实际时间替代。。In addition to time and location, Emily can also send conditional messages triggered by other events to Davis in the interface shown in Figure 5. When Emily clicks 535 item "add other" in FIG. 5, the other event setting interface 1600 shown in FIG. 16 is obtained. Among them, 1611 items display "Select Other Events", 1621 items display "Weather" (weather), the following three options correspond to "Rain" (雨), "Snow" (下雪) and "Cold wave" (寒潮). After Emily selects the first item, 1622 "Rain", click the 1691 "Add" button at the bottom, so in the interface 500 shown in Figure 17, add the 5351 item "Weather, rain" "Event, and the client automatically adds "it will rain at [&Time]. Bring an umbrella" in the message input box of 521 in the interface. The message is pre-set according to conditions, where "[&Time]" represents the forecasted time when it will rain, which is replaced by the system according to the actual time. .
艾米丽还点击上述图中的533项,在出现的图6所示的界面中单选625项“每个工作日”,勾选632项并填入具体的时间,最后点击641项,从而在返回的界面500中增加了时间条件,如图17中5332项所示,表示“每个工作日的上午7:50”。这样,艾米丽在所述图17界面上设置了两项条件。Emily also clicked on the 533 items in the above figure, in the interface shown in Figure 6 that appeared, single-selected 625 items "every working day", checked the 632 items and filled in the specific time, and finally clicked on the 641 item. A time condition is added to the returned interface 500, as shown in item 5332 in Figure 17, which means "7:50 in the morning of every working day". In this way, Emily sets two conditions on the interface shown in Figure 17.
艾米丽按下所述图17中的541项“Send”(发送)按钮后,发送条件消息至消息服务器,但消息服务器本身不能提供天气状况,所以还要检测,是否可访问能提供天气预报的天气服务 器。当检测到能够访问时并且所述天气服务器能够返回天气预报数据时,在艾米丽的客户端上提示所述天气条件建立成功的消息,如图18中1821项“Established”所示。图中1822项内容同图17中521中的内容。After Emily presses the 541 "Send" button in Figure 17 described above, she sends a conditional message to the message server, but the message server itself cannot provide weather conditions, so it is necessary to check whether it is accessible and can provide weather forecasts. Weather server. When it is detected that access is possible and the weather server can return weather forecast data, a message prompting the establishment of the weather conditions on Emily's client is successful, as shown in item 1821 "Established" in FIG. 18. The content of item 1822 in the figure is the same as the content of item 521 in figure 17.
虽然条件创建成功,但是,由于某天由于天气服务器出现问题,比如可以是消息服务器与天气服务器的连接中断、天气服务器宕机、连接天气服务器的天气传感器失效等原因,所述天气条件的监控失效,面临着即使将要下雨但戴维斯也接收不到所述条件消息的情况。此时,在图18艾米丽与戴维斯的对话界面中,显示了条件监控失效的消息框1830。其中1831项显示所述消息来源为“System Messages”(系统消息),1832项显示条件消息的状态为“Failed”(失败),表示条件监控失效;1833项显示失效原因为“Weather Server Error”(服务器错误);1834项显示“Reminder”(提醒),1835项为原来设置的消息内容,同1822项。Although the conditions were created successfully, due to a problem with the weather server on a certain day, for example, the connection between the message server and the weather server was interrupted, the weather server was down, the weather sensor connected to the weather server failed, etc., the monitoring of the weather conditions failed , Facing the situation that Davis could not receive the conditional message even if it was about to rain. At this time, in the dialogue interface between Emily and Davis in Fig. 18, a message box 1830 indicating that the condition monitoring fails is displayed. Among them, 1831 items show that the message source is "System Messages", 1832 items show that the status of conditional messages is "Failed", indicating that the condition monitoring is invalid; 1833 items show that the reason for the failure is "Weather Server Error" ( Server error); Item 1834 displays "Reminder" (reminder), item 1835 is the original message content, the same as item 1822.
艾米丽点击上述1834项,于是在图19所示的戴维斯客户端上与艾米丽的对话界面中,显示了1920方框中内容。其中,1921、1922项与上述图18中的1832、1833项相同,分别显示条件失效信息及失效的原因。1923项显示“当天气服器恢复后继续?”,其下的1924项“OK”按键表示确认,而1925项按键“Cancel”表示取消此条件消息。戴维斯按下所述1924项确认按键。后来,当天气服器恢复后,不仅在发送方客户端显示所述条件建立(“Established”)的信息,而且在接收方客户端图19所示界面上显示了1932项消息“天气服务器恢复”,所述消息根据1931项为“System Message”(系统消息)。此时,所述条件又被重新建立。Emily clicks on the above item 1834, so in the dialogue interface with Emily on the Davis client shown in Figure 19, the content in the 1920 box is displayed. Among them, items 1921 and 1922 are the same as items 1832 and 1833 in the above figure 18, which respectively display the condition failure information and the reason for the failure. Item 1923 displays "Continue when the weather server is restored?", the 1924 item "OK" button below it means confirmation, and the 1925 item button "Cancel" means canceling this conditional message. Davis pressed the 1924 confirmation button. Later, when the weather server was restored, not only the message that the conditions were established ("Established") was displayed on the sender client, but also the 1932 message "weather server restored" was displayed on the interface shown in Figure 19 on the receiver client. According to item 1931, the message is "System Message" (system message). At this time, the conditions are re-established.
当戴维斯平常早上大约8:00出门上班。当在某工作日的上述设定时间7:50时,由于检测到上述天气条件满足,戴维斯的客户端收到艾米丽的条件消息如图19中1941项所示,提醒“今天下午将要下雨,请带伞”。其中,图17中521项中的“[&Time]”被系统替换为“this afternoon”(今天下午)。在此实施例中,当发送方艾米丽接收到已经创建成功的条件失效的信息后,选择了向接收方戴维斯发送提醒消息。所以,即使消息服务器没有恢复,戴维斯可以通过直接上其它的天气服务网站的办法确定是否下雨。如果在天气服务器出错的情况下而不显示失效信息,双方都以为所述条件仍然有效,会导致戴维斯因不知道要下雨而不带伞的情况。When Davis usually goes out to work at about 8:00 in the morning. When the above-mentioned set time is 7:50 on a certain working day, as the above-mentioned weather conditions are detected to be met, Davis’ client receives Emily’s conditional message as shown in item 1941 in Figure 19, reminding "this afternoon It's going to rain, please bring an umbrella." Among them, "[&Time]" in item 521 in Figure 17 is replaced by "this afternoon" (this afternoon) by the system. In this embodiment, when the sender Emily receives the information that the successfully created condition is invalid, she chooses to send a reminder message to the receiver Davis. Therefore, even if the message server is not restored, Davis can determine whether it is raining or not by going directly to other weather service websites. If the failure message is not displayed when the weather server fails, both parties believe that the conditions are still valid, which will cause Davis to not bring an umbrella because he does not know it is going to rain.
在另一实施例中,戴维斯可以向自己发送所述天气的条件消息。In another embodiment, Davis can send himself a message about the weather conditions.
总结以上各实施例,所述条件消息中的条件,可以为与时间、位置相关,也可以是其它事件。所述条件可以有参数设置,比如具体的时间、位置等,也可以没有参数。当用户预先设定的条件满足后,比如实施例三中天气预报将要下雨,就触发了所述条件,采用本领域常用术语为事件发生。为了监控所述条件是否触发,可建立监听器,用于监听所述事件。Summarizing the above embodiments, the condition in the condition message may be related to time and location, or other events. The conditions may have parameter settings, such as specific time, location, etc., or there may be no parameters. When the conditions preset by the user are met, for example, the weather forecast in the third embodiment is about to rain, the conditions are triggered, and the common terminology in this field is the occurrence of the event. In order to monitor whether the condition is triggered, a listener can be established to monitor the event.
采用本公开方法的通讯系统,在本文中称为条件消息通讯系统。所述系统至少包括客户端和消息服务器。其中,所述客户端可安装在比如图2所示网络系统的终端设备21上,所述消息服务器可安装在图2中的服务器设备23上。二者之间可通过网络22联系,使所述系统能够发送和接收条件消息。同时,也可以进行即时通讯。The communication system adopting the method of the present disclosure is referred to as a conditional message communication system in this article. The system at least includes a client and a message server. Wherein, the client may be installed on the terminal device 21 of the network system shown in FIG. 2, and the message server may be installed on the server device 23 in FIG. 2. The two can be connected through the network 22 so that the system can send and receive conditional messages. At the same time, instant messaging can also be carried out.
在一个实施方式中,为保证所述条件消息通讯系统正常有效的工作,所述通讯系统与现有的即时通讯相比,至少实现了如图21所示的三个主要核心环节。In one embodiment, in order to ensure the normal and effective operation of the conditional message communication system, compared with the existing instant messaging, the communication system at least realizes three main core links as shown in FIG. 21.
第一核心环节S1是根据用户选择的条件发出建立相应监听器的指令。所述系统首先识别用户选择的条件,发出监控所述条件是否满足、即监控所述事件的指令,比如建立可以监控所述事件的监听器的指令。监听器就是监听某个域对象的的状态变化的组件,也就是为检测所述条件是否满足而建立的监听机制。比如,在使用Java语言的场景中,可利用接口EventListener 作为基类建立监听器的类和对象;在使用PHP的环境下,使用事件绑定机制实现监听等。The first core link S1 is to issue an instruction to establish a corresponding listener according to the conditions selected by the user. The system first identifies the condition selected by the user, and issues an instruction to monitor whether the condition is met, that is, to monitor the event, such as an instruction to establish a listener that can monitor the event. A listener is a component that listens to a state change of a domain object, that is, a monitoring mechanism established to detect whether the conditions are met. For example, in the scene of using the Java language, the interface EventListener can be used as the base class to establish the class and object of the listener; in the environment of using PHP, the event binding mechanism can be used to realize the monitoring and so on.
系统要根据所述条件确定条件源,即条件的产生或触发的位置,以及所述条件对应的监听器类型。比如实施例一中所述系统识别出,可以在消息服务器建立时间的监听器。在实施例二中,所述系统识别出要在接收方设备上建立位置监听器。实施例三所述系统可根据所述条件识别出要在天气服务器上建立是否下雨的监听器。在这个环节中,系统可首先识别条件的产生位置,比如在发送方客户端、接收方客户端或天气服务器,然后将所述条件发送过去,最后在所述具体位置上再确定所述条件对应的监听器类型。The system should determine the source of the condition according to the condition, that is, the location where the condition is generated or triggered, and the type of listener corresponding to the condition. For example, the system in the first embodiment recognizes that a time listener can be established in the message server. In the second embodiment, the system recognizes that a location listener is to be established on the receiver's device. According to the third embodiment, the system can identify whether it is raining or not on the weather server according to the conditions. In this link, the system can first identify the location of the condition, such as the sender client, receiver client or weather server, and then send the condition over, and finally determine the corresponding condition at the specific location. The type of listener.
第二核心环节是建立监听器并进行监听的环节S2。在这个环节中,首要确保根据上述S1环节的指令能够建立监听器。比如,上述实施例三中,如果监听器设在天气服务器中,那么天气服务器就能够根据消息服务器在上述S1环节发出的指令,建立相应的、比如是否下雨的监听器。如果天气服务器接收到所述指令,却无法根据所述指令建立监听器,则无法对所述条件进行监控。这需要天气服务器有相应的模块配合,完成建立监听器的功能。The second core link is S2, which is the establishment of a listener and monitoring. In this link, the first step is to ensure that the listener can be established according to the instructions of the above S1 link. For example, in the third embodiment above, if the listener is provided in the weather server, the weather server can establish a corresponding listener, such as whether it is raining, according to the instructions issued by the message server in the above S1 link. If the weather server receives the instruction but cannot establish a listener according to the instruction, the condition cannot be monitored. This requires the cooperation of the weather server with corresponding modules to complete the function of establishing a listener.
其次,要确保监听器能够成功监听。监听器的工作机制是对与条件有关的特定数据进行判断。所以为实现成功监听,还需要所述数据能够正常提供。比如实施例一中与时间有关的条件,由于在发送方终端设备、接收方终端设备及消息服务器设备上,一般都存在稳定可靠的计时装置,并且操作系统都提供对所述计时装置的访问,因此判断所述条件是否满足的时间数据能稳定地提供,并且有随时访问的权限,所以可以将时间条件看作本公开条件消息通讯系统的内部条件。又比如在另一个实施例中,当监控到接收到的消息后,检查所述消息中如果含有某预先设定的关键字,则转发此消息。在此实施例中的所述消息是本条件消息通讯系统的内部数据,能够完全掌握,所以建立在所述消息数据上的条件也属所述通讯系统的内部条件。由于内部条件的数据能够完全获取,所以根据所述数据总能有效监控所述内部条件是否触发。Second, make sure that the listener can successfully listen. The working mechanism of the listener is to judge the specific data related to the condition. Therefore, in order to achieve successful monitoring, it is also necessary that the data can be provided normally. For example, for the time-related conditions in the first embodiment, since there are generally stable and reliable timing devices on the sender terminal device, the receiver terminal device, and the message server device, and the operating system provides access to the timing device, Therefore, the time data for judging whether the conditions are met can be stably provided, and there is the right of access at any time, so the time conditions can be regarded as the internal conditions of the conditional message communication system of the present disclosure. For another example, in another embodiment, after the received message is monitored, it is checked if a certain preset keyword is contained in the message, and then the message is forwarded. The message in this embodiment is the internal data of the conditional message communication system, which can be fully grasped, so the conditions established on the message data also belong to the internal conditions of the communication system. Since the data of the internal conditions can be obtained completely, it is always possible to effectively monitor whether the internal conditions are triggered according to the data.
相对地,外部条件的条件数据有可能不能一直正常稳定地提供。比如在实施例二中,由于接收方客户端的手机上GPS未被打开,所以即使建立了监听器,但由于没有GPS提供的位置数据,也就不能判断艾米丽是否到达了所述沃尔玛超市的位置。又比如实施例三的天气事件,如果与天气服务器的连接的天气数据传感器出错,则也不能成功监控是否有预先设定的下雨的天气。这些状况,都不是所述条件消息通讯系统自身能够解决的,属于外部条件出错不能成功监听的情况。所以,在建立外部条件的监听器时,还要检测所述外部条件的数据能否正常提供。In contrast, the condition data of external conditions may not always be provided normally and stably. For example, in the second embodiment, since the GPS on the mobile phone of the receiver client is not turned on, even if a listener is set up, since there is no location data provided by the GPS, it is impossible to determine whether Emily has reached the Wal-Mart supermarket. Location. Another example is the weather event in the third embodiment. If the weather data sensor connected to the weather server is faulty, it will not be able to successfully monitor whether there is a preset rainy weather. These situations are not solvable by the conditional message communication system itself, and belong to the situation where an external condition error cannot be successfully monitored. Therefore, when establishing a listener for external conditions, it is also necessary to check whether the data of the external conditions can be provided normally.
只有当监听器建立并且监听器所需的数据能正常稳定地获取,才能准确地捕捉到条件触发,这种情况属于条件成功创建。Only when the listener is established and the data required by the listener can be obtained normally and steadily, can the condition trigger be accurately captured. This situation belongs to the successful creation of the condition.
进一步,在建立监听器之后,还要检测所述条件所需数据的提供是否出错。当发现问题时,比如实施例二中所述GPS又被关掉时,可同时发送消息给发送方和接收方,提醒所述条件的监控失效。即在监控不了所述条件是否发生时,要让用户知道这一情况,使用户有机会修正错误,或采用其它方式传递消息。Furthermore, after the listener is established, it is necessary to check whether the provision of the data required by the condition is wrong. When a problem is found, such as when the GPS described in the second embodiment is turned off again, a message can be sent to the sender and the receiver at the same time to remind the monitoring of the conditions to be invalid. That is, when it is impossible to monitor whether the condition occurs, the user should be informed of this situation, so that the user has the opportunity to correct the error, or use other methods to deliver the message.
无论内部还是外部条件,都可以如实施例一增加逻辑错误检查的步骤。所述逻辑错误,一般指在设置时引起的资源冲突引起的错误,比如时间资源、办公室资源等。如果存在逻辑错误,即使在条件触发后接收到预设的消息,但对接收用户而言因所述错误的存在而失去意义。所以在创建条件时检查是否有逻辑错误。如果发现存在逻辑错误、条件创建不成功时,则及时反馈给用户,可使用户及时修正错误,避免所述错误带来的损失。参见实施例一中的情况。Regardless of internal or external conditions, logic error checking steps can be added as in the first embodiment. The logic error generally refers to an error caused by resource conflicts caused during setting, such as time resources, office resources, and so on. If there is a logical error, even if a preset message is received after the condition is triggered, it will be meaningless to the receiving user due to the existence of the error. So check for logic errors when creating conditions. If a logical error is found and the condition creation is unsuccessful, it will be reported back to the user in time, so that the user can correct the error in time and avoid the loss caused by the error. See the situation in Example 1.
在另一实施例中可根据用户指令,忽略逻辑错误直接建立监听器。此种情况属于人为地取 消逻辑错误。In another embodiment, the listener can be established directly according to user instructions, ignoring logic errors. This situation is artificially canceling logical errors.
只有在没有外部条件错误,也没有逻缉错误情况下,才能根据上述S1环节的指令为所述条件建立监听器并有效工作,所述条件才能称为创建成功。当所述条件创建成功后,可如图10中1024项显示“Established”(已建立)。Only when there is no external condition error and no logic error, can a listener be established for the condition according to the instructions of the above S1 link and work effectively, and the condition can be called successful creation. When the conditions are successfully created, item 1024 in Figure 10 can display "Established".
第三核心环节S3是处理监听信号。当监听器监听到所述事件发生、即用户设置条件满足时,会发出信号,表示所述监听器对应的用户设置条件已满足。系统能够识别此信号,找到所述信号对应的消息,并将所述消息发送给接收方客户端并显示出来。比如在实施例三中,当天气预报为事先设定的下雨时,建立在天气服务器的的监听器就向消息服务器发出监听信号。所述消息服务器接收到所述信号后,查找到对应的消息,并发送至接收方的客户端。The third core link S3 is to process monitoring signals. When the listener detects that the event occurs, that is, when the user setting condition is met, it will send a signal, indicating that the user setting condition corresponding to the listener has been met. The system can identify this signal, find the message corresponding to the signal, and send the message to the recipient client and display it. For example, in the third embodiment, when the weather forecast is raining as set in advance, the listener established on the weather server sends a monitoring signal to the message server. After receiving the signal, the message server finds the corresponding message and sends it to the client of the recipient.
上述三个环节中的每一环节的实现位置,可以分别在发送方、服务器或接收方。三个环节的位置可以不同,也可以相同。The realization position of each of the above three links can be on the sender, server or receiver respectively. The positions of the three links can be different or the same.
比如,对于实施例一中的时间监听,可利用发送方设备的计时器,所述环节全部在发送方客户端完成;或者利用消息服务器设备的计时器,全部在消息服务器中完成;也可利用接收方设备的计时器,全部在接收方客户端完成。而在实施例二中的位置监听,可以在消息服务器中完成S1、S3环节,在接收方客户端设置GPS监听器,实现S2环节;也可以在消息服务器中完成S1环节,在接收方客户端完成S2、S3环节,即先将消息发送至接收方客户端,当监听到接收方客户端所在的手机到达沃尔玛超市后,才将所述消息显示出来。对于实施例三,可在消息服务器中完成S1、S3环节,在天气服务器中建立监听器,实现S2环节。For example, for the time monitoring in the first embodiment, the timer of the sender device can be used, and all the steps are completed in the sender client; or the timer of the message server device can be used to complete all the steps in the message server; The timer of the receiver's device is all completed in the receiver's client. For the location monitoring in the second embodiment, the S1 and S3 links can be completed in the message server, and the GPS listener can be set on the receiver's client to realize the S2 link; S1 can also be completed in the message server, and the S1 link can be completed in the receiver's client. After completing S2 and S3, the message is first sent to the recipient's client, and the message is displayed only when it is monitored that the mobile phone where the recipient's client is located arrives at the Wal-Mart supermarket. For the third embodiment, the S1 and S3 links can be completed in the message server, and the listener can be established in the weather server to realize the S2 link.
由于发送方和接收方所在终端,可能出关机、电池耗尽等情况,所以其稳定性远不如服务器,所以可以将S1和S3环节设在消息服务器。而将S2环节中的监听器设在适于监听、即所述监听事件发生的位置;如有多个位置可选,比如监听时间,则尽量设在服务器上。Since the terminal where the sender and the receiver are located may be shut down, battery exhausted, etc., their stability is far less than that of the server, so the S1 and S3 links can be set in the message server. The listener in the S2 link is set at a position suitable for monitoring, that is, where the monitoring event occurs; if there are multiple positions to choose from, such as the monitoring time, try to set it on the server.
根据上述系统,在客户端发送条件消息的步骤可参见图22所示的客户端的流程图。According to the above system, the steps of sending a condition message on the client can refer to the flowchart of the client shown in FIG. 22.
开始后的步骤S2201,获取用户确定的消息,其中,所述消息包括消息的接收方及内容。对消息接收方的确定包括,当用户进入与好友的对话界面后,就默认选择了所述好友为消息接收方。在后面讲到的以分享分式发送消息,还要通过显示好友的列表界面比如图20选择接收好友。所述用户确定的消息内容,包括用户直接输入的消息,比如图5中的521项中内容,或者用户通过图5中341~344项接口发送的消息;根据条件预先设置的消息,比如图17中的521项中内容,当然发送用户也可修改所述预先设置的消息。消息内容还可以包括比如后面实施例提到的分享的内容。In step S2201 after the start, a message determined by the user is obtained, where the message includes the recipient and content of the message. The determination of the message recipient includes that when the user enters the dialogue interface with a friend, the friend is selected as the message recipient by default. As we will talk about later, to send messages in share fractions, we also need to select to receive friends through a list interface that displays friends, such as Figure 20. The message content determined by the user includes the message directly input by the user, such as the content in item 521 in Fig. 5, or the message sent by the user through the interface of items 341 to 344 in Fig. 5; messages preset according to conditions, such as Fig. 17 Of the 521 items in the content, of course the sending user can also modify the preset message. The content of the message may also include, for example, the shared content mentioned in the following embodiments.
步骤S2202,获取用户设置的条件。当响应于用户要设置条件的操作、比如用户对图4中的345项的点击,客户端会显示一项或多项条件给用户,让用户进行选取并设置参数。在这里,所述显示给用户的一项或多项条件,实际上就是给用户一种承诺,也是对所述显示的条件的要求:当用户选取的条件满足后,具备将用户的消息发送给接收方并显示的可能性。为实现这一点,所述条件至少能满足实现上述核心环节S1和S3。如暂时不能实现核心环节S2,可向接收用户发送条件创建不成功的信息,接收用户可采取其它的通讯方式或者等待所述环节S2成功实现。当所述核心环节S2成功实现,并且所述条件也满足后,接收用户就可收到所述消息。Step S2202: Acquire the conditions set by the user. When responding to an operation that the user wants to set conditions, for example, the user clicks on item 345 in FIG. 4, the client terminal displays one or more conditions to the user, allowing the user to select and set parameters. Here, the one or more conditions that are displayed to the user are actually a promise to the user and a requirement for the displayed conditions: when the conditions selected by the user are met, it is possible to send the user's message to Recipient and display the possibility. In order to achieve this, the above-mentioned conditions can at least meet the realization of the above-mentioned core links S1 and S3. If the core link S2 cannot be realized temporarily, a message that the condition creation is unsuccessful can be sent to the receiving user, and the receiving user can adopt other communication methods or wait for the successful realization of the link S2. When the core link S2 is successfully implemented and the conditions are also met, the receiving user can receive the message.
客户端可以根据预先确定的可设置条件,直接显示其接口。比如所述条件消息系统本身能够提供的内部条件,比如图6中621~634项所示的与时间有关的条件等,由于能够满足上述S1~S3环节,所以所述条件作为客户端的一个模块,被客户端直接调用并显示。The client can directly display its interface according to pre-determined and settable conditions. For example, the internal conditions that can be provided by the conditional message system itself, such as the time-related conditions shown in items 621 to 634 in Figure 6, can meet the above S1 to S3 links, so the conditions are used as a module of the client. Called directly by the client and displayed.
客户端还可以向消息服务器请求获取存储在服务器数据库中的可设置条件的数据,并在接收到条件的数据后,显示所述条件的接口,供用户选择。这样,终端显示的条件,还能根据消息服务器中的可设置条件数据的变化而变化,更具灵活性。比如,服务器存放了某商场在打折季中促销活动的条件。艾米丽可以选择,当有手机类商品而不是其它商品比如笔记本的促销信息时,发送所述促销信息给戴维斯。在打折季结束后,清除服务器中所述促销的条件数据,用户客户端上就不会显示过时的促销条件了。The client can also request the message server to obtain conditionable data stored in the server database, and after receiving the conditional data, display the conditional interface for the user to select. In this way, the conditions displayed by the terminal can also be changed according to the change of the settable condition data in the message server, which is more flexible. For example, the server stores the conditions of a certain shopping mall’s promotional activities during the discount season. Emily can choose to send the promotional information to Davis when there are mobile phone products instead of other products such as notebook promotional information. After the discount season is over, clear the promotional condition data in the server, and the outdated promotional conditions will not be displayed on the user client.
所以,此步骤可以进一步包括向消息服务器发送请求,获取可设置条件信息并显示,供用户选择,比如图12中1221、1232项、图16中的1621、1622项等。所述显示的条件,能够在消息系统内部实现上述核心环节S1和S3,至少是向用户提供了一种最基本的可能性,能够根据所述条件发送消息。并且所述条件显示出来供用户选择,使用户可以更加直观地查看可以设置的条件。Therefore, this step may further include sending a request to the message server to obtain and display the settable condition information for the user to select, such as items 1221 and 1232 in FIG. 12, items 1621 and 1622 in FIG. 16, and so on. The displayed condition can realize the above-mentioned core links S1 and S3 within the message system, and at least provides the user with a most basic possibility to send a message according to the condition. And the conditions are displayed for the user to choose, so that the user can more intuitively view the conditions that can be set.
接收用户对所述条件的设置。用户对条件的设置包括,选取一项或多项条件;对条件进行参数设置,对默认参数直接确认,或对没有参数的条件直接确认等。所述用户选取并进行参数设置或直接确认的条件,就成为用户设置条件。Receive the user's setting of the condition. The user's setting of the conditions includes selecting one or more conditions; setting the parameters of the conditions, directly confirming the default parameters, or directly confirming the conditions without parameters, etc. The conditions selected by the user for parameter setting or direct confirmation become user setting conditions.
步骤S2203,发出创建所述用户设置的条件的指令,或者发送所述用户设置的条件。比如,如果某条件消息的条件为发送方客户端的特定位置,上述核心环节S2位于发送方的客户端,所以可将核心环节S1也设置在发送方的客户端上。此时所述发送方客户端直接发出创建所述用户设置条件的指令。而在其它情况下,比如上述核心环节S1放在消息服务器上,或者在接收方的客户端上,可以将所述消息内容与条件等发送至消息服务器,或者先发送至消息服务器再转发至接收方客户端。Step S2203: Send an instruction to create the condition set by the user, or send the condition set by the user. For example, if the condition of a certain condition message is a specific location of the sender's client, the aforementioned core link S2 is located on the sender's client, so the core link S1 can also be set on the sender's client. At this time, the sender client directly issues an instruction to create the user setting condition. In other cases, for example, the above core link S1 is placed on the message server, or on the receiver's client, the message content and conditions can be sent to the message server, or first sent to the message server and then forwarded to the receiver Party client.
步骤S2204,获取所述用户设置条件是否成功创建的信息,其中,在所述用户设置条件创建不成功的情况下,显示所述条件创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。Step S2204: Obtain information about whether the user setting condition is successfully created, wherein in the case that the user setting condition is not successfully created, the information indicating that the condition creation is unsuccessful is displayed; in the case that the user setting condition is successfully created Next, when the conditions set by the user are satisfied, the message is displayed on the client of the recipient of the message.
比如实施例二中,当接收方客户端GPS未打开、条件创建不成功时,在发送方的客户端显示条件创建不成功的信息,如图14中1422项。如果没有这种处理机制,即在创建监听器监控所述条件时发生了错误而没有相应信息反馈,发送方艾米丽就不知道自己发送的条件消息中的条件是否已成功地被监控,就会出现所述条件没有被成功监控但艾米丽却以为被成功监控的情况,从而艾米丽的消息不能按其设定的条件及时发送给戴维斯,并耽误事情。而有了上述错误反馈的机制,当有错误反馈时,可让发送方用户有机会修正错误或采用其它的通讯方式传递消息;而在没有错误反馈的情况下,发送方也能确定所发送的条件消息能够按照预期正确地发送到接收方。For example, in the second embodiment, when the GPS of the receiver's client is not turned on and the condition creation is unsuccessful, a message indicating that the condition creation is unsuccessful is displayed on the sender's client, as shown in item 1422 in FIG. 14. If there is no such processing mechanism, that is, an error occurs when the listener is created to monitor the condition without corresponding information feedback, the sender Emily does not know whether the condition in the condition message she sent has been successfully monitored. There may be situations where the conditions are not successfully monitored but Emily believes that they are successfully monitored, so Emily’s message cannot be sent to Davis in time according to the conditions set by him, which delays the matter. With the above error feedback mechanism, when there is an error feedback, the sender user can have the opportunity to correct the error or use other communication methods to deliver the message; and in the absence of error feedback, the sender can also determine the sent The conditional message can be correctly sent to the recipient as expected.
相应地,图23显示了一种应用于消息服务器的实施方法。Correspondingly, Figure 23 shows an implementation method applied to a message server.
步骤S2301,获取用户确定的消息及设置的条件。即接收客户端在图22中步骤S2203中发送的条件消息。接收后,消息服务器可先存储所述条件信息及相应的消息内容。Step S2301: Obtain the message and the set conditions determined by the user. That is, the condition message sent by the client in step S2203 in FIG. 22 is received. After receiving, the message server may first store the condition information and the corresponding message content.
步骤S2302,发出创建条件的指令。即根据上一步骤中接收到的条件消息,执行前述核心环节S1。In step S2302, an instruction to create a condition is issued. That is, according to the condition message received in the previous step, the aforementioned core link S1 is executed.
步骤S2303,确定所述用户设置条件是否创建成功。比如,执行上述核心环节S2的发送端、接收端或其它应用的服务器,将是否创建监听器并正常工作的信息,发送至所述消息服务器, 从而所述消息服务器确定所述用户设置条件是否创建成功。或者上述核心环节S2位于消息服务器上时,则直接确定所述用户设置条件是否创建成功。在此步骤中,还可包括检查是否有逻辑错误。Step S2303: It is determined whether the user setting condition is successfully created. For example, the sending end, receiving end or other application server that executes the above core link S2 sends information about whether a listener is created and working normally to the message server, so that the message server determines whether the user setting condition is created success. Or when the aforementioned core link S2 is located on the message server, it is directly determined whether the user setting conditions are successfully created. In this step, it can also include checking for logic errors.
步骤S2304,发送所述用户设置条件是否成功创建的信息至所述客户端。其中,在所述用户设置条件创建不成功的情况下,在所述客户端显示所述创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。Step S2304: Send information about whether the user setting conditions are successfully created to the client. Wherein, in the case that the creation of the user setting condition is unsuccessful, the client displays the message that the creation is unsuccessful; in the case that the creation of the user setting condition is successful, when the user setting condition is satisfied, The message is displayed on the client of the recipient of the message.
图24显示了一个具体的条件消息系统的实施流程图。Figure 24 shows the implementation flow chart of a specific conditional message system.
所述实施方式中,在消息服务器的数据库中增加可设置条件的表,其中每条记录对一条可设置的条件,按照java数据结构表示如下,其中省略了关键字private,并且各成员变量的含义可参见注释。In the described embodiment, a table with settable conditions is added to the database of the message server, where each record has a settable condition, expressed as follows according to the java data structure, in which the keyword private is omitted, and the meaning of each member variable See note.
Figure PCTCN2020086723-appb-000001
Figure PCTCN2020086723-appb-000001
上述定义中ConditionParamArray,代表条件所属参数的数组,其中每一个数组成员代表一个具体的参数对象的指针,并且所述参数对象所属的类可有共同的基类,所述共同基类可包括参数名称等共有信息。所述条件参数数组还包括各参数如何组合的信息,比如是逻辑与、逻辑或等。In the above definition, ConditionParamArray represents an array of parameters to which the condition belongs, where each array member represents a pointer to a specific parameter object, and the class to which the parameter object belongs may have a common base class, and the common base class may include parameter names And other shared information. The condition parameter array also includes information about how each parameter is combined, such as logical AND, logical OR, and so on.
上述定义中的nIDConditionSource表示条件源的ID。比如当其值为1、2、3、4时,分别表示条件的触发位置分别位于发送方客户端、接收方客户端、消息服务器或其它应用服务器。条件源的具体信息保存在strParamOfConditionSource变量中。比如,当其值为“GPS”时,表示要监控GPS位置;当其值为“http::\\www.weather.com”,表示要监控的天气服务器的位置。此两变量配合使用,确定了条件的位置。The nIDConditionSource in the above definition represents the ID of the condition source. For example, when the value is 1, 2, 3, 4, it means that the trigger position of the condition is located at the sender client, receiver client, message server or other application server. The specific information of the condition source is stored in the strParamOfConditionSource variable. For example, when the value is "GPS", it means the GPS location is to be monitored; when the value is "http::\\www.weather.com", it means the location of the weather server to be monitored. These two variables are used together to determine the location of the condition.
在消息服务器的数据库中还增加用户设置的条件消息的表,用于存放用户提交的条件消息。其中每条记录按java数据结构表示如下:In the database of the message server, a table of conditional messages set by the user is also added to store the conditional messages submitted by the user. Each record is represented as follows according to the java data structure:
Figure PCTCN2020086723-appb-000002
Figure PCTCN2020086723-appb-000002
Figure PCTCN2020086723-appb-000003
Figure PCTCN2020086723-appb-000003
其中后面三个变量代表了用户设置的一项条件的信息。其中nSelected_Conditiion_RecordID代表用户选择的可设置条件的ID号,即上述Conditiion_Record中nID。数组类SelecedParamArray用于存放的是用户选择或输入的上述条件所属的参数,比如图13中的534项条件对应的参数为其下的5341项的内容。其内部结构可与Conditiion_Record中ConditionParamArray类似。而最后的bStatus变量表示条件的状态,默认值为0,表示条件创建不成功或者创建成功后又失效,为1表示条件创建成功,为2表示因所述条件已满足。The last three variables represent the information of a condition set by the user. Among them, nSelected_Conditiion_RecordID represents the ID number selected by the user that can set conditions, that is, the nID in the above Conditiion_Record. The array class SelecedParamArray is used to store the parameters of the above conditions selected or input by the user. For example, the parameters corresponding to the 534 conditions in Figure 13 are the contents of the 5341 items under it. Its internal structure can be similar to ConditionParamArray in Condition_Record. And the last bStatus variable represents the status of the condition, the default value is 0, which means that the condition is created unsuccessfully or fails after being created successfully, 1 means that the condition is created successfully, and 2 means that the condition has been met.
上述Conition_Message定义中的bStatus、nSelected_Conditiion_RecordID和arraySelParam一起实现了一项条件,可参照实现多项条件。The bStatus, nSelected_Conditiion_RecordID and arraySelParam in the above Condition_Message definition realize one condition together, and can refer to realize multiple conditions.
上以各实施例的具体实施方式,参见图24。其中24100为发送方客户端,24200为消息服务器,24300为接收方客户端。For the specific implementation of each embodiment above, refer to FIG. 24. Among them, 24100 is the sender client, 24200 is the message server, and 24300 is the receiver client.
首先,响应于用户输入,客户端24100确定消息的可设置条件(S24101),比如从服务器中的上述可设置条件的数据库中读取,并显示所述条件的接口(S24102)。接收用户确定的条件消息(S24103),不仅包括所述消息的接收方、发送方及具体的消息内容等,还包括用户设置的条件的信息。然后发送所述条件消息至消息服务器(S24104)。First, in response to user input, the client 24100 determines the settable conditions of the message (S24101), such as reading from the above-mentioned settable database in the server, and displays the interface of the conditions (S24102). Receiving a condition message determined by the user (S24103) includes not only the recipient, the sender, and the specific message content of the message, but also information about the conditions set by the user. Then send the condition message to the message server (S24104).
消息服务器24200接收所述条件消息(S24201),先保存所述条件消息至上述数据库中的用户设置的条件消息表中(S24202)。此时,表中的记录中对应Conition_Message中bStatus数据默认值0,即条件还未创建成功。The message server 24200 receives the condition message (S24201), and first saves the condition message in the condition message table set by the user in the database (S24202). At this time, the record in the table corresponds to the default value of the bStatus data in the Condition_Message 0, that is, the condition has not been created successfully.
然后,发出建立监听器指令(S24203)。比如,首先根据所述用户设置条件记录中的nSelected_Conditiion_RecordID查找可设置条件表,得到对应的可设置条件记录。然后从所述可设置条件记录中获取nIDConditionSource和strParamOfConditionSource,比如分别为“2”和“GPS”,表示要在接收方客户端监听GPS。确定所述条件的触发位置后,向所述位置比如接收方客户端发送建立监听器指令。所述指令可包括Conition_Message中的条件消息标识数据idConditon_Message,以及表示条件本身的数据nSelected_Conditiion_RecordID、arraySelParam。Then, an instruction to create a listener is issued (S24203). For example, firstly, search the settable condition table according to the nSelected_Conditiion_RecordID in the user set condition record to obtain the corresponding settable condition record. Then obtain nIDConditionSource and strParamOfConditionSource from the settable condition record, such as "2" and "GPS", respectively, indicating that the receiver's client should monitor GPS. After determining the trigger location of the condition, send an instruction to establish a listener to the location, such as the recipient client. The instruction may include condition message identification data idConditon_Message in Condition_Message, and data representing the condition itself, nSelected_Conditiion_RecordID, arraySelParam.
发出所述监听指令后,还要获取所述监听器是否建立成功的信息(S24204)。并将所述信息发送给发送方的客户端(S24205)。发送方客户端24100接收所述信息(S24104),并显示所述条件是否创建成功的信息(S24105)。比如在建立不成功时,所述客户端向用户显示图8中824项、图14中1422项等;如果创建成功,则还要将上述bStatus数据设为1,然后向发送方客户发送条件创建成功的信息并显示,比如图10中的的1024项。After the monitoring instruction is issued, information about whether the monitoring device is successfully established is also obtained (S24204). And send the information to the sender's client (S24205). The sender client 24100 receives the information (S24104), and displays information about whether the condition is successfully created (S24105). For example, when the establishment is unsuccessful, the client displays the 824 items in Figure 8 and the 1422 items in Figure 14 to the user; if the creation is successful, the above bStatus data must be set to 1, and then the sender client will send the condition creation Success information is displayed, such as 1024 items in Figure 10.
当所述监听器监听到所述条件满足后,向服务器24200发出监听信号,所述信号可能是消息、Http或Tcp请求等形式,其中包括了上述标识条件的nSelected_Conditiion_RecordID数据,以及标识条件消息的idConditon_Message数据。消息服务器24200接收服务请求或消息(S24206)后,先判得是否接收到的是上述监听信号(S24207),比如所述信号中是否含有表示此为监听信号的关键字等。如果不是,则对所述服务请求进行一般的处理(S24210),然后回到上述步骤S24206;如果是,则根据所述信号中的条件消息的idConditon_Message号,搜索用户设置的条件消息表,查找所述条件对应的消息(S24208)。在找到的记录中设置nSelected_Conditiion_RecordID条件对应的bStatus都为2,即所述条件满足。如果发现所有条件都已满足,则分别读取idReceiver或strMessage,就可以得到消息内容和接收方。然后 发送所述消息(S24209),最后回到步骤(S24206)。When the listener detects that the condition is met, it sends a monitoring signal to the server 24200. The signal may be in the form of a message, Http or Tcp request, etc., which includes the nSelected_Conditiion_RecordID data that identifies the condition and the idConditon_Message that identifies the condition message. data. After receiving the service request or message (S24206), the message server 24200 first determines whether the above-mentioned monitoring signal is received (S24207), for example, whether the signal contains a keyword indicating that this is a monitoring signal, etc. If not, perform general processing on the service request (S24210), and then return to the above step S24206; if yes, search the condition message table set by the user according to the idConditon_Message number of the condition message in the signal, and find all The message corresponding to the above condition (S24208). In the found records, the bStatus corresponding to the nSelected_Conditiion_RecordID condition is set to 2, that is, the condition is satisfied. If it is found that all the conditions have been met, then read idReceiver or strMessage respectively to get the message content and receiver. Then send the message (S24209), and finally return to step (S24206).
接收方客户端24300接收到上述步骤S24209发送的消息(S24301)后,就可以显示所述消息(S24302)。这样接收方用户就看到了发送方的条件消息。After the recipient client 24300 receives the message (S24301) sent in step S24209, it can display the message (S24302). In this way, the recipient user sees the sender's condition message.
在图24中,在保存所述条件消息的步骤S24202中,还可以对用户所设置的条件的参数进行逻辑检查,比如实施例一中艾米丽设置的时间与已为其经理安排的时间有冲突,就返回监听器不能建立成功的消息,直接执行步骤S24204,S24205。In Fig. 24, in step S24202 of saving the condition message, the parameters of the conditions set by the user can also be checked logically. For example, the time set by Emily in the first embodiment is different from the time set by her manager. If there is a conflict, it returns a message that the listener cannot be established successfully, and directly executes steps S24204 and S24205.
图25为本公开的一个总的方法的流程图。FIG. 25 is a flowchart of a general method of the present disclosure.
步骤S2501:获取用户确定的消息,其中,所述消息包括消息的接收方及内容。Step S2501: Obtain a message determined by the user, where the message includes the recipient and content of the message.
步骤S2502:获取用户设置的条件。Step S2502: Acquire the conditions set by the user.
步骤S2503:根据所述用户设置的条件,发出创建所述条件的指令。Step S2503: According to the condition set by the user, an instruction to create the condition is issued.
步骤S2504:创建所述条件。比如为所述条件建立监听器。如果第三方应用的服务器根据上一步骤的指令建立监听器,还需要所述第三方服务器具有相应的功能模块。Step S2504: Create the condition. For example, a listener is established for the condition. If the server of the third-party application establishes the listener according to the instructions of the previous step, the third-party server also needs to have corresponding functional modules.
步骤S2505:确定所述用户设置条件是否创建成功,其中:在所述用户设置条件创建不成功的情况下,在所述用户的客户端显示所述创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。Step S2505: Determine whether the creation of the user setting condition is successful, where: in the case that the creation of the user setting condition is unsuccessful, display the unsuccessful creation information on the user's client; and set the condition in the user In the case of a successful creation, when the user setting conditions are met, the message is displayed on the client of the recipient of the message.
在上述方法中,还可包含以下进一步的扩展的方法。所述扩展的方法,也同样适用于比如图22所示的客户端的方法,或者图23所示的消息服务器的方法。In the above method, the following further extended methods can also be included. The extended method is also applicable to the method of the client shown in FIG. 22 or the method of the message server shown in FIG. 23, for example.
进一步,还包括在所述用户设置条件创建成功的情况下,当所述成功创建的条件失效时,获取并显示所述条件失效的信息。Further, the method further includes obtaining and displaying information about the invalidation of the condition when the successfully created condition fails when the user-set condition is successfully created.
或者进一步,在所述条件创建成功的前提下,客户端也获取所述创建成功的信息并显示。这样可让发送方更加明确所述条件已创建成功。Or further, on the premise that the condition is successfully created, the client also obtains and displays the information of the successful creation. This allows the sender to be more certain that the condition has been created successfully.
或者进一步,在所述用户设置条件创建不成功情况下,所述显示所述条件创建不成功的信息中,包括发送提醒消息的接口,所述提醒消息的接口用于触发向所述消息的接收方发送与所述消息有关的信息。所述信息可为,比如图14中的1424项用于提醒修正错误;或者,在另一实施例中,直接为所述消息的内容。Or further, in the case that the creation of the user setting condition is unsuccessful, the information showing the unsuccessful creation of the condition includes an interface for sending a reminder message, and the interface for the reminder message is used to trigger the reception of the message The party sends information related to the message. The information may be, for example, item 1424 in FIG. 14 for reminding to correct errors; or, in another embodiment, it is directly the content of the message.
或者进一步,还包括获取消息的可设置的条件,并显示所述条件。Or further, it also includes acquiring the settable conditions of the message and displaying the conditions.
或者进一步,所述条件包括采用本公开方法的通讯系统的内部条件或所述系统的外部条件。Or further, the conditions include the internal conditions of the communication system using the method of the present disclosure or the external conditions of the system.
或者进一步,所述条件创建不成功的原因,包括逻辑错误或采用本公开方法的通讯系统的外部条件的错误。Or further, the reasons for the unsuccessful creation of the conditions include logic errors or errors in the external conditions of the communication system using the method of the present disclosure.
或者进一步,所述用户设置条件的触发位置位于以下任一位置:消息发送方客户端所在终端,消息接收方客户端所在终端,消息服务器、或第三方应用服务器。可在这些位置建立监听器以监控用户设置的条件是否触发。Or further, the trigger position of the user setting condition is located in any of the following positions: the terminal where the message sender client is located, the terminal where the message receiver client is located, the message server, or the third-party application server. Listeners can be established in these locations to monitor whether the conditions set by the user are triggered.
通过上述方法,能够实现一个可信赖的条件消息通讯系统,即当用户获取了条件设置不成功或失效的信息时,就会知道即使条件满足了,但所述条件对应的消息不会被接收到;当用户没有收到上述不成功或失效的信息时,就会知道所述条件处于被有效监控的状态,并且当所述条件发生时,所述消息会被接收。如果没有上述反馈信息,用户就不确定当所述条件实际发生后,所述消息是否能被接收到。Through the above method, a reliable conditional message communication system can be realized, that is, when the user obtains the information that the condition setting is unsuccessful or invalid, they will know that even if the condition is met, the message corresponding to the condition will not be received ; When the user does not receive the above-mentioned unsuccessful or invalid information, they will know that the condition is in a state of being effectively monitored, and when the condition occurs, the message will be received. If there is no such feedback information, the user is not sure whether the message can be received when the condition actually occurs.
下面的实施例中,不仅直接发送的消息可以设置条件,分享的消息也可以设置条件。In the following embodiment, not only the directly sent message can be set with conditions, but the shared message can also be set with conditions.
下面关于实施例四。The following is about the fourth embodiment.
戴维斯让艾米丽选一款喜欢的商品,作为自己送给她的圣诞礼物。艾米丽上了亚马逊网站,选择了如图26所示网页上的苹果手机。图中2601项为商品名称,2602项表示售价为628.4美元,2603项分别表示分享至Facebook和Twitter的图标,2604项为分享至采用本公开方法的条件消息应用的图标。点击此图标后,会弹出图27中2750所示二维码。Davis asked Emily to choose a favorite product as a Christmas present for her. Emily went to the Amazon website and chose the Apple phone on the web page shown in Figure 26. In the figure, item 2601 is the product name, item 2602 represents the price of US$628.4, item 2603 represents the icon shared to Facebook and Twitter, and item 2604 represents the icon shared to the conditional messaging application using the disclosed method. After clicking this icon, the QR code shown in Figure 27 2750 will pop up.
所述二维码包含了所述网页的网址,可以通过所述网页进行普通的即时分享。但是,采用本公开方法的客户端扫描后,所述客户端将所述网址发送给消息服务器,识别出是为亚马逊网站。一般地,亚马逊网站的销售网页都有类似如下的代码表示商品的销售价格:The two-dimensional code contains the web address of the webpage, and ordinary real-time sharing can be performed through the webpage. However, after scanning by the client using the method of the present disclosure, the client sends the web address to the message server and recognizes that it is an Amazon website. Generally, the sales page of Amazon.com has a code similar to the following to indicate the sales price of the product:
“<span id="priceblock_ourprice"class="a-size-medium a-color-price priceBlockBuyingPriceString">$628.40</span>”。"<span id="priceblock_ourprice"class="a-size-mediuma-color-pricepriceBlockBuyingPriceString">$628.40</span>".
所以消息服务器在所述网页文件中找到“id”为“priceblock_ourprice”的字段,就可以读取所述商品的价格为其中的“$628.40”,并进行监控。Therefore, the message server finds a field with "id" as "priceblock_ourprice" in the webpage file, and can read the price of the commodity as "$628.40" in it, and monitor it.
所以,当消息服务器识别出此为可监控价格变化的商品销售页面后,向发送方的客户端发出相关信息,于是艾米丽的客户端就出现图28中的界面2800。图中,2811项表示这是一个“Web Page Shere Setting”(网页分享设置)的界面。2821项显示“Content”(内容),2822项的输入框中为由客户端自动填入的上述图26所示网页的网址。Therefore, when the message server recognizes that this is a commodity sales page that can monitor price changes, it sends relevant information to the sender's client, and Emily's client displays the interface 2800 in FIG. 28. In the figure, item 2811 indicates that this is a "Web Page Shere Setting" interface. Item 2821 displays "Content", and the input box of item 2822 is the URL of the web page shown in Figure 26 automatically filled in by the client.
下面的2831项表示分享的接收用户。戴维斯点击所述2831项右边的2832项,会弹出一个如图20所示的用户列表选择界面。艾米丽选择2011项戴维斯后返回,在2833项处显示了所选名字。The following 2831 items represent the recipient users of the sharing. Davis clicks on the 2832 item to the right of the 2831 item, and a user list selection interface as shown in Figure 20 will pop up. Emily returned after selecting the 2011 Davis item, showing the selected name in the 2,833 item.
如果艾米丽没有勾选2841项,而是直接点击2851项发送按钮,则可向戴维斯发送所述分享的即时消息。但是,艾米丽觉得有点贵,就想等降价后再让戴维斯买。于时,勾选了2841项“Condition”(条件),并在2842项“Price<=”(价格小于等于)后填写了“570”,表示当所述商品降到570元以内时,发送所述消息给戴维斯。此时,上述2822项的输入框中,在上述分享的网址后自动增加了“这件东西已降价低于570美元了”。但艾米丽删除了此句,另加“I like this!”(我喜欢这个)。然后按下2851项发送按钮。If Emily does not tick item 2841, but directly clicks the item 2851 send button, then the shared instant message can be sent to Davis. However, Emily thought it was a bit expensive and wanted to wait for the price to drop before letting Davis buy it. At that time, I checked the 2841 "Condition" and filled in "570" after the 2842 "Price<=" (price is less than or equal to), which means that when the commodity drops to less than 570 yuan, the sending office State the news to Davis. At this time, the input box of item 2822 mentioned above automatically adds "This thing has been reduced in price below US$570" after the shared URL. But Emily deleted this sentence and added "I like this!" (I like this). Then press the 2851 item send button.
艾米丽手机上的客户端将上述条件消息发送给消息服务器。所述消息服务器按照图24中步骤S24203发出指令建立监听器步骤后,首先访问所述网址,确保所述网页可访问。然后在所述网页的文件中查找上述“id=priceblock_ourprice”字段,以确保能够读取价格;再判断所述价格是否高于用户设定的价格,或者用户设定价格是否为负值等。在此所述任一步骤出现问题,消息服务器都会向发送方客户端发送所述用户设置条件创建不成功的信息。The client on Emily's mobile phone sends the above condition message to the message server. After the message server issues an instruction to establish a listener step in step S24203 in FIG. 24, it first accesses the web site to ensure that the web page is accessible. Then search for the above-mentioned "id=priceblock_ourprice" field in the file of the webpage to ensure that the price can be read; then determine whether the price is higher than the price set by the user, or whether the price set by the user is a negative value, etc. If a problem occurs in any of the steps described here, the message server will send to the sender client information that the creation of the user setting conditions is unsuccessful.
此后,消息服务器新增加一个监控线程,或在另一个已存在的监控线程中增加新的任务,监控所述价格变化。比如在所述监控线程中,通过循环语句,每隔一定时间比如一分钟、一小时或一天,访问图26所示网页的网址,获取所述网页的网页代码后,查找id为上述“priceblock_ourprice”对应的价格。在此过程中,比如由于资源紧张问题,导致所述新增监控线程未能创建成功,或者所述已有的监听线程取消或挂起,消息服务器都会向发送方客户端发送条件创建不成功的信息。当所述条件创建成功后,如果所述商品下架,导致比如访问不到所述网页或者搜索不到“id=priceblock_ourprice”字段,则所述消息服务器发出所述已创建的条件失效的信息至客户端,可让用户知道所述条件消息已失效。Thereafter, the message server adds a new monitoring thread, or adds a new task to another existing monitoring thread to monitor the price change. For example, in the monitoring thread, through a loop statement, every certain time, such as one minute, one hour, or one day, visit the URL of the webpage shown in Figure 26, after obtaining the webpage code of the webpage, look for the id as the above "priceblock_ourprice" The corresponding price. In this process, for example, due to resource constraints, the newly added monitoring thread fails to be created successfully, or the existing monitoring thread is cancelled or suspended, the message server will send a conditional creation unsuccessful to the sender client information. After the condition is successfully created, if the product is removed from the shelves, for example, the web page cannot be accessed or the "id=priceblock_ourprice" field cannot be searched, the message server sends the information that the created condition is invalid to The client can let the user know that the condition message has expired.
当圣诞来临,亚马逊网站降价促,上述事件监听器发现所述价格变为567美元,符合艾米 丽预先设定的条件。于是所述消息服务器给自己发送监听信号,其中仅包含所述条件已满足的信息。通过图24中步骤S24206~S24209,S24301、S24302,最终显示在戴维斯的终端上,如图29所示。其中2921消息显示了所述网址以及前述艾米丽输入的“I like this!”(我喜欢这个)。When Christmas comes, Amazon's website cuts prices, and the above event listener finds that the price has become US$567, which meets Emily's pre-set conditions. Then the message server sends a monitoring signal to itself, which only contains the information that the condition has been met. Through steps S24206 to S24209, S24301, and S24302 in FIG. 24, it is finally displayed on the terminal of Davis, as shown in FIG. 29. Among them, the 2921 message shows the URL and the aforementioned "I like this!" input by Emily (I like this).
下面关于实施例五,采用另一方式来实现实施例四的效果。Regarding the fifth embodiment below, another way is adopted to achieve the effects of the fourth embodiment.
图26中,当艾米丽点击2604项采用本公开的方法进行分享时,弹出图27中2700所示对话框。其中,2701显示窗口标题为“Condition”(条件),下面的2711项表示“直接分享”的单选项,也就是进行普通、不带条件的的分享。2712项表示当所述商品的价格小于或等于2713项中由用户输入的价格时,才进行分享。艾米丽单选2712项,并在下面的2713项中输入“570”,最后点击2714项“OK”键确认。此时也跳出一个二维码,与实施例六不同,此二维码不仅包含网址信息,也包含了条件信息。In FIG. 26, when Emily clicks on item 2604 to share using the method of the present disclosure, a dialog box shown in 2700 in FIG. 27 pops up. Among them, the title of the 2701 display window is "Condition", and the following item 2711 represents the single option of "direct sharing", that is, common and unconditional sharing. Item 2712 indicates that only when the price of the commodity is less than or equal to the price entered by the user in Item 2713, the sharing will be performed. Emily single-select 2712 item, and enter "570" in the following 2713 items, and finally click the 2714 item "OK" button to confirm. At this time, a two-dimensional code is also popped up. Different from the sixth embodiment, this two-dimensional code not only contains website information but also condition information.
通过扫码,艾米丽的客户端获取上述信息,并将上述信息传送给消息服务器。所述消息服务器检查上述信息,比如所述网站是否是已认证的网站等。检查没有问题后,所述客户端显示比如图28所示界面2800,界面中自动显示了艾米丽在图27中填入的数据,比如2842项的价格“570”。艾米丽通过点击2832项也同样选择Davis作为接收用户。当服务器收到艾米丽客户端传送的条件消息后,经过图24中S24201、S24202步骤并在S24203步骤中,因检测到所述条件与经过事先认证的亚马逊网站有关,便向亚马逊网站发送建立相关监听器的请求。By scanning the code, Emily’s client obtains the above information and transmits the above information to the message server. The message server checks the above-mentioned information, such as whether the website is an authenticated website or the like. After checking that there is no problem, the client displays an interface 2800 such as that shown in Figure 28, and the interface automatically displays the data filled in by Emily in Figure 27, such as the 2842 item price "570". Emily also selects Davis as the receiving user by clicking on item 2832. When the server receives the condition message sent by the Emily client, it goes through steps S24201 and S24202 in Figure 24 and in step S24203, because it detects that the condition is related to the pre-authenticated Amazon website, it sends the establishment to the Amazon website. The request of the relevant listener.
因为经过事先认证,建立了一套双方都能接受的协议,所以亚马逊网站的服务器能够识别所述请求并建立相应的监听器。此时,亚马逊网站的服务器不采用实施例四所用的每隔一段时接查询其价格的方法,而是每当调用价格修改函数修改商品价格时,检查所述修改价格的商品的网址,是否是图26所示苹果手机的网址。亚马逊网站的服务器将监听器是否成功设置的信息返回给消息服务器,并转发给发送方的客户端,并在其上显示所述条件是否创建成功的信息。亚马逊网站的服务器上监听器设置成功后,当所述手机的价格低于艾米丽设置的570美元时,则发出监听信号至消息服务器。这样当圣诞节来临,所述手机的价格调低后,触发了监听信号,按照图24中步骤S24206~24209、24301、24302,戴维斯看到了比如图29中2921项所示的艾米丽的消息。Because a set of agreements acceptable to both parties have been established after pre-authentication, the server of the Amazon website can recognize the request and establish a corresponding listener. At this time, the server of the Amazon website does not use the method of checking the price every other time used in the fourth embodiment, but whenever the price modification function is called to modify the price of the product, it checks whether the URL of the product whose price is modified is Figure 26 shows the URL of the Apple mobile phone. The server of the Amazon website returns information about whether the listener is successfully set to the message server, and forwards it to the sender's client, and displays information about whether the condition is successfully created on it. After the listener on the server of the Amazon website is successfully set, when the price of the mobile phone is lower than the US$570 set by Emily, a listener signal is sent to the message server. In this way, when Christmas is coming, after the price of the mobile phone is lowered, the monitoring signal is triggered. According to steps S24206-24209, 24301, 24302 in Figure 24, Davis sees Emily as shown in item 2921 in Figure 29. News.
如果在监听过程中,所述手机在并未降价的情况下就销售一空,当亚马逊网站服务器进行下架操作时,同时将所述下架信息发送至消息服务器,所述消息服务器向发送方客户端发出监听结束的信息,最后在所述客户端上显示商品无货、即所述条件创建成功后又失效的信息。If during the monitoring process, the mobile phone is sold out without a price reduction, when the Amazon website server performs the delisting operation, the delisting information will be sent to the message server at the same time, and the message server will send the message server to the sender customer. The terminal sends a message that the monitoring is over, and finally displays on the client terminal that the product is out of stock, that is, the message that the condition is invalid after being successfully created.
注意到仅在亚马逊网站上,作为可设置条件的各种商品就有上亿种,都将其放入消息服务器中可设置条件数据库中,并在客户端显示供用户选择,会因为太多看不过来。所以从实施例四和五可知,通过监听分享的网址的方式,具有很大的方便性和灵活性。实施例四采用在消息服务器上建立查询的监听器以监听特定网址中的特定字段,能在现有的应用服务器、比如亚马逊网站的服务器不作变动的情况下,实施发送和接收条件消息。而实施五则使亚马逊网站能够接收消息服务器的请求建立监听器,并返回监听消息。好处是监听任务放在了事件的发生位置,即亚马逊网站的服务器,也减轻了消息服务器的负担,整体上配置更合理,。Note that on the Amazon website alone, there are hundreds of millions of items that can be set as conditions. All of them are put into the message server and can be set in the condition database, and displayed on the client for users to choose. But come. Therefore, it can be seen from the fourth and fifth embodiments that the way of monitoring the shared website has great convenience and flexibility. The fourth embodiment adopts the establishment of a query listener on the message server to monitor specific fields in a specific URL, and it is possible to implement sending and receiving conditional messages without changing the existing application server, such as the server of the Amazon website. The fifth implementation enables Amazon.com to receive the request of the message server to establish a listener and return the listener message. The advantage is that the monitoring task is placed at the location of the event, that is, the Amazon website server, which also reduces the burden of the message server, and the overall configuration is more reasonable.
在另一实施例中,图26所示的界面是移动终端比如平板电脑或手机上的界面。点击其中2604项后,直接弹出图28所示的界面,供用户设置条件。所采用的流程,可与实施例四或五相同。In another embodiment, the interface shown in FIG. 26 is an interface on a mobile terminal such as a tablet computer or a mobile phone. After clicking on 2604 items, the interface shown in Figure 28 will pop up directly for the user to set conditions. The process used can be the same as in the fourth or fifth embodiment.
陈了以上述各方法,本文还公开了一种终端设备,其特征在于,包括存储器和处理器,其 中,存储器,用于存储可执行的指令;处理器,用于执行所述指令,以实施根据图22所述通讯的方法及其扩展的方法。并且,本文还公开了一种服务器设备,其特征在于,包括存储器,用于存储执行图22所述通讯方法及其扩展的方法的计算机程序指令,以供下载。Based on the above methods, this article also discloses a terminal device, which is characterized by comprising a memory and a processor, wherein the memory is used to store executable instructions; the processor is used to execute the instructions to implement According to Figure 22, the method of communication and its extended method. In addition, this article also discloses a server device, which is characterized by comprising a memory for storing computer program instructions for executing the communication method and its expansion method described in FIG. 22 for downloading.
本文还公开了一种服务器设备,其特征在于,包括存储器和处理器,其中,存储器,用于存储可执行的指令;处理器,用于执行所述指令,以实施根据图23所述通讯的方法及其扩展的方法。This document also discloses a server device, which is characterized by comprising a memory and a processor, wherein the memory is used to store executable instructions; the processor is used to execute the instructions to implement the communication according to FIG. 23 Method and its extension method.
本文还公开了一种通讯系统,其特征在于,至少包括客户端和服务器,并且执行图25所述通讯方法及扩展的方法。可选地,所述系统还包括第三方应用的服务器,比如本文实施例三中的天气服务器。This article also discloses a communication system, which is characterized in that it includes at least a client and a server, and executes the communication method and the extended method described in FIG. 25. Optionally, the system further includes a third-party application server, such as the weather server in the third embodiment of this document.
本公开引用的知名品牌的实施例,只是为了说明本公开的技术方案可适用的场景以及带来的进步,并未真实发生。The examples of well-known brands cited in the present disclosure are only to illustrate the applicable scenarios and the progress brought about by the technical solutions of the present disclosure, and do not actually occur.
对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备实施例仅仅是示意性的,As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment. The device embodiments described above are only illustrative.
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。The specific embodiments described above further describe the purpose, technical solutions and beneficial effects of the present disclosure in further detail. It should be understood that the above are only specific embodiments of the present disclosure and are not intended to limit the present disclosure. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.

Claims (28)

  1. 一种通讯的方法,应用于客户端,其特征在于,A method of communication, applied to the client, characterized in that:
    获取用户确定的消息,其中,所述消息包括消息的接收方及内容;Acquiring a message determined by the user, where the message includes the recipient and content of the message;
    获取用户设置的条件;Get the conditions set by the user;
    发出创建所述用户设置的条件的指令,或者发送所述用户设置的条件;Issue an instruction to create the condition set by the user, or send the condition set by the user;
    获取所述用户设置条件是否成功创建的信息,其中,Obtain the information about whether the user setting condition is successfully created, where:
    在所述用户设置条件创建不成功的情况下,显示所述条件创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。In the case that the creation of the user setting condition is unsuccessful, the message indicating that the creation of the condition is unsuccessful is displayed; in the case that the creation of the user setting condition is successful, when the user setting condition is satisfied, the message is received The client of the party displays the message.
  2. 根据权利要求1所述通讯的方法,其特征在于,还包括在所述用户设置条件创建成功的情况下,当所述成功创建的条件失效时,获取并显示所述条件失效的信息。4. The communication method according to claim 1, further comprising: in the case that the user-set condition is successfully created, when the successfully created condition fails, acquiring and displaying information about the condition failure.
  3. 根据权利要求1所述通讯的方法,其特征在于,在所述用户设置条件创建成功的情况下,还显示所述条件创建成功的信息。4. The communication method according to claim 1, wherein when the user setting condition is successfully created, the information indicating that the condition is successfully created is also displayed.
  4. 根据权利要求1所述通讯的方法,其特征在于,在所述用户设置条件创建不成功情况下,所述显示所述条件创建不成功的信息中,包括发送提醒消息的接口,所述提醒消息的接口用于触发向所述消息的接收方发送与所述用户确定的消息有关的信息。The communication method according to claim 1, characterized in that, in the case that the creation of the condition set by the user is unsuccessful, the information showing that the creation of the condition is unsuccessful includes an interface for sending a reminder message, the reminder message The interface is used to trigger the sending of information related to the message determined by the user to the recipient of the message.
  5. 根据权利要求1所述通讯的方法,其特征在于,还包括接收消息的可设置的条件,并显示所述条件。The method of communication according to claim 1, further comprising receiving a settable condition of the message and displaying the condition.
  6. 根据权利要求1所述通讯的方法,其特征在于,所述条件包括采用所述方法的通讯系统的内部条件或所述通讯系统的外部条件。The communication method according to claim 1, wherein the conditions include internal conditions of the communication system using the method or external conditions of the communication system.
  7. 根据权利要求1所述通讯的方法,其特征在于,所述条件创建不成功的原因,包括逻辑错误或采用所述方法的通讯系统的外部条件的错误。The communication method according to claim 1, wherein the reason for the unsuccessful creation of the condition includes a logic error or an error of an external condition of the communication system using the method.
  8. 根据权利要求1所述通讯的方法,其特征在于,所述用户设置条件的触发位置位于以下任一位置:消息发送方客户端所在终端,消息接收方客户端所在终端,消息服务器、或第三方应用服务器。The communication method according to claim 1, wherein the trigger position of the user setting condition is located at any of the following positions: the terminal where the message sender client is located, the terminal where the message receiver client is located, the message server, or a third party application server.
  9. 根据权利要求1所述通讯的方法,其特征在于,所述用户确定的消息的内容,包括用户分享的内容。The communication method according to claim 1, wherein the content of the message determined by the user includes content shared by the user.
  10. 一种终端设备,其特征在于,包括存储器和处理器,其中,存储器,用于存储可执行的指令;处理器,用于执行所述指令,以实施根据权利要求1至9中任意一项所述通讯的方法。A terminal device, characterized by comprising a memory and a processor, wherein the memory is used to store executable instructions; the processor is used to execute the instructions to implement the instructions according to any one of claims 1 to 9 State the method of communication.
  11. 一种服务器设备,其特征在于,包括存储器,用于存储执行权利要求1至9中任一项所述通讯方法的计算机程序指令,以供下载。A server device characterized by comprising a memory for storing computer program instructions for executing the communication method of any one of claims 1 to 9 for downloading.
  12. 一种通讯的方法,应用于服务器,其特征在于,A method of communication, applied to a server, characterized in that:
    获取客户端发送的用户确定的消息、以及用户设置的条件,其中所述消息包括消息的接收方及内容;Obtain a user-determined message sent by the client and conditions set by the user, where the message includes the recipient and content of the message;
    根据所述用户设置的条件,发出创建所述条件的指令;Issue an instruction to create the condition according to the condition set by the user;
    确定所述用户设置条件是否创建成功;Determine whether the user setting condition is successfully created;
    发送所述用户设置条件是否成功创建的信息至所述客户端,其中,Sending information about whether the user setting conditions are successfully created to the client, where:
    在所述用户设置条件创建不成功的情况下,在所述客户端显示所述创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。In the case that the creation of the user setting conditions is unsuccessful, the client displays the information that the creation is unsuccessful; in the case that the creation of the user setting conditions is successful, when the user setting conditions are met, the The client of the recipient of the message displays the message.
  13. 根据权利要求12的通讯的方法,其特征在于,还包括在所述用户设置条件创建成功的情况下,当获取到所述成功创建的条件的失效信息后,发送所述条件失效信息,其中,所述条件失效信息由所述客户端获取并显示。The communication method according to claim 12, further comprising: in the case that the user setting condition is successfully created, after obtaining the invalidation information of the successfully created condition, sending the condition invalidation information, wherein, The condition invalidation information is acquired and displayed by the client.
  14. 根据权利要求12的通讯的方法,其特征在于,还包括发送可设置的条件信息,其中,所述可设置条件信息被所述客户端获取并显示。The communication method according to claim 12, further comprising sending settable condition information, wherein the settable condition information is acquired and displayed by the client.
  15. 根据权利要求12所述通讯的方法,其特征在于,所述条件包括采用所述方法的通讯系统的内部条件或所述通讯系统的外部条件。The communication method according to claim 12, wherein the conditions include internal conditions of the communication system using the method or external conditions of the communication system.
  16. 根据权利要求12所述通讯的方法,其特征在于,所述条件创建不成功的原因,包括逻辑错误或采用所述方法的通讯系统的外部条件的错误。The communication method according to claim 12, wherein the reason for the unsuccessful creation of the condition includes a logic error or an error of an external condition of the communication system using the method.
  17. 根据权利要求12所述通讯的方法,其特征在于,所述用户设置条件的触发位置位于以下任一位置:消息发送方客户端所在终端,消息接收方客户端所在终端,消息服务器,或第三方应用服务器。The communication method according to claim 12, wherein the trigger position of the user setting condition is located at any of the following positions: the terminal where the message sender client is located, the terminal where the message receiver client is located, the message server, or a third party application server.
  18. 根据权利要求12所述通讯的方法,其特征在于,所述用户确定的消息的内容,包括用户分享的内容。The communication method according to claim 12, wherein the content of the message determined by the user includes content shared by the user.
  19. 一种服务器设备,其特征在于,包括存储器和处理器,其中,存储器,用于存储可执行的指令;处理器,用于执行所述指令,以实施根据权利要求12至18中任意一项所述通讯的方法。A server device, characterized by comprising a memory and a processor, wherein the memory is used to store executable instructions; the processor is used to execute the instructions to implement any one of claims 12 to 18 State the method of communication.
  20. 一种通讯的方法,其特征在于,A method of communication, characterized in that,
    获取用户确定的消息,其中,所述消息包括消息的接收方及内容;Acquiring a message determined by the user, where the message includes the recipient and content of the message;
    获取用户设置的条件;Get the conditions set by the user;
    根据所述用户设置的条件,发出创建所述条件的指令;Issue an instruction to create the condition according to the condition set by the user;
    创建所述条件;Create the conditions;
    确定所述用户设置条件是否创建成功,其中:在所述用户设置条件创建不成功的情况下,在所述用户的客户端显示所述创建不成功的信息;在所述用户设置条件创建成功的情况下,当所述用户设置条件满足后,在所述消息的接收方的客户端显示所述消息。It is determined whether the creation of the user setting condition is successful, wherein: in the case that the creation of the user setting condition is unsuccessful, the message that the creation is unsuccessful is displayed on the client of the user; when the creation of the user setting condition is successful In this case, when the conditions set by the user are satisfied, the message is displayed on the client of the recipient of the message.
  21. 根据权利要求20所述通讯的方法,其特征在于,还包括所述在所述用户设置条件创建成功的情况下,当获取到所述成功创建的条件的失效信息后,在所述用户的客户端显示所述条件失效的信息。The method of communication according to claim 20, further comprising: in the case that the user setting condition is successfully created, when the invalidation information of the successfully created condition is obtained, the client of the user The terminal displays the information that the condition has failed.
  22. 根据权利要求20所述通讯的方法,其特征在于,在所述用户设置条件创建成功的情况下,在所述用户的客户端显示所述条件创建成功的信息。22. The communication method according to claim 20, wherein, in the case that the user setting condition is successfully created, a message indicating that the condition is created successfully is displayed on the client of the user.
  23. 根据权利要求20所述通讯的方法,其特征在于,还包括获取消息的可设置的条件,并显示所述条件。The method of communication according to claim 20, further comprising obtaining settable conditions of the message and displaying the conditions.
  24. 根据权利要求20所述通讯的方法,其特征在于,所述条件包括采用所述方法的通讯系统的内部条件或所述通讯系统的外部条件。The communication method according to claim 20, wherein the conditions include internal conditions of the communication system using the method or external conditions of the communication system.
  25. 根据权利要求21所述通讯的方法,其特征在于,所述条件创建不成功的原因,包括逻辑错误或采用所述方法的通讯系统的外部条件的错误。The communication method according to claim 21, wherein the reason for the unsuccessful creation of the condition includes a logic error or an error of an external condition of the communication system using the method.
  26. 根据权利要求20所述通讯的方法,其特征在于,所述用户设置条件的触发位置位于以下任一位置:消息发送方客户端所在终端,消息接收方客户端所在终端,消息服务器、或第三方应用服务器。The communication method according to claim 20, wherein the trigger position of the user setting condition is located at any of the following positions: the terminal where the message sender client is located, the terminal where the message receiver client is located, the message server, or a third party application server.
  27. 根据权利要求20所述通讯的方法,其特征在于,所述用户确定的消息的内容,包括用户分 享的内容。The communication method according to claim 20, wherein the content of the message determined by the user includes content shared by the user.
  28. 一种通讯系统,其特征在于,至少包括客户端和服务器,并且执行权利要求20至27所述通讯方法。A communication system, characterized in that it includes at least a client and a server, and implements the communication method described in claims 20-27.
PCT/CN2020/086723 2020-04-24 2020-04-24 Communication method, device and system WO2021212476A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2020/086723 WO2021212476A1 (en) 2020-04-24 2020-04-24 Communication method, device and system
CN202080004657.9A CN113841173A (en) 2020-04-24 2020-04-24 Communication method, device and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/086723 WO2021212476A1 (en) 2020-04-24 2020-04-24 Communication method, device and system

Publications (1)

Publication Number Publication Date
WO2021212476A1 true WO2021212476A1 (en) 2021-10-28

Family

ID=78270840

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/086723 WO2021212476A1 (en) 2020-04-24 2020-04-24 Communication method, device and system

Country Status (2)

Country Link
CN (1) CN113841173A (en)
WO (1) WO2021212476A1 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090281843A1 (en) * 2008-05-08 2009-11-12 Apple Inc. Calendar scheduling systems
CN105530168A (en) * 2015-12-15 2016-04-27 北京乐动卓越科技有限公司 Method and system for synchronizing instant messaging event
WO2016200704A1 (en) * 2015-06-07 2016-12-15 Apple Inc. Travel updates for calendar events
CN107147810A (en) * 2017-06-30 2017-09-08 广东欧珀移动通信有限公司 Information prompting method, device, storage medium and electronic equipment
CN108629548A (en) * 2017-03-15 2018-10-09 腾讯科技(深圳)有限公司 A kind of schedule processing method and processing device
CN109756416A (en) * 2018-12-29 2019-05-14 论客科技(广州)有限公司 For the message prompt method of instant messaging, device and storage medium
CN109992174A (en) * 2019-04-02 2019-07-09 维沃移动通信有限公司 Information processing method and terminal device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547614B (en) * 2012-02-07 2015-10-28 惠州Tcl移动通信有限公司 A kind of automatic reminding method based on mobile phone and mobile phone
CN104156848B (en) * 2014-07-23 2018-07-27 小米科技有限责任公司 The method and apparatus of schedule management
CN106375389A (en) * 2016-08-26 2017-02-01 南京车易淘网络信息技术有限公司 Message system service method based on third-party message pushing platform and business integration

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090281843A1 (en) * 2008-05-08 2009-11-12 Apple Inc. Calendar scheduling systems
WO2016200704A1 (en) * 2015-06-07 2016-12-15 Apple Inc. Travel updates for calendar events
CN105530168A (en) * 2015-12-15 2016-04-27 北京乐动卓越科技有限公司 Method and system for synchronizing instant messaging event
CN108629548A (en) * 2017-03-15 2018-10-09 腾讯科技(深圳)有限公司 A kind of schedule processing method and processing device
CN107147810A (en) * 2017-06-30 2017-09-08 广东欧珀移动通信有限公司 Information prompting method, device, storage medium and electronic equipment
CN109756416A (en) * 2018-12-29 2019-05-14 论客科技(广州)有限公司 For the message prompt method of instant messaging, device and storage medium
CN109992174A (en) * 2019-04-02 2019-07-09 维沃移动通信有限公司 Information processing method and terminal device

Also Published As

Publication number Publication date
CN113841173A (en) 2021-12-24

Similar Documents

Publication Publication Date Title
CN102498483B (en) The server end that event triggers is grand
US8631065B2 (en) System and method for seamlessly integrating separate information systems within an application
US8467817B2 (en) Generic business notifications for mobile devices
US9002954B2 (en) Task management system associating with contact information and method thereof
US20110231478A1 (en) System, Server, and Mobile Device for Content Provider Website Interaction and Method Therefore
US7606808B2 (en) Maintaining and establishing subscriptions with load-balanced servers
US9485202B2 (en) Alerting recipients to errors occurring when accessing external services
US10554762B2 (en) Mobile event notifications
EP2958277B1 (en) Instant messaging method and system
US20150281035A1 (en) Monitoring of Node.JS Applications
US9250774B2 (en) User interface push channel
CN105591821A (en) Monitoring system and business system
US20170017677A1 (en) Application event bridge
US8856230B2 (en) In browser real time collaboration lists and forms
CN107205031B (en) Information reminding method and device and terminal equipment
US12066983B2 (en) Building collaborative data processing flows
CN115037709A (en) Information processing method, device, electronic equipment and storage medium
US9563485B2 (en) Business transaction context for call graph
US9477700B2 (en) Data environment change notification
US9942177B1 (en) Method and system for real-time data updates
JP2006243985A (en) Message notification system and method, and server used therefor
WO2021212476A1 (en) Communication method, device and system
US20110029614A1 (en) Event Notifications of Program Landscape Alterations
US12069185B1 (en) Systems and methods for a data integration connector
CN112181937B (en) Method and device for transferring data

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20932071

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20932071

Country of ref document: EP

Kind code of ref document: A1