WO2010022619A1 - A method and system for user selection - Google Patents

A method and system for user selection Download PDF

Info

Publication number
WO2010022619A1
WO2010022619A1 PCT/CN2009/072823 CN2009072823W WO2010022619A1 WO 2010022619 A1 WO2010022619 A1 WO 2010022619A1 CN 2009072823 W CN2009072823 W CN 2009072823W WO 2010022619 A1 WO2010022619 A1 WO 2010022619A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
condition
state
selection
information
Prior art date
Application number
PCT/CN2009/072823
Other languages
French (fr)
Chinese (zh)
Inventor
刘睿
刘海涛
宋悦
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2010022619A1 publication Critical patent/WO2010022619A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding

Definitions

  • the present invention relates to communication network systems, and more particularly to condition based user selection methods and systems. Background technique
  • a presence server such information including user online information, network bearer information, client device application capability information, and users. Information such as hobbies and moods.
  • the location information is present on the Location server, which indicates the geographic location where the user is currently located.
  • FIG. 1 is a schematic diagram showing the configuration of a user selection system in the related art.
  • the requester sends a request to the presence server 102 through the terminal device 101, wherein the request carries a status condition (online) to obtain a user uniform resource identifier whose status is online (URI: Universal Resource Identifier);
  • URI Universal Resource Identifier
  • the requester sends a request to the location server 103 through the terminal device 101, and the geographical condition (near the mall) carried by the request is obtained to obtain the user uniform resource identifier URI of the geographic location near the mall.
  • the requester After obtaining the uniform resource identifier URI of the above user, the requester will perform a comprehensive analysis according to the user uniform resource identifier URI, and obtain a user list that satisfies the condition, that is, the state near the mall and whose status is online.
  • the requester when the user list is obtained by the above system, the requester needs to use its terminal device 101 to send a request to a different status information server to obtain the status of the user, and the requester himself needs to compare the returned results.
  • the requester needs to know the information held by each server, and the requester's terminal device 101 needs to have an interface to various different servers, so that when the user list is obtained, the requester is brought a large inconvenient.
  • FIG. 2 is a schematic diagram showing the structure of a condition-based user selection system in the related art.
  • the requester uses its terminal device 201 to send a request or condition for information such as a geographical location, presentation, and the like to
  • the user selection server 202 the user selection server 202 is connected to various state information servers, for example, to a server such as the presence server 203, the location server 204, etc., obtains presence information from the presence server 203, and obtains geographic location information from the location server 204, according to the obtained
  • the information is analyzed and integrated, and the user URI satisfying the requester's transmission condition is transmitted to the requester's terminal device 201, so that the CBUS: Condition Based URIs Selection system is used, and the requester's terminal device 201 is not required.
  • the requester does not need to analyze the trace according to the obtained information, nor need to configure different interfaces on the requester's terminal device 201, only need to submit the requirements to The user selects the server 203, so that the condition-based user selection system can bring certain convenience to the requester, and solve the problem in the user selection system of FIG.
  • the CBUS system selects the user, and the meaning of the selection condition is the condition that the user should have.
  • the selection server 202 of the CBUS system needs to perform a single search on each condition to obtain a corresponding search result, that is, a user list; then, through the "and" operation, the search result is re-selected to obtain the user expectation.
  • the search process is complicated, and the algorithm is single, the search takes a long time, and the efficiency is low.
  • An object of the embodiments of the present invention is to provide a user selection method by which users who meet different selection conditions can be selected, which is accurate and efficient, and brings great convenience to the requester.
  • An embodiment of the present invention provides a user selection method, where the method includes:
  • the embodiment of the present invention further provides a user selection system, where the system includes a user selection server, and the user selection server includes:
  • the receiving unit is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two state conditions and the state condition; And a selection unit, configured to perform user selection according to the request message to obtain a user selection result that meets the selection condition.
  • An embodiment of the present invention provides a user selection apparatus, where the apparatus includes:
  • the receiving unit is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two state conditions and the state condition;
  • a selection unit configured to perform user selection according to the request message to obtain a user selection result that meets the selection condition.
  • the beneficial effects of the embodiments of the present invention are that the user who meets different selection conditions can be selected by the embodiment of the present invention, and the method is accurate and efficient, and brings great convenience to the requester.
  • FIG. 1 is a schematic diagram showing a structure of a user selection system in the related art
  • FIG. 2 is a schematic diagram showing the structure of a condition-based user selection system in the related art
  • FIG. 3 is a schematic diagram showing the structure of a user selection system according to Embodiment 1 of the present invention.
  • FIG. 4A is a schematic diagram showing the structure of a user selection system according to Embodiments 2 and 3 of the present invention.
  • 4B is a schematic diagram showing the structure of a user selection system according to an embodiment of the present invention.
  • Figure 5 is a schematic view showing the structure of the selection unit in Figure 4A;
  • Figure 6 is a schematic view showing the structure of the first processing unit of Figure 5;
  • FIG. 7 is a schematic diagram showing the structure of a selection unit according to Embodiment 3 of the present invention.
  • FIG. 8 is a flowchart of a user selection method according to Embodiment 4 of the present invention.
  • FIG. 9 is a flow chart of a user selection method according to an embodiment of the present invention.
  • FIG. 10 is a flowchart of another user selection method according to an embodiment of the present invention.
  • FIG. 11 is a flowchart of processing two consecutive state conditions in a plurality of state conditions in sequence according to an embodiment of the present invention
  • FIG. 12 is a flowchart of a user selection method according to Embodiment 10 of the present invention.
  • FIG. 13 is a flowchart of another user selection method according to Embodiment 10 of the present invention.
  • FIG. 14 is a schematic diagram showing the structure of a user selection device according to Embodiment 11 of the present invention.
  • FIG. 15 is a schematic structural diagram of a selection unit in Embodiment 11 of the present invention.
  • Figure 16 is a schematic diagram showing the structure of the first processing unit of Figure 15;
  • Figure 17 is a block diagram showing another configuration of a user selection device according to Embodiment 11 of the present invention; and
  • Figure 18 is a block diagram showing another configuration of a selection unit according to Embodiment 11 of the present invention.
  • Embodiments of the present invention provide a user selection method and system.
  • the embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
  • the embodiment of the present invention provides a user selection system.
  • the system further includes a receiving unit 301 and a selecting unit 302.
  • the receiving unit 301 is configured to receive a request message for performing user selection. Carrying at least one selection condition including at least two state conditions and a logical relationship between the state conditions, and/or a user range; the selecting unit 302 is configured to perform user selection according to the selection condition to obtain the The user who selects the condition selects the result.
  • the selection condition may include a user range or may not include a user range.
  • the user range is defaulted to all users.
  • the logical relationship between the state conditions may be one of a logical sum (and), a logical OR (or ), and a logical non (not).
  • “and” indicates the intersection between the user selection results satisfying the two state conditions; “or” indicates the union between the user selection results satisfying the two state conditions; “not” indicates the user selection result satisfying the previous state condition , but does not include the user selection result of the latter state condition.
  • the operations of the receiving unit 301 and the selecting unit 302 are controlled by a central processing unit (CPU).
  • CPU central processing unit
  • the user who meets different state conditions, logical relationships, and user ranges can be selected by the embodiment of the present invention.
  • the method is accurate and efficient, and brings great convenience to the requester.
  • the embodiment of the present invention further provides a user selection system. As shown in FIG. 4A, the system further includes a receiving unit 402 and a selecting unit 403. The receiving unit 402 and the selecting unit 403 have the same functions as in the first embodiment. I won't go into details here.
  • the system further includes a request sending unit 401, and the request sending unit is configured to send the request message to the receiving unit 402.
  • Figure 5 is a block diagram showing the configuration of the selection unit of Figure 4A.
  • the selection unit 403 includes a first parsing unit 501, a first processing unit 502, and a first result obtaining unit 503.
  • the first parsing unit 501 is configured to parse the selection condition to obtain a logical relationship between the user range, the status condition, and the status condition; wherein, if there is no user range in the selection condition, the first parsing
  • the unit 501 adopts a default user range, that is, all users;
  • the first processing unit 502 is configured to acquire a user set corresponding to the state condition within the user range;
  • the first result obtaining unit 503 is configured to collect the user according to the logical relationship. Perform logical operations to obtain user selection results.
  • FIG. 6 is a block diagram showing the structure of the first processing unit of Figure 5.
  • the first processing unit 502 includes: a state information acquiring unit 601 and a first user set obtaining unit 602; wherein the state information acquiring unit 601 is configured to acquire state information of all users corresponding to each type of information to which the state condition belongs;
  • the first user set obtaining unit 602 is configured to select a user set that meets the corresponding status condition from the status information of each of the users to obtain a user set corresponding to the status condition.
  • the system may further include a storage unit 404 that may store the acquired state information of the user.
  • the acquired user state information is temporarily stored.
  • the selecting unit 403 may first acquire the temporarily stored user state information and use it for the user selection operation.
  • the system further includes a timer 405 and a maintenance unit (not shown); wherein the timer 405 is configured to time the status information of the user temporarily stored in the storage unit 404.
  • the maintenance unit is configured to determine whether the time of storing the state information of the user stored in the storage unit 404 exceeds the preset effective time. If the determination result is over, the state information of the user is deleted from the storage unit 404.
  • the system further includes an information providing unit 406 for providing status information of all users corresponding to the type of information to which the status condition belongs.
  • the first processing unit 502 in the selecting unit 403 may first determine whether the state information of the user corresponding to the information type to which the state condition belongs is temporarily stored in the storage unit 404; if the determination result is yes, The status information of the user corresponding to the information type to which the status condition belongs is directly obtained from the storage unit 404. If the determination result is no, the status information of the user is obtained from the information providing unit 406 corresponding to the information type to which the status condition belongs.
  • the effective time is related to the type of the state information, for example, the effective time of the static information is longer, such as the user's Hobbies; and variable state information should be valid Shorter, such as the user's location information.
  • the request sending unit 401 can be implemented by using the user terminal device 407.
  • the receiving unit 401, the selecting unit 403, the storage unit 404, and the timer 405 can be implemented by the selection server 408.
  • the information providing unit 406 is implemented by a corresponding information providing server 409, such as a presence server, a location server, or the like.
  • the user terminal device 407 can perform information interaction with the selection server 408 by wire or wirelessly, and send a request message to the selection server 408, and the selection server 408 returns the selection result to the user terminal device 407;
  • the server 408 can perform information interaction with the information providing server 409 through the network.
  • the temporary user status information may be acquired first, and used. The user selects the operation, which greatly reduces the data interaction between the selection server 408 and the information providing server 409.
  • the system can select users satisfying different state conditions, logical relationships, and user ranges, and the method is accurate and efficient, and brings great convenience to the requester.
  • the embodiment of the present invention further provides a user selection system.
  • the system includes a request sending unit 401, a receiving unit 402, a selecting unit 403, a storage unit 404, a timer 405, a maintenance unit, and an information providing unit 406.
  • the functions of the request sending unit 401, the receiving unit 402, the selecting unit 403, the storing unit 404, the timer 405, the maintenance unit, and the information providing unit 406 are similar to those in the second embodiment, and are not described herein again.
  • Fig. 7 is a schematic view showing the configuration of a selection unit of the third embodiment.
  • the selection unit includes a second parsing unit 701, a second processing unit 702, and a second result obtaining unit 703;
  • the second parsing unit 701 is configured to parse the selection condition to obtain a logical relationship between a user range, a status condition, and the status condition;
  • the second processing unit 702 is configured to process the state condition in sequence, and obtain the data in succession. a collection of users corresponding to each state condition;
  • the second result obtaining unit 703 is configured to determine a user selection result according to the logical relationship and the user set corresponding to each state condition.
  • the second processing unit 702 processes the two state conditions in the state condition in sequence
  • the following manner may be adopted: the user set corresponding to the previous state condition and the logic corresponding to the state condition
  • the relationship updates the user scope, and the updated user scope is used to obtain the user collection corresponding to the post state condition.
  • the second processing unit 702 obtains the user set corresponding to the previous state condition, and updates the user range, the following manner may be adopted:
  • the user set that meets the previous state condition is used as the updated user range
  • the prior user scope is removed from the user set that meets the post-state condition as the updated user range;
  • the user set that meets the prior condition is used as the updated user range.
  • the second processing unit 702 processes two corresponding user sets according to the logical relationship, the following manner may be adopted:
  • the user set that meets the post state condition is taken as the user selection result.
  • the second processing unit 702 processes each state condition in batches in order, and updates the user range selected one time according to the user selection result selected in the previous condition, thereby greatly reducing user selection. The number of selections at the time, the selection efficiency is high, and the user is greatly facilitated.
  • the request sending unit 401 can adopt a user terminal device. 407 to achieve.
  • the receiving unit 401, the selecting unit 403, the storage unit 404, the timer 405, and the maintenance unit may be implemented by the selection server 408.
  • the information providing unit 406 is implemented by a corresponding information providing server 409, such as a presence server, a location server, or the like.
  • the user terminal device 407 can perform information interaction with the selection server 408 by wire or wirelessly, and send a request message to the selection server 408, and the selection server 408 returns the selection result to the user terminal device 407;
  • the server 408 can perform information interaction with the information providing server 409 through the network.
  • the selection server 408 acquires the status information of the user in the information providing server 409 corresponding to each status condition in batches according to the selection condition sent by the requester, and updates the user range selected one time later according to the user selection result selected in the previous condition. In this way, the number of users requesting status information for the last several times can be reduced, the communication traffic between the selection server 408 and the information providing server 409 is saved, and the load of the information providing server is also reduced.
  • FIG. 8 is a flowchart of a user selection method according to Embodiment 4 of the present invention. As shown in FIG. 8, the method includes: receiving a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between at least two state conditions and the state condition, and / or user range (see step 801); user selection is made according to the selection condition to obtain a user selection result that meets the selection condition (see step 802).
  • the selection condition may include a user range or may not include a user range.
  • the user range is defaulted to all users.
  • the logical relationship between the state conditions may be one of a logical sum (and), a logical OR (or ), and a logical non (not).
  • “and” indicates the intersection between the user selection results satisfying the two state conditions; “or” indicates the union between the user selection results satisfying the two state conditions; “not” indicates the user selection result satisfying the previous state condition , but does not include the user selection result of the latter state condition.
  • the logical relationship between the state conditions is one of a logical sum, a logical OR, and a logical non.
  • Step 901 The user sends a request message to the selection server 408 through the terminal device 407.
  • the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two status conditions and the status condition, and/or User scope.
  • Step 903 The selection server 408 respectively obtains a set of users corresponding to the status condition in the user scope; wherein, the following manner may be adopted:
  • Step 904 performing logical operations on each user set according to the logical relationship to obtain a final user selection result.
  • Step 905 the selection server 408 returns the user selection result to the user terminal device 407.
  • step 903 when the state condition is processed, the user selection under each state condition is simultaneously performed, and then the final user selection result is obtained based on the logical relationship between the respective state conditions.
  • the selection server 408 can also store the acquired user state information.
  • the selection server 408 can first determine whether the selection server 408 is temporarily stored. The user status information corresponding to the status condition, if the determination result is yes, the selection server 408 can directly obtain the user status information from the temporarily stored information without being acquired from the information providing server 409, and if the determination result is the selection server 408 The user status information is not temporarily stored, and is acquired from the corresponding information providing server 409. In this way, the number of interactions between the selection server 408 and the information providing server 409 can be greatly reduced.
  • the selection server 408 can also set a valid time for the temporarily stored state information.
  • the effective time may be related to the type of the status information.
  • the status information may include status information of the static condition and status information of the dynamic condition, so that the effective time of the static information may be set longer, such as The user's hobbies, and the effective time setting of the dynamically variable status information should be shorter, such as the user's location information.
  • a timer is set for the status information, when the time is equal to Or when the valid time corresponding to the status information of the type is exceeded, that is, when the time expires, select the server.
  • the user selection method of the embodiment of the present invention will be described in detail below with reference to FIG. 4B and FIG. Step 1001:
  • the user sends a request message to the selection server 408 through the terminal device 407.
  • the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two status conditions and the status condition, and/or the user. range.
  • Step 1002 After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. The user does not include the user in the request message. In the range, the selection server 408 can determine that the user range is all users.
  • Step 1003 The selection server 408 processes the state conditions in sequence, and sequentially obtains a set of users corresponding to each state condition.
  • Step 1004 The selection server 408 processes the user set corresponding to each state condition according to the logical relationship to obtain a user selection result.
  • Step 1005 finally the selection server 408 transmits the obtained user selection result to the user terminal device 407.
  • step 1003 when the selection server 408 processes the two state conditions in the state condition in sequence, the user may be based on the user set corresponding to the previous state condition and the logical relationship corresponding to the state condition.
  • the scope is updated, and the updated user scope is used to obtain the user set corresponding to the post state condition, thereby reducing the number of data interactions between the selection server 408 and the information providing server 409.
  • Figure 11 is a flow chart showing the processing of two of the plurality of state conditions in sequence according to an embodiment of the present invention. As shown in FIG. 11, step 1101, determining whether the type of the logical relationship between the two state conditions is logically non-linear;
  • Step 1102 In step 1101, if the determination result is no, the user set corresponding to one of the two status conditions is obtained;
  • Step 1103 Update a user range according to a logical relationship between the obtained user set and the sequence status condition.
  • Step 1104 using the updated user range to obtain another status bar of the two status conditions.
  • the corresponding user collection using the updated user range to obtain another status bar of the two status conditions.
  • step 1103 when the logical relationship of the two state conditions is a logical sum, the user set that meets the previous state condition is used as the updated user range; in the updated user scope, the user set that meets the post state condition is set. As a result of user selection.
  • step 1103 when the logical relationship between the two state conditions is logical OR, the prior user scope is removed from the user set that meets the previous state condition as the updated user scope; correspondingly, in step 1004, according to the logic
  • the relationship is processed by the user set corresponding to the two state conditions, the user sets that meet the two state conditions are merged, and the merged result is used as the user selection result.
  • Step 1101 if the result of the determination is that the logical relationship is logically non-exclusive, the method further includes: Step 1105: First, perform a user selection operation under a logical non-targeted state condition, that is, first obtain a corresponding one of the two consecutive status conditions. a collection of users of logical non-state conditions;
  • Step 1106 Update the user range according to the obtained user set.
  • Step 1107 using the updated user scope to obtain a user set corresponding to another state condition.
  • the method comprises: using a user set that meets another state condition as a user selection result.
  • step 1106 when the user scope update is performed, when the condition that the logic is not targeted is processed, the prior user scope is removed from the user set that meets the post state condition as the updated user scope; in the updated user scope, The user set that meets the previous state condition is taken as the result of the user selection.
  • whether or not the logical relationship between the conditions is determined to be logical is not only an embodiment of the present invention, but is not limited thereto, and it may be first determined whether the logical relationship is "or" or "and". And when the judgment result is logically non-existent, each condition can be processed in the normal order, not only the condition for logical non-determination is determined first.
  • steps 1102, 1104, 1105, and 1107 a user set corresponding to a state condition is obtained, and the following manner may be adopted:
  • the selection server 408 can batchize according to the selection conditions sent by the requester. Obtaining the status information of the user in each status condition corresponding information providing server 409, and updating the user range according to the user set corresponding to the previous status condition and the logical relationship corresponding to the status condition, and using the updated user range to obtain the next time.
  • the user condition corresponds to the set of users, thereby reducing the number of users requesting status information for the last several times, saving communication traffic with the status information server, and reducing the load of the status information server.
  • the selection server 408 can also set a valid time for the temporarily stored status information in order to ensure the reliability of the acquired status information of the user.
  • the effective time may be related to the type of the status information, such as the effective time of the static information, such as the user's hobbies, and the variable status information should be shorter, such as the user's location information.
  • the selection server 408 when the selection server 408 stores the status information of a user, a timer is set for the status information, and when the time is equal to or exceeds the valid time corresponding to the status information of the type, that is, when the time expires, The server 408 will delete the temporary state information, so that the user information on the selection server 408 can be automatically maintained, the load of the selection server 408 is reduced, and the reliability of the acquired state information of the user is ensured.
  • the operation of the logical non-operation may be considered first, but for other logical relationships, the execution order is not limited and may be arbitrarily selected.
  • the order of processing may be arranged according to the type of the state information, and the state information of the static condition may be acquired first, and then the state information of the dynamic condition is obtained.
  • the effective time can be set according to the state information type.
  • the state information can include state information of the static condition and state information of the dynamic condition, so that the effective time of the static information can be set.
  • Long such as the user's hobbies, and the effective time setting of the dynamically variable status information should be shorter, such as the user's location information.
  • the state information corresponding to the longer effective time can be obtained first, and then the state information corresponding to the shorter effective time is obtained. Because the effective time is longer, it is more likely to obtain the state information of the target user from the temporarily stored state information, and Because this kind of information is temporarily stored for a long time, it can select services for more users in the future, so the state information acquisition work is performed first.
  • the user range used is large, and the obtained state information can have more application value;
  • the status information with a short effective time is then executed after the status information is acquired.
  • the user range used is small, and the temporary uselessness caused by the short effective time can be assumed.
  • Embodiment 5 The embodiments of the present invention are described in detail below through specific examples. Embodiment 5
  • Zack hopes to establish a chat room with his colleagues to discuss the contents of the work. There are 6 colleagues, but Beijing colleagues don't have to go to work because of the unique festivals in China. Zack only needs to discuss work with colleagues who are on the phone but not in Beijing. Zack acts as a requester to send a user selection request message to the selection server through its terminal device, wherein the request message includes a logical relationship between the user range, the status condition, and the status condition.
  • the user scope is a list of 6 people, including the contact information of 6 people, as shown in Table 1.
  • the selection server After the selection server receives the user selection request message, it sends the information to the server, for example
  • the Presence server requests Presence information for 6 people, and requests the location information of 6 people from the location server to obtain status information of 6 people, as shown in Table 2.
  • the embodiment selects one less user list for requesting the Presence information from the server to the Presence server.
  • the Presence server does not need to retrieve and return Al ice Presence information to the selection server.
  • the publisher wants to post a promotional ad for the mall, which is located in Beijing and the promotion is the day of the day. Therefore, the publisher wants to send it to everyone near the mall and to users who have subscribed to the service and are located in Beijing.
  • the publisher as a requester, sends a user selection request message to the selection server, providing a list of 51 subscribers.
  • the server After the server selects the request message, it obtains the list of all the boot users from the Presence server.
  • the Presence server returns the list of users whose current Presence status is powered on, for a total of 83,975 people.
  • the user selects the server and sends the list of 83975 people to the location server, requests the location information of the 83975 people, the location server returns the latitude and longitude information of the people, and the selection server calculates the distance between the 83975 people and the mall, wherein the distance is less than 1 km. There are 1746 people.
  • Zack hopes to set up a chat room with his colleagues to discuss the content of the work. There are 6 colleagues. Zack only needs to discuss the work with the startup colleagues. Zack as a requester to choose clothes
  • the server sends a user selection request message, which includes a logical relationship between the user range, the status condition, and the status condition.
  • the user scope is a list of 6 people, including the contact details of 6 people, as shown in Table 3.
  • the server After receiving the user selection request message, the server selects the Presence information of 6 people from the Presence server, and temporarily stores the information shown, and provides a valid time, as shown in Table 4.
  • the selection server returns to Zack a selection result including Al ice, Chris, David, and Emily to complete the user selection operation. Yang then initiates a user selection request operation as a requester.
  • a five-person user list is provided in the request message, as shown in Table 5, and the status condition is (Presence Table 5).
  • the server selects the Presence information of 5 people from the temporary user status information, obtains the Presence information of Emily and Frank, and then selects the server to request the Presence information of Gray, Hans and Jack from the Presence server, and obtains the following result, and The Presence information of Gray, Hans and Jack is temporarily stored, as shown in Table 6.
  • the selection server determines that the Presence information of Al ice or the like is valid for 26 minutes, the selection server deletes the Presence information of the temporarily stored Alice, Bob, Chris, David, Emily, and Frank.
  • the publisher wants to publish a promotional ad for the mall, which is sports items. Therefore, the publisher wants to send the advertisement to everyone who is near the mall and whose personal hobby is sports.
  • the publisher as a requester, sends a user selection request message to the selection server, providing a list of 51 people, hoping that the selection server can return a list of users whose interests are sports and located near the store.
  • the selection server first sends a message to the information providing server after receiving the user selection request message sent by the requester (such as network address book information, wherein the personal interests of the recorded contacts are recorded) In the information), 51 people's personal hobbies are inquired, and 20 of them have a personal preference for sports, which meets the requirements of the selection criteria.
  • the server is selected to obtain the location information of 20 people from the location server, and the location information of 20 people returned by the location server is determined, and 6 of them are determined to meet the selection condition requirement, and the 6-person list is returned to the requester.
  • the embodiment of the invention provides a user selection method.
  • the method includes: Receiving a request message for performing user selection; wherein the request message carries at least one selection condition, the selection condition including a logical relationship between the at least two status conditions and the status condition;
  • User selection is performed based on the information carried by the request message to obtain a user selection result in accordance with the request.
  • the request message may further include a user scope, and when the user scope is not included, the user scope is defaulted to all users.
  • the logical relationship between the state conditions is one of a logical sum, a logical OR, and a logical non.
  • the status condition is condition information for a user status, such as a geographic location condition such as "user is located in Beijing" and a user network status condition such as "user online”.
  • the selection condition is a combination of state conditions when the user selects, and includes at least one state condition.
  • the selection condition includes a plurality of state conditions, the logical relationship between the plurality of state conditions is also included.
  • the user selection method of the embodiment of the present invention will be described in detail below with reference to FIG. 4B and FIG. Step 1201:
  • the user sends a request message to the selection server 408 through the terminal device 407.
  • the request message carries at least one selection condition, the selection condition includes a logical relationship between the at least two status conditions and the status condition; the request message may further carry a user range.
  • Step 1202 After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. The user scope is not included in the request message. The selection server 408 can determine that the user range is all users.
  • step 1203 the selection server 408 respectively obtains a set of users corresponding to the status condition in the user range; wherein, the following manner may be adopted:
  • the evaluation information Evaluating, by the information providing server 409 or the storage unit of the selection server 408, the evaluation information of all the users corresponding to the information type of each state condition in the user range; the evaluation information of all users corresponding to the information type of each state condition belongs to each Select a collection of users that match the status criteria.
  • the evaluation information is obtained from each state server, such as a presence server, a location server, etc., for performing state selection of the user.
  • Step 1204 Perform logical operations on each user set according to the logical relationship to obtain a final user selection result.
  • the selection server 408 returns the user selection result to the user terminal device 407.
  • the selection server 408 can also store the acquired user's evaluation information.
  • the selection server 408 may first determine whether the selection server 408 temporarily stores the evaluation information of the user corresponding to the status condition in the request message, and if the determination result is yes, The selection server 408 can obtain the evaluation information of the user directly from the temporarily stored information, and does not obtain the evaluation information from the information providing server 409. If the determination result is that the selection server 408 does not temporarily store the evaluation information of the user, the corresponding information is obtained from the corresponding information.
  • the server 409 is provided for acquisition. In this way, the number of interactions between the selection server 408 and the information providing server 409 can be greatly reduced.
  • the selection server 408 can also set a valid time for the temporarily stored evaluation information in order to ensure the reliability of the evaluation information of the acquired user.
  • the effective time may be related to the type of the evaluation information.
  • the evaluation information may include evaluation information of the static condition and evaluation information of the dynamic condition, so that the effective time of the static information may be set longer, such as The user's hobbies, and the effective time of the dynamically variable evaluation information is set shorter, such as the user's location information.
  • the selection server 408 when the selection server 408 stores the evaluation information of a user, a timer is set for the evaluation information, when the time of the timing is equal to or exceeds the effective time corresponding to the evaluation information of the type, that is, when the time expires, The server 408 will delete the temporary evaluation information, so that the evaluation information of the user on the selection server 408 can be automatically maintained, the load of the selection server 408 can be alleviated, and the reliability of the acquired evaluation information of the user can be guaranteed.
  • the user selection method of the embodiment of the present invention will be described in detail below with reference to FIG. 4B and FIG. Step 1301:
  • the user sends a request message to the selection server 408 through the terminal device 407.
  • the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two status conditions and the status condition. It can also carry a range of users.
  • Step 1302 After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. Wherein, when the request message does not include the user range, The selection server 408 can determine that the user range is all users.
  • Step 1303 The selection server 408 processes the state conditions in sequence, and sequentially acquires a set of users corresponding to each state condition.
  • Step 1304 the selection server 408 processes the user set corresponding to each state condition according to the logical relationship to obtain a user selection result.
  • the selection server 408 processes the two state conditions in the state condition in sequence, as described in FIG. 11 in the fourth embodiment, and details are not described herein again.
  • An embodiment of the present invention provides a user selection apparatus.
  • the apparatus includes a receiving unit.
  • a receiving unit 1401 is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes logic between at least two state conditions and the state condition
  • the request message may further carry a user range;
  • the selecting unit 1402 is configured to perform user selection according to the information carried by the request message to obtain a user selection result that meets the request.
  • the device selects the user, and the selection condition refers to the condition that the user should have.
  • the selection condition includes at least two state conditions, and a logical relationship between the state conditions.
  • the request message may include a user scope or may not include a user scope.
  • the user scope is defaulted to all users.
  • the device can select a server for the user.
  • the request message carries at least one selection condition and a user range as an example for description.
  • the selection unit 1402 includes a first parsing unit 1501, a first processing unit 1502, and a first result obtaining unit 1503.
  • the first parsing unit 1501 is configured to parse the request message to obtain a logical relationship between the user scope, the at least two state conditions, and the state condition. Wherein, if there is no user scope, the first The parsing unit 1501 adopts a default user range, that is, all users; the first processing unit 1502 is configured to acquire a user set corresponding to the status condition within the user range; the first result obtaining unit 1503 is configured to use the user according to the logical relationship. The set performs logical operations to obtain user selection results.
  • FIG 16 is a block diagram showing the structure of the first processing unit of Figure 15;
  • the first processing unit 1502 includes: a state information obtaining unit 1601 and a first user set obtaining unit 1602.
  • the state information acquiring unit 1601 is configured to obtain evaluation information of all users corresponding to each type of information to which the state condition belongs.
  • the first user set obtaining unit 1602 is configured to select a user set that meets the status condition from the evaluation information corresponding to each type of information to which the status condition belongs, to obtain a status condition corresponding to the status condition. User collection.
  • the apparatus may further include a storage unit 1701, the storage unit 1701
  • the evaluation information of the obtained user can be stored. In this way, the obtained user evaluation information is temporarily stored.
  • the selecting unit 1402 may first acquire the temporarily stored user evaluation information and use it for the user selection operation.
  • the apparatus further includes a timer 1702 and a maintenance unit 1703; wherein the timer 1702 is configured to time the evaluation information of the user temporarily stored in the storage unit 1701.
  • the maintenance unit 1703 is configured to determine whether the time for storing the evaluation information of the user stored in the storage unit 1701 exceeds the preset effective time. If the determination result is over, the evaluation information of the user is deleted from the storage unit 1701.
  • the first processing unit 1502 in the selecting unit 1402 may first determine whether the evaluation information of the user corresponding to the conditional information type is temporarily stored in the storage unit 1701; if the determination result is yes, then The storage unit 1701 directly obtains the evaluation information of the user corresponding to the information type to which the status condition belongs. If the determination result is negative, the evaluation information of the user is obtained from the information providing server corresponding to the information type to which the status condition belongs.
  • the system can select users satisfying different state conditions, logical relationships, and user ranges, and the method is accurate and efficient, and brings great convenience to the requester.
  • the selection unit 1402 may also adopt the following configuration:
  • the selection unit 1402 includes a second parsing unit 1801 and a second processing unit.
  • the second parsing unit 1801 is configured to parse the request message to obtain a logical relationship between a user range, a status condition, and the status condition;
  • the second processing unit 1802 is configured to process the state condition according to the sequence, and acquire the user set corresponding to each state condition in succession;
  • the second result obtaining unit 1803 is configured to determine a user selection result according to the logical relationship and a user set corresponding to each state condition.
  • the device can obtain the evaluation information of the user in the information providing server corresponding to each state condition in batches according to the selection condition sent by the requester, and select according to the previous state condition.
  • the user selects the range of users selected after the result update, so that the number of users requesting the evaluation information after the last time can be reduced, the communication traffic between the selection server 408 and the information providing server 409 is saved, and the load of the information providing server is also reduced.
  • the embodiment of the present invention provides a user selection system. As shown in FIG. 4B, the system includes a selection server 408 and an information providing server 409.
  • the selection server 408 is configured to receive a request message for performing user selection, and perform user selection according to the information carried in the request message to obtain a user selection result that meets the selection condition.
  • the request message carries at least one selection condition, and the selection condition includes a logical relationship between the at least two status conditions and the status condition; the request message may further carry a user range.
  • the configuration of the selection server 408 is as described in the embodiment, and details are not described herein again.
  • the information providing server 409 is connected to the selection server 408 for providing the selection server 408 with evaluation information of all users corresponding to the type of information to which the condition belongs.
  • the information providing server 409 may include a presence server, a location server, and the like.
  • the system further includes a terminal device 407, configured to send a request message for user selection; the request message carries at least one selection condition and a user range, or the request message carries at least one selection Condition, the selection condition includes a logical relationship between at least two state conditions and the state condition.
  • the user terminal device 407 can perform information interaction with the selection server 408 by wire or wirelessly, and send a request message to the selection server 408, and the selection server 408 returns the selection result to the user terminal device 407;
  • the server 408 can perform information interaction with the information providing server 409 through the network.
  • it is not limited to the above implementation manner, and may be implemented in other manners.
  • the selection server 408 can transmit a request message according to the terminal device 407, perform user selection according to the conditions in the request, and then obtain an end user selection result according to a logical relationship between the respective state conditions. Therefore, the system can select users satisfying different state conditions, logical relationships, and user ranges, and the method is accurate and efficient, and brings great convenience to the requester.
  • the user selection result under different conditions is subjected to a set operation to obtain a final selected user result; and the logical relationship between the conditions may be used to modify the result of the previous condition selection.
  • Select the user range reduce the selection server and The information provides information exchange between the servers; the selection server temporarily stores the acquired state information to reduce interaction with the information providing server; can maintain the temporarily stored information; and obtain state information in batches according to the nature of the state condition First, obtain the state information of the static condition, and then obtain the state information of the dynamic condition to ensure the accuracy of the selection.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A method and system for user selection. The method includes that of: receiving the request message of performing user selection; wherein, the request message carries selecting condition, and the selecting condition includes at least two status conditions and the logical relationship of the status conditions; performing user selection according to the request message, in order to obtain the user selection result which accords with the selecting condition. The selection can be performed to users who fulfill different selecting conditions by the method, and the method is accurate, of high efficiency, and can bring a great convenience to the requester.

