2.5.5 Search for Users

This use case describes how a user searches for other users and displays presence information for those users, as described in section 2.5.4. The actor is a user.

The following diagram illustrates this process.

Process for searching for users

Figure 14: Process for searching for users

Preconditions                                             

  • The protocol client can communicate with its associated management server.

  • The user can search for users by using the protocol client.

Steps

  1. The user selects an option in the protocol client UI to search for users.

  2. The protocol client displays a search menu and waits for user input.

  3. The user enters the search criteria and then submits it.

  4. The protocol client sends the search request to the management server.

  5. The management server uses the search criteria to search for users in the user database on the management server.

  6. The management server returns the search results to the protocol client.

  7. The protocol client displays the search results to the user and performs the steps outlined in section 2.5.4 to display information about the users who are listed in the search results.

  8. The user selects users from the search results to view contact information for them, send messages to them, or add them to a contact list.

  9. The user closes the search UI and ends the search.

Alternative scenarios

The user can cancel the search before submitting it.

Errors

  • Cannot connect to the management server – The protocol client ends the search and notifies the user of the error.

  • Invalid client request – The management server discards the invalid request and returns a fault response to the protocol client. The protocol client then tries the request again or ends the search and notifies the user of the error.

  • Invalid server response – The protocol client discards the invalid server response, and then either tries the request again or ends the search and notifies the user of the error.

  • Server errors – The management server discards the request and returns either a fault response or no response. The protocol client then tries the request again or ends the search and notifies the user of the error.

  • Client errors – The protocol client ends the search and notifies the user of the error.

Post-conditions

  • The search results are displayed to the user and the user ends the search.

  • The search results are not displayed to the user and the protocol client ends the search.