Description

用户选择方法和系统  User selection method and system
技术领域 Technical field
本发明关于通信网络系统, 特别关于基于条件的用户选择方法和系统。 背景技术  The present invention relates to communication network systems, and more particularly to condition based user selection methods and systems. Background technique
随着电信技术的发展, 未来的业务丰富多彩, 许多业务的会话建立阶段, 都需要根据一定的条件来选择需要加入会话的用户, 这些条件将基于用户所 拥有的各种信息, 如呈现 (Presence ) 信息、 位置 (Location) 信息以及用 户的兴趣和爱好信息。  With the development of telecommunication technology, the future business is rich and colorful. In the session establishment phase of many services, users who need to join the session need to be selected according to certain conditions. These conditions will be based on various information possessed by the user, such as presentation (Presence). Information, location information, and user interests and hobbies.
现有的通信技术中, 不同的用户信息分处于不同的服务器上, 如呈现信 息存在于呈现 (Presence ) 服务器上, 这些信息包括用户的在线信息、 网络 承载信息、 客户端设备应用能力信息以及用户的兴趣爱好和心情等信息。 位 置信息存在于定位 (Location) 服务器上, 该位置信息指出了用户当前所处 的地理位置。  In the existing communication technologies, different user information is divided into different servers, such as presence information exists on a presence server, such information including user online information, network bearer information, client device application capability information, and users. Information such as hobbies and moods. The location information is present on the Location server, which indicates the geographic location where the user is currently located.
例如, 要获得位于某一个商场附近、 状态为在线的用户列表, 则需要根 据用户当前的呈现信息和他们的地理位置信息才能作出判断和选择, 以获得 满足上述条件的用户列表。  For example, to obtain a list of users located near a certain mall and having an online status, it is necessary to make a judgment and selection based on the current presence information of the user and their geographical location information to obtain a list of users satisfying the above conditions.
图 1是相关技术中用户选择系统的构成示意图。 如图 1所示, 首先, 请 求者通过终端设备 101向呈现 (Presence ) 服务器 102发送请求, 其中, 该 请求携带状态条件 (在线) , 以获得状态为在线的用户统一资源标识 (URI : Universal Resource Identifier ) ; 然后, 该请求者通过该终端设备 101再 向定位 (Location) 服务器 103发送请求, 该请求携带的地理位置条件 (商 场附近) , 以获得地理位置在商场附近的用户统一资源标识 URI。获取上述用 户的统一资源标识 URI后, 请求者自己将根据这些用户统一资源标识 URI进 行综合分析, 获得满足条件, 即位于商场附近、 状态为在线的用户列表。  1 is a schematic diagram showing the configuration of a user selection system in the related art. As shown in FIG. 1, first, the requester sends a request to the presence server 102 through the terminal device 101, wherein the request carries a status condition (online) to obtain a user uniform resource identifier whose status is online (URI: Universal Resource Identifier); Then, the requester sends a request to the location server 103 through the terminal device 101, and the geographical condition (near the mall) carried by the request is obtained to obtain the user uniform resource identifier URI of the geographic location near the mall. After obtaining the uniform resource identifier URI of the above user, the requester will perform a comprehensive analysis according to the user uniform resource identifier URI, and obtain a user list that satisfies the condition, that is, the state near the mall and whose status is online.
由上述可知, 通过上述系统获取用户列表时, 需要请求者使用其终端设 备 101向不同的状态信息服务器发送请求以获得用户的状态, 并且该请求者 自己还需将返回的结果进行比较, 这样, 该请求者需要知道每种服务器所保 存的信息, 而且该请求者的终端设备 101需要具备到各种不同服务器的接口, 这样, 在获取用户列表时, 会给该请求者带来了很大的不便。  It can be seen from the above that when the user list is obtained by the above system, the requester needs to use its terminal device 101 to send a request to a different status information server to obtain the status of the user, and the requester himself needs to compare the returned results. The requester needs to know the information held by each server, and the requester's terminal device 101 needs to have an interface to various different servers, so that when the user list is obtained, the requester is brought a large inconvenient.
图 2是相关技术中基于条件的用户选择系统构成示意图。 如图 2所示, 请求者使用其终端设备 201将对地理位置、 呈现等信息的要求或者条件送至 用户选择服务器 202, 用户选择服务器 202与各种状态信息服务器连接, 例如 与呈现服务器 203、定位服务器 204等服务器连接, 向呈现服务器 203获得呈 现信息, 向定位服务器 204获得地理位置信息, 根据获取的信息进行分析综 合,并将满足请求者发送条件的用户 URI发送至请求者的终端设备 201,这样, 采用基于条件的用户选择 (CBUS: Condition Based URIs Selection) 系统, 不需要请求者的终端设备 201与各种各样的服务器直接进行交互, 也不需要 该请求者自己根据获取的信息进行分析踪合, 也不需要在该请求者的终端设 备 201上配置不同的接口, 只需要把需求提交给用户选择服务器 203即可, 这样, 通过基于条件的用户选择系统可以给该请求者带来一定的方便, 解决 图 1的用户选择系统中存在的问题。 2 is a schematic diagram showing the structure of a condition-based user selection system in the related art. As shown in FIG. 2, the requester uses its terminal device 201 to send a request or condition for information such as a geographical location, presentation, and the like to The user selection server 202, the user selection server 202 is connected to various state information servers, for example, to a server such as the presence server 203, the location server 204, etc., obtains presence information from the presence server 203, and obtains geographic location information from the location server 204, according to the obtained The information is analyzed and integrated, and the user URI satisfying the requester's transmission condition is transmitted to the requester's terminal device 201, so that the CBUS: Condition Based URIs Selection system is used, and the requester's terminal device 201 is not required. Direct interaction with a variety of servers, the requester does not need to analyze the trace according to the obtained information, nor need to configure different interfaces on the requester's terminal device 201, only need to submit the requirements to The user selects the server 203, so that the condition-based user selection system can bring certain convenience to the requester, and solve the problem in the user selection system of FIG.
但是, 在该 CBUS系统中, 该 CBUS系统选择的是用户, 选择条件的含义 是这个用户所应具备的条件。 在用户选择过程中, 该 CBUS系统的选择服务器 202需要对各个条件进行单一的搜索, 以获得相应的搜索结果, 即用户列表; 然后通过 "和"运算, 对搜索结果进行再次选择得出用户期望的结果, 该搜 索过程比较复杂, 而且算法单一, 搜索花费的时间较长, 效率较低。  However, in the CBUS system, the CBUS system selects the user, and the meaning of the selection condition is the condition that the user should have. In the user selection process, the selection server 202 of the CBUS system needs to perform a single search on each condition to obtain a corresponding search result, that is, a user list; then, through the "and" operation, the search result is re-selected to obtain the user expectation. As a result, the search process is complicated, and the algorithm is single, the search takes a long time, and the efficiency is low.
发明内容 Summary of the invention
本发明实施例的目的在于提供一种用户选择方法, 通过该方法可对满足 不同选择条件的用户进行选择, 该方法精确、 效率高, 给请求者带来极大的 方便。  An object of the embodiments of the present invention is to provide a user selection method by which users who meet different selection conditions can be selected, which is accurate and efficient, and brings great convenience to the requester.
本发明实施例的目的还在于提供一种用户选择系统, 通过该系统可对满 足不同选择条件的用户进行选择, 既精确、效率高,给请求者带来极大的方便。  It is also an object of the embodiments of the present invention to provide a user selection system by which a user who satisfies different selection conditions can be selected, which is accurate and efficient, and brings great convenience to the requester.
本发明实施例提供一种用户选择方法, 该方法包括:  An embodiment of the present invention provides a user selection method, where the method includes:
接收进行用户选择的请求消息; 其中, 所述请求消息携带至少一个选择 条件, 所述选择条件包括至少两个状态条件和所述状态条件之间的逻辑关系; 根据所述请求消息进行用户选择, 以获得符合所述选择条件的用户选择 结果。  Receiving a request message for performing user selection; wherein the request message carries at least one selection condition, the selection condition includes a logical relationship between the at least two status conditions and the status condition; performing user selection according to the request message, A user selection result that meets the selection criteria is obtained.
本发明实施例还提供一种用户选择系统, 该系统包括用户选择服务器, 该用户选择服务器包括:  The embodiment of the present invention further provides a user selection system, where the system includes a user selection server, and the user selection server includes:
接收单元, 所述接收单元用于接收进行用户选择的请求消息; 其中, 所 述请求消息携带至少一个选择条件, 所述选择条件包括至少两个状态条件和 所述状态条件之间的逻辑关系; 选择单元, 所述选择单元用于根据所述请求消息进行用户选择, 以获得 符合所述选择条件的用户选择结果。 a receiving unit, the receiving unit is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two state conditions and the state condition; And a selection unit, configured to perform user selection according to the request message to obtain a user selection result that meets the selection condition.
本发明实施例提供一种用户选择装置, 该装置包括:  An embodiment of the present invention provides a user selection apparatus, where the apparatus includes:
接收单元, 所述接收单元用于接收进行用户选择的请求消息; 其中, 所 述请求消息携带至少一个选择条件, 所述选择条件包括至少两个状态条件和 所述状态条件之间的逻辑关系;  a receiving unit, the receiving unit is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two state conditions and the state condition;
选择单元, 所述选择单元用于根据所述请求消息进行用户选择, 以获得 符合所述选择条件的用户选择结果。  And a selection unit, configured to perform user selection according to the request message to obtain a user selection result that meets the selection condition.
本发明实施例的有益效果在于, 通过本发明实施例可对满足不同选择条 件的用户进行选择, 该方法精确、 效率高, 给请求者带来极大的方便。  The beneficial effects of the embodiments of the present invention are that the user who meets different selection conditions can be selected by the embodiment of the present invention, and the method is accurate and efficient, and brings great convenience to the requester.
附图说明 DRAWINGS
此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部 分, 并不构成对本发明的限定。 在附图中:  The drawings described herein are provided to provide a further understanding of the invention and are in no way of limitation. In the drawing:
图 1是相关技术中用户选择系统构成示意图;  1 is a schematic diagram showing a structure of a user selection system in the related art;
图 2是相关技术中基于条件的用户选择系统构成示意图;  2 is a schematic diagram showing the structure of a condition-based user selection system in the related art;
图 3是本发明实施例一的用户选择系统构成示意图;  3 is a schematic diagram showing the structure of a user selection system according to Embodiment 1 of the present invention;
图 4A是本发明实施例二和三的用户选择系统构成示意图;  4A is a schematic diagram showing the structure of a user selection system according to Embodiments 2 and 3 of the present invention;
图 4B是本发明实施例的用户选择系统构成示意图;  4B is a schematic diagram showing the structure of a user selection system according to an embodiment of the present invention;
图 5是图 4A中选择单元的构成示意图;  Figure 5 is a schematic view showing the structure of the selection unit in Figure 4A;
图 6是图 5中第一处理单元构成示意图;  Figure 6 is a schematic view showing the structure of the first processing unit of Figure 5;
图 7是本发明实施例三的选择单元构成示意图;  7 is a schematic diagram showing the structure of a selection unit according to Embodiment 3 of the present invention;
图 8是本发明实施例四的用户选择方法流程图;  8 is a flowchart of a user selection method according to Embodiment 4 of the present invention;
图 9是本发明实施例的一个用户选择方法流程图;  9 is a flow chart of a user selection method according to an embodiment of the present invention;
图 10是本发明实施例的另一个用户选择方法流程图;  FIG. 10 is a flowchart of another user selection method according to an embodiment of the present invention; FIG.
图 11是本发明实施例按照先后顺序对多个状态条件中的先后两个状态条 件进行处理的流程图;  FIG. 11 is a flowchart of processing two consecutive state conditions in a plurality of state conditions in sequence according to an embodiment of the present invention; FIG.
图 12是本发明实施例十的一个用户选择方法流程图;  12 is a flowchart of a user selection method according to Embodiment 10 of the present invention;
图 13是本发明实施例十的另一个用户选择方法流程图;  13 is a flowchart of another user selection method according to Embodiment 10 of the present invention;
图 14是本发明实施例十一的一个用户选择装置构成示意图;  14 is a schematic diagram showing the structure of a user selection device according to Embodiment 11 of the present invention;
图 15是本发明实施例十一中选择单元的构成示意图;  15 is a schematic structural diagram of a selection unit in Embodiment 11 of the present invention;
图 16是图 15中第一处理单元构成示意图; 图 17是本发明实施例十一的另一个用户选择装置构成示意图; 图 18是本发明实施例十一的另一个选择单元构成示意图。 Figure 16 is a schematic diagram showing the structure of the first processing unit of Figure 15; Figure 17 is a block diagram showing another configuration of a user selection device according to Embodiment 11 of the present invention; and Figure 18 is a block diagram showing another configuration of a selection unit according to Embodiment 11 of the present invention.
具体实施方式 detailed description
为使本发明实施例的目的、 技术方案和优点更加清楚明白, 下面结合附 图, 对本发明实施例做进一步详细说明。 在此, 本发明的示意性实施例及其 说明用于解释本发明, 但并不作为对本发明的限定。  In order to make the objects, technical solutions and advantages of the embodiments of the present invention more clearly, the embodiments of the present invention are further described in detail below with reference to the accompanying drawings. The illustrative embodiments of the present invention and the description thereof are intended to explain the present invention, but are not intended to limit the invention.
本发明实施例提供一种用户选择方法和系统。 以下结合附图对本发明实 施例进行详细说明。  Embodiments of the present invention provide a user selection method and system. The embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
实施例一  Embodiment 1
本发明实施例提供一种用户选择系统, 如图 3所示, 该系统还包括接收 单元 301和选择单元 302; 其中, 该接收单元 301用于接收进行用户选择的请 求消息; 其中, 该请求消息携带至少一个选择条件, 该选择条件包括至少两 个状态条件和该状态条件之间的逻辑关系、 和 /或用户范围; 该选择单元 302 用于根据该选择条件进行用户选择,以获得符合所述选择条件的用户选择结果。  The embodiment of the present invention provides a user selection system. As shown in FIG. 3, the system further includes a receiving unit 301 and a selecting unit 302. The receiving unit 301 is configured to receive a request message for performing user selection. Carrying at least one selection condition including at least two state conditions and a logical relationship between the state conditions, and/or a user range; the selecting unit 302 is configured to perform user selection according to the selection condition to obtain the The user who selects the condition selects the result.
在本实施例中, 该选择条件可包括用户范围, 也可不包括用户范围, 当 该选择条件中不包括该用户范围时, 默认该用户范围为所有用户。  In this embodiment, the selection condition may include a user range or may not include a user range. When the user range is not included in the selection condition, the user range is defaulted to all users.
另外, 该状态条件之间的逻辑关系可为逻辑和 (and)、 逻辑或 (or ) 和 逻辑非 (not ) 中的一个。 其中, "and "表示满足两个状态条件的用户选择结 果间的交集; "or "表示满足两个状态条件的用户选择结果间的并集; "not "表 示满足前一个状态条件的用户选择结果, 但不包含后一个状态条件的用户选 择结果。  In addition, the logical relationship between the state conditions may be one of a logical sum (and), a logical OR (or ), and a logical non (not). Where "and" indicates the intersection between the user selection results satisfying the two state conditions; "or" indicates the union between the user selection results satisfying the two state conditions; "not" indicates the user selection result satisfying the previous state condition , but does not include the user selection result of the latter state condition.
在本实施例中, 该接收单元 301和选择单元 302的工作由中央处理单元 (CPU) 控制。  In the present embodiment, the operations of the receiving unit 301 and the selecting unit 302 are controlled by a central processing unit (CPU).
因此, 通过本发明实施例可对满足不同状态条件、 逻辑关系、 用户范围 的用户进行选择, 该方法精确、 效率高, 给请求者带来极大的方便。  Therefore, the user who meets different state conditions, logical relationships, and user ranges can be selected by the embodiment of the present invention. The method is accurate and efficient, and brings great convenience to the requester.
实施例二  Embodiment 2
本发明实施例还提供一种用户选择系统, 如图 4A所示, 该系统还包括接 收单元 402和选择单元 403; 其中, 该接收单元 402和选择单元 403的作用与 实施例一中相同, 此处不再赘述。  The embodiment of the present invention further provides a user selection system. As shown in FIG. 4A, the system further includes a receiving unit 402 and a selecting unit 403. The receiving unit 402 and the selecting unit 403 have the same functions as in the first embodiment. I won't go into details here.
如图 4A所示, 该系统还包括请求发送单元 401, 该请求发送单元用于发 送该请求消息至该接收单元 402。 图 5是图 4A中选择单元的构成示意图。 如图 5所示, 该选择单元 403包 括第一解析单元 501、 第一处理单元 502和第一结果获取单元 503。 As shown in FIG. 4A, the system further includes a request sending unit 401, and the request sending unit is configured to send the request message to the receiving unit 402. Figure 5 is a block diagram showing the configuration of the selection unit of Figure 4A. As shown in FIG. 5, the selection unit 403 includes a first parsing unit 501, a first processing unit 502, and a first result obtaining unit 503.
其中, 该第一解析单元 501 用于对该选择条件进行解析, 以获取用户范 围、 该状态条件和该状态条件之间的逻辑关系; 其中, 若选择条件中没有用 户范围, 则该第一解析单元 501 采用默认的用户范围, 即所有用户; 该第一 处理单元 502用于获取该用户范围内、 与状态条件对应的用户集合; 该第一 结果获取单元 503用于根据该逻辑关系对用户集合进行逻辑运算, 以获取用 户选择结果。  The first parsing unit 501 is configured to parse the selection condition to obtain a logical relationship between the user range, the status condition, and the status condition; wherein, if there is no user range in the selection condition, the first parsing The unit 501 adopts a default user range, that is, all users; the first processing unit 502 is configured to acquire a user set corresponding to the state condition within the user range; the first result obtaining unit 503 is configured to collect the user according to the logical relationship. Perform logical operations to obtain user selection results.
图 6是图 5中第一处理单元构成示意图。 其中, 该第一处理单元 502包 括: 状态信息获取单元 601和第一用户集合获取单元 602 ; 其中, 该状态信息 获取单元 601 用于获取每个状态条件所属信息类型对应的所有用户的状态信 息; 该第一用户集合获取单元 602用于从每个所有用户的状态信息中选择符 合对应该状态条件的用户集合, 以获取与状态条件对应的用户集合。  Figure 6 is a block diagram showing the structure of the first processing unit of Figure 5. The first processing unit 502 includes: a state information acquiring unit 601 and a first user set obtaining unit 602; wherein the state information acquiring unit 601 is configured to acquire state information of all users corresponding to each type of information to which the state condition belongs; The first user set obtaining unit 602 is configured to select a user set that meets the corresponding status condition from the status information of each of the users to obtain a user set corresponding to the status condition.
此外, 如图 4A所示, 该系统可进一步包括存储单元 404, 该存储单元 404 可储存获取的用户的状态信息。 这样, 对获取的用户状态信息进行暂存, 当 请求发送单元 401再次请求相同用户的状态信息时, 该选择单元 403可以先 获取暂存的用户状态信息, 并用于用户选择操作。  Further, as shown in FIG. 4A, the system may further include a storage unit 404 that may store the acquired state information of the user. In this way, the acquired user state information is temporarily stored. When the request sending unit 401 requests the state information of the same user again, the selecting unit 403 may first acquire the temporarily stored user state information and use it for the user selection operation.
如图 4A所示, 该系统还包括定时器 405和维护单元 (未示出); 其中, 该定时器 405用于为暂存在存储单元 404中的该用户的状态信息进行计时。 该维护单元用于判断存储在存储单元 404 中的用户的状态信息储存的时间是 否超过预设有效时间, 若判断结果为超过, 则从存储单元 404 中删除该用户 的状态信息。 如图 4A所示, 该系统还包括信息提供单元 406, 该信息提供单 元 406用于提供该状态条件所属信息类型对应的所有用户的状态信息。  As shown in FIG. 4A, the system further includes a timer 405 and a maintenance unit (not shown); wherein the timer 405 is configured to time the status information of the user temporarily stored in the storage unit 404. The maintenance unit is configured to determine whether the time of storing the state information of the user stored in the storage unit 404 exceeds the preset effective time. If the determination result is over, the state information of the user is deleted from the storage unit 404. As shown in FIG. 4A, the system further includes an information providing unit 406 for providing status information of all users corresponding to the type of information to which the status condition belongs.
这样, 当选择单元 403中的第一处理单元 502在获取用户状态信息时, 首先可判断存储单元 404 中是否暂存该状态条件所属信息类型对应的用户的 状态信息; 若判断结果为有, 则从该存储单元 404直接获取该状态条件所属 信息类型对应的用户的状态信息; 若判断结果为否, 则从该状态条件所属信 息类型相应的信息提供单元 406获取用户的状态信息。  In this way, when the first processing unit 502 in the selecting unit 403 obtains the user state information, it may first determine whether the state information of the user corresponding to the information type to which the state condition belongs is temporarily stored in the storage unit 404; if the determination result is yes, The status information of the user corresponding to the information type to which the status condition belongs is directly obtained from the storage unit 404. If the determination result is no, the status information of the user is obtained from the information providing unit 406 corresponding to the information type to which the status condition belongs.
由上述可知, 由于用户的状态信息经常发生变化, 因此, 需要对暂存的 状态信息设置一个有效时间, 有效时间与状态信息的种类相关, 如静态信息 的有效时间就会较长, 如用户的兴趣爱好; 而可变的状态信息有效时间就应 较短, 如用户的位置信息。 当选择单元 403获得一个用户状态信息后, 首先 将该用户的状态信息进行保存, 然后通过设置的定时器 405为该用户的状态 信息进行计时, 当超过预设有效时间时, 就删除该暂存的用户的状态信息。 It can be seen from the above that since the state information of the user often changes, it is necessary to set an effective time for the temporarily stored state information, and the effective time is related to the type of the state information, for example, the effective time of the static information is longer, such as the user's Hobbies; and variable state information should be valid Shorter, such as the user's location information. After the selection unit 403 obtains a user status information, the status information of the user is first saved, and then the status information of the user is timed by the set timer 405. When the preset valid time is exceeded, the temporary storage is deleted. Status information for the user.
在本实施例中, 如图 4B所示, 该请求发送单元 401可采用用户终端设备 407来实现。 该接收单元 401、 选择单元 403、 存储单元 404、 定时器 405可 由选择服务器 408来实现。 该信息提供单元 406由相应的信息提供服务器 409 来实现, 例如呈现服务器、 位置服务器等来实现。 其中, 用户终端设备 407 可通过有线或无线的方式与该选择服务器 408进行信息交互, 将请求消息发 送给选择服务器 408,而该选择服务器 408将选择结果回传给该用户终端设备 407; 该选择服务器 408可通过网络与信息提供服务器 409进行信息交互。 但 不限于上述实现方式, 还可采用其它的方式实现。  In this embodiment, as shown in FIG. 4B, the request sending unit 401 can be implemented by using the user terminal device 407. The receiving unit 401, the selecting unit 403, the storage unit 404, and the timer 405 can be implemented by the selection server 408. The information providing unit 406 is implemented by a corresponding information providing server 409, such as a presence server, a location server, or the like. The user terminal device 407 can perform information interaction with the selection server 408 by wire or wirelessly, and send a request message to the selection server 408, and the selection server 408 returns the selection result to the user terminal device 407; The server 408 can perform information interaction with the information providing server 409 through the network. However, it is not limited to the above implementation manner, and may be implemented in other manners.
另外,通过将获取的用户状态信息暂存在选择服务器 408的存储单元 404 中, 这样, 当该选择服务器 408根据请求消息再次请求相同用户的状态信息 时, 可以先获取暂存的用户状态信息, 并用于用户选择操作, 这样可大大减 少选择服务器 408与信息提供服务器 409之间的数据交互。  In addition, by temporarily storing the acquired user status information in the storage unit 404 of the selection server 408, when the selection server 408 requests the status information of the same user again according to the request message, the temporary user status information may be acquired first, and used. The user selects the operation, which greatly reduces the data interaction between the selection server 408 and the information providing server 409.
由上述实施例可知, 选择单元 403中的第一解析单元 502对多个状态条 件进行处理时, 同时执行各个状态条件下的用户选择, 然后再根据各个状态 条件之间的逻辑关系获得最终用户选择结果。 因此, 通过该系统可对满足不 同状态条件、 逻辑关系、 用户范围的用户进行选择, 该方法精确、 效率高, 给请求者带来极大的方便。  It can be seen from the above embodiment that when the first parsing unit 502 in the selecting unit 403 processes a plurality of state conditions, the user selection under each state condition is simultaneously performed, and then the end user selection is obtained according to the logical relationship between the respective state conditions. result. Therefore, the system can select users satisfying different state conditions, logical relationships, and user ranges, and the method is accurate and efficient, and brings great convenience to the requester.
实施例三  Embodiment 3
本发明实施例还提供一种用户选择系统, 如图 4A所示, 该系统包括请求 发送单元 401、 接收单元 402、 选择单元 403、 存储单元 404、 定时器 405、 维 护单元和信息提供单元 406; 其中, 该请求发送单元 401、 接收单元 402选择 单元 403、 存储单元 404、 定时器 405、 维护单元和信息提供单元 406的作用 与实施例二中类似, 此处不再赘述。  The embodiment of the present invention further provides a user selection system. As shown in FIG. 4A, the system includes a request sending unit 401, a receiving unit 402, a selecting unit 403, a storage unit 404, a timer 405, a maintenance unit, and an information providing unit 406. The functions of the request sending unit 401, the receiving unit 402, the selecting unit 403, the storing unit 404, the timer 405, the maintenance unit, and the information providing unit 406 are similar to those in the second embodiment, and are not described herein again.
图 7是实施例三的选择单元构成示意图。 如图 7所示, 该选择单元包括 第二解析单元 701、 第二处理单元 702和第二结果获取单元 703 ; 其中,  Fig. 7 is a schematic view showing the configuration of a selection unit of the third embodiment. As shown in FIG. 7, the selection unit includes a second parsing unit 701, a second processing unit 702, and a second result obtaining unit 703;
该第二解析单元 701 用于对该选择条件进行解析, 以获取用户范围、 状 态条件和该状态条件之间的逻辑关系;  The second parsing unit 701 is configured to parse the selection condition to obtain a logical relationship between a user range, a status condition, and the status condition;
该第二处理单元 702用于按照先后顺序对状态条件进行处理, 先后获取 每个状态条件对应的用户集合; The second processing unit 702 is configured to process the state condition in sequence, and obtain the data in succession. a collection of users corresponding to each state condition;
该第二结果获取单元 703用于根据该逻辑关系和每个状态条件对应的用 户集合确定用户选择结果。  The second result obtaining unit 703 is configured to determine a user selection result according to the logical relationship and the user set corresponding to each state condition.
在本实施例中, 当第二处理单元 702 按照先后顺序对状态条件中的先后 两个状态条件进行处理时, 可采用如下方式: 根据在先状态条件对应的用户 集合和该状态条件对应的逻辑关系对用户范围进行更新, 利用更新的用户范 围来获取在后状态条件对应的用户集合。 其中, 当按照先后顺序依次对该两 个状态条件进行处理时, 无论先后状态条件之间的逻辑关系为哪种, 不需要 考虑处理的顺序, 该处理顺序可任意。  In this embodiment, when the second processing unit 702 processes the two state conditions in the state condition in sequence, the following manner may be adopted: the user set corresponding to the previous state condition and the logic corresponding to the state condition The relationship updates the user scope, and the updated user scope is used to obtain the user collection corresponding to the post state condition. When the two state conditions are sequentially processed in order, regardless of the logical relationship between the sequential state conditions, the order of processing need not be considered, and the processing order may be arbitrary.
在本实施例中, 当第二处理单元 702 获取在先状态条件对应的用户集合 后, 对用户范围进行更新, 可采用如下方式:  In this embodiment, after the second processing unit 702 obtains the user set corresponding to the previous state condition, and updates the user range, the following manner may be adopted:
当先后两个状态条件对应的逻辑关系为逻辑和时, 将符合在先状态条件 的用户集合作为更新的用户范围;  When the logical relationship corresponding to the two state conditions is a logical sum, the user set that meets the previous state condition is used as the updated user range;
当先后两个状态条件对应的逻辑关系为逻辑或时, 将在先用户范围除去 符合在先状态条件的用户集合作为更新的用户范围;  When the logical relationship corresponding to the two state conditions is logical OR, the prior user scope is removed from the user set that meets the previous state condition as the updated user range;
当先后两个状态条件对应的逻辑关系为逻辑非时, 若在先处理逻辑非对 应的状态条件, 则将在先用户范围除去符合在后状态条件的用户集合作为更 新的用户范围; 若在先处理逻辑非不对应的状态条件时, 将符合在先条件的 用户集合作为更新的用户范围。  When the logical relationship corresponding to the two state conditions is logically non-existent, if the logical non-corresponding state condition is processed first, the prior user scope is removed from the user set that meets the post-state condition as the updated user range; When a state condition that does not correspond to a logical one is processed, the user set that meets the prior condition is used as the updated user range.
相应地, 当第二处理单元 702 根据逻辑关系对先后两个对应的用户集合 进行处理时, 可采用如下方式:  Correspondingly, when the second processing unit 702 processes two corresponding user sets according to the logical relationship, the following manner may be adopted:
当先后两个状态条件对应的逻辑关系为逻辑和时, 将符合在后状态条件 的用户集合作为用户选择结果。  When the logical relationship corresponding to the two state conditions is a logical sum, the user set that meets the post state condition is taken as the user selection result.
当先后两个状态条件对应的逻辑关系为逻辑或时, 将符合先后两个状态 条件的用户集合进行合并, 将合并的结果作为用户选择结果。  When the logical relationship corresponding to the two state conditions is logical OR, the user sets that meet the two state conditions are merged, and the combined result is used as the user selection result.
当先后两个状态条件对应的逻辑关系为逻辑非时, 将符合在后状态条件 的用户集合作为用户选择结果。 由上述实施例可知, 该第二处理单元 702 按 照先后顺序分批对各个状态条件进行处理, 并且根据前一次条件选择的用户 选择结果更新后一次选择的用户范围, 这样, 可大大减少进行用户选择时的 选择次数, 选择效率高, 给用户带来极大的便利。  When the logical relationship corresponding to the two state conditions is logically non-existent, the user set that meets the post-state condition is taken as the user selection result. It can be seen from the above embodiment that the second processing unit 702 processes each state condition in batches in order, and updates the user range selected one time according to the user selection result selected in the previous condition, thereby greatly reducing user selection. The number of selections at the time, the selection efficiency is high, and the user is greatly facilitated.
在本实施例中, 如图 4B所示, 该请求发送单元 401可采用用户终端设备 407来实现。 该接收单元 401、 选择单元 403、 存储单元 404、 定时器 405、 维 护单元可由选择服务器 408来实现。该信息提供单元 406由相应的信息提供服 务器 409 来实现, 例如呈现服务器、 位置服务器等来实现。 其中, 用户终端 设备 407可通过有线或无线的方式与该选择服务器 408进行信息交互, 将请 求消息发送给选择服务器 408,而该选择服务器 408将选择结果回传给该用户 终端设备 407;该选择服务器 408可通过网络与信息提供服务器 409进行信息 交互。 但不限于上述实现方式, 还可采用其它的方式实现。 In this embodiment, as shown in FIG. 4B, the request sending unit 401 can adopt a user terminal device. 407 to achieve. The receiving unit 401, the selecting unit 403, the storage unit 404, the timer 405, and the maintenance unit may be implemented by the selection server 408. The information providing unit 406 is implemented by a corresponding information providing server 409, such as a presence server, a location server, or the like. The user terminal device 407 can perform information interaction with the selection server 408 by wire or wirelessly, and send a request message to the selection server 408, and the selection server 408 returns the selection result to the user terminal device 407; The server 408 can perform information interaction with the information providing server 409 through the network. However, it is not limited to the above implementation manner, and may be implemented in other manners.
这样, 该选择服务器 408根据请求者发送的选择条件, 分批到各个状态 条件相应的信息提供服务器 409 中获取用户的状态信息, 并且根据前一次条 件选择的用户选择结果更新后一次选择的用户范围, 这样, 可以减少后几次 请求状态信息的用户数量, 节约了选择服务器 408与信息提供服务器 409间 的通信流量, 也减少了信息提供服务器的负荷。  In this way, the selection server 408 acquires the status information of the user in the information providing server 409 corresponding to each status condition in batches according to the selection condition sent by the requester, and updates the user range selected one time later according to the user selection result selected in the previous condition. In this way, the number of users requesting status information for the last several times can be reduced, the communication traffic between the selection server 408 and the information providing server 409 is saved, and the load of the information providing server is also reduced.
实施例四  Embodiment 4
本发明实施例还提供一种用户选择方法。 图 8是本发明实施例四的用户 选择方法流程图。 如图 8所示, 该方法包括: 接收进行用户选择的请求消息; 其中, 该请求消息携带至少一个选择条件, 该选择条件包括至少两个状态条 件和所述状态条件之间的逻辑关系、 和 /或用户范围 (见步骤 801 ) ; 根据该选 择条件进行用户选择, 以获得符合该选择条件的用户选择结果 (见步骤 802 )。  The embodiment of the invention further provides a user selection method. FIG. 8 is a flowchart of a user selection method according to Embodiment 4 of the present invention. As shown in FIG. 8, the method includes: receiving a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between at least two state conditions and the state condition, and / or user range (see step 801); user selection is made according to the selection condition to obtain a user selection result that meets the selection condition (see step 802).
在本实施例中, 该选择条件可包括用户范围, 也可不包括用户范围, 当 该选择条件中不包括该用户范围时, 默认该用户范围为所有用户。  In this embodiment, the selection condition may include a user range or may not include a user range. When the user range is not included in the selection condition, the user range is defaulted to all users.
另外, 该状态条件之间的逻辑关系可为逻辑和 (and)、 逻辑或 (or ) 和 逻辑非 (not ) 中的一个。 其中, "and "表示满足两个状态条件的用户选择结 果间的交集; "or "表示满足两个状态条件的用户选择结果间的并集; "not " 表示满足前一个状态条件的用户选择结果, 但不包含后一个状态条件的用户 选择结果。  In addition, the logical relationship between the state conditions may be one of a logical sum (and), a logical OR (or ), and a logical non (not). Where "and" indicates the intersection between the user selection results satisfying the two state conditions; "or" indicates the union between the user selection results satisfying the two state conditions; "not" indicates the user selection result satisfying the previous state condition , but does not include the user selection result of the latter state condition.
在本实施例中, 该状态条件之间的逻辑关系为逻辑和、 逻辑或和逻辑非 中的一个。  In this embodiment, the logical relationship between the state conditions is one of a logical sum, a logical OR, and a logical non.
以下结合附图 4B、 图 9对本发明实施例的用户选择方法进行详细说明。 步骤 901,用户通过终端设备 407发送请求消息至选择服务器 408;其中, 该请求消息携带至少一个选择条件, 该选择条件包括至少两个状态条件和所 述状态条件之间的逻辑关系、 和 /或用户范围。 步骤 902,选择服务器 408接收到该请求消息后,对该请求消息进行解析, 以获取用户范围、 所述状态条件和所述状态条件之间的逻辑关系; 其中, 当 该请求消息中不包括用户范围时, 该选择服务器 408可确定该用户范围为所 有用户。 The user selection method of the embodiment of the present invention will be described in detail below with reference to FIGS. 4B and 9. Step 901: The user sends a request message to the selection server 408 through the terminal device 407. The request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two status conditions and the status condition, and/or User scope. Step 902: After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. The user does not include the user in the request message. In the range, the selection server 408 can determine that the user range is all users.
步骤 903, 选择服务器 408分别获取该用户范围内、与状态条件对应的用 户集合; 其中, 可采用如下方式:  Step 903: The selection server 408 respectively obtains a set of users corresponding to the status condition in the user scope; wherein, the following manner may be adopted:
分别从信息提供服务器 409或者选择服务器 408的存储单元中获取用户 范围内的每个状态条件所属信息类型对应的所有用户的状态信息; 分别从每 个所有用户的状态信息中选择符合对应该状态条件的用户集合, 以获取与该 状态条件对应的用户集合。  Obtaining, from the storage unit of the information providing server 409 or the selection server 408, state information of all users corresponding to each type of information belonging to each state condition in the user range; respectively selecting the corresponding state condition from the state information of each user A collection of users to obtain a collection of users corresponding to the state condition.
步骤 904, 根据该逻辑关系对每个用户集合进行逻辑运算, 以获取最终的 用户选择结果。  Step 904, performing logical operations on each user set according to the logical relationship to obtain a final user selection result.
步骤 905, 该选择服务器 408将用户选择结果回传至用户终端设备 407。 由上述可知, 在步骤 903 中, 对状态条件进行处理时, 同时执行各个状 态条件下的用户选择, 然后再根据各个状态条件之间的逻辑关系获得最终用 户选择结果。 通过上述方法可对满足不同状态条件、 逻辑关系、 用户范围的 用户进行选择, 该方法精确、 效率高, 给请求者带来极大的方便。  Step 905, the selection server 408 returns the user selection result to the user terminal device 407. As can be seen from the above, in step 903, when the state condition is processed, the user selection under each state condition is simultaneously performed, and then the final user selection result is obtained based on the logical relationship between the respective state conditions. Through the above method, users who meet different state conditions, logical relationships, and user ranges can be selected, and the method is accurate and efficient, and brings great convenience to the requester.
在步骤 903中, 选择服务器 408还可将获取的用户状态信息进行存储, 当该选择服务器 408根据请求消息再次请求相同用户的状态信息时, 该选择 服务器 408可以先判断该选择服务器 408是否暂存该状态条件对应的用户状 态信息, 若判断结果为是, 则该选择服务器 408可直接从暂存的信息中获取 用户状态信息, 而不从信息提供服务器 409获取, 若判断结果为该选择服务 器 408没有暂存该用户状态信息, 再从相应的信息提供服务器 409获取。 这 样, 可大大减少选择服务器 408和信息提供服务器 409之间交互的次数。  In step 903, the selection server 408 can also store the acquired user state information. When the selection server 408 requests the state information of the same user again according to the request message, the selection server 408 can first determine whether the selection server 408 is temporarily stored. The user status information corresponding to the status condition, if the determination result is yes, the selection server 408 can directly obtain the user status information from the temporarily stored information without being acquired from the information providing server 409, and if the determination result is the selection server 408 The user status information is not temporarily stored, and is acquired from the corresponding information providing server 409. In this way, the number of interactions between the selection server 408 and the information providing server 409 can be greatly reduced.
此外, 由于用户的状态信息经常发生变化, 为保证获取的用户的状态信 息的可靠性, 该选择服务器 408还可对暂存的状态信息设置一个有效时间。 在本实施例中, 该有效时间可与状态信息的种类相关, 一般, 该状态信息可 包括静态条件的状态信息和动态条件的状态信息, 这样, 可将静态信息的有 效时间设置较长, 如用户的兴趣爱好, 而将动态可变的状态信息的有效时间 设置较短就应较短, 如用户的位置信息。 这样, 当该选择服务器 408储存一 个用户的状态信息后, 会为该状态信息设置一个定时器, 当定时的时间等于 或超过该类型的状态信息对应的有效时间时, 即当时间过期时, 选择服务器In addition, since the state information of the user often changes, in order to ensure the reliability of the acquired state information of the user, the selection server 408 can also set a valid time for the temporarily stored state information. In this embodiment, the effective time may be related to the type of the status information. Generally, the status information may include status information of the static condition and status information of the dynamic condition, so that the effective time of the static information may be set longer, such as The user's hobbies, and the effective time setting of the dynamically variable status information should be shorter, such as the user's location information. Thus, when the selection server 408 stores the status information of a user, a timer is set for the status information, when the time is equal to Or when the valid time corresponding to the status information of the type is exceeded, that is, when the time expires, select the server.
408将删除该暂存的状态信息, 这样, 可自动维护该选择服务器 408上的用户 的状态信息, 减轻选择服务器 408 的负荷, 并保证获取的用户的状态信息的 可靠性。 408 will delete the temporary status information, so that the status information of the user on the selection server 408 can be automatically maintained, the load of the selection server 408 is reduced, and the reliability of the acquired status information of the user is guaranteed.
以下结合附图 4B、 图 10对本发明实施例的用户选择方法进行详细说明。 步骤 1001, 用户通过终端设备 407发送请求消息至选择服务器 408; 其 中, 该请求消息携带至少一个选择条件, 该选择条件包括至少两个状态条件 和该状态条件之间的逻辑关系、 和 /或用户范围。  The user selection method of the embodiment of the present invention will be described in detail below with reference to FIG. 4B and FIG. Step 1001: The user sends a request message to the selection server 408 through the terminal device 407. The request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two status conditions and the status condition, and/or the user. range.
步骤 1002, 选择服务器 408接收到该请求消息后, 对该请求消息进行解 析, 以获取用户范围、 所述状态条件和所述状态条件之间的逻辑关系; 其中, 当该请求消息中不包括用户范围时, 该选择服务器 408可确定该用户范围为 所有用户。  Step 1002: After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. The user does not include the user in the request message. In the range, the selection server 408 can determine that the user range is all users.
步骤 1003, 该选择服务器 408按照先后顺序对状态条件进行处理, 先后 获取每个状态条件对应的用户集合;  Step 1003: The selection server 408 processes the state conditions in sequence, and sequentially obtains a set of users corresponding to each state condition.
步骤 1004, 该选择服务器 408根据该逻辑关系对每个状态条件对应的用 户集合进行处理, 以获取用户选择结果。  Step 1004: The selection server 408 processes the user set corresponding to each state condition according to the logical relationship to obtain a user selection result.
步骤 1005, 最后该选择服务器 408将获取的用户选择结果传送至用户终 端设备 407。  Step 1005, finally the selection server 408 transmits the obtained user selection result to the user terminal device 407.
在本实施例中, 在步骤 1003中, 该选择服务器 408按照先后顺序处理状 态条件中的先后两个状态条件时, 可根据在先状态条件对应的用户集合和该 状态条件对应的逻辑关系对用户范围进行更新, 利用更新的用户范围来获取 在后状态条件对应的用户集合, 从而减少选择服务器 408和信息提供服务器 409之间的数据交互的次数。  In this embodiment, in step 1003, when the selection server 408 processes the two state conditions in the state condition in sequence, the user may be based on the user set corresponding to the previous state condition and the logical relationship corresponding to the state condition. The scope is updated, and the updated user scope is used to obtain the user set corresponding to the post state condition, thereby reducing the number of data interactions between the selection server 408 and the information providing server 409.
图 11是本发明实施例按照先后顺序对多个状态条件中的先后两个状态条 件进行处理的流程图。 如图 11所示, 步骤 1101, 判断先后两个状态条件之间 逻辑关系的类型, 是否为逻辑非;  Figure 11 is a flow chart showing the processing of two of the plurality of state conditions in sequence according to an embodiment of the present invention. As shown in FIG. 11, step 1101, determining whether the type of the logical relationship between the two state conditions is logically non-linear;
步骤 1102, 在步骤 1101中, 若判断结果为否, 则获取该先后两个状态条 件中的一个状态条件对应的用户集合;  Step 1102: In step 1101, if the determination result is no, the user set corresponding to one of the two status conditions is obtained;
步骤 1103, 根据获取的用户集合和先后状态条件之间的逻辑关系对用户 范围进行更新;  Step 1103: Update a user range according to a logical relationship between the obtained user set and the sequence status condition.
步骤 1104, 利用更新的用户范围来获取两个状态条件中的另一个状态条 件对应的用户集合。 Step 1104, using the updated user range to obtain another status bar of the two status conditions. The corresponding user collection.
在步骤 1103中, 当先后两个状态条件的逻辑关系为逻辑和时, 将符合在 先状态条件的用户集合作为更新的用户范围; 在更新的用户范围中, 将符合 在后状态条件的用户集合作为用户选择结果。  In step 1103, when the logical relationship of the two state conditions is a logical sum, the user set that meets the previous state condition is used as the updated user range; in the updated user scope, the user set that meets the post state condition is set. As a result of user selection.
在步骤 1103中, 当先后两个状态条件的逻辑关系为逻辑或时, 将在先用 户范围除去符合在先状态条件的用户集合作为更新的用户范围; 相应地, 在 步骤 1004中, 当根据逻辑关系对先后两个状态条件对应的用户集合进行处理 时, 将符合先后两个状态条件的用户集合进行合并, 将合并的结果作为用户 选择结果。  In step 1103, when the logical relationship between the two state conditions is logical OR, the prior user scope is removed from the user set that meets the previous state condition as the updated user scope; correspondingly, in step 1004, according to the logic When the relationship is processed by the user set corresponding to the two state conditions, the user sets that meet the two state conditions are merged, and the merged result is used as the user selection result.
在步骤 1101中, 若判断结果为该逻辑关系为逻辑非, 则该方法还包括: 步骤 1105, 首先执行逻辑非针对的状态条件下的用户选择操作, 即首先 获取该先后两个状态条件中对应逻辑非的状态条件的用户集合;  In step 1101, if the result of the determination is that the logical relationship is logically non-exclusive, the method further includes: Step 1105: First, perform a user selection operation under a logical non-targeted state condition, that is, first obtain a corresponding one of the two consecutive status conditions. a collection of users of logical non-state conditions;
步骤 1106, 根据获取的用户集合对用户范围进行更新;  Step 1106: Update the user range according to the obtained user set.
步骤 1107,利用更新的用户范围来获取另一个状态条件对应的用户集合。 相应地, 当根据逻辑关系对先后两个对应的用户集合进行处理, 包括: 将符 合另一个状态条件的用户集合作为用户选择结果。  Step 1107, using the updated user scope to obtain a user set corresponding to another state condition. Correspondingly, when processing two corresponding user sets according to a logical relationship, the method comprises: using a user set that meets another state condition as a user selection result.
在步骤 1106中, 在进行用户范围更新时, 当在先处理逻辑非针对的条件 时, 将在先用户范围除去符合在后状态条件的用户集合作为更新的用户范围; 在更新的用户范围中, 将符合在先状态条件的用户集合作为用户选择结果。  In step 1106, when the user scope update is performed, when the condition that the logic is not targeted is processed, the prior user scope is removed from the user set that meets the post state condition as the updated user scope; in the updated user scope, The user set that meets the previous state condition is taken as the result of the user selection.
上述实施例中, 按照先判断条件之间的逻辑关系是否为逻辑非仅仅为本 发明的实施例而已, 但不限于此, 还可先判断该逻辑关系是否为 "或"或者 "和"。 并且当判断结果为逻辑非时, 可按照正常顺序对各个条件进行处理, 不仅仅在先判断针对逻辑非的条件。  In the above embodiment, whether or not the logical relationship between the conditions is determined to be logical is not only an embodiment of the present invention, but is not limited thereto, and it may be first determined whether the logical relationship is "or" or "and". And when the judgment result is logically non-existent, each condition can be processed in the normal order, not only the condition for logical non-determination is determined first.
在本实施例中, 在步骤 1102、 1104、 1105、 1107中, 获取一个状态条件 对应的用户集合, 可采用如下方式:  In this embodiment, in steps 1102, 1104, 1105, and 1107, a user set corresponding to a state condition is obtained, and the following manner may be adopted:
获取该状态条件所属信息类型对应的所有用户的状态信息; 这时, 可首 先判断该选择服务器 408 中是否暂存该状态条件所属信息类型对应的所有用 户的状态信息, 若有, 则直接从该选择服务器 408获取该状态信息。 否则, 从相应的信息提供服务器 409获取该状态信息。  Obtaining state information of all users corresponding to the information type to which the state condition belongs; in this case, first determining whether the state information of all users corresponding to the information type to which the state condition belongs is temporarily stored in the selection server 408, and if so, directly from the state information The selection server 408 obtains the status information. Otherwise, the status information is obtained from the corresponding information providing server 409.
最后, 从该所有用户的状态信息中选择符合该状态条件的用户集合。 通过上述实施例, 选择服务器 408可根据请求者发送的选择条件, 分批 到各个状态条件相应信息提供服务器 409 中获取用户的状态信息, 并且根据 前一次的状态条件对应的用户集合和该状态条件对应的逻辑关系对用户范围 进行更新, 利用更新的用户范围来获取后一次的状态条件对应的用户集合, 从而可以减少后几次请求状态信息的用户数量, 节约了与状态信息服务器间 的通信流量, 也减少了状态信息服务器的负荷。 Finally, a set of users that meet the status condition is selected from the status information of all the users. Through the above embodiment, the selection server 408 can batchize according to the selection conditions sent by the requester. Obtaining the status information of the user in each status condition corresponding information providing server 409, and updating the user range according to the user set corresponding to the previous status condition and the logical relationship corresponding to the status condition, and using the updated user range to obtain the next time. The user condition corresponds to the set of users, thereby reducing the number of users requesting status information for the last several times, saving communication traffic with the status information server, and reducing the load of the status information server.
此外, 由于用户的状态信息经常发生变化, 为保证获取的用户的状态信 息的可靠性, 该选择服务器 408还可对暂存的状态信息设置一个有效时间。 在本实施例中, 该有效时间可与状态信息的种类相关, 如静态信息的有效时 间就会较长, 如用户的兴趣爱好, 而可变的状态信息有效时间就应较短, 如 用户的位置信息。 这样, 当该选择服务器 408储存一个用户的状态信息后, 会为该状态信息设置一个定时器, 当定时的时间等于或超过该类型的状态信 息对应的有效时间时, 即当时间过期时, 选择服务器 408将删除该暂存的状 态信息, 这样, 可自动维护该选择服务器 408上的用户信息, 减轻选择服务 器 408的负荷, 并保证获取的用户的状态信息的可靠性。  In addition, since the status information of the user often changes, the selection server 408 can also set a valid time for the temporarily stored status information in order to ensure the reliability of the acquired status information of the user. In this embodiment, the effective time may be related to the type of the status information, such as the effective time of the static information, such as the user's hobbies, and the variable status information should be shorter, such as the user's location information. Thus, when the selection server 408 stores the status information of a user, a timer is set for the status information, and when the time is equal to or exceeds the valid time corresponding to the status information of the type, that is, when the time expires, The server 408 will delete the temporary state information, so that the user information on the selection server 408 can be automatically maintained, the load of the selection server 408 is reduced, and the reliability of the acquired state information of the user is ensured.
上述实施例中, 按照分批获取用户状态信息时, 当有逻辑非的逻辑关系 时, 可考虑先处理逻辑非的运算, 但对于其它逻辑关系, 执行顺序不受限制, 可任意选择。  In the foregoing embodiment, when the user status information is obtained in batches, when there is a logical non-logical relationship, the operation of the logical non-operation may be considered first, but for other logical relationships, the execution order is not limited and may be arbitrarily selected.
当对至少两个状态条件按照先后顺序分批进行处理时, 可以根据状态信 息的类型安排处理的顺序, 可先获取静态条件的状态信息, 然后获取动态条 件的状态信息。  When at least two state conditions are processed in batches in sequence, the order of processing may be arranged according to the type of the state information, and the state information of the static condition may be acquired first, and then the state information of the dynamic condition is obtained.
对于不同的状态条件有不同的有效时间, 一般, 可根据状态信息类型设 置有效时间, 该状态信息可包括静态条件的状态信息和动态条件的状态信息, 这样, 可将静态信息的有效时间设置较长, 如用户的兴趣爱好, 而将动态可 变的状态信息的有效时间设置较短就应较短, 如用户的位置信息。 这样, 可 先获取较长有效时间对应的状态信息, 后获取较短有效时间对应的状态信息, 因为有效时间较长, 则更有可能从暂存的状态信息中获得目标用户的状态信 息, 而且因为这类信息暂存的时间较长, 能为以后更多的用户选择服务, 所 以先执行状态信息获取工作, 此时使用的用户范围较大, 获得的状态信息能 有更多的应用价值; 而有效时间较短的状态信息, 则后执行状态信息获取工 作, 此时使用的用户范围较小, 能承担有效时间短带来的暂存无用的弊端。  For different state conditions, there are different effective times. Generally, the effective time can be set according to the state information type. The state information can include state information of the static condition and state information of the dynamic condition, so that the effective time of the static information can be set. Long, such as the user's hobbies, and the effective time setting of the dynamically variable status information should be shorter, such as the user's location information. In this way, the state information corresponding to the longer effective time can be obtained first, and then the state information corresponding to the shorter effective time is obtained. Because the effective time is longer, it is more likely to obtain the state information of the target user from the temporarily stored state information, and Because this kind of information is temporarily stored for a long time, it can select services for more users in the future, so the state information acquisition work is performed first. At this time, the user range used is large, and the obtained state information can have more application value; The status information with a short effective time is then executed after the status information is acquired. At this time, the user range used is small, and the temporary uselessness caused by the short effective time can be assumed.
以下通过具体的实例对本发明实施例进行详细说明。 实施例五 The embodiments of the present invention are described in detail below through specific examples. Embodiment 5
Zack希望与他的同事建立一个聊天室, 讨论一下工作中的内容, 同事共 有 6人, 但北京的同事因为中国特有的节日不用上班, 则 Zack仅需要与开机 但不在北京的同事一起讨论工作。 Zack作为请求者通过其终端设备向选择服 务器发送用户选择请求消息, 其中该请求消息包括用户范围、 状态条件和状 态条件间的逻辑关系。  Zack hopes to establish a chat room with his colleagues to discuss the contents of the work. There are 6 colleagues, but Beijing colleagues don't have to go to work because of the unique festivals in China. Zack only needs to discuss work with colleagues who are on the phone but not in Beijing. Zack acts as a requester to send a user selection request message to the selection server through its terminal device, wherein the request message includes a logical relationship between the user range, the status condition, and the status condition.
用户范围为一个 6人列表, 其中还包括 6人的联系方式, 如表 1所示。 该状态条件为: (Presence =开机) not (11^ =北京)。  The user scope is a list of 6 people, including the contact information of 6 people, as shown in Table 1. The status condition is: (Presence = Power On) not (11^ = Beijing).
表 1  Table 1
Figure imgf000015_0001
该选择服务器收到用户选择请求消息后, 向信息提供服务器, 例如
Figure imgf000015_0001
After the selection server receives the user selection request message, it sends the information to the server, for example
Presence服务器请求 6人的 Presence信息,并向定位服务器请求 6人的位置 信息, 获得 6人的状态信息, 如表 2所示。 The Presence server requests Presence information for 6 people, and requests the location information of 6 people from the location server to obtain status information of 6 people, as shown in Table 2.
表 2  Table 2
Figure imgf000015_0002
该选择服务器判断 Alice、 Chris, David, Emily均开机, 符合 (Presence =开机) 的条件, 判断 Al ice位于北京, 符合 (L0C =北京) 的条件, 则该选 择服务器根据该状态条件之间的逻辑关系 "not ", 判断 Chris、 David, Emily 符合选择条件要求, 并向 Zack返回符合要求的用户列表, 即 Chris、 David 和 Emi ly。 实施例六
Figure imgf000015_0002
The selection server determines that Alice, Chris, David, Emily are all powered on, meets the (Presence = boot) condition, determines that Al ice is located in Beijing, and meets the condition of (L0C = Beijing), then the server selects the logic according to the state condition. The relationship "not", to determine Chris, David, Emily meet the selection criteria, and return to Zack a list of eligible users, namely Chris, David and Emi ly. Embodiment 6
与实施例五相同的场景。 选择服务器收到用户选择请求消息后, 向定位 服务器请求 6人的位置信息, 获得位置信息后 (信息内容与表 2—致), 判断 Al ice位于北京,符合(L0C =北京)的条件。则选择服务器根据逻辑关系" not " 更新用户范围, 更新后的用户范围不包括 Al ice ; 然后, 该选择服务器向 Presence服务器发送除 Al ice后的 5人列表,并请求该 5人的 Presence信息, 获得 5人的 Presence后 (信息内容与表 2—致), 判断 Chris、 David, Emi ly 符合选择条件要求, 并向 Zack返回符合要求的用户列表, 即 Chris、 David 禾口 Emi ly。  The same scenario as in the fifth embodiment. After receiving the user selection request message, the server selects the location information of the 6 persons from the location server to obtain the location information (the content of the information is in accordance with Table 2), and determines that the Al ice is located in Beijing and meets the condition of (L0C = Beijing). Then, the server is selected to update the user range according to the logical relationship "not", and the updated user scope does not include Al ice; then, the selection server sends a list of 5 persons after the Al ice to the Presence server, and requests the presence information of the 5 persons. After obtaining the Presence of 5 people (information content and Table 2), judge Chris, David, Emi ly to meet the selection criteria, and return to Zack a list of users who meet the requirements, namely Chris, David and Emi ly.
该实施例与实施例五相比, 选择服务器向 Presence服务器请求 Presence 信息的用户名单少了 1人。 Presence服务器无需获取和向选择服务器返回 Al ice 的 Presence信息。  Compared with the fifth embodiment, the embodiment selects one less user list for requesting the Presence information from the server to the Presence server. The Presence server does not need to retrieve and return Al ice Presence information to the selection server.
实施例七  Example 7
广告发布商希望发布一条商场的促销广告, 该商场位于北京, 且促销活 动为当天一天。 因此广告发布商希望发送给商场附近的所有人和向其订阅了 该项服务且位于北京的用户。 广告发布商作为请求者向选择服务器发送一条 用户选择请求消息,提供了一个 51人的订阅用户名单,其完整的选择条件为: ( ( 51人名单, (11^ =北京)) or (所有人, (L0C =商场附近) and (Presence =开机)))。  The publisher wants to post a promotional ad for the mall, which is located in Beijing and the promotion is the day of the day. Therefore, the publisher wants to send it to everyone near the mall and to users who have subscribed to the service and are located in Beijing. The publisher, as a requester, sends a user selection request message to the selection server, providing a list of 51 subscribers. The complete selection criteria are: ((51 people list, (11^=Beijing)) or (Everyone , (L0C = near the mall) and (Presence = boot))).
选择服务器收到请求消息后, 向 Presence服务器获取所有开机用户的名 单, Presence服务器返回当前 Presence状态为开机的用户名单, 一共 83975 人。 用户选择服务器再将该 83975人的名单发送给定位服务器, 请求该 83975 人的位置信息, 定位服务器返回这些人的经纬度信息, 选择服务器计算 83975 人每人与商场的距离, 其中距离小于 1公里的共有 1746人。 选择服务器比较 广告发布商提供的 51人名单, 发现其中 5人在上次获取的 1746人名单中, 则选择服务器将 51人中剩下的 46人名单发送给定位服务器, 请求该 46人的 位置信息, 获知其中 32人位于北京。 则选择服务器将 1746+32共 1768人的 名单返回给广告发布商。  After the server selects the request message, it obtains the list of all the boot users from the Presence server. The Presence server returns the list of users whose current Presence status is powered on, for a total of 83,975 people. The user selects the server and sends the list of 83975 people to the location server, requests the location information of the 83975 people, the location server returns the latitude and longitude information of the people, and the selection server calculates the distance between the 83975 people and the mall, wherein the distance is less than 1 km. There are 1746 people. Select the server to compare the list of 51 people provided by the publisher, and find that 5 of them are in the list of 1746 people obtained last time, then select the server to send the list of the remaining 46 of the 51 people to the location server, requesting the location of the 46 people. Information, it is known that 32 of them are located in Beijing. Then the server is selected to return a list of 1768+32 1768 people to the publisher.
实施例八  Example eight
Zack希望与他的同事建立一个聊天室, 讨论一下工作中的内容, 同事共 有 6人, Zack仅需要与开机的同事一起讨论工作。 Zack作为请求者向选择服 务器发送用户选择请求消息, 其中包括用户范围、 状态条件和状态条件间的 逻辑关系。 用户范围为一个 6人列表, 其中还包括 6人的联系方式, 如表 3 所示。 状态条件为: ^361^6 =开机)。 Zack hopes to set up a chat room with his colleagues to discuss the content of the work. There are 6 colleagues. Zack only needs to discuss the work with the startup colleagues. Zack as a requester to choose clothes The server sends a user selection request message, which includes a logical relationship between the user range, the status condition, and the status condition. The user scope is a list of 6 people, including the contact details of 6 people, as shown in Table 3. The status condition is: ^361^6 = boot).
表 3  table 3
Figure imgf000017_0001
选择服务器收到用户选择请求消息后, 向 Presence服务器请求 6人的 Presence信息, 并将所示信息进行暂存, 并提供有效时间, 如表 4所示。
Figure imgf000017_0001
After receiving the user selection request message, the server selects the Presence information of 6 people from the Presence server, and temporarily stores the information shown, and provides a valid time, as shown in Table 4.
表 4  Table 4
Figure imgf000017_0002
选择服务器向 Zack返回包括 Al ice、 Chris, David和 Emi ly的选择结果 完成该次用户选择操作。之后 Yang作为请求者也发起一次用户选择请求操作, 请求消息中提供了一个 5人用户列表, 如表 5所示, 状态条件为 (Presence 表 5
Figure imgf000017_0002
The selection server returns to Zack a selection result including Al ice, Chris, David, and Emily to complete the user selection operation. Yang then initiates a user selection request operation as a requester. A five-person user list is provided in the request message, as shown in Table 5, and the status condition is (Presence Table 5).
Figure imgf000017_0003
选择服务器先从暂存的用户状态信息中获取 5人的 Presence信息, 从中 获得 Emi ly和 Frank的 Presence信息, 然后选择服务器向 Presence服务器 请求 Gray、 Hans和 Jack的 Presence信息, 得到如下结果, 并将 Gray、 Hans 和 Jack的 Presence信息进行暂存, 如表 6所示。
Figure imgf000017_0003
The server selects the Presence information of 5 people from the temporary user status information, obtains the Presence information of Emily and Frank, and then selects the server to request the Presence information of Gray, Hans and Jack from the Presence server, and obtains the following result, and The Presence information of Gray, Hans and Jack is temporarily stored, as shown in Table 6.
表 6  Table 6
Figure imgf000018_0001
选择服务器向 Yang返回包括 Emi ly、 Gray, Hans和 Jack的列表。
Figure imgf000018_0001
Select the server to return to Yang a list of Emi ly, Gray, Hans, and Jack.
当选择服务器判断 Al ice等的 Presence信息有效时间达到 26分钟时, 该选择服务器删除暂存的 Alice、Bob、Chris、David、Emily和 Frank的 Presence 信息。  When the selection server determines that the Presence information of Al ice or the like is valid for 26 minutes, the selection server deletes the Presence information of the temporarily stored Alice, Bob, Chris, David, Emily, and Frank.
实施例九  Example nine
广告发布商希望发布一条商场的促销广告, 该次促销活动的内容为体育 用品。 因此广告发布商希望将广告发送给位于商场附近且个人爱好为体育的 所有人。 广告发布商作为请求者向选择服务器发送一条用户选择请求消息, 提供了一个 51人的名单, 希望选择服务器能够返回个人爱好为体育且位于商 场附近的用户名单。 其完整的选择条件为: (51人名单, ( (L0C =商场附近) and (个人爱好 =体育)))。  The publisher wants to publish a promotional ad for the mall, which is sports items. Therefore, the publisher wants to send the advertisement to everyone who is near the mall and whose personal hobby is sports. The publisher, as a requester, sends a user selection request message to the selection server, providing a list of 51 people, hoping that the selection server can return a list of users whose interests are sports and located near the store. The complete selection criteria are: (list of 51 people, ((L0C = near the mall) and (personal hobby = sports))).
因为个人爱好信息是静态信息, 而位置信息是动态信息, 选择服务器在 收到请求者发送的用户选择请求消息后, 先向信息提供服务器 (如网络地址 本信息, 其中记录的联系人的个人爱好信息) 中查询 51人的个人爱好信息, 其中 20人的个人爱好为体育, 符合选择条件的要求。  Because the personal preference information is static information, and the location information is dynamic information, the selection server first sends a message to the information providing server after receiving the user selection request message sent by the requester (such as network address book information, wherein the personal interests of the recorded contacts are recorded) In the information), 51 people's personal hobbies are inquired, and 20 of them have a personal preference for sports, which meets the requirements of the selection criteria.
选择服务器再向定位服务器获取 20人的位置信息, 通过定位服务器返回 的 20人的位置信息, 判断其中 6人符合选择条件要求, 并将该 6人名单返回 给请求者。  The server is selected to obtain the location information of 20 people from the location server, and the location information of 20 people returned by the location server is determined, and 6 of them are determined to meet the selection condition requirement, and the 6-person list is returned to the requester.
实施例十  Example ten
本发明实施例提供一种用户选择方法。 该方法包括: 接收进行用户选择的请求消息; 其中, 该请求消息携带至少一个选择条 件, 该选择条件包括至少两个状态条件和该状态条件之间的逻辑关系; The embodiment of the invention provides a user selection method. The method includes: Receiving a request message for performing user selection; wherein the request message carries at least one selection condition, the selection condition including a logical relationship between the at least two status conditions and the status condition;
根据该请求消息携带的信息进行用户选择, 以获得符合该请求的用户选择 结果。  User selection is performed based on the information carried by the request message to obtain a user selection result in accordance with the request.
在本实施例中, 该请求消息还可以包括用户范围, 当不包括该用户范围 时, 默认该用户范围为所有用户。  In this embodiment, the request message may further include a user scope, and when the user scope is not included, the user scope is defaulted to all users.
在本实施例中, 该状态条件之间的逻辑关系为逻辑和、 逻辑或和逻辑非 中的一个。  In this embodiment, the logical relationship between the state conditions is one of a logical sum, a logical OR, and a logical non.
在本实施例中, 该状态条件是针对一种用户状态的条件信息, 如 "用户 位于北京"这样的地理位置条件, "用户在线"这样的用户网络状态条件。  In this embodiment, the status condition is condition information for a user status, such as a geographic location condition such as "user is located in Beijing" and a user network status condition such as "user online".
该选择条件是进行用户选择时的状态条件组合, 它至少包括一条状态条 件, 当选择条件包含多个状态条件时, 还需包括多个状态条件间的逻辑关系。  The selection condition is a combination of state conditions when the user selects, and includes at least one state condition. When the selection condition includes a plurality of state conditions, the logical relationship between the plurality of state conditions is also included.
以下结合附图 4B、 图 12对本发明实施例的用户选择方法进行详细说明。 步骤 1201, 用户通过终端设备 407发送请求消息至选择服务器 408。 在本实施例中, 该请求消息携带至少一个选择条件,该选择条件包括至少 两个状态条件和该状态条件之间的逻辑关系; 该请求消息还可以携带用户范围。  The user selection method of the embodiment of the present invention will be described in detail below with reference to FIG. 4B and FIG. Step 1201: The user sends a request message to the selection server 408 through the terminal device 407. In this embodiment, the request message carries at least one selection condition, the selection condition includes a logical relationship between the at least two status conditions and the status condition; the request message may further carry a user range.
步骤 1202, 选择服务器 408接收到该请求消息后, 对该请求消息进行解 析, 以获取用户范围、 该状态条件和所述状态条件之间的逻辑关系; 其中, 当该请求消息中不包括用户范围时, 该选择服务器 408可确定该用户范围为 所有用户。  Step 1202: After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. The user scope is not included in the request message. The selection server 408 can determine that the user range is all users.
步骤 1203, 选择服务器 408分别获取该用户范围内、 与状态条件对应的 用户集合; 其中, 可采用如下方式:  In step 1203, the selection server 408 respectively obtains a set of users corresponding to the status condition in the user range; wherein, the following manner may be adopted:
分别从信息提供服务器 409或者选择服务器 408的存储单元中获取用户 范围内的每个状态条件所属信息类型对应的所有用户的评估信息; 分别从每 个状态条件所属信息类型对应的所有用户的评估信息中选择符合对应该状态 条件的用户集合。 其中, 该评估信息是从各个状态服务器, 如呈现服务器、 定位服务器等获得的, 用于进行用户选择的状态信息。  Evaluating, by the information providing server 409 or the storage unit of the selection server 408, the evaluation information of all the users corresponding to the information type of each state condition in the user range; the evaluation information of all users corresponding to the information type of each state condition belongs to each Select a collection of users that match the status criteria. The evaluation information is obtained from each state server, such as a presence server, a location server, etc., for performing state selection of the user.
步骤 1204, 根据该逻辑关系对每个用户集合进行逻辑运算, 以获取最终 的用户选择结果。  Step 1204: Perform logical operations on each user set according to the logical relationship to obtain a final user selection result.
步骤 1205, 该选择服务器 408将用户选择结果回传至用户终端设备 407。 在步骤 1203中,选择服务器 408还可将获取的用户的评估信息进行存储, 当该选择服务器 408根据请求消息再次请求用户的评估信息时, 该选择服务 器 408可以先判断该选择服务器 408是否暂存该请求消息中状态条件对应的 用户的评估信息, 若判断结果为是, 则该选择服务器 408可直接从暂存的信 息中获取用户的评估信息, 而不从信息提供服务器 409获取, 若判断结果为 该选择服务器 408没有暂存所述用户的评估信息, 再从相应的信息提供服务 器 409获取。 这样, 可大大减少选择服务器 408和信息提供服务器 409之间 交互的次数。 In step 1205, the selection server 408 returns the user selection result to the user terminal device 407. In step 1203, the selection server 408 can also store the acquired user's evaluation information. When the selection server 408 requests the evaluation information of the user again according to the request message, the selection server 408 may first determine whether the selection server 408 temporarily stores the evaluation information of the user corresponding to the status condition in the request message, and if the determination result is yes, The selection server 408 can obtain the evaluation information of the user directly from the temporarily stored information, and does not obtain the evaluation information from the information providing server 409. If the determination result is that the selection server 408 does not temporarily store the evaluation information of the user, the corresponding information is obtained from the corresponding information. The server 409 is provided for acquisition. In this way, the number of interactions between the selection server 408 and the information providing server 409 can be greatly reduced.
此外, 由于用户的评估信息经常发生变化, 为保证获取的用户的评估信 息的可靠性, 该选择服务器 408还可对暂存的评估信息设置一个有效时间。 在本实施例中, 该有效时间可与评估信息的种类相关, 一般, 该评估信息可 包括静态条件的评估信息和动态条件的评估信息, 这样, 可将静态信息的有 效时间设置较长, 如用户的兴趣爱好, 而将动态可变的评估信息的有效时间 设置较短, 如用户的位置信息。 这样, 当该选择服务器 408储存一个用户的 评估信息后, 会为该评估信息设置一个定时器, 当定时的时间等于或超过该 类型的评估信息对应的有效时间时, 即当时间过期时, 选择服务器 408将删 除该暂存的评估信息, 这样, 可自动维护该选择服务器 408上的用户的评估 信息, 减轻选择服务器 408的负荷, 并保证获取的用户的评估信息的可靠性。  In addition, since the evaluation information of the user often changes, the selection server 408 can also set a valid time for the temporarily stored evaluation information in order to ensure the reliability of the evaluation information of the acquired user. In this embodiment, the effective time may be related to the type of the evaluation information. Generally, the evaluation information may include evaluation information of the static condition and evaluation information of the dynamic condition, so that the effective time of the static information may be set longer, such as The user's hobbies, and the effective time of the dynamically variable evaluation information is set shorter, such as the user's location information. Thus, when the selection server 408 stores the evaluation information of a user, a timer is set for the evaluation information, when the time of the timing is equal to or exceeds the effective time corresponding to the evaluation information of the type, that is, when the time expires, The server 408 will delete the temporary evaluation information, so that the evaluation information of the user on the selection server 408 can be automatically maintained, the load of the selection server 408 can be alleviated, and the reliability of the acquired evaluation information of the user can be guaranteed.
以下结合附图 4B、 图 13对本发明实施例的用户选择方法进行详细说明。 步骤 1301, 用户通过终端设备 407发送请求消息至选择服务器 408; 其 中, 该请求消息携带至少一个选择条件, 该选择条件包括至少两个状态条件 和该状态条件之间的逻辑关系; 该请求消息中还可以携带用户范围。  The user selection method of the embodiment of the present invention will be described in detail below with reference to FIG. 4B and FIG. Step 1301: The user sends a request message to the selection server 408 through the terminal device 407. The request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two status conditions and the status condition. It can also carry a range of users.
步骤 1302, 选择服务器 408接收到该请求消息后, 对该请求消息进行解 析, 以获取用户范围、 该状态条件和该状态条件之间的逻辑关系; 其中, 当 该请求消息中不包括用户范围时, 该选择服务器 408可确定该用户范围为所 有用户。  Step 1302: After receiving the request message, the selection server 408 parses the request message to obtain a logical relationship between the user scope, the status condition, and the status condition. Wherein, when the request message does not include the user range, The selection server 408 can determine that the user range is all users.
步骤 1303, 该选择服务器 408按照先后顺序对状态条件进行处理, 先后 获取每个状态条件对应的用户集合;  Step 1303: The selection server 408 processes the state conditions in sequence, and sequentially acquires a set of users corresponding to each state condition.
步骤 1304, 该选择服务器 408根据该逻辑关系对每个状态条件对应的用 户集合进行处理, 以获取用户选择结果。  Step 1304, the selection server 408 processes the user set corresponding to each state condition according to the logical relationship to obtain a user selection result.
步骤 1305, 最后该选择服务器 408将获取的用户选择结果传送至用户终 端设备 407。 在本实施例中, 在步骤 1303中, 该选择服务器 408按照先后顺序处理状 态条件中的先后两个状态条件的方式如实施例四中对附图 11的描述, 此处不 再赘述。 Step 1305, finally the selection server 408 transmits the obtained user selection result to the user terminal device 407. In this embodiment, in step 1303, the selection server 408 processes the two state conditions in the state condition in sequence, as described in FIG. 11 in the fourth embodiment, and details are not described herein again.
实施例 ^一  Example ^1
本发明实施例提供一种用户选择装置, 参照图 14, 该装置包括接收单元 An embodiment of the present invention provides a user selection apparatus. Referring to FIG. 14, the apparatus includes a receiving unit.
1401和选择单元 1402; 其中, 该接收单元 1401用于接收进行用户选择的请 求消息; 其中, 该请求消息携带至少一个选择条件, 该选择条件包括至少两 个状态条件和该状态条件之间的逻辑关系; 该请求消息还可以携带用户范围; 该选择单元 1402用于根据该请求消息携带的信息进行用户选择, 以获得符合 该请求的用户选择结果。 a receiving unit 1401 is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes logic between at least two state conditions and the state condition The request message may further carry a user range; the selecting unit 1402 is configured to perform user selection according to the information carried by the request message to obtain a user selection result that meets the request.
在本实施例中, 该装置选择的是用户, 选择条件是指用户所应具备的条 件。 在本实施例中, 该选择条件至少包括两个状态条件, 以及状态条件之间 的逻辑关系。  In this embodiment, the device selects the user, and the selection condition refers to the condition that the user should have. In this embodiment, the selection condition includes at least two state conditions, and a logical relationship between the state conditions.
在本实施例中, 该请求消息可包括用户范围, 也可不包括用户范围, 当 不包括该用户范围时, 默认该用户范围为所有用户。  In this embodiment, the request message may include a user scope or may not include a user scope. When the user scope is not included, the user scope is defaulted to all users.
在本实施例中, 该装置可为用户选择服务器。  In this embodiment, the device can select a server for the user.
以下参照图 15、 以请求消息携带至少一个选择条件和用户范围为例进行 说明。 如图 15所示, 该选择单元 1402包括第一解析单元 1501、 第一处理单 元 1502和第一结果获取单元 1503。 其中, 该第一解析单元 1501用于对该请 求消息进行解析, 以获取用户范围、 该至少两个状态条件和该状态条件之间 的逻辑关系; 其中, 若中没有用户范围, 则该第一解析单元 1501采用默认的 用户范围, 即所有用户; 该第一处理单元 1502用于获取该用户范围内、 与状 态条件对应的用户集合; 该第一结果获取单元 1503用于根据该逻辑关系对用 户集合进行逻辑运算, 以获取用户选择结果。  Referring to FIG. 15, the request message carries at least one selection condition and a user range as an example for description. As shown in FIG. 15, the selection unit 1402 includes a first parsing unit 1501, a first processing unit 1502, and a first result obtaining unit 1503. The first parsing unit 1501 is configured to parse the request message to obtain a logical relationship between the user scope, the at least two state conditions, and the state condition. Wherein, if there is no user scope, the first The parsing unit 1501 adopts a default user range, that is, all users; the first processing unit 1502 is configured to acquire a user set corresponding to the status condition within the user range; the first result obtaining unit 1503 is configured to use the user according to the logical relationship. The set performs logical operations to obtain user selection results.
图 16是图 15中第一处理单元构成示意图。 其中, 该第一处理单元 1502 包括: 状态信息获取单元 1601和第一用户集合获取单元 1602; 其中, 该状态 信息获取单元 1601用于获取每个状态条件所属信息类型对应的所有用户的评 估信息, 其中, 可从信息提供服务器获取该评估信息; 该第一用户集合获取 单元 1602用于从每个状态条件所属信息类型对应的评估信息中选择符合该状 态条件的用户集合, 以获取与状态条件对应的用户集合。  Figure 16 is a block diagram showing the structure of the first processing unit of Figure 15; The first processing unit 1502 includes: a state information obtaining unit 1601 and a first user set obtaining unit 1602. The state information acquiring unit 1601 is configured to obtain evaluation information of all users corresponding to each type of information to which the state condition belongs. The first user set obtaining unit 1602 is configured to select a user set that meets the status condition from the evaluation information corresponding to each type of information to which the status condition belongs, to obtain a status condition corresponding to the status condition. User collection.
此外,如图 17所示,该装置可进一步包括存储单元 1701,该存储单元 1701 可储存获取的用户的评估信息。 这样, 对获取的用户评估信息进行暂存, 当 终端设备再次请求相同用户的评估信息时, 该选择单元 1402可以先获取暂存 的用户评估信息, 并用于用户选择操作。 Furthermore, as shown in FIG. 17, the apparatus may further include a storage unit 1701, the storage unit 1701 The evaluation information of the obtained user can be stored. In this way, the obtained user evaluation information is temporarily stored. When the terminal device requests the evaluation information of the same user again, the selecting unit 1402 may first acquire the temporarily stored user evaluation information and use it for the user selection operation.
如图 17所示, 该装置还包括定时器 1702和维护单元 1703; 其中, 该定 时器 1702用于为暂存在存储单元 1701 中的该用户的评估信息进行计时。 该 维护单元 1703用于判断存储在存储单元 1701中的用户的评估信息储存的时 间是否超过预设有效时间, 若判断结果为超过, 则从存储单元 1701中删除该 用户的评估信息。  As shown in FIG. 17, the apparatus further includes a timer 1702 and a maintenance unit 1703; wherein the timer 1702 is configured to time the evaluation information of the user temporarily stored in the storage unit 1701. The maintenance unit 1703 is configured to determine whether the time for storing the evaluation information of the user stored in the storage unit 1701 exceeds the preset effective time. If the determination result is over, the evaluation information of the user is deleted from the storage unit 1701.
这样, 当选择单元 1402中的第一处理单元 1502在获取用户评估信息时, 首先可判断存储单元 1701中是否暂存该条件所属信息类型对应的用户的评估 信息; 若判断结果为有, 则从该存储单元 1701直接获取该状态条件所属信息 类型对应的用户的评估信息; 若判断结果为否, 则从该状态条件所属信息类 型相应的信息提供服务器获取用户的评估信息。  In this way, when the first processing unit 1502 in the selecting unit 1402 obtains the user evaluation information, it may first determine whether the evaluation information of the user corresponding to the conditional information type is temporarily stored in the storage unit 1701; if the determination result is yes, then The storage unit 1701 directly obtains the evaluation information of the user corresponding to the information type to which the status condition belongs. If the determination result is negative, the evaluation information of the user is obtained from the information providing server corresponding to the information type to which the status condition belongs.
由上述实施例可知, 选择单元 1402中的第一解析单元 1501对多个状态 条件进行处理时, 同时执行各个状态条件下的用户选择, 然后再根据各个状 态条件之间的逻辑关系获得最终用户选择结果。 因此, 通过该系统可对满足 不同状态条件、 逻辑关系、 用户范围的用户进行选择, 该方法精确、 效率高, 给请求者带来极大的方便。  It can be seen from the above embodiment that when the first parsing unit 1501 in the selecting unit 1402 processes a plurality of state conditions, the user selection under each state condition is simultaneously performed, and then the end user selection is obtained according to the logical relationship between the respective state conditions. result. Therefore, the system can select users satisfying different state conditions, logical relationships, and user ranges, and the method is accurate and efficient, and brings great convenience to the requester.
此外, 如图 18所示, 该选择单元 1402还可采用如下构成:  In addition, as shown in FIG. 18, the selection unit 1402 may also adopt the following configuration:
如图 18所示, 该选择单元 1402包括第二解析单元 1801、 第二处理单元 As shown in FIG. 18, the selection unit 1402 includes a second parsing unit 1801 and a second processing unit.
1802和第二结果获取单元 1803; 其中, 1802 and a second result acquisition unit 1803; wherein
该第二解析单元 1801用于对该请求消息进行解析, 以获取用户范围、 状 态条件和该状态条件之间的逻辑关系;  The second parsing unit 1801 is configured to parse the request message to obtain a logical relationship between a user range, a status condition, and the status condition;
该第二处理单元 1802用于按照先后顺序对状态条件进行处理, 先后获取 每个状态条件对应的用户集合;  The second processing unit 1802 is configured to process the state condition according to the sequence, and acquire the user set corresponding to each state condition in succession;
该第二结果获取单元 1803用于根据该逻辑关系和每个状态条件对应的用 户集合确定用户选择结果。  The second result obtaining unit 1803 is configured to determine a user selection result according to the logical relationship and a user set corresponding to each state condition.
在本实施例中, 当第二处理单元 1802按照先后顺序对条件中的先后两个 条件进行处理时, 如实施例四中对附图 11的描述, 此处不再赘述。  In the present embodiment, when the second processing unit 1802 processes the two conditions in the sequence in the order of the sequence, the description of FIG. 11 in the fourth embodiment is not described herein again.
这样, 该装置可根据请求者发送的选择条件, 分批到各个状态条件相应 的信息提供服务器中获取用户的评估信息, 并且根据前一次状态条件选择的 用户选择结果更新后一次选择的用户范围, 这样, 可以减少后几次请求评估 信息的用户数量, 节约了选择服务器 408与信息提供服务器 409间的通信流 量, 也减少了信息提供服务器的负荷。 In this way, the device can obtain the evaluation information of the user in the information providing server corresponding to each state condition in batches according to the selection condition sent by the requester, and select according to the previous state condition. The user selects the range of users selected after the result update, so that the number of users requesting the evaluation information after the last time can be reduced, the communication traffic between the selection server 408 and the information providing server 409 is saved, and the load of the information providing server is also reduced.
实施例十二  Example twelve
本发明实施例提供一种用户选择系统, 如图 4B所示, 该系统包括选择服 务器 408和信息提供服务器 409。  The embodiment of the present invention provides a user selection system. As shown in FIG. 4B, the system includes a selection server 408 and an information providing server 409.
其中, 该选择服务器 408, 用于接收进行用户选择的请求消息, 根据该请 求消息携带的信息进行用户选择, 以获得符合该选择条件的用户选择结果。 该请求消息携带至少一个选择条件, 该选择条件包括至少两个状态条件和该 状态条件之间的逻辑关系; 所述请求消息中还可以携带用户范围。  The selection server 408 is configured to receive a request message for performing user selection, and perform user selection according to the information carried in the request message to obtain a user selection result that meets the selection condition. The request message carries at least one selection condition, and the selection condition includes a logical relationship between the at least two status conditions and the status condition; the request message may further carry a user range.
在本实施例中, 该选择服务器 408 的构成如实施例 ^一所述, 此处不再 赘述。  In this embodiment, the configuration of the selection server 408 is as described in the embodiment, and details are not described herein again.
该信息提供服务器 409与该选择服务器 408连接, 用于为该选择服务器 408提供该条件所属信息类型对应的所有用户的评估信息。  The information providing server 409 is connected to the selection server 408 for providing the selection server 408 with evaluation information of all users corresponding to the type of information to which the condition belongs.
在本实施例中,该信息提供服务器 409可包括呈现服务器、定位服务器等。 另外, 如图 4B所示, 该系统还包括终端设备 407, 该终端设备 407用于 发送进行用户选择的请求消息; 该请求消息携带至少一个选择条件和用户范 围, 或者该请求消息携带至少一个选择条件, 该选择条件包括至少两个状态 条件和该状态条件之间的逻辑关系。  In the present embodiment, the information providing server 409 may include a presence server, a location server, and the like. In addition, as shown in FIG. 4B, the system further includes a terminal device 407, configured to send a request message for user selection; the request message carries at least one selection condition and a user range, or the request message carries at least one selection Condition, the selection condition includes a logical relationship between at least two state conditions and the state condition.
其中, 用户终端设备 407可通过有线或无线的方式与该选择服务器 408 进行信息交互, 将请求消息发送给选择服务器 408, 而该选择服务器 408将选 择结果回传给该用户终端设备 407;该选择服务器 408可通过网络与信息提供 服务器 409进行信息交互。但不限于上述实现方式,还可采用其它的方式实现。  The user terminal device 407 can perform information interaction with the selection server 408 by wire or wirelessly, and send a request message to the selection server 408, and the selection server 408 returns the selection result to the user terminal device 407; The server 408 can perform information interaction with the information providing server 409 through the network. However, it is not limited to the above implementation manner, and may be implemented in other manners.
由上述实施例可知, 该选择服务器 408可根据终端设备 407发送请求消 息, 根据该请求中的条件进行用户选择, 然后再根据各个状态条件之间的逻 辑关系获得最终用户选择结果。 因此, 通过该系统可对满足不同状态条件、 逻辑关系、 用户范围的用户进行选择, 该方法精确、 效率高, 给请求者带来 极大的方便。  As can be seen from the above embodiment, the selection server 408 can transmit a request message according to the terminal device 407, perform user selection according to the conditions in the request, and then obtain an end user selection result according to a logical relationship between the respective state conditions. Therefore, the system can select users satisfying different state conditions, logical relationships, and user ranges, and the method is accurate and efficient, and brings great convenience to the requester.
通过上述实施例可知, 对不同条件 (用户条件、 状态条件) 下的用户选 择结果进行集合运算, 获得最终的选择用户结果; 可根据条件间的逻辑关系, 通过前一次条件选择的结果修改后一次选择的用户范围, 减少选择服务器与 信息提供服务器间的信息交互; 该选择服务器对获取到的状态信息进行暂存, 以减少与信息提供服务器间的交互; 可对暂存的信息进行维护; 根据状态条 件的性质分批获取状态信息, 先获取静态条件的状态信息, 后获取动态条件 的状态信息, 以确保选择的精确度。 According to the above embodiment, the user selection result under different conditions (user condition, state condition) is subjected to a set operation to obtain a final selected user result; and the logical relationship between the conditions may be used to modify the result of the previous condition selection. Select the user range, reduce the selection server and The information provides information exchange between the servers; the selection server temporarily stores the acquired state information to reduce interaction with the information providing server; can maintain the temporarily stored information; and obtain state information in batches according to the nature of the state condition First, obtain the state information of the static condition, and then obtain the state information of the dynamic condition to ensure the accuracy of the selection.
以上所述的具体实施例, 对本发明的目的、 技术方案和有益效果进行了 进一步详细说明, 所应理解的是, 以上所述仅为本发明的具体实施例而已, 并不用于限定本发明的保护范围, 凡在本发明的精神和原则之内, 所做的任 何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。  The above described specific embodiments of the present invention are further described in detail, and are intended to be illustrative of the embodiments of the present invention. The scope of the protection, any modifications, equivalents, improvements, etc., made within the spirit and scope of the invention are intended to be included within the scope of the invention.

Claims

权 利 要 求 书 Claim
1.一种用户选择方法, 其特征在于, 所述方法包括:  A user selection method, the method comprising:
接收进行用户选择的请求消息; 其中,所述请求消息携带至少一个选择 条件,所述选择条件包括至少两个状态条件和所述状态条件之间的逻辑关系; 根据所述请求消息进行用户选择,以获得符合所述选择条件的用户选择 结果。  Receiving a request message for performing user selection; wherein the request message carries at least one selection condition, the selection condition includes a logical relationship between the at least two status conditions and the status condition; performing user selection according to the request message, A user selection result that meets the selection criteria is obtained.
2.根据权利要求 1所述的方法,其特征在于,所述根据请求消息进行用 户选择, 包括:  The method according to claim 1, wherein the performing user selection according to the request message comprises:
对所述请求消息进行解析,以获取所述状态条件和所述状态条件之间的 逻辑关系;  Parsing the request message to obtain a logical relationship between the state condition and the state condition;
获取与所述状态条件对应的用户集合;  Obtaining a set of users corresponding to the state condition;
根据所述逻辑关系对所述用户集合进行逻辑运算,以获取用户选择结果。 Performing logical operations on the set of users according to the logical relationship to obtain a user selection result.
3.根据权利要求 2所述的方法,其特征在于,所述请求消息中还包括用 户范围, 则所述根据请求消息进行用户选择, 包括: The method according to claim 2, wherein the request message further includes a user range, and the user selection according to the request message includes:
对所述请求消息进行解析, 以获取用户范围、所述状态条件和所述状态 条件之间的逻辑关系;  Parsing the request message to obtain a logical relationship between a user scope, the state condition, and the state condition;
获取所述用户范围内, 与所述状态条件对应的用户集合;  Obtaining a set of users corresponding to the state condition within the range of the user;
根据所述逻辑关系对所述用户集合进行逻辑运算,以获取用户选择结果。 Performing logical operations on the set of users according to the logical relationship to obtain a user selection result.
4.根据权利要求 3所述的方法, 其特征在于, 所述获取用户范围内、 与 所述状态条件对应的用户集合, 包括: The method according to claim 3, wherein the acquiring a user set corresponding to the status condition within a user range comprises:
在所述用户范围内分别获取每个所述状态条件所属信息类型对应的所 有用户的状态信息;  Obtaining, in the range of the user, status information of all users corresponding to each type of information to which the status condition belongs;
分别从每个所述状态条件所属信息类型对应的所有用户的状态信息中 选择符合对应所述状态条件的用户集合,以获取与每个所述状态条件对应的 用户集合。  A user set corresponding to the state condition is selected from the state information of all the users corresponding to the information type to which the state condition belongs, to obtain a user set corresponding to each of the state conditions.
5.根据权利要求 1所述的方法,其特征在于,所述根据请求消息进行用 户选择, 包括:  The method according to claim 1, wherein the performing user selection according to the request message comprises:
对所述请求消息进行解析,以获取所述状态条件和所述状态条件之间的 逻辑关系; 按照先后顺序对所述状态条件进行处理,先后获取每个所述状态条件对 应的用户集合; Parsing the request message to obtain a logical relationship between the state condition and the state condition; Processing the state condition in sequence, and acquiring a user set corresponding to each of the state conditions;
根据所述逻辑关系对每个所述状态条件对应的用户集合进行处理,以获 取用户选择结果。  The user set corresponding to each of the state conditions is processed according to the logical relationship to obtain a user selection result.
6.根据权利要求 5所述的方法,其特征在于,所述请求消息中还包括用 户范围, 当按照先后顺序对所述状态条件中的先后两个状态条件进行处理 时, 所述先后获取每个所述状态条件对应的用户集合, 包括:  The method according to claim 5, wherein the request message further includes a user range, and when the two state conditions in the state condition are processed in sequence, the successive acquisitions are performed. The set of users corresponding to the status condition includes:
判断先后两个状态条件之间逻辑关系的类型, 是否为逻辑非; 若判断结果为否,则获取所述先后两个状态条件中的一个状态条件对应 的用户集合;  Determining whether the type of the logical relationship between the two state conditions is logically non-determined; if the result of the determination is no, acquiring a set of users corresponding to one of the two state conditions;
根据获取的所述用户集合和先后状态条件之间的逻辑关系对用户范围 进行更新;  Updating the user range according to the obtained logical relationship between the user set and the sequence status condition;
利用更新的用户范围来获取两个状态条件中的另一个状态条件对应的 用户集合。  The updated user range is used to obtain a set of users corresponding to another of the two state conditions.
7.根据权利要求 6所述的方法,其特征在于, 若判断先后两个状态条件 之间逻辑关系的类型是逻辑非时, 所述方法包括:  The method according to claim 6, wherein if it is determined that the type of the logical relationship between the two state conditions is logically non-time, the method comprises:
获取所述先后两个状态条件中对应逻辑非的状态条件的用户集合; 根据获取的所述用户集合对用户范围进行更新;  Obtaining, by the user set, the state condition corresponding to the logical non-state in the two state conditions; updating the user range according to the obtained user set;
利用更新的用户范围来获取另一个状态条件对应的用户集合。  The updated user scope is used to obtain a set of users corresponding to another state condition.
8.根据权利要求 6或 7所述的方法, 其特征在于,所述获取一个状态条 件对应的用户集合, 包括:  The method according to claim 6 or 7, wherein the obtaining a set of users corresponding to a status condition comprises:
获取所述状态条件所属信息类型对应的所有用户的状态信息; 从所述所有用户的状态信息中选择符合所述状态条件的用户集合。 Obtaining state information of all users corresponding to the information type to which the state condition belongs; selecting a user set that meets the state condition from the state information of all the users.
9.根据权利要求 6所述的方法, 其特征在于, 当所述逻辑关系为逻辑和 时, 所述对用户范围进行更新, 包括: 将符合在先状态条件的用户集合作为 更新的用户范围; The method according to claim 6, wherein when the logical relationship is a logical sum, the updating the user scope comprises: using a user set that meets a prior state condition as an updated user range;
当根据逻辑关系对先后两个状态条件对应的用户集合进行处理, 包括: 将符合在后状态条件的用户集合作为用户选择结果。  When the user sets corresponding to the two state conditions are processed according to the logical relationship, the user set that meets the condition of the subsequent state is used as the user selection result.
10.根据权利要求 6所述的方法, 其特征在于, 当所述逻辑关系为逻辑 或时, 所述对用户范围进行更新, 包括: 将在先用户范围除去符合在先状态 条件的用户集合作为更新的用户范围; The method according to claim 6, wherein when the logical relationship is logic Or updating the user scope, including: removing, from the prior user scope, the user set that meets the prior state condition as the updated user scope;
当根据逻辑关系对先后两个状态条件对应的用户集合进行处理, 包括: 将符合先后两个状态条件的用户集合进行合并,将合并的结果作为用户选择 结果。  When the user set corresponding to the two state conditions is processed according to the logical relationship, the method includes: combining the user sets that meet the two state conditions in succession, and combining the combined result as a user selection result.
11.根据权利要求 7所述的方法, 其特征在于, 当所述逻辑关系为逻辑 非时, 所述对用户范围进行更新, 包括: 将在先用户范围除去符合在先状态 条件的用户集合作为更新的用户范围;  The method according to claim 7, wherein when the logical relationship is logically non-exclusive, the updating the user scope comprises: removing a prior user scope from a user set that meets a prior state condition as Updated user range;
当根据逻辑关系对先后两个状态条件对应的用户集合进行处理, 包括: 将符合在后状态条件的用户集合作为用户选择结果。  When the user sets corresponding to the two state conditions are processed according to the logical relationship, the user set that meets the condition of the subsequent state is used as the user selection result.
12.根据权利要求 4或 8所述的方法, 其特征在于, 所述方法还包括: 暂存所述用户的状态信息。  The method according to claim 4 or 8, wherein the method further comprises: temporarily storing state information of the user.
13.根据权利要求 12所述的方法,其特征在于,所述获取状态条件所属 信息类型对应的所有用户的状态信息,包括: 从暂存的所述用户的状态信息 或者从相应的服务器获取所述状态条件所属信息类型对应的所有用户的状 态信息。  The method according to claim 12, wherein the acquiring state information of all users corresponding to the information type to which the state condition belongs includes: obtaining the state information from the temporarily stored user or from the corresponding server State information of all users corresponding to the information type to which the status condition belongs.
14.根据权利要求 12所述的方法, 其特征在于, 所述方法还包括: 根据 所述状态条件所属信息类型为所述用户的状态信息设置有效时间。  The method according to claim 12, wherein the method further comprises: setting an effective time for the state information of the user according to the information type to which the state condition belongs.
15.根据权利要求 14所述的方法, 其特征在于, 所述方法还包括: 判断暂存的所述用户的状态信息是否超过所述有效时间;  The method according to claim 14, wherein the method further comprises: determining whether the temporarily stored state information of the user exceeds the valid time;
若判断结果为是, 则删除所述用户的状态信息。  If the result of the determination is yes, the status information of the user is deleted.
16.根据权利要求 14所述的方法, 其特征在于, 所述方法还包括: 根据 所述有效时间从大到小的顺序依次获取每个所述状态条件对应的所述用户 隹 A  The method according to claim 14, wherein the method further comprises: sequentially acquiring the user 对应 A corresponding to each of the status conditions according to the effective time from large to small
朱 o Zhu o
17.—种用户选择系统, 其特征在于, 所述系统包括: 用户选择服务器, 信息提供服务器;  17. A user selection system, the system comprising: a user selection server, an information providing server;
所述用户选择服务器用于接收进行用户选择的请求消息,根据所述请求 消息进行用户选择, 以获得符合所述选择条件的用户选择结果; 其中, 所述 请求消息携带至少一个选择条件,所述选择条件包括至少两个状态条件和所 述状态条件之间的逻辑关系; The user selection server is configured to receive a request message for performing user selection, and perform user selection according to the request message to obtain a user selection result that meets the selection condition; wherein the request message carries at least one selection condition, Selection conditions include at least two state conditions and a logical relationship between state conditions;
所述信息提供服务器用于向所述用户选择服务器提供所述状态条件所 属信息类型对应的所有用户的状态信息。  The information providing server is configured to provide the user selection server with status information of all users corresponding to the type of information to which the status condition belongs.
18.根据权利要求 17所述的系统,其特征在于,所述系统还包括客户端, 所述客户端用于发送所述请求消息。  18. The system of claim 17, wherein the system further comprises a client, the client for transmitting the request message.
19.一种用户选择装置, 其特征在于, 所述装置包括:  19. A user selection device, the device comprising:
接收单元, 所述接收单元用于接收进行用户选择的请求消息; 其中, 所 述请求消息携带至少一个选择条件,所述选择条件包括至少两个状态条件和 所述状态条件之间的逻辑关系;  a receiving unit, where the receiving unit is configured to receive a request message for performing user selection, where the request message carries at least one selection condition, where the selection condition includes a logical relationship between the at least two state conditions and the state condition;
选择单元,所述选择单元用于根据所述请求消息进行用户选择, 以获得 符合所述选择条件的用户选择结果。  And a selection unit, configured to perform user selection according to the request message to obtain a user selection result that meets the selection condition.
20.根据权利要求 19所述的装置, 其特征在于, 所述选择单元包括: 第一解析单元,所述第一解析单元用于对所述选择条件进行解析, 以获 取所述状态条件和所述状态条件之间的逻辑关系;  The device according to claim 19, wherein the selecting unit comprises: a first parsing unit, configured to parse the selection condition to obtain the status condition and location a logical relationship between state conditions;
第一处理单元,所述第一处理单元用于获取与所述状态条件对应的用户 隹 A .  a first processing unit, configured to acquire a user 隹 A corresponding to the state condition.
朱 n ; Zhu n ;
第一结果获取单元,所述第一结果获取单元用于根据所述逻辑关系对所 述用户集合进行逻辑运算, 以获取用户选择结果。  a first result obtaining unit, configured to perform a logical operation on the set of users according to the logical relationship to obtain a user selection result.
21.根据权利要求 20所述的装置,其特征在于,所述请求消息中还包括 用户范围, 则所述第一解析单元用于对所述选择条件进行解析, 以获取用户 范围、所述状态条件和所述状态条件之间的逻辑关系;所述第一处理单元用 于获取所述用户范围内、 与所述状态条件对应的用户集合。  The device according to claim 20, wherein the request message further includes a user range, and the first parsing unit is configured to parse the selection condition to obtain a user range and the status a logical relationship between the condition and the state condition; the first processing unit is configured to acquire a set of users corresponding to the state condition within the user range.
22.根据权利要求 20所述的装置,其特征在于,所述第一处理单元包括: 状态信息获取单元,所述状态信息获取单元用于获取每个所述状态条件 所属信息类型对应的所有用户的状态信息;  The device according to claim 20, wherein the first processing unit comprises: a state information acquiring unit, wherein the state information acquiring unit is configured to acquire all users corresponding to each type of information to which the state condition belongs Status information;
第一用户集合获取单元,所述第一用户集合获取单元用于从每个所有用 户的状态信息中选择符合对应所述状态条件的用户集合,以获取与每个所述 状态条件对应的用户集合。  a first user set obtaining unit, configured to select, from the status information of each of the users, a set of users that meet the status condition to obtain a user set corresponding to each of the status conditions .
23.根据权利要求 19所述的装置, 其特征在于,所述请求消息中还包括 用户范围, 所述选择单元包括: The device according to claim 19, wherein the request message further includes User range, the selection unit includes:
第二解析单元,所述第二解析单元用于对所述选择条件进行解析, 以获 取用户范围、 所述状态条件和所述状态条件之间的逻辑关系;  a second parsing unit, configured to parse the selection condition to obtain a logical relationship between a user range, the status condition, and the status condition;
第二处理单元,所述第二处理单元用于按照先后顺序对每个所述状态条 件进行处理, 先后获取每个所述状态条件对应的用户集合; 其中, 当按照先 后顺序对所述状态条件中的先后两个状态条件进行处理时,根据在先状态条 件对应的用户集合和所述状态条件对应的逻辑关系对用户范围进行更新,利 用更新的用户范围来获取在后状态条件对应的用户集合;  a second processing unit, configured to process each of the state conditions in a sequential order, and sequentially acquire a user set corresponding to each of the state conditions; wherein, when the state condition is sequentially performed in sequence When the two state conditions are processed in sequence, the user range is updated according to the user set corresponding to the previous state condition and the logical relationship corresponding to the state condition, and the user set corresponding to the post state condition is obtained by using the updated user range. ;
第二结果获取单元,所述第二结果获取单元用于根据所述逻辑关系和每 个所述状态条件对应的所述用户集合确定用户选择结果。  And a second result obtaining unit, configured to determine a user selection result according to the logical relationship and the user set corresponding to each of the state conditions.
24.根据权利要求 22或 23所述的装置, 其特征在于, 所述装置还包括 存储单元, 所述存储单元用于储存所述用户的状态信息。  The device according to claim 22 or 23, wherein the device further comprises a storage unit, wherein the storage unit is configured to store state information of the user.
25.根据权利要求 24所述的装置, 其特征在于, 所述装置还包括: 定时器, 所述定时器用于为所述用户的状态信息进行计时;  The device according to claim 24, wherein the device further comprises: a timer, wherein the timer is used to time state information of the user;
维护单元,所述维护单元用于判断所述用户的状态信息存储的时间是否 超过预设有效时间, 若判断结果为超过, 则删除所述用户的状态信息。  And a maintenance unit, configured to determine whether the time for storing the state information of the user exceeds a preset effective time, and if the determination result is exceeded, deleting the state information of the user.
PCT/CN2009/072823 2008-08-25 2009-07-17 A method and system for user selection WO2010022619A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200810213662.1 2008-08-25
CN200810213662A CN101662429A (en) 2008-08-25 2008-08-25 Method and system for user selection

Publications (1)

Publication Number Publication Date
WO2010022619A1 true WO2010022619A1 (en) 2010-03-04

Family

ID=41720820

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/072823 WO2010022619A1 (en) 2008-08-25 2009-07-17 A method and system for user selection

Country Status (2)

Country Link
CN (1) CN101662429A (en)
WO (1) WO2010022619A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103903158A (en) * 2012-12-27 2014-07-02 腾讯科技(上海)有限公司 Excitation target user selection method and equipment
WO2015100563A1 (en) * 2013-12-30 2015-07-09 Tencent Technology (Shenzhen) Company Limited Method and apparatus for selecting incentive target users
CN109614549B (en) * 2018-12-10 2019-11-12 北京字节跳动网络技术有限公司 Method and apparatus for pushed information
CN112862512A (en) * 2019-11-28 2021-05-28 北京达佳互联信息技术有限公司 Content item delivery method, device, server and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098267A (en) * 2006-06-28 2008-01-02 华为技术有限公司 Method and system for establishing cluster conversation
CN101120603A (en) * 2005-02-17 2008-02-06 英飞凌科技股份公司 Management of dynamic groups in a push-to-talk over cellular communication system
CN101227649A (en) * 2008-01-15 2008-07-23 侯万春 System and method for selecting advertisement audience according to wireless overlay area

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101120603A (en) * 2005-02-17 2008-02-06 英飞凌科技股份公司 Management of dynamic groups in a push-to-talk over cellular communication system
CN101098267A (en) * 2006-06-28 2008-01-02 华为技术有限公司 Method and system for establishing cluster conversation
CN101227649A (en) * 2008-01-15 2008-07-23 侯万春 System and method for selecting advertisement audience according to wireless overlay area

Also Published As

Publication number Publication date
CN101662429A (en) 2010-03-03

Similar Documents

Publication Publication Date Title
CN103069755B (en) Use the method and system that the instant message of multiple client instance transmits
KR20120067947A (en) Energy-efficient content retrieval in content-centric networks
KR20140090208A (en) System and apparatus for power efficient delivery of social network updates to a receiver device in a broadcast network
WO2014108030A1 (en) Web polling method, device and system
WO2010118664A1 (en) System, method and client for joining in group
CN1981501A (en) Method of scheduling the distribution of content files and cache server
WO2014029276A1 (en) Communication method and device
WO2013097740A1 (en) Method and device for prompting dynamic information about contact person
TW201412059A (en) Method and equipment for acquiring geographical location mentioned in chatting content
CN101159569B (en) Method of issuing user service capability and present server and communication service system
US20140101271A1 (en) Method and device for pushing network information based on location
CN102571862A (en) Method, system and server for logging in public chat groups based on mobile terminals
CN101599921B (en) Enterprise instant communication system and file transfer method thereof
WO2010022619A1 (en) A method and system for user selection
CN103167014A (en) Method and device of sharing resources with browsers
CN102546710A (en) Method, system and server for logging in chat groups based on mobile terminal
CN103095748A (en) Method, server and system capable of sending updated microblog information of friend
CN101483615A (en) Remote number obtaining method and system
CN104580084A (en) Method, terminals and system for sharing multimedia file
JP2011130283A (en) Internetwork data distribution system, information communication terminal, and content distribution server
CN105228024A (en) Set-top box users exchange method
WO2009142059A1 (en) Electronic data transmission/reception system
JP2009048602A (en) Location based anonymous instant message exchange method
WO2023151338A1 (en) Game picture display method, storage medium, and electronic device
CN105323270B (en) Network information push method and system

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: 09809204

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: 09809204

Country of ref document: EP

Kind code of ref document: A